Verilog-HDL数字设计教程-第4章-Verilog-HDL常用电路设计新课件.ppt
《Verilog-HDL数字设计教程-第4章-Verilog-HDL常用电路设计新课件.ppt》由会员分享,可在线阅读,更多相关《Verilog-HDL数字设计教程-第4章-Verilog-HDL常用电路设计新课件.ppt(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第4章 Verilog HDL常用电路设计4.1 常用组合逻辑电路设计4.2 常用时序逻辑电路设计4.3 小结1/10/202314.1 常用组合逻辑电路设计常用组合逻辑电路设计1 数据选择器 2 译码器 3 加法器4 乘法器5 比较器6 ALU7 三态总线 1/10/202324.1 常用组合逻辑电路设计常用组合逻辑电路设计1/10/20233数据选择器数据选择器【例4-1】参数型n位,mx1数据选择器module multiplexer_N(X1,X2,X3,X4,sel,Y);parameter N=8;/该参数定义了一个(8位)的4选一多路选择器inputN-1:0 X1,X2,X3,
2、X4;input1:0 sel;output reg N-1:0 Y;always(sel,X1,X2,X3,X4)case(sel)2b00:Y=X1;2b01:Y=X2;2b10:Y=X3;2b11:Y=X4;endcaseendmodule 1/10/20234译码器译码器【例4-2】参数型log nxn译码器module decode_N(sel,Y);parameter N=4;/该参数定义了一个4输出(4位)的译码器input1:0 sel;/此参数为2位,通过计算log4=2得到,可得到4输出译码器output reg N-1:0 Y;always(sel)case(sel)2b
3、00:Y=4b0001;2b01:Y=4b0010;2b10:Y=4b0100;2b11:Y=4b1000;endcaseendmodule1/10/20235加法器加法器【例4-3】参数型N位加法器module add_N(X,Y,sum,co);parameter N=8;input N-1:0 X,Y;output N-1:0 sum;output co;assign co,sum =X+Y;endmodule1/10/20236乘法器乘法器【例4-4】参数型N位乘法器module mul_N(X,Y,mul);parameter N=8;input N-1:0 X,Y;output 2
4、*N-1:0 mul;assign mul=X*Y;endmodule1/10/20237比较器比较器【例4-5】参数型N位比较器module compare_N(X,Y,X_gt_Y,X_eq_Y,X_lt_Y);parameter N=8;/参与比较的数的位数为8input N-1:0 X,Y;output reg X_gt_Y,X_eq_Y,X_lt_Y;always(X,Y)if(XY)begin X_gt_Y=1;X_eq_Y=0;X_lt_Y=0;endelse if(X=Y)begin X_gt_Y=0;X_eq_Y=1;X_lt_Y=0;endelse begin X_gt_Y
5、=0;X_eq_Y=0;X_lt_Y=1;endendmodule1/10/20238ALU【例4-6】参数型n位,m功能ALUmodule alu_N(X,Y,sel,result);parameter N=8;input2:0 sel;/3位可定义m=8功能input N-1:0 X,Y;output regN-1:0 result;always(X,Y,sel)begincase(sel)3b000:result=X+Y;/加法3b001:result=X-Y;/减法3b010:result=X1;/右移1位3b100:result=X&Y;/相与3b101:result=XY;/异或3
6、b110:result=X;/求反3b111:result=X;/直通endcase endendmodule sel输入操作说明000result=X+Y加法001result=X-Y减法010result=X1右移1位100result=X&Y相与101result=XY异或110result=X求反111result=X直通1/10/20239三态总线三态总线【例4-7】三态门设计module tri_s(enable,datain,dataout);parameter N=8;input enable;inputN-1:0 datain;output regN-1:0 dataout;
7、always(enable,datain)if(enable=1)dataout=datain;else dataout=bz;endmodule 1/10/202310三态总线三态总线【例4-8】N位4通道的三态总线驱动器module tri_bus(input3,input2,input1,input0,enable,out);parameter N=8;inputN-1:0 input3,input2,input1,input0;input1:0 enable;output regN-1:0 out;always(enable,input3,input2,input1,input0)be
8、ginif(enable=2b00)out=input3;else out=bz;if(enable=2b01)out=input2;else out=bz;if(enable=2b10)out=input1;else out=bz;if(enable=2b11)out=input0;else out=bz;endendmodule1/10/202311三态总线三态总线【例4-9】N位4通道的三态总线驱动器(实现方法1)module tri_bus_2(input3,input2,input1,input0,enable,out);parameter N=8;inputN-1:0 input3
9、,input2,input1,input0;input1:0 enable;outputN-1:0 out;assign out=(enable=2b00)?input3:bz,out=(enable=2b01)?input2:bz,out=(enable=2b10)?input1:bz,out=(enable=2b11)?input0:bz;endmodule 1/10/202312三态总线三态总线【例4-10】N位4通道的三态总线驱动器(实现方法2)module tri_bus_3(input3,input2,input1,input0,enable,out);parameter N=8;
10、inputN-1:0 input3,input2,input1,input0;input1:0 enable;output regN-1:0 out;always(enable,input3,input2,input1,input0)beginif(enable=2b00)out=input3;else out=bz;endalways(enable,input3,input2,input1,input0)beginif(enable=2b01)out=input2;else out=bz;endalways(enable,input3,input2,input1,input0)beginif
11、(enable=2b10)out=input1;else out=bz;endalways(enable,input3,input2,input1,input0)beginif(enable=2b11)out=input0;else out=bz;endendmodule1/10/2023134.2 常用时序逻辑电路设计常用时序逻辑电路设计1 D触发器和锁存器2 寄存器3 移位寄存器 4计数器5分频器6程序存储器 ROM7数据存储器 RAM 1/10/2023144.2 常用时序逻辑电路设计常用时序逻辑电路设计1/10/202315D触发器和锁存器触发器和锁存器【例4-12】一位D触发器实现方
12、式一:module my_dff(clk,d,q);input clk;input d;output reg q;always(posedge clk)q=d;endmodule1/10/202316寄存器寄存器【例4-13】参数型n位寄存器(1)一般寄存器)一般寄存器module regx(clk,d,q);parameter N=8;input clk;inputN-1:0 d;output regN-1:0 q;always(posedge clk)q=d;endmodule1/10/202317寄存器寄存器(2)同步复位)同步复位,,同步置数,异步使能的寄存器,同步置数,异步使能的寄存
13、器module register_N_0(D,Q,data,en,load,reset,clk);parameter N=8;input en,load,reset,clk;input N-1:0 D,data;output regN-1:0 Q;regN-1:0 temp;always(posedge clk)/同步复位 beginif(reset)temp=0;else if(load)temp=data;else temp=D;endalways(temp,en)/异步使能 beginif(en)Q=temp;else Q=bz;endendmodule1/10/202318移位寄存器移
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Verilog HDL 数字 设计 教程 常用 电路设计 新课
限制150内