实验项目 Verilog组合逻辑设计.ppt_第1页
实验项目 Verilog组合逻辑设计.ppt_第2页
实验项目 Verilog组合逻辑设计.ppt_第3页
实验项目 Verilog组合逻辑设计.ppt_第4页
实验项目 Verilog组合逻辑设计.ppt_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、a,1,实验目的,掌握使用Xilinx ISE软件的使用 学习Verilog语言的组合逻辑的设计方法 根据逻辑电路图进行门级描述 掌握Verilog模块的仿真测试方法 掌握可下载的流文件的生成方法 熟悉FPGA开发板,在开发板上进行测试,1,a,2,Nexys3开发板,2,电源开关,外接电源插孔,a,3,实验任务,13-8译码器74x138的设计和实现。(必做题) 2两输入4位多路选择器74x157的设计和实现。(必做题) 34位并行进位加法器74x283的设计和实现。(选做题) 实验要求如下: 1采用Verilog语言设计,使用门级方式进行描述。 2编写仿真测试代码。 3编写约束文件,使输入

2、、输出信号与开发板的引脚对应。 4下载到FPGA开发板,拨动输入开关和按钮,观察Led灯的显示是否符合真值表。,3,a,4,74x138译码器的真值表,3-8译码器,输出低有效,_ _ G=G1 G2A G2B,4,a,5,Y3_L = (G CBA ),G = G1 G2A G2B,输出是低有效 3个控制信号中有两个是低有效 (教材第270页倒数第9行最后一句的原文有更正),74x138的逻辑表达式,5,a,6,74x138的逻辑电路图,6,a,7,74x138译码器的Verilog设计,设计任务:在Nexys3开发板上实现74x138译码器。 设计步骤: 阅读数字设计原理与实践(原书第版)

3、第270-272页,理解74x138译码器的功能。 仔细分析图6-35,确定输入、输出端口名称,补充中间信号的名称。 根据图6-35中每个门的输入、输出信号,编写门级描述代码,参考格式为 非门: not 元件名 ( 输出 , 输入 ) ; 与非门: nand 元件名 ( 输出 , 输入 , 输入) ; 或非门: nor 元件名 ( 输出 , 输入 , 输入) ; 上面的元件名是可选项,可以不编写。,7,a,8,74x138译码器的实验步骤,1. 双击ISE Design Suite 14.7图标 2.点击菜单File-New Project,8,a,9,3.设置项目名称和文件目录,点击按钮选择

4、目录,输入项目名称,由于ISE的局限,目录和项目名称中不要有中文或空格。,目录和项目名称可以改为其它有意义的名字。,9,a,10,4.项目设置,请根据左图进行设置,然后点击Next按钮。进入下一对话框时点击Finish按钮。,10,a,11,5.新建源文件,点击右键弹出菜单,点击New Source,11,a,12,6.新建Verilog文件,选择文件类型,输入文件名,然后一直点击Next或Finish按钮,12,a,13,7.输入Verilog源代码,13,a,14,8. 部分设计代码 (供参考) -参考文件:decoder_74x138.v,( G1, G2A_L, G2B_L, C, B

5、, A, Y7_L , Y6_L , Y5_L , Y4_L , Y3_L , Y2_L , Y1_L , Y0_L ); input G1, G2A_L, G2B_L; input C,B,A; output Y7_L ,请补充 ; wire G1_L , G ; wire A_L , B_L , C_L ; wire A_H , B_H , C_H ; not ( G1_L , 请补充 ) ; nor (请补充 , G1_L , 请补充 ) ; not ( A_L , A ) ; not ( A_H , A_L ) ; 请补充 nand ( Y0_L , C_L , B_L , A_L ,

6、 G ) ; 请补充,14,a,15,9.语法检查,选择源文件,点击后进行语法检查,如果有错,根据提示信息修改错误,直到无误。,15,a,16,10. 新建测试文件,在空白处点击右键,弹出菜单,点击New Source,16,a,17,11. 测试文件名称,选择文件类型,输入文件名,然后点击Next按钮,17,a,18,12. 选择需要测试的模块,然后点击Next按钮,进入下一对话框后点击Finish按钮,18,a,19,13. 进入仿真视图,选择仿真视图,双击后进行编辑。,19,a,20,14. 编写激励代码,输入激励代码,20,a,21,15. 部分激励代码(供参考) -参考文件:deco

7、der_74x138_tb.v,G1 = 0 ; G2A_L = 1bx ; G2B_L = 1bx ; C = 1bx ; B = 1bx ; A = 1bx ; #100 ; G1 = 1bx ; G2A_L = 1 ; G2B_L = 1bx ; C = 1bx ; B = 1bx ; A = 1bx ; 请按照表6-6补充其它激励代码,21,a,22,16. 仿真设置,选中后点击右键,弹出菜单后点击Process Properties,22,a,23,17. 修改仿真的运行时间,将缺省值1000ns改为1200ns,然后点击OK按钮。,23,a,24,18.启动仿真,双击,24,a,2

