Quartus II软件操作
在前面的实验里,我们所有的实验都是基于这样一个观点,即将一个数字系统划分成合适利用已有的中小规模数字集成电路的功能的模块,然后将这些集成电路通过外部引线连接起来。现在开始我们将研究用可编程逻辑器件(PLD/FPGA)来进行数字系统设计。
可编程逻辑器件是一种大规模的集成电路,其内部预置了大量易于实现各种逻辑函数的结构,同时还有一些用来保持信息或控制连接的特殊结构,这些保持的信息或连接确定了器件实现的实际逻辑功能,当改变这些信息或连接时器件的功能也将随之改变。可编程逻辑器件的设计过程和传统的中小规模数字电路设计也不一样,可编程数字系统,无论是CPLD还是FPGA器件都需要利用软件工具来进行设计。可编程数字系统设计总体上一般可以分为设计输入、项目处理、设计校验和器件编程这四个主要过程如图1所示。下面我们将一个简单的模60BCD计数器为例,说明可编程数字系统设计的基本流程、概念和方法,掌握Quartus II软件的基本功能和操作,了解原理图输入方式的设计全过程。
一、 设计项目输入
1.1 概述
设计输入是设计者对系统要实现的逻辑功能进行描述的过程。设计输入有多种表达方式,常用的有原理图输入、硬件描述语言输入、网表输入以及混合输入这四种。 1、 原理图输入:
原理图设计输入方式是利用软件提供的各种原理图库,采用画图的方式进行设计输入。这是一种最为简单和直观的输入方式。原理图输入方式的效率比较低,一般只用于小规模系统设计,或用于在顶层拼接各个已设计完成的电路子模块。 2、 硬件描述语言:
这种设计输入方式是通过文本编辑器,用VHDL、Verilog或AHDL等硬件描述语言进行设计输入。采用语言描述的优点是效率较高,结果容易仿真,信号观察方便,在不同的设计输入库之间转换方便,适用于大规模数字系统的设计。但语言输入必须依赖综合器,只有好的综合器才能把语言综合成优化的电路。 3、 网表输入
现代可编程数字系统设计工具都提供了和其它第三方EDA工具相连接的接口。采用这种方法输入时,可以通过标准的网表把在其它设计工具上已经实现了的设计直接移植进来,而不必重新输入。一般开发软件可以接受的网表有EDIF格式、VHDL格式及Verilog格式等。在用网表输入时,必须注意在两个系统中所采用库的对应关系,所有的库单元必须一一对应,才可以成功读入网表。
原理图文件硬件描述语言文件网表输入文件混合输入文件设计输入项目处理设置设计约束设计文件检查和编译设计校验设计文件分析和综合生成功能网表功能仿真N满足设计要求Y设置设计约束器件适配适配后的仿真文件门级时序仿真N满足设计要求Y生成器件编程文件器件编程器件编程 图1.1 可编程数字系统设计的基本流程
4、 混合输入
这种设计方式中包含了几种不同格式建立的设计文件,例如原理图输入、HDL设计输入、和EDIF网表输入等。现在的开发软件一般都能在一个设计方案中支持多级层次,这种灵活性使设计者可以采用最适合于设计中每个部分的设计输入方法。如底层模块采用HDL输入或网表输入,顶层采用原理图方式连接各个子模块。
在本次我们主要学习图形输入法。
1.2 建立工程项目
在Quartus II中,用户的每个独立设计都对应一个工程项目,每个工程项目可包含一个或多个设计文件。其中一个是顶层文件,编译器是对项目中的顶层文件进行编译的,项目同时还管理编译过程中产生的各种中间文件,这些中间文件的文件名相同,但后缀名不同。为了便于管理,对于每
个新的项目应该建立一个单独的子目录。指定项目名称的步骤如下:
1. 打开Quartus II,在File菜单中选择New Project Wizard项,将出现工程项目建立向导对话框。
如图1.2 (a)所示。
2. 点击“Next”,进入到如图1.2 (b)所示的对话框,在最上面的文本输入框中输入项目所在的目录
名,如本例为“E:\\Clock”,在中间的文本输入框中输入项目名称,本例为“Counter60”,在最下面的文本输入框中输入最顶层模块的名称,本例为“Counter60”。
(a) 工程项目建立向导对话框图 (b) 工程项目命名对话框
(c) 设计文件选择对话框 (d) 器件选择对话框
(f) “Summary”对话框 图1.2 项目建立向导
3. 点击“Next”,进入到如图1.2 (c)所示的设计文件选择对话框,由于在本例中还没有任何设计文
件,所以不选择任何文件。
(e) 第三方EDA工具选择对话框