电子电路设计verilog实验报告.docx

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
电子电路设计verilog实验报告.docx

Verilog实验报告 2017年5月目录练习一:简单组合逻辑设计5一、实验目的5二、实验设备5三、实验内容5四、实验代码5五、仿真结果5六、实验总结6选作一:设计一个字节的比较器7一、实验目的7二、实验设备7三、实验代码7四、仿真结果8五、实验总结8练习二 简单分频时序逻辑电路的设计9一、实验目的9二、实验设备9三、实验内容9四、实验代码9五、仿真结果10六、实验总结10选作二 七段数码管译码电路11一、实验目的11二、实验设备11三、实验代码11四、仿真结果12五、实验总结12练习三:利用条件语句实现计数分频时序电路13一、实验目的13二、实验设备13三、实验内容13四、实验代码13五、仿真结果14六、实验总结14选作三:设计一个单周期形状的周期波形15一、实验目的15二、实验设备15三、实验代码15四、仿真结果16五、实验总结16练习五:用always块实现较复杂的组合逻辑17一、实验目的17二、实验设备17三、实验内容17四、实验代码17五、仿真结果18六、实验总结18选作五:运用always块设计一个8路数据选择器19一、实验设备19二、实验内容19三、实验代码19四、仿真结果20五、实验结果20练习六:在 Verilog HDL中使用函数21一、实验目的21二、实验设备21三、实验内容21四、实验代码21五、仿真结果22六、实验结果22选作六:设计一个带控制端的逻辑运算电路23一、实验设备23二、实验内容23三、实验代码23四、仿真结果24五、实验总结24练习七:在Verilog HDL中使用任务(task)25一、实验目的25二、实验设备25三、实验内容25四、实验代码25五、仿真结果26六、实验总结26选作七:冒泡排序27一、实验目的27二、实验设备27三、实验代码27四、仿真结果29五、实验总结30练习八:利用有限状态机进行时序逻辑的设计31一、实验目的31二、实验设备31三、实验内容31四、实验代码31五、仿真波形33六、设计思路34七、实验总结34选作八:楼梯灯35一、实验设备35二、实验内容35三、实验代码35四、仿真结果41五、设计思路41六、实验总结41总结42建议42分工42练习一:简单组合逻辑设计一、实验目的 1、掌握基本组合逻辑电路的实现方法。 2、初步了解两种基本组合逻辑电路的生成方法。3、学习测试模块的编写。 4、通过综合和布局布线了解不同层次仿真的物理意义。 二、实验设备 安装Modelsim-6.5c的PC机。三、实验内容 描述一个可综合的数据比较器,比较数据a 、b的大小,若相同,则给出结果1,否则给出结果0。四、实验代码①模块源代码module compare(equal,a,b); input a,b;output equal; assign equal=(a==b)?1:0; endmodule②测试程序`timescale 1ns/1ns; `include "compare.v" module compare_tb;reg a,b; wire equal;initialbegina=0;b=0;#100 a=0;b=1;#100 a=1;b=1;#100 a=1;b=0;#100 a=0;b=0;#100 $stop;#100 a=0;b=1;end compare m(.equal(equal),.a(a),.b(b)); endmodule五、仿真结果六、实验总结verilog组合逻辑设计一般常用的语句有两种:持续赋值语句(assign语句)和过程赋值语句(always@(*)语句)。两者之间的差别有:持续赋值语句(assign语句)主要用于对wire型变量的赋值,因为wire(线型)的值不能存住,需要一直给值,所以需要用持续赋值。例如:assign c = a + b; ? ?只要a和b有任意变化,都可以立即反映到c上,也就是说c的值是根据a,b的值随时变化的。过程赋值语句(always语句)主要用于reg 型变量的赋值?,因为always语句被执行是需要满足触发条件的,所以always过程块里面的内容不是每时每刻都被执行,因此需要将被赋值的对象定义成寄存器类型,以便这个值能被保持住。本实验测试模块中,为了生成变化的数据信号a和b,采用了#100 a=0;b=1;赋值语句。若需要比较的数据较多,所需赋值语句会增加,采用always # 100 clock=~clock产生周期时钟信号然后随机生成数据更简便。选作一:设计一个字节的比较器一、实验目的 比较两个字节的大小,如a[7:0]大于b[7:0],则输出高电平,否则输出低电平;并改写测试模型,使其能进行比较全面的测试。二、实验设备 安装Modelsim-6.5c的PC机。三、实验代码①模块源代码:

您可能关注的文档

文档评论(0)

zhangningclb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档