实验一 原理图输入方式设计数字逻辑电路

  • 格式:doc
  • 大小:340.50 KB
  • 文档页数:6

下载文档原格式

  / 6
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一原理图输入方式设计数字逻辑电路

一、实验目的:

1、了解基本组合逻辑电路的原理及利用Quartus II 软件进行设计的一般方法。

2、熟悉Quartus II 原理图输入法的设计流程,掌握编辑、编译和仿真的方法。

3、掌握原理图的层次化设计方法。

4、了解Quartus II 软件的编程下载及引脚锁定的方法。

5、了解Quartus II宏功能模块的使用方法。

二、实验的硬件要求:

1、EDA/SOPC实验箱。

2、计算机。

三、实验原理

见附件《Quartus设计的一般步骤》、《元件例化和调用的操作步骤》、《QuartusII基于宏功能模块的设计》

四、实验内容:

1、用原理图方式设计1位二进制半加器半加器。

新建一个工程“HalfAdder”,选择芯片“Cyclone III EP3C16Q240C8”,建立原理图如图1-1,保存为“HalfAdder.BDF”。

图1-1 半加器电路图

编译工程。

建立波形文件,对半加器电路分别进行时序仿真和功能仿真,其波形如下:

图1-2半加器时序仿真波形,注意观察输出延时,以及毛刺的产生原因

图1-3半加器功能仿真波形

2、原理图层次化设计。

新建一工程,取名“FullAdder”;将上面设计的半加器“HalfAdder.BDF”复制到当前工程目录,并生成“符号元件”HalfAdder.BSF。

建立一个原理图文件,取名“FullAdder.BDF”,利用“符号元件”HalfAdder.BSF及其它元件设计全加器电路如下图:

用功能仿真测试全加器的逻辑功能。

图1-5 全加器功能仿真波形

图1-6是输入输出信号与FPGA连接示意图,图中用到了“拨档开关”作为输入,“LED

显示模块”显示输出值。表1-1是本实验连接的FPGA管脚编号。

图1-6 输入输出信号与FPGA管脚连接示意图

将sof文件下载到FPGA中进行测试。

3、 QuartusII 宏功能模块实现ROM 存储器模块。 ② 建一个原理图文件。 ②使用“MegaWizard Plug-In Manager ”向导,按图1-7的步骤定制一个32×8bit 的ROM 模块。

③建立内存初始化文件

QuartusII 能接受的LPM_ROM 中的初始化数据文件的格式有 2 种:Memory Initialization File (.mif )格式和Hexadecimal (Intel-Format )File (.hex )格式。内存初始化文件可以手工编写,也可以用其它软件生成。本例数据量较小,可以在QuartusII 中直接file →new →……Memory File →Memory Initialization File ,然后填写每个存储单元的数据(如:0~31依次递增)即可。实验中要求初始化数据为学号开始连续递增的32个数字(如学号为15,则内存数据为15~44)

图1-7 使用“MegaWizard Plug-In Manager ”定制

ROM

选择ROM 模块

内存初始化文件

④生成图1-8所示的ROM模块添加管脚,编译并仿真测试。

图1-8 测试ROM模块

4、用ROM作为流水灯数据输入,并测试

用16个LED灯可以显示出各种奇妙的显示效果,实际上是在每个时钟节拍输出16位的数据显示在LED上。需要显示的数据预先写好存储在ROM中,设置ROM中的数据就可以显示任意的图案。

按图1-7设计一个ROM存储器和一个计数器。ROM存储器位宽:16bit,容量:256个字,用LED.MIF作为初始化文件。计数器(counter)也可以用宏功能模块(在“Arithmetic”中的“LPM_COUNTER”),采用“q”为8位输出的默认设置,即可得到一个0~255的加法计数器。计数器输出作为ROM地址输入,这样可以按时钟节拍依次输出0~255各个地址的数据。

将图1-9的原理图作为顶层文件编译,按照表1-2绑定管脚,重新编译后下载到实验箱。时钟频率使用10HZ,输出端连接16个LED灯。

图1-9 ROM作为流水灯的输入测试电路

五、实验步骤:

1.首先打开Quartus II软件,新建工程。

2.按照自己的想法,编写原理图或VHDL文件程序。

3.对自己的设计进行编译并仿真。

4.仿真无误后,根据附录一的引脚对照表,对实验中用到的拨挡开关及LED进行管脚绑定,然后再重新编译一次。

5.用下载电缆通过JTAG接口将对应的sof文件下载到FPGA中。

6.观察实验结果是否与自己的预期想法相吻合。

7.二进制半加器半加器要求分别用时序仿真“Timing”和功能仿真“Function”观察仿真波形,说明“毛刺”出现的原因。其它实验只需进行功能仿真。

六、实验报告要求

1.总结原理图输入法的设计流程。

2.分析“毛刺”产生的原因及如何消除其影响。

3.总结层次化设计的步骤和方法。

4.Altera提供的宏功能模块与LPM函数有哪些种类?