第6章-Verilog-HDL设计进阶习题.ppt

第6章-Verilog-HDL设计进阶习题.ppt

ID:58001273

大小:902.00 KB

页数:38页

时间:2020-09-04

第6章-Verilog-HDL设计进阶习题.ppt_第1页
第6章-Verilog-HDL设计进阶习题.ppt_第2页
第6章-Verilog-HDL设计进阶习题.ppt_第3页
第6章-Verilog-HDL设计进阶习题.ppt_第4页
第6章-Verilog-HDL设计进阶习题.ppt_第5页
资源描述:

《第6章-Verilog-HDL设计进阶习题.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章VerilogHDL设计进阶习题实验与设计习题6-1在Verilog设计中,给时序电路清零(复位)有两种不同方法,它们是什么,如何实现?答:同步清零、异步清零,在过程语句敏感信号表中的逻辑表述posedgeCLK用于指明正向跳变,或negedge用于指明负向跳变实现6-2哪一种复位方法必须将复位信号放在敏感信号表中?给出这两种电路的Verilog描述。答:异步复位必须将复位信号放在敏感信号表中。同步清零:always@(posedgeCLK)//CLK上升沿启动Q<=D;//当CLK有升沿时D被锁入Q异步清零:always

2、@(posedgeCLKornegedgeRST)begin//块开始if(!RST)Q<=0;//如果RST=0条件成立,Q被清0elseif(EN)Q<=D;//在CLK上升沿处,EN=1,则执行赋值语句end//块结束习题6-3用不同循环语句分别设计一个逻辑电路模块,用以统计一8位二进制数中含1的数量。moduleStatistics8(sum,A);output[3:0]sum;input[7:0]A;reg[3:0]sum;integeri;always@(A)beginsum=0;for(i=0;i<=8;i=i+1

3、)//for语句if(A[i])sum=sum+1;elsesum=sum;endendmodulemoduleStatistics8(sum,A);parameterS=4;output[3:0]sum;input[7:0]A;reg[3:0]sum;reg[2*S:1]TA;integeri;always@(A)beginTA=A;sum=0;repeat(2*S)beginif(TA[1])sum=sum+1;TA=TA>>1;endendendmodulerepeat循环语句for循环语句moduleStatistics

4、8(sum,A);parameterS=8;output[3:0]sum;input[7:0]A;reg[S:1]AT;reg[3:0]sum;reg[S:0]CT;always@(A)beginAT={{S{1'b0}},A};sum=0;CT=S;while(CT>0)beginif(AT[1])sum=sum+1;elsesum=sum;beginCT=CT-1;AT=AT>>1;endendendendmodule6-3用不同循环语句分别设计一个逻辑电路模块,用以统计一8位二进制数中含1的数量。while循环语句modu

5、levoter7(pass,vote);outputpass;input[6:0]vote;reg[2:0]sum;integeri;regpass;always@(vote)beginsum=0;for(i=0;i<=6;i=i+1)//for语句if(vote[i])sum=sum+1;if(sum[2])pass=1;//若超过4人赞成,则pass=1elsepass=0;endendmodule习题6-4用循环语句设计一个7人投票表决器。习题6-5Verilog设计一个4位4输入最大数值检测电路。//Verilog设计一

6、个4位4输入最大数值检测电路moduleMaximum_value_detection(Mostlarge,a,b,c,d);//4位4输入最大数值检测电路output[3:0]Mostlarge;input[3:0]a,b,c,d;wire[3:0]sum1,sum2,sum3;assignsum1=(a>b)?a:b;assignsum2=(c>d)?c:d;assignMostlarge=(sum1>sum2)?sum1:sum2;endmodule习题6-6从不完整的条件语句产生时序模块的原理看,例6-9和例6-10从表

7、面上看都包含不完整条件语句,试说明,为什么例6-9的综合结果含锁存器,二例6-10却没有。【例6-9】非阻塞赋初值导致错误【例6-10】阻塞赋初值正确modulemux4_1(D0,D1,D2,D3,S1,S0,OUT);outputOUT;inputD0,D1,D2,D3,S1,SO;reg[2:0]T;regOUT;always@(D0,D1,D2,D3,S1,S0)beginT<=0;if(SO==1)T<=T+1if(S1==1)T<=T+2;case(T)0:OUT=D0;1:OUT=D1;2:OUT=D2;3:OUT

8、=D3;default:OUTD0;endcaseendendmodulemodulemux4_1(DO,D1,D2,D3,S1,SO,OUT);outputOUT;inputDO,D1,D2,D3,S1,SO;reg[2:0]T;regOUT;always@(

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

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

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