文档介绍:基于QuartusII的实例
实验一 实验板上的KEY1按钮控制FPGA核心板上的LED灯——图形设计输入
目的:通过该实例学****可以了解FPGA的基本开发流程,熟识quartusII软件基本功能的使用。
原理:利用一个常开按钮(实验板上的KEY1,在板上标“S2”)作为输入(常开时输入1,闭合时输入0),经过一个反相器后输出到核心板的第一个LED。KEY1常开时,LED灭,按下(闭合)实验板上的KEY1,该LED亮。
建立工程
运行QuatrusII软件(以下简称Q2),建立工程,FileàNew Project Wizad如
点击New Project Wizard 后弹出指定工程名的对话框,在Diectory, Name, Top-Level Entity中如下图填写:
按Next按钮,出现添加工程文件的对话框:
在这里我们先不用管它,直接按Next进行下一步,选择FPGA器件的型号:
在Family下拉筐中,我们选择CycloneII系列FPGA,然后在“Available devices:”中根据核心板的FPGA型号选择FPGA型号。执行下一步出现对话框:
这里是选择其它EDA工具的对话框,我们用Q2的集成环境进行开发,因此这里不作任何改动。按Next进入工程的信息总概对话框,按Finish按钮即建立一个空项目。
建立顶层图
执行FileàNew,弹出新建文件对话框:
选择“Block Diagram Schematic File”按OK即建立一个空的顶层图,缺省名为“”,我们把它另存为(FileàSave as),接受默认的文件名,并将“Add file to current project”选项选上,以使该文件添加到工程中去。
如图所示:
添加逻辑元件(Symbol)
双击顶层图图纸的空白处,弹出添加元件的对话筐:
在Libraries里寻找所需要的逻辑元件,如果知道逻辑元件的名称的话,也可以直接在Name一栏敲入名字,右边的预览图即可显示元件的外观,按OK后鼠标旁边即拖着一个元件符号,在图纸上点击左键,元件即安放在图纸上。
在图纸上分别添加非门(not)、输入(input)、输出(output)三个symbol,如图所示:
连线,将鼠标移到symbol连线端口的那里,鼠标变成图示模样:,按下左键拖动鼠标到另一个symbol的连线端。本例中,这三个symbol的连线如下图所示:
分别双击input和output symbol的名字“pin_name”、“pin_name1”,将它们的名字改为Key1,LED:
设置。在建立工程的时候我们选定了芯片型号,其实也可以在这一步设定芯片型号,在菜单AssignmentsàDevice:
根据核心板的FPGA选择芯片型号,如根据我们的实验板选择EP2C5T144C8。点击设置对话框的“Device & Pin Options”按钮弹出Device & Pin Options对话框,并选择该对话框的Configuration选项卡,如下图所示:
在Configuration选项卡中,选择如上图所示内容(注意:这里一定要根据开发板的具体EPCS芯片情况进行选择。(QII软件默认是AUTO,其AUTO选择与实际不一定会相符)。
请务必在Unused Pins标签中选择reserve all unused pins : as input tri-stated!!否则有损坏实验板的危险!!
其余留缺省设置即可。按确定退出该对话筐,返回到顶层图界面。
分配管脚
为芯片分配管脚可以用QuartusII软件里的“AssignmentsàPins”菜单,也可以用tcl脚本文件。用Tcl文件进行配置可重用性好,易于管理,因此本文介绍用tcl的方法。对于另一种方法,可以参考QuartusII软件的帮助文档。
。FileàNew,选择other files页面:
有关tcl文件的更详尽内容可参考QuartusII的帮助文档,在此,,已经分配了实验板上外设的管脚。在实际项目中,该文件也可以根据具体管脚分配要求来改写。
#
set_global_assignment -name RESERVE_ALL_UNUSED_PINS "AS INPUT TRI-STATED"
set_global_assignment -name ENABLE_INIT_DO