8、5,19. 查看仿真波形,按F6键可看到从开始时刻到结束时刻的波形。,25,a,26,20. 添加约束文件,在空白处点击右键,弹出菜单,点击New Source,点击,切换到实现视图,26,a,27,21. 输入约束文件的名称,选择文件类型,输入文件名,然后点击Next按钮,进入下一对话框后点击Finish按钮。,27,a,28,22. 编辑约束文件,双击,28,a,29,23. 约束文件内容 -参考文件:decoder_74x138_nexys3.ucf,#Switch NET A LOC = T10 ; NET B LOC = T9 ; NET C LOC = V9 ; NET G2B_L

9、 LOC = M8 ; NET G2A_L LOC = N8 ; NET G1 LOC = U8 ; #Led NET Y0_L LOC = U16 ; NET Y1_L LOC = V16 ; NET Y2_L LOC = U15 ; NET Y3_L LOC = V15 ; NET Y4_L LOC = M11 ; NET Y5_L LOC = N11 ; NET Y6_L LOC = R11 ; NET Y7_L LOC = T11 ;,Verilog模块中的端口名称,FPGA芯片的引脚名称,29,a,30,24. 生成编程文件,在设计视图中,选择顶层模块,生成编程文件。,点击右键,弹出

10、菜单后,选择Rerun All,如果有错,根据提示信息修改错误,直到无误。,30,a,31,25. Nexys3开发板上电,电源开关,31,外接电源插孔,a,32,26. 启动下载工具,双击Adept图标,32,a,33,27. 下载编程文件,点击后显示文件打开对话框,在项目所在的目录中选择生成的bit文件,点击后开始下载。下载完毕后拨动开关,观察LED的显示是否符合真值表。如果完全没有显示,则尝试重新生成编程文件后,再下载。如果仍然不对,则应检查错误原因。最常见的原因是约束文件有误。,33,a,34, 数据选择器: 又叫多路开关,MUX(Multiplexer) 在选择信号的控制下,从多路数

11、据中选择一路数据作为输出信号。,数据选择器,34,a,35,输入数据,输出数据,选择信号,集成化,型号:74LS157,2选1数据选择器,35,a,36,74x157的逻辑符号和真值表,36,a,37,74x157的逻辑电路图,37,a,38,两输入4位多路选择器74x157的设计和实现,数字设计原理与实践(原书第版)第306-308页。 仿真代码可参考Verilog HDL数字设计与综合(第2版)第46-47页。,38,a,39,两输入4位多路选择器74x157的设计和实现 -参考文件:mux_2in4bit.v, mux_2in4bit_tb.v, mux_2in4bit_nexys3.u

12、cf,阅读数字设计原理与实践(原书第版)第306-308页。 根据逻辑电路图6-61,进行门级描述。确定输入、输出端口名称,补充中间信号的名称。参考格式为 非门: not 元件名 ( 输出 , 输入 ) ; 或非门: nor 元件名 ( 输出 , 输入 , 输入) ; 与门: and 元件名 ( 输出 , 输入 , 输入) ; 或门: or 元件名 ( 输出 , 输入 , 输入) ; 仿真代码可参考Verilog HDL数字设计与综合(第2版)第46-47。请根据自己的设计进行修改。,39,a,40,低位向本位的进位,本位和,本位向高位的进位,全加器,40,a,41,1位全加器的真值表,全加器

13、逻辑函数式,Sn = Cn (An Bn),C n+1 = AnBn+Cn(An Bn) = AnBn+Cn(An + Bn),41,a,42,并行进位加法器,先行进位法:第 i 位的进位输入信号可以由该位以前的各位状态决定。,C0 = 0,Ci+1 = Gi + Pi Ci,C0 = 0 C1 = G0+P0C0 C2 = G1+P1C1 = G1+P1(G0+P0C0) = G1+P1G0+ P1P0C0 Cn+1 = Gn+PnCn,MSI加法器 74x283 图6-87,42,a,43,图6-87,4位并行加法器 74x283,43,a,44,4位并行进位加法器74x283的设计和实现 -参考文件: Adder_4Bit.v, Adder_4Bit_tb.v, Adder_4Bit_Nexys3.ucf,阅读数字设计原理与实践(原书第版)第339-343页。 根据逻辑电路图6-87,进行门级描述。确定输入、输出端口名称,补充中间信号的名称。参考格式为 非门: not 元件名 ( 输出 , 输入 ) ; 与非门: nand

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论