FPCA简单逻辑实验verilog_第1页
FPCA简单逻辑实验verilog_第2页
FPCA简单逻辑实验verilog_第3页
FPCA简单逻辑实验verilog_第4页
FPCA简单逻辑实验verilog_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、上海电力学院 题目: FPGA应用开发实验 实验二 简单的组合逻辑电路设计 院系: 专业年级: 学生姓名: 学号: 指导教师: 2015年3月27日一、实验目的 (1) 掌握组合逻辑电路的设计方法。 (2) 掌握同一项目下对指定文件的编译方法。(3) 加深PLD设计的过程,并比较原理图输入法和文本输入法的优劣。二、实验器材 Quartus II 应用开发软件三、实验内容及步骤1、四舍五入判别电路 设计一个四舍五入判别电路,其输入为8421BCD码,要求当输大于或等于5时,判别电路输出为1,反之为0。参考原理图: 四舍五入判别电路 第1步:打开QuartusII。 第2步:新建一个空项目。执行

2、File->New Project Wizard 命令,进入新建项目向导,填入项目的名称。指定CPLD/FPGA器件,选择芯片系列为“CycloneII”,型号为 “EP2C35F672C6N”。选择型号时,可通过指定封装方式 ( Package )为“FBGA”、引脚数(Pin count)为“672”以及速度等级(Speed grade)为“6”这3个参数值来进行筛选。向导的后面几步不做更改,直接按Next即可,最后按Finish结束向导。到此即完成了一个项目的新建工作。 第3步:新建一个Verilog HDL文件。 由于之前建立的项目还是一个空项目,所以接着需要为项目新建文件。执行

3、File->New命令,在“Device Design Files”选项页中选择“Verilog HDL File”,然后点击OK按钮。这时自动新建一个名为Verilog1.v的文档,执行File->Save As命令,将文档另存为ll.v文件。 第4步:代码输入module ll(D0,D1,D2,D3,OUT);input D0,D1,D2,D3;output OUT;assign OUT=(D0&D2)|(D1&D2)|D3;endmodule第5步:代码的语法检查和编译,直到程序无误。第6步:功能仿真。新建矢量波形图,起名为ll.vwf,执行 Edit-&g

4、t;Insert Node or Bus命令,点击“Node Finder”按钮,打开节点搜索窗口,在 Filter 下拉框中选择所要寻找的节点类型,这里选择“Pins:all”,点击 List 按钮,在 Nodes Found 框中列出所有的引脚。选择所有引脚,单击 按钮,将所有引脚添加到 Selected Nodes框中,再按 OK 按钮返回波形编辑器窗口。编辑 a 和 b 的输入波形,保存矢量波形文件。选择 Processing->Simulator Tool,选择仿真模式(Simulator mode)为“Functional”,并选择 ll.vwf 文件作为仿真输入(Simul

5、ation input)波形文件。点击 Generate Functional Simulation Netlist 按钮,生成仿真网表。然后点击 Start 按钮,开始仿真。在仿真完成后,点击 Report 按钮即可观看仿真的结果,仿真结果如下: 从波形可以看出,程序的逻辑功能是正确的。第7步:时序仿真。先编译,再选择 Processing->Simulator Tool, 并将仿真模式设为“Timing”, 点击全编译通过后,再点击 Start 按钮。最后点击 Report 按钮查看仿真结果: 与功能仿真结果相比较,可以看出时序仿真的输出带有一定的延迟。第8步:分配引脚。选择 Ass

6、ignments->Pins 命令,打开引脚规划器(Pin Planner)。接着双击信号 的 Location 栏,在下拉框中选择引脚(四位拨码开关连SW3,SW2,SW1,SW0信号对应的管脚,OUT接LED0,在附录中查表即可)。 第9步:程序下载。 用USB连接线连接DE2和电脑,将SW19置于RUN位置。JTAG 模式配置。 可在DE2上验证:SW0、SW1至少有一个置于1,SW3、SW2置于0,LEDG0灯不亮;将SW2置于1的位置,SW3置于0,SW0、SW1至少有一个置于1,可以看到LEDG0灯亮;将SW3置于1的位置,无论SW0、SW1、SW2置于0或1,可以看到LED

7、G0灯亮。2.控灯电路设计四个开关控制一盏灯的逻辑电路,要求合任一开关,灯亮;断任一开关,灯灭。(即任一开关的合断改变原来灯亮灭的状态)参考原理图: 控灯电路 第1步:打开QuartusII。 第2步:新建一个空项目。第3步:新建一个Verilog HDL文件。将文档另存为ll.v。第4步:代码输入。module ll(OUT,K0,K1,K2,K3);output OUT;input K0,K1,K2,K3;wire S1,S2;xor X1(S1,K0,K1);xor X2(S2,K2,K3);xor X3(OUT,S1,S2);endmodule 第5步:代码的语法检查和编译。直到程序无

8、误。第6步:功能仿真。仿真结果如下: 从波形可以看出,程序的逻辑功能是正确的。第7步:时序仿真。结果: 与功能仿真结果相比较,可以看出时序仿真的输出带有一定的延迟。第8步:分配引脚。选择 Assignments->Pins 命令,打开引脚规划器(Pin Planner)。接着双击信号 的 Location 栏,在下拉框中选择引脚(四位按键开关连SW1,SW2,SW3,SW4信号对应的管脚,OUT接LED0,在附录中查表即可)。第9步:程序下载。用USB连接线连接DE2和电脑,将SW19置于RUN位置。JTAG 模式配置。实验结果:3.优先权排队电路设计一个优先权排队电路,其框图如下: 排

9、队顺序:A=1最高优先级B=1次高优先级C=1最低优先级 要求输出端最高只能有一端为“1”,即只能是优先级较高的输入端所对应的输出端为“1”。参考原理图: 优先权排队电路 第1步:打开QuartusII。 第2步:新建一个空项目。第3步:新建一个Verilog HDL文件。将文档另存为ll.tdf。第4步:代码输入。module ll(A,B,C,A_OUT,B_OUT,C_OUT);input A,B,C;output A_OUT,B_OUT,C_OUT;wire An,Bn;assign A_OUT=A;not N0(An,A);not N1(Bn,B);and K0(B_OUT,An,B

10、);and K1(C_OUT,An,Bn,C);endmodule第5步:代码的语法检查和编译。直到程序无误。第6步:功能仿真。仿真结果如下: 从波形可以看出,程序的逻辑功能是正确的。第7步:时序仿真。结果: 与功能仿真结果相比较,可以看出时序仿真的输出带有一定的延迟。第8步:分配引脚。(A、B、C对应三个位按键开关,三个OUT接三个LED,在附录中查表即可)。 第9步:程序下载。用USB连接线连接DE2和电脑,将SW19置于RUN位置。JTAG 模式配置。 实验结果:四、实验小结在这一次实验中,我对FPGA软件QuartusII的使用流程有了基础的了解,掌握了文本输入和图形输入的方法,前者在程序编写

温馨提示

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

评论

0/150

提交评论