版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系第五讲第五讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 v 硬件原则v 面积和速度的平衡与互换原则v 同步设计原则v 同步系统时钟与复位规划v 自顶向下设计原则v 设计实例v 本讲要点与实验要求第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系硬件原则硬件原则v 硬件原则硬件原则主要是针对HDL设计代码编写而言,特别是具有软件编程经验的初学者,片面追求代码的简短、整洁,如大量使用for循环,而对HDL描述要实现的电路不胜了解。HDL仿真代码不受硬件原则约
2、束。硬件原则主要是指:硬件描述语言(HDL),如verilog,本质上是硬件的抽象描述。HDL描述的最终目标是生成芯片内部的实际电路。HDL描述与软件语言,如C语言,有本质的区别。因C语言编译后,基本上是在设计好的硬件电路(CPU)中按顺序运行的,而HDL描述的是硬件电路本身。评价一个HDL描述的质量,主要看该HDL是否能够与综合工具配合,按设计者的构想合理地生成硬件电路。第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系硬件原则硬件原则v 按硬件原则,HDL的正确编写方法是:设计者要对所设计的硬件电路功能十分清楚。合理安排电路的数据流和控制逻辑,构思R
3、TL级电路体系结构。掌握综合工具要求和性能。用适当的、综合工具能理解的HDL语言描述出来。v 目前纯行为级的综合还不成熟,RTL级综合仍是主流。v 在目前主流综合工具中,部分行为描述语句可以综合,如c第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系一种时钟域合并方法一种时钟域合并方法v 如图示时钟时序波形,时钟使能3M_EN、5M_EN分别使能20M_CLK部分时钟,使有效的时钟信号平均等效频率分别为3M_CLK、5M_CLK。使能的时钟信号第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系同步系统复位的规划同步
4、系统复位的规划v 为使系统工作稳定,并便于测试,所有触发器都应设置复位端。v 触发器的复位信号是一个异步逻辑输入端,对毛刺非常敏感。 v 较好的全局复位方式是设置一个芯片主复位引脚RESET,并用专门模块设计复位电路,给电路中每个触发器送复位信号。 v 与全局时钟引脚类似, 几乎所有FPGA器件都有专门的全局清零引脚和全局置位引脚。在一般情况下使用芯片的全局同步或异步清零/置位信号,可以简化设计、节省面积。v 如果必须从器件内产生清零或置位信号, 则要按照“门控时钟”的设计原则去建立这些信号, 确保复位信号中不会出现毛刺。第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安
5、邮电学院通信工程系自顶向下设计原则自顶向下设计原则v 自顶向下的设计原则是首先定义好顶层功能,然后再用底层的具体实现去充实这些功能。它是设计复杂数字系统普遍采用的设计方法。v 自顶向下的设计方法是从一个写好的系统设计规范开始,通过系统设计、模块设计与仿真验证、系统功能仿真验证、系统实现与仿真验证几个阶段,逐步细化设计,直到实现系统设计规范要求。v 在自顶向下设计中, 撰写完善的设计文档是与设计同样重要的。 对于一个比较复杂的设计来说, 系统和各模块之间关系较复杂, 在设计文档中对整个设计进行详细的描述,才能保证设计者能够在较短时间内掌握整个设计方案,顺利完成设计工作。第五第五讲讲 数字系统设计
6、原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系自顶向下设计自顶向下设计系统设计规范v 系统概述v 系统目标(包括系统实现的功能定义及性能指标)v 系统设计依据(主要的工作原理,关键算法等)v 关键技术v 系统实现其它要求(包括硬件体系结构、数据流、控制流的特殊要求,系统实现价格、面积、功耗、封装等其它要求)v 系统验证及测试要求第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系自顶向下设计自顶向下设计系统设计v 系统设计论述。包括对系统详细的分析与设计策略、系统体系结构框图、层次结构框图、各个模块的划分和功能定义、系统时钟和复位规划。v
7、 芯片与封装选择,包括芯片引脚功能和时序说明,输出驱动能力、输入输出电平。v 系统各模块输入输出引脚功能和时序说明。v 系统各模块的实现策略,如是否用IP;关键算法流程或时序设计。v 系统验证、测试方案与可测性设计。第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系自顶向下设计自顶向下设计模块设计v 模块的体系结构与电路设计模块的体系结构与电路设计v 模块中关键路径设计及说明v 模块的测试方法与可测性设计v 模块的模块的HDL描述,功能仿真检查结果描述,功能仿真检查结果v 模块的综合约束条件(包括扇入、扇出,速度要求、面积要求等)v 模块的面积、速度和功
8、耗估算第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系自顶向下设计自顶向下设计系统级仿真与实现v 系统最终完成的HDL设计描述。v 系统仿真激励文件、测试文件及功能仿真结果分析。v 系统级综合约束条件(包括器件扇出配置,关 键路径约束,输入输出约束,时钟约束,速度、面积和功耗约束等);得到综合后网表文件。v 系统布局布线约束条件及布局布线结果。v 系统静态时序分析和时序仿真结果分析。 v 设计实现后系统电路面积、速度和功耗估算。v 最终产生FPGA的编程文件。v 验证本设计实现的系统满足系统设计规范要求。第五第五讲讲 数字系统设计原则与设计实例数字系统
9、设计原则与设计实例 西安邮电学院通信工程系设计实例设计实例:自动交通控制系统自动交通控制系统系统设计规范:系统设计规范:v系统概述系统概述 设计一个具有主、支干道十字路口的交通灯自动控制芯片。v系统目标系统目标 当主干道与支干道均无车辆要求通行时,主干道应保持畅通,亮绿灯,支干道亮红灯。 如果主干道无车,支干道有车,则允许支干道通行,主干道亮红灯,支干道亮绿灯。 如果主干道和支干道均有车要求通行,则两者应交替通行,并要求主干道每次通行30秒,支干道每次通行20秒,并显示剩余时间。 每次绿灯变红灯时,黄灯应先亮3秒钟,并显示绿灯和黄灯剩余时间。v系统设计依据系统设计依据:主、支干道上有车时,车辆
10、传感器输出为高电平。v系统实现要求系统实现要求:要求用FPGA实现该控制器。v系统验证及测试要求系统验证及测试要求:搭建模拟测试平台测试。第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系系统设计系统设计设计分析v系统设计分析系统设计分析 根据自动交通控制系统设计规范,可对该系统的工作过程作如下分析: 一般情况下,如果主干道和支干道均无车辆要求通行,应该保证主干道绿灯亮,支干道红灯亮,剩余时间按30秒循环显示。 若支干道有车辆要求通行,主干道无车辆,则应允许支干道车辆通行;在支干道有车辆通行时,若主干道无车辆要求通行,则支干道始终保持畅通,剩余时间按20
11、秒循环显示;如果此时支干道已无车辆要求通行,或主干道有车辆要求通行,并且支干道通行时间已超过20秒钟,则应立刻准备使主干道通行。 若主干道、支干道均有车辆要求通行,则应先保证主干道通行30秒钟后,允许支干道通行。 在允许主干道通行前,应先使支干道的黄灯亮3秒钟,主干道红灯保持3秒钟后,变成主干道绿灯亮,支干道红灯亮。在允许支干道车辆通行前,应先使主干道黄灯亮3秒钟,支干道红灯保持3秒钟后,变成主干道红灯亮,支干道绿灯亮。 据此工作过程,设计系统框图如图所示。 第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系系统设计系统设计模块划分与结构框图v 系统结构
12、框图系统结构框图Clock_cntTR_ctlDisp_ctlmredmgreenmyellowbgreenbyellowbreds_20ss_3ss_30scnt_okd_time6:0d_out7:0d_col1:0clkresetm_reqb_req如图示、系统分为三个模块如图示、系统分为三个模块:TR_ctl:交通灯控制。Clock_cnt:定时计数。Disp_ctl:剩余时间显示。输入输出信号:输入输出信号:clk:系统时钟reset:1,系统复位b_req:1,支干道通行请求m_req;1,主干道通行请求d_out7:0:显示数据输出d_col1:0;动态显示LED选择mgreen
13、:1,主干道绿灯亮myellow:1,主干道黄灯亮mred:1,主干道红灯亮bgreen: 1,支干道绿灯亮byellow:1,支干道黄灯亮bred: 1,支干道红灯亮第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系系统设计系统设计顶层设计v 系统时钟和复位规划:本设计采用一个全局时钟clk和复位reset。v 芯片与封装选择:本设计用EP1C3T FPGA实现,144脚封装,输入输出为LVTTL电平。v 系统顶层模块设计与各模块输入输出信号如图示。v 系统各模块功能说明。TR_ctl:交通灯控制模块。根据主、支干道车辆通行请求和通行规则,控制交通灯。
14、控制定时计数模块启动,并接收定时到信号。Clock_cnt:定时计数模块。接收TR_ctl的定时启动控制,s_3s 、 s_20s 、 s_30s 分别为3秒、20秒、30秒计时初值加载和减法计数启动的控制脉冲,为1时启动相应计时。 cnt_ok 是计时到指示脉冲,为1表示已减到0,计时时间到。d_time6:0为十进制计时剩余时间,其中d_time6:4 为十位数, d_time3:0为个位数 。Disp_ctl:剩余时间显示控制模块,用于控制显示绿灯和黄灯的剩余时间。采用2个7段LED动态显示方式。第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系系
15、统设计系统设计顶层模块设计VCCclkINPUTVCCresetINPUTVCCm_reqINPUTVCCb_reqINPUTmgreenOUTPUTmyellowOUTPUTmredOUTPUTbgreenOUTPUTbyellowOUTPUTbredOUTPUTd_out7.0OUTPUTd_col1.0OUTPUTclock_cntinstclkINPUTreset INPUTs_3s INPUTs_20s INPUTs_30s INPUTcnt_okOUTPUTd_time6.0OUTPUTI/OTypeTR_ctlinst1clkINPUTresetINPUTm_reqINPUTb_
16、reqINPUTcnt_okINPUTs_3sOUTPUTs_20sOUTPUTs_30sOUTPUTmgreenOUTPUTmyellowOUTPUTmredOUTPUTbgreenOUTPUTbyellowOUTPUTI/O.Type.disp_ctlinst2clkINPUTresetINPUTd_time6.0INPUTd_col1.0OUTPUTd_out7.0OUTPUTI/OType第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系系统设计系统设计系统测试方案v 系统验证、测试方案:采用quartus2的功能和时序仿真分析,验证设计的正确性
17、。在Mars-EP1C3-EDA实验平台上实现本设计,并测试其正确性。具体方案如下。(注:KEY1、KEY2是异步输入,需同步处理。)主干道LED显示灯支干道LED显示灯EP1C3LD1LD3LD7LD9KEY1KEY2d_out7:0d_col1剩余时间的二位7段LED显示KEY1、KEY2模仿主、支干道通行请求,按下表示无车通行。d_col0abcdefgdp第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系系统设计系统设计实验板信号定义v 查阅实验板资料,确定相关实验板引脚信号分配如下:本设计信号名实验板信号名FPGA引脚备注本设计信号名实验板信号
18、名FPGA引脚备注d_out0display7p5低显dp段mgreenLD5p75低灯亮d_out1display6p4低显g段myellowLD3p79低灯亮d_out2display5p3低显f段mredLD1p85低灯亮d_out3display4p2低显e段bgreenLD11p74低灯亮d_out4display3p1低显d段byellowLD9p78低灯亮d_out5display2p143低显c段bredLD7p84低灯亮d_out6display1p141低显b段m_reqKEY1p107按下为低d_out7display0p142低显a段b_reqKEY2p106按下为低d
19、_col1Dis_A1p27低显示clkCLK_40Mp1640M时钟d_col0Dis_A2p26低显示resetSYS_RSTp144低复位注:实验时,实验板上J1连(2,3),J4连接,J3断开。电源接FPGA扩展板。 第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系模块设计模块设计 TR_ctl模块设计v TR_ctl模块的算法状态机设计模块的算法状态机设计:状态S1:主干道绿灯支干道红灯状态S2:主干道黄灯支干道红灯状态S3:主干道红灯支干道绿灯状态S4:主干道红灯支干道黄灯启动s_3s=0;s_20s=0;s_30s=1;cnt_ok=1?
20、b_req=0?s_30s=0s_3s=1s_30s=1s_20s=1s_3s=1cnt_ok=1?cnt_ok=1?cnt_ok=1?b_req=0&m_req=1?s_3s=0s_20s=0s_3s=0yynnyns_20s=1nnyys_30s=1yn第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系模块设计模块设计 clock_cnt模块设计v clock_cntclock_cnt模块设计模块设计:该模块可以分为秒脉冲产生和初值可控的十进制计数器两部分,如下图所示。秒脉冲产生秒脉冲产生:对40M时钟进行计数,计数到40,000,000时产
21、生秒计数使能脉冲second_en。初值可控的十进制计数器:初值可控的十进制计数器:据不同的加载脉冲s_3s、 s_20s、 s_30s分别加载计数初值3、20、30秒。然后开始减法计数,减到0时,产生计数到脉冲cnt_ok。其中输出d_time6:4为十位数,d_time3:0为个位数。秒脉冲产生初值可控的十进制计数器s_3ss_20ss_30sclkd_time6:0cnt_oksecond_en第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系模块设计模块设计 disp_ctl模块设计v disp_ctl模块设计:模块设计:该模块可以分为LED动态
22、显示控制、显示数据选择和LED7段显示译码三部分,如图所示。v LED动态显示控制动态显示控制:将时钟分频到50HZ,交替使d_col1和d_col0为0。v 显示数据选择显示数据选择:选择十位或个位显示,最大到70秒。v LED7段显示译码段显示译码:LED动态显示控制显示数据选择LED7段显示译码d_time6:4d_time3:0d_out7:0d_col1:0clk十进制数LED显示编码08b0000_001118b1001_111128b0010_010138b0000_110148b1001_100158b0100_100168b0100_000178b0001_111188b00
23、00_000198b0001_1001第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系模块设计模块设计 TR_ctl的的HDL描述module TR_ctl (clk, reset, m_req, b_req, cnt_ok, s_3s, s_20s, s_30s, mgreen, myellow, mred, bgreen, byellow, bred);/ 模块端口说明input clk;input reset;input m_req;input b_req;input cnt_ok;output s_3s; reg s_3s;output s_2
24、0s; reg s_20s;output s_30s; reg s_30s;output mgreen; reg mgreen;output myellow; reg myellow;output mred; reg mred;output bgreen; reg bgreen;output byellow; reg byellow;output bred; reg bred;/ 变量说明reg m_req_s0,b_req_s0,m_req_s,b_req_s;reg 1:0 current_state,next_state;/ 参数说明parameter S1=2b00, S2=2b01,
25、 /状态机编码 S3=2b10, S4=2b11;/ 输入同步电路always (negedge reset or posedge clk)if (!reset) begin m_req_s0=0; b_req_s0=0; m_req_s=0; b_req_s=0;endelse begin m_req_s0=m_req; b_req_s0=b_req; m_req_s=m_req_s0; b_req_s=b_req_s0;End第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系模块设计模块设计 TR_ctl的的HDL描述续1/状态机组合逻辑always
26、 (cnt_ok or m_req_s or b_req_s or current_state)begin case(current_state) S1: begin / 主干道绿,支干道红 mgreen=0; myellow=1; mred=1; bgreen=1; byellow=1; bred=0; s_3s=0; s_20s=0; s_30s=0; if( cnt_ok=1) / 计时时间到 if(b_req_s=0) begin / 支干道有车. s_3s=1; next_state=S2; end else begin / 支干道无车. s_30s=1; next_state=S1
27、; end else / 计时未到 next_state=S1; end S2: begin / 主干道黄,支干道红 mgreen=1; myellow=0; mred=1; bgreen=1; byellow=1; bred=0; s_3s=0; s_20s=0; s_30s=0; if(cnt_ok=1) begin / 计时时间到 s_20s=1; next_state=S3; end else next_state=S2; end第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系模块设计模块设计 TR_ctl的的HDL描述续2 S3: begin
28、 / 支干道绿,主干道红 mgreen=1; myellow=1; mred=0; bgreen=0; byellow=1; bred=1; s_3s=0; s_20s=0; s_30s=0; if(cnt_ok=1) / 支干道有车,主干道无车 if(b_req_s=0 & m_req_s=1) begin s_20s=1; next_state=S3; end else begin s_3s=1; next_state=S4; end else next_state=S3; end S4: begin / 支干道黄,主干道红 mgreen=1; myellow=1; mred=0;
29、 bgreen=1; byellow=0; bred=1; s_3s=0; s_20s=0; s_30s=0; if(cnt_ok=1) begin s_30s=1; next_state=S1; end else next_state=S4; end endcaseend/ 状态机状态转移逻辑always (negedge reset or posedge clk)if (!reset) current_state=S1;else current_state=next_state;endmodule第五第五讲讲 数字系统设计原则与设计实例数字系统设计原则与设计实例 西安邮电学院通信工程系模块
30、设计模块设计 clock_cnt的的HDL描述 module clock_cnt ( clk, reset, s_3s, s_20s, s_30s, cnt_ok, d_time );/端口说明input clk;input reset;input s_3s;input s_20s;input s_30s;output cnt_ok; output 6:0 d_time;/变量说明reg 25:0 cnt_clk;reg 2:0 cnt_10;reg 3:0 cnt_1;reg second_en;/秒脉冲发生器always (negedge reset or posedge clk)if ( !reset ) begin cnt_clk=26d0; second_en=0;endelse if( cnt_clk!=26d40_000_000 ) begin /分频26d40_000_000 cnt_clk=cnt_clk+1; second_en=0;endelse begin cnt_clk=26d0; second_en=1;end / 初值可控的十进制减法计数器 always (negedge reset or posedge clk)if (
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 年幼儿园青年教师舞蹈培训计划
- 《IGBT驱动板简介》课件
- 2024年乡镇政务工作计划结尾
- 安全教育培训计划安全教育培训总结报告
- 浙江省杭州市西湖区部分校2024-2025学年高一数学上学期期中联考试题含解析
- 湖南省邵阳市2024-2025学年高三语文上学期第五次月考试题含解析
- 甘肃省白银市会宁县2024-2025学年高二语文上学期期末质量检测试题含解析
- 艺术领域教学工作计划
- 医院感染管理委员会工作计划
- 老高考新教材适用2025版高考物理二轮复习热点情境练航天技术类一
- 出租房屋安全检查制度模版(2篇)
- 《Maya 2022三维动画制作标准教程(全彩版)》第09章 动画技术
- 二零二四年仓储物流信息化升级改造合同
- 数学-安徽省2025届高三第一次五校(颍上一中、蒙城一中、淮南一中、怀远一中、涡阳一中)联考试题和答案
- 学习二十届三中全会应知应会知识测试题三套汇编【附:全部答案】
- 文书模板-《公司与村集体合作种植协议书》
- 新建(扩建)肉牛肉羊(奶水牛)生态养殖示范场申请表
- 话题26 科技发展与信息技术创新科学精神信息安全 2025年高考英语专项复习
- 三级安全教育培训计划及制度
- JJF(京) 105-2023 网络时间同步服务器校准规范
- 啤酒酿造与文化学习通超星期末考试答案章节答案2024年
评论
0/150
提交评论