2022年VerilogHDL数字设计与综合第七章课后习题答案 .pdf
《2022年VerilogHDL数字设计与综合第七章课后习题答案 .pdf》由会员分享,可在线阅读,更多相关《2022年VerilogHDL数字设计与综合第七章课后习题答案 .pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 声明一个名为oscillate 的寄存器变量并将它初始化为0。使其每 30 个时间单位进行一次取反操作。不要使用always 语句。提示:使用forever 循环。答: 代码如下:reg oscillate; initial begin oscillate=0; forever #30 oscillate=oscillate; end 2 设计一个周期为40 个时间单位的时钟信号,其占空比为25%。使用 always 和 initial 块进行设计。将其在仿真0 时刻的值初始化为0。答: 代码如下:reg clock; initial clock=0; always begin #30 c
2、lock=1; #10 clock=0; end 3 给定下面含有阻塞过程赋值语句的initial块。每条语句在什么仿真时刻开始执行?a,b,c和 d 在仿真过程中的中间值和仿真结束时的值是什么?答: 仿真输出结果:4 在第 3 题中,如果initial 块中包括的是非阻塞过程赋值语句,那么各个问题的答案是什么?答:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - 第 7 章行为级建模79 最终 d 没有输出,因为d= #20 a
3、,b,c; 语句执行的是先将a,b,c 取值存储,在20 个时间单位后将存储的值赋给d,因为 b,c 在初始时刻没有值,所以d 值也是不确定的。5 指出在下面的Verilog 代码中各条语句的执行顺序。其中是否含有不确定的执行顺序?a,b,c 和 d 的最终值是什么?答: 先执行 a=1b0,b=1 b1,然后执行 #0 c=b,#0 d=a, 执行顺序不确定, 最终输出结果a=0,b=1,c=1,d=0. 6 在下面的例子中,d 的最终值是什么?答:仿真输出波形如下,最终输出结果d=1。0 时刻 b|c 的值是 1,在 25 个时间刻度后赋给d。7 使用带有同步清零端的D 触发器(清零端高电
4、平有效,在时钟下降沿执行清零操作)设计一个下降沿触发的D 触发器,只能使用行为语句。提示:D 触发器的输出q 应当声明为寄存器变量。使用设计出的D 触发器输出一个周期为10 个时间单位的时钟信号。答:第七题和第八题参见chapter7.v 8 使用带有异步清零端的D 触发器设计第7 题中要求的D 触发器(在清零端变为高电平后立即执行清零操作,无需等待下一个时钟下降沿),并对这个D 触发器进行测试。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - -
5、- - - - Verilog HDL数字设计与综合(第二版)80 答:第七题和第八题参见chapter7.v 9 使用 wait 语句设计一个电平敏感的锁存器,该锁存器的输入信号为d 和 clock,输出为q。其功能是当clock 1 时 q = d。答:代码及输出波形如下:module my_latch(d,clock,q); input d,clock; output q; reg q; always wait(clock) begin #1 q=d; /注意,这里的赋值语句前必须要加上#延迟,否则无法仿真。end endmodule module test79; reg d,clock
6、; wire q; initial clock=0; always #10 clock=clock; initial begin d=1b0; #15 d=1b1; #50 d=1b0; #20 $stop; end my_latch my_latch1(d,clock,q); endmodule 10使用条件语句设计例7.19 中的四选一多路选择器。外部端口必须保持不变。答:代码如下(标注行可以去掉)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - -
7、 - - - - - 第 7 章行为级建模81 module mux_41(out,i0,i1,i2,i3,s1,s0); input i0,i1,i2,i3; input s0,s1; output out; reg out; always (*) if(s1=0 & s0=0) out=i0; else if (s1=0 & s0=1) out=i1; else if (s1=1 & s0=0) out=i2; else if (s1=1 & s0=1) out=i3; else $display(Invalid control signals); /可去endmodule 11使用条件语
8、句对本章中的交通信号灯控制器进行重新设计。答:部分代码如下,其余代码与书中相同。always (state) begin hwy=GREEN; cntry=RED; if(state=S1) hwy =YELLOW; else if (state=S2) hwy =RED; else if (state=S3) begin hwy=RED; cntry=GREEN; end else if (state=S4) begin hwy=RED; cntry=YELLOW; end 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师
9、精心整理 - - - - - - - 第 4 页,共 9 页 - - - - - - - - - Verilog HDL数字设计与综合(第二版)82 else begin hwy=GREEN; cntry=RED; end end always (state or X) begin if(state=S0) begin if (X) next_state=S1; else next_state=S0; end else if(state=S1) begin repeat(Y2RDELAY) (posedge clock); next_state=S2; end else if(state=S2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年VerilogHDL数字设计与综合第七章课后习题答案 2022 VerilogHDL 数字 设计 综合 第七 课后 习题 答案
限制150内