VerilogHDL常用电路设计课件.ppt

VerilogHDL常用电路设计课件.ppt

ID:57370227

大小:240.50 KB

页数:29页

时间:2020-08-13

VerilogHDL常用电路设计课件.ppt_第1页
VerilogHDL常用电路设计课件.ppt_第2页
VerilogHDL常用电路设计课件.ppt_第3页
VerilogHDL常用电路设计课件.ppt_第4页
VerilogHDL常用电路设计课件.ppt_第5页
资源描述:

《VerilogHDL常用电路设计课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章VerilogHDL常用电路设计4.1常用组合逻辑电路设计4.2常用时序逻辑电路设计4.3小结4.1常用组合逻辑电路设计1数据选择器2译码器3加法器4乘法器5比较器6ALU7三态总线4.1常用组合逻辑电路设计数据选择器【例4-1】参数型n位,mx1数据选择器modulemultiplexer_N(X1,X2,X3,X4,sel,Y);parameterN=8;//该参数定义了一个(8位)的4选一多路选择器input[N-1:0]X1,X2,X3,X4;input[1:0]sel;outputreg[N-1:0]Y;alw

2、ays@(sel,X1,X2,X3,X4)case(sel)2'b00:Y=X1;2'b01:Y=X2;2'b10:Y=X3;2'b11:Y=X4;endcaseendmodule译码器【例4-2】参数型lognxn译码器moduledecode_N(sel,Y);parameterN=4;//该参数定义了一个4输出(4位)的译码器input[1:0]sel;//此参数为2位,通过计算log4=2得到,可得到4输出译码器outputreg[N-1:0]Y;always@(sel)case(sel)2'b00:Y=4'b0001

3、;2'b01:Y=4'b0010;2'b10:Y=4'b0100;2'b11:Y=4'b1000;endcaseendmodule加法器【例4-3】参数型N位加法器moduleadd_N(X,Y,sum,co);parameterN=8;input[N-1:0]X,Y;output[N-1:0]sum;outputco;assign{co,sum}=X+Y;endmodule乘法器【例4-4】参数型N位乘法器modulemul_N(X,Y,mul);parameterN=8;input[N-1:0]X,Y;output[2*N

4、-1:0]mul;assignmul=X*Y;endmodule比较器【例4-5】参数型N位比较器modulecompare_N(X,Y,X_gt_Y,X_eq_Y,X_lt_Y);parameterN=8;//参与比较的数的位数为8input[N-1:0]X,Y;outputregX_gt_Y,X_eq_Y,X_lt_Y;always@(X,Y)if(X>Y)beginX_gt_Y=1;X_eq_Y=0;X_lt_Y=0;endelseif(X==Y)beginX_gt_Y=0;X_eq_Y=1;X_lt_Y=0;endel

5、sebeginX_gt_Y=0;X_eq_Y=0;X_lt_Y=1;endendmoduleALU【例4-6】参数型n位,m功能ALUmodulealu_N(X,Y,sel,result);parameterN=8;input[2:0]sel;//3位可定义m=8功能input[N-1:0]X,Y;outputreg[N-1:0]result;always@(X,Y,sel)begincase(sel)3'b000:result=X+Y;//加法3'b001:result=X-Y;//减法3'b010:result=X<<1;

6、//左移1位3'b011:result=X>>1;//右移1位3'b100:result=X&Y;//相与3'b101:result=X^Y;//异或3'b110:result=~X;//求反3'b111:result=X;//直通endcaseendendmodulesel输入操作说明000result=X+Y加法001result=X-Y减法010result=X<<1左移1位011result=X>>1右移1位100result=X&Y相与101result=X^Y异或110result=~X求反111result=X直

7、通三态总线【例4-7】三态门设计moduletri_s(enable,datain,dataout);parameterN=8;inputenable;input[N-1:0]datain;outputreg[N-1:0]dataout;always@(enable,datain)if(enable==1)dataout=datain;elsedataout='bz;endmodule三态总线【例4-8】N位4通道的三态总线驱动器moduletri_bus(input3,input2,input1,input0,enable,

8、out);parameterN=8;input[N-1:0]input3,input2,input1,input0;input[1:0]enable;outputreg[N-1:0]out;always@(enable,input3,input2,input1,input0)

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

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

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