组合-时序逻辑电路verilog-testbench代码_带仿真代码和波形_

组合-时序逻辑电路verilog-testbench代码_带仿真代码和波形_

ID:34374608

大小:1.03 MB

页数:29页

时间:2019-03-05

组合-时序逻辑电路verilog-testbench代码_带仿真代码和波形__第1页
组合-时序逻辑电路verilog-testbench代码_带仿真代码和波形__第2页
组合-时序逻辑电路verilog-testbench代码_带仿真代码和波形__第3页
组合-时序逻辑电路verilog-testbench代码_带仿真代码和波形__第4页
组合-时序逻辑电路verilog-testbench代码_带仿真代码和波形__第5页
资源描述:

《组合-时序逻辑电路verilog-testbench代码_带仿真代码和波形_》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1组合逻辑电路--基本门电路1.1基本门电路1.1.1结构化描述方式代码如下ViewCode1modulelogics2(3inputiA,4inputiB,5outputoAnd,6outputoOr,7outputoNot8);910andand_inst(oAnd,iA,iB);11oror_inst(oOr,iA,iB);12notnot_inst(oNot,iA);1314endmodule最底层的是门级原语andornotRTL级视图testbench如下ViewCode1`timescale1ns/1ns2modulelogics_

2、tb();34regia;5regib;67wireoAnd;8wireoOr;9wireoNot;1011initial12begin13ia=0;14#40ia=1;15#40ia=0;16#40ia=1;17#40ia=0;18end1920initial21begin22ib=0;23#40ib=0;24#40ib=1;25#40ib=1;26#40ib=0;27end2829logicslogics_inst30(31.iA(ia),32.iB(ib),33.oAnd(oAnd),34.oOr(oOr),35.oNot(oNot)36)

3、;3738endmoduleRTL级仿真图形如下GATE级仿真图如下可见RTL级仿真是理想的,GATE级仿真考虑了延迟和信号开始的不确定。1.1.2采用流描述方法代码如下ViewCode1modulelogics2(3inputiA,4inputiB,5outputoAnd,6outputoOr,7outputoNot8);910assignoAnd=iA&iB;11assignoOr=iA

4、iB;12assignoNot=~iA;1314endmoduleRTL级视图,仿真图形同上。1.1.3采用行为描述方式代码如下ViewCode1modul

5、elogics2(3inputiA,4inputiB,5outputregoAnd,6outputregoOr,7outputregoNot8);910always@(*)11begin12oAnd=iA&iB;13oOr=iA

6、iB;14oNot=~iA;15end1617endmodulealways@()括号内的敏感信号填*,则综合器自动加上敏感信号。由于always语句中左边信号都要是寄存器型,故输出信号定义为寄存器型。描述组合逻辑时,always中使用阻塞赋值方式。RTL级视图及仿真图形同上。2组合逻辑电路--多路选择器与多路分解器1.

7、2多路选择器1.2.1不带优先级的多路选择器四路选择器如下代码如下ViewCode1modulemultiplexer2(3inputiA,4inputiB,5inputiC,6inputiD,7input[1:0]iSel,8outputregoQ9);1011always@(*)12begin13case(iSel)142'b00:oQ=iA;152'b01:oQ=iB;162'b10:oQ=iC;172'b11:oQ=iD;18endcase19end2021endmodulecase语句如果没有全部包含所有的情况,则一般要用default

8、语句将信号默认赋值为0,否则会出现锁存器,使得仿真结果不一致。RTL级视图如下:testbench如下ViewCode1`timescale1ns/1ns2modulelogics_tb();34regia;5regib;67wireoAnd;8wireoOr;9wireoNot;1011initial12begin13ia=0;14#40ia=1;15#40ia=0;16#40ia=1;17#40ia=0;18end1920initial21begin22ib=0;23#40ib=0;24#40ib=1;25#40ib=1;26#40ib=0;

9、27end2829logicslogics_inst30(31.iA(ia),32.iB(ib),33.oAnd(oAnd),34.oOr(oOr),35.oNot(oNot)36);3738endmoduleinitial语句和always语句左边的信号类型都要为reg。RTL级仿真图形如下1.2.2带优先级的多路选择器代码如下ViewCode1modulemultiplexer2(3inputiA,4inputiB,5inputiC,6inputiD,7input[1:0]iSel,8outputregoQ9);1011always@(*)1

10、2if(iSel==2'b00)13oQ=iA;14elseif(iSel==2'b01)15oQ=iB;16elseif(iSel==

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

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

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