Verilog教程20041

Verilog教程20041

ID:43108526

大小:182.00 KB

页数:27页

时间:2019-09-30

Verilog教程20041_第1页
Verilog教程20041_第2页
Verilog教程20041_第3页
Verilog教程20041_第4页
Verilog教程20041_第5页
资源描述:

《Verilog教程20041》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Top-Down设计思想系统级设计模块A模块B模块C模块A1模块A3模块A2模块C1模块C3模块C2模块B2模块B12021/8/9用EDA设计数字系统的流程电路图设计文件HDL设计文件电路功能仿真HDL功能仿真HDL综合确定实现电路的具体库名布线后门级仿真与实现逻辑的物理器件有关的工艺技术文件优化、布局布线电路制造工艺文件或FPGA码流文件有问题有问题有问题没问题没问题没问题没问题2021/8/9abced2021/8/9如在模块中逻辑功能由下面三个语句块组成:assigncs=(a0&~a1&~a2);//-----1and2and_in

2、st(qout,a,b);//-----2always@(posedgeclkorposedgeclr)//-----3beginif(clr)q<=0;elseif(en)q<=d;end三条语句是并行的,它们产生独立的逻辑电路;而在always块中:begin与end之间是顺序执行的。并行和顺序逻辑关系的表示2021/8/9Verilog模块中的信号只有两种主要的信号类型:-寄存器类型:reg在always块中被赋值的信号,往往代表触发器,但不一定是触发器。-连线类型:wire用assign关键词指定的组合逻辑的信号或连线2021/8/9

3、Verilog模块中的信号要点需要注意的是:-寄存器(reg)类型不一定是触发器。-它只是在always块中赋值的信号。2021/8/9Verilog中reg与wire的不同点用寄存器(reg)类型变量生成组合逻辑举例:modulerw1(a,b,out1,out2);inputa,b;outputout1,out2;regout1;wireout2;assignout2=a;always@(b)out1=~b;endmoduleaout2BUFFbINVout12021/8/9Verilog中reg与wire的不同点用寄存器(reg)类型变

4、量生成触发器的例子:modulerw2(clk,d,out1,out2);inputclk,d;outputout1,out2;regout1;wireout2;assignout2=d&~out1;always@(posedgeclk)beginout1<=d;endendmoduledout2AND2i1clkout1DQDFF2021/8/9Verilog中两种不同的赋值语句不阻塞(non-blocking)赋值语句:always@(posedgeclk)beginb<=a;c<=b;endclkDFFcDQDQabDFF2021/8/

5、9Verilog中两种不同的赋值语句阻塞(blocking)赋值语句:always@(posedgeclk)beginb=a;c=b;endclkDFFcDQab2021/8/9两种不同的赋值语句区别要点非阻塞(non-blocking)赋值语句(b<=a):-块内的赋值语句同时赋值;-b的值被赋成新值a的操作,是与块内其他赋值语句同时完成的;-建议在可综合风格的模块中使用不阻塞赋值。阻塞(blocking)赋值语句(b=a):-完成该赋值语句后才能做下一句的操作;-b的值立刻被赋成新值a;-时序电路中硬件没有对应的电路,因而综合结果未知。2

6、021/8/9数字系统的构成组合逻辑(无记忆)时序逻辑(有记忆)2021/8/9组合逻辑电路多路器加法器缓冲器逻辑开关总线逻辑运算电路2021/8/9时序逻辑电路计数器同步有限状态机运算控制器总线分配器总结:用寄存器和组合逻辑一起组成的有记忆逻辑电路,能与时钟配合产生精确的控制信号。2021/8/9数字系统的构成示意图同步有限状态机ena1ena2ena3enanclock组合逻辑1寄存器组组合逻辑2寄存器组组合逻辑3寄存器组组合逻辑4寄存器组input_1input_2input_n2021/8/9组合逻辑设计要点组合逻辑的两种Verilo

7、gHDL表示:-用assign语句:assignq=(al==1?)d:0;-用always块:always@(alord)beginif(al==1)q=d;elseq=0;end2021/8/9组合逻辑设计要点组合逻辑的两种VerilogHDL表示:-用always块时,没注意加else语句:如:always@(alord)beginif(al==1)q=d;end则:此时生成的不是纯组合逻辑,因为当al==0时,q能保留原来的值,所以生成的电路中有锁存器。2021/8/9组合逻辑设计要点用always块时,必须注意电平敏感的信号表是否完

8、全,如:always@(aorborcord)beginout=(a&b&c)

9、(d&e);end此时生成的不是纯组合逻辑,因为当e变化时,out不能立即跟着变化。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。