EDA实验报告.docx
《EDA实验报告.docx》由会员分享,可在线阅读,更多相关《EDA实验报告.docx(16页珍藏版)》请在冰豆网上搜索。
EDA实验报告
合肥学院
课程设计报告
题目:
EDA(QuartusII)使用入门
系别:
电子信息与电气工程系
专业:
电子信息工程
班级:
07电子2班
学号:
姓名:
导师:
康石生
成绩:
2010年5月19日
QuartusII使用入门
在这个实验中我们通过一个简单的实例来演示如何使用QuartusII6.0在FPGA器件上做一个完整的逻辑设计。
我们将在FPGA上实现一个三人表决器的逻辑。
三人表决,以少数服从多数为原则,多数人同意则议案通过,否则议案被否决。
这里,我们使用三个按键代表三个参与表决的人,置“0”表示该人同意议案,置“1”表示该人同意议案;两个指示灯用来表示表决结果,LED1点亮表示议案通过,LED2点亮表示议案被否决。
真值表如下:
S1
S2
S3
LED1
LED2
0
0
0
0
1
0
0
1
0
1
0
1
0
0
1
0
1
1
1
0
1
0
0
0
1
1
0
1
1
0
1
1
0
1
0
1
1
1
1
0
下面我们就具体来实现这一设计。
1、双击桌面上QuartusII6.0的图标,启动QuartusII6.0软件。
2、通过File=>NewProjectWizard…菜单命令启动新项目向导。
3、在随后弹出的对话框上点击Next按钮,继续。
4、在Whatistheworkingdirectoryforthisproject栏目中设定新项目所使用的路径;在Whatisthenameofthisproject栏目中输入新项目的名字:
vote,点击Next按钮。
5、在这一步,向导要求向新项目中加入已存在的设计文件。
因为我们的设计文件还没有建立,所以点击Next按钮,跳过这一步。
6、在这一步选择器件的型号。
Family栏目设置为Cyclone,选中Specificdeviceselectedin‘Availabledevices’list选项,在Availabledevice窗口中选中所使用的器件的具体型号,这里以EP1C6Q240C8为例。
点击Next按钮,继续。
7、在这一步,可以为新项目指定综合工具、仿真工具、时间分析工具。
在这个实验中,我使用QuartusII6.0的默认设置,直接点击Next按钮,继续。
8、确认相关设置,点击Finish按钮,完成新项目创建。
9、接下来,我们建立一个原理图文件,并加入该项中来。
在File菜单下,点击New命令。
在随后弹出的对话框中选择BlockDiagram/SchematicFile选项,点击OK按钮。
在File菜单下选择SaveAs命令,将其保存,并加入到项目中。
10、根据上面的真值表,做卡诺图简化,可以得出:
LED1=S1S2+S1S3+S2S3,LED2=~LED1。
双击原理图的任一空白的处,会弹出一个元件对话框。
在Name栏目中输入and2,我们就得到一个2输入的与门。
11、点击OK按钮,将其放到原理图的适当位置。
重复操作,放入另外两个2输入与门。
也可以通过右键菜单的Copy命令复制得到。
12、双击原理图的空白处,打开元件对话框。
在Name栏目中输入or3,我们将得到一个3输入的或门。
点击OK按钮,将其放入原理图。
13、双击原理图的空白处,打开元件对话框。
在Name栏目中输入not,我们会得到一个非门。
点击OK按钮,将其放入原理图。
14、将鼠标入到元件的引脚上,鼠标会变成“十”字形状。
按下左键,拖动鼠标,就会有导线引出。
根据我们要实现的逻辑,连好各元件的引脚。
15、双击原理图的空白处,打开元件对话框。
在Name栏目中输入Input,我们便得到一个输入引脚。
点击OK按钮,放入原理图。
重复操作,给我们的电路加上3个输入引脚。
16、双击输入引脚,会弹出一个属性对话框。
在这一对话框上,我们可更改引脚的名字。
我们分别给3个输入引脚取名in1、in2、in3。
17、双击原理图的空白处,打开元件对话框。
在Name栏目中输入output,我们会得到一个输出引脚。
点击OK按钮,放入原理图。
重复操作,给我们的电路加上两个输出引脚。
给两个输出引肢分别命名为led1、led2。
18、在Assignments菜单下,点击Pins命令,启动PinPlanner工具。
在这个工具中,我们可以为我们的电路的端子分配器件的引脚。
在AllPins表格中,双击NodeName列的newnode单元,输入端子的名字。
在同一行的Location列,选择要分配的位置。
重复操作,为每个端子都分配适当的脚位。
19、在Assignments菜单下,点击Device…命令。
在随后弹出的对话框中点击Device&PinOptions…按钮,进入Device&PinOptions对话框。
切换到configuration页,在ConfigurationDevice栏目中,选中useconfigurationdevice选项,配置器件型号选择EPCS1,同时,选中Generatecompressedbitstreams选项。
20、切换到UnusedPins页,在Reservedallunusedpins栏目中,选择Asinputtri-stated。
因为我们的设要在开发板上演示,所以把没有用到的管脚设为输入,以避免与开发板上其它电路发生冲突。
点击确定按钮,确认设置。
回到Seting对话框,点击OK按钮。
21、在Processing菜单下,点击StartCompilation命令,开始编译我们的项目。
编译结束后,点击确定按钮。
22、在把我们的设计下载到开发板上验证之前,我们可以先做一下仿真。
首先,我们要建立一个输入波形文件。
仿真工具会用到该文件,以确定每个输入引脚的激励信号。
在File菜单下,点击New命令。
在随后弹出的对话框中,切换到OtherFiles页。
选中VectorWaveformFile选项,点击OK按钮。
23、现在,我们已经进入到波形编辑界面。
在Edit菜单下,点击InsertNodeorBus…命令。
24、点击NodeFinder…按钮,打开NodeFinder对话框。
点击List按钮,列出电路所有的端子。
点击>>按钮,全部加入。
点击OK按钮,确认。
25、回到InsertNodeorBus对话框,点击OK按钮,确认。
26、选中in1信号,在Edit菜单下,选择Value=>Clock…命令。
在随后弹出的对话框的Period栏目中设定参数为50ns,点击OK按钮。
27、In2、in3也用同样的方法进行设置,Period参数分别为100ns和200ns。
28、保存文件,在Processing菜单下,选择StartSimulation启动仿真工具。
仿真结束后,点击确认按钮。
观察仿真结果,对比输入与输出之间的逻辑关系否符合真值表。
29、使用下电缆,将开发板Jtag口与电脑的并行口相连,接通开发板电源。
在Tools菜单下,选择Programmer命令,打开QuartusIIProgrammer工具。
点击HardwareSetup按钮,进行下载线设置,选择所用的下载线型号。
30、选中Program/Configure选项,点击Start按钮,将配置文件vote.sof下载到开发板上。
按下S1、S2、S3按钮的各种组合,观察LED1、LED2的状是否符合真值表。
31、断开开发板电源。
将下载线从Jtag口换到As口上,然后重新接通开发板电源。
在QuartusII6.0工具软件中,将Mode选项设置为ActiveSerialProgramming。
点击AddFile…按钮,将vote.pof文件加入进来。
选中Program/Configure选项,点击Start按钮,将配置数据烧写到配置芯片中。
32、断开开发板电源,从As上取下下载线。
重新接通开发板电源,按下S1、S2、S3的个种组合,观察LED1、LED2的输出结果是否符合真值表。