|
MAXII CPLD 实验板
Quartus II 使用入门
|
下面,我们通过一个简单的实例来演示如何使用 Quartus II6.0 在 PLD 器件上做一个完整的逻辑设计。我们将在 PLD 上实现一个三人表决器的逻辑。三人表决,以少数服从多数为原则,多数人同意则议案通过,否则议案被否决。这里,我们使用三个按键代表三个参与表决的人,置“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. |
双击桌面上 Quartus II6.0 的图标,启动 Quartus II6.0 软件。 |
2. |
通过 File => New Project Wizard… 菜单命令启动新项目向导。 |
3. |
在随后弹出的对话框上点击 Next 按钮,继续。 |
4. |
在 What is the working directory for this project 栏目中设定新项目所使用的路径;在 What is the name of this project 栏目中输入新项目的名字: vote ,点击 Next 按钮。 |
5. |
在这一步,向导要求向新项目中加入已存在的设计文件。因为我们的设计文件还没有建立,所以点击 Next 按钮,跳过这一步。 |
6. |
在这一步选择器件的型号。Family 栏目设置为 MAXII ,选中 Specific device selected in ‘Available devices’ list 选项,在 Available device 窗口中选中所使用的器件的具体型号,这里以 EPM240T100C5 为例。点击 Next 按钮,继续。 |
7. |
在这一步,可以为新项目指定综合工具、仿真工具、时间分析工具。在这个实验中,我使用 Quartus II6.0 的默认设置,直接点击 Next 按钮,继续。 |
8. |
确认相关设置,点击 Finish 按钮,完成新项目创建。 |
9. |
接下来,我们建立一个原理图文件,并加入该项中来。在 File 菜单下,点击 New 命令。在随后弹出的对话框中选择 Block Diagram/Schematic File 选项,点击 OK 按钮。在 File 菜单下 选择 Save As 命令,将其保存,并加入到项目中。 |
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 命令,启动 Pin Planner 工具。在这个工具中,我们可以为我们的电路的端子分配器件的引脚。在 All Pins 表格中,双击 Node Name 列的 new node 单元,输入端子的名字。在同一行的 Location 列,选择要分配的位置。重复操作,为每个端子都分配适当的脚位。 |
19. |
在 Assignments 菜单下,点击 Device… 命令。在随后弹出的对话框中点击 Device & Pin Options… 按钮,进入 Device & Pin Options 对话框。切换到 Unused Pins 页,在 Reserved all unused pins 栏目中,选择 As input tri-stated 。因为我们的设要在开发板上演示,所以把没有用到的管脚设为输入,以避免与开发板上其它电路发生冲突。点击确定按钮,确认设置。回到 Seting 对话框,点击 OK 按钮。 |
20. |
在 Processing 菜单下,点击 Start Compilation 命令,开始编译我们的项目。编译结束后,点击 确定 按钮。 |
21. |
在把我们的设计下载到开发板上验证之前,我们可以先做一下仿真。首先,我们要建立一个输入波形文件。仿真工具会用到该文件,以确定每个输入引脚的激励信号。在 File 菜单下,点击 New 命令。在随后弹出的对话框中,切换到 Other Files 页。选中 Vector Waveform File 选项,点击 OK 按钮。 |
22. |
现在,我们已经进入到波形编辑界面。在 Edit 菜单下,点击 Insert Node or Bus… 命令。 |
23. |
点击 Node Finder… 按钮,打开 Node Finder 对话框。点击 List 按钮,列出电路所有的端子。点击 >> 按钮,全部加入。点击 OK 按钮,确认。 |
24. |
回到 Insert Node or Bus 对话框,点击 OK 按钮,确认。 |
25. |
选中 in1 信号,在 Edit 菜单下,选择 Value => Clock… 命令。在随后弹出的对话框的 Period 栏目中设定参数为50ns,点击 OK 按钮。 |
26. |
In2 、in3 也用同样的方法进行设置,Period 参数分别为 100ns 和 200ns 。 |
27. |
保存文件,在 Processing 菜单下,选择 Start Simulation 启动仿真工具。仿真结束后,点击确认按钮。观察仿真结果,对比输入与输出之间的逻辑关系否符合真值表。 |
28. |
使用下电缆,将开发板 Jtag口(J7) 与电脑的并行口相连,接通开发板电源。连接下载电缆时,注意10PIN插头的方向,要使红线在右侧。在 Tools 菜单下,选择 Programmer 命令, 打开 Quartus II Programmer 工具。点击 Hardware Setup 按钮,进行下载线设置,选择所用的下载线型号。 |
29. |
选中 Program/Configure、Verify、Blank-Check 选项,点击 Start 按钮,将配置文件 vote.pof 下载到开发板上。拔动拔码开关的 1、2、3 位,进行各种组合,观察 LED1、LED2 的状是否符合真值表。 |
|
|
|