基于Quartus Ⅱ的数字系统Verilog HDL设计实例详解
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 设计输入

QuartusⅡ软件中的工程由所有设计文件和与设计文件有关的设置组成。用户可以使用QuartusⅡ原理图输入方式、文本输入方式、模块输入方式和EDA设计输入工具等表达自己的电路构思。设计输入流程图如图1-2-1所示。

图1-2-1 设计输入流程图

进行设计之前要创建新工程,选择菜单命令“File”→“New Project Wizard”,建立新工程。建立工程时,指定工程工作目录,分配工程名称,指定顶层设计实体的名称。还可以指定在工程中使用的设计文件、其他源文件、用户库和EDA工具,以及目标器件。

1.设计输入方式

创建好工程后,需要给工程添加设计输入文件。设计输入文件可以使用文本形式的文件(如VHDL、Verilog、HDL、AHDL等)、存储数据文件(如HEX、MIF等)、原理图设计输入,以及第三方EDA工具产生的文件(如EDIF、HDL、VQM等)。同时,还可以混合使用以上几种设计输入方法进行设计。

1)Verilog HDL/VHDL硬件描述语言设计输入方式 HDL语言设计方法是大型模块化设计工程中最常用的设计方法。目前较为流行的HDL语言有VHDL、Verilog HDL语言等,其共同特点是易于使用自顶向下的设计方法,易于模块划分和复用,移植性强,通用性好,设计不因芯片工艺和结构的改变而变化,利于向ASIC的移植。HDL语言是纯文本文件,用任何编辑器都可以编辑。有些编辑器集成了语言检查、语法辅助模板等功能,这些功能给HDL语言的设计和调试带来了很大的便利。

2)AHDL(Altera Hard Description Language)输入方式 AHDL是完全集成到QuartusⅡ软件系统中的一种高级的模块化语言。可以用QuartusⅡ软件文本编辑器或其他的文本编辑器产生AHDL文件。一个工程中可以全部使用AHDL语言,也可以和其他类型的设计文件混用。AHDL语言只能用于使用Altera器件的FPGA/CPLD设计,其代码不能移植到其他厂商器件上(如Xilinx、Lattice等)使用,通用性不强,所以比较少用。

3)模块/原理图输入方式(Block Diagram/Schematic Files) 原理图输入方式是FPGA/CPLD设计的基本方法之一,几乎所有的设计环境都集成有原理图输入法。这种设计方法直观、易用,支撑它的是一个功能强大、分门别类的器件库。然而由于器件库元件通用性差,导致其移植性差,如果更换设计实现的芯片信号或厂商不同时,整个原理图需要作很大修改甚至是全部重现设计。所以原理图设计方式主要是混合设计中的一种辅助设计方式。

4)使用Mega Wizard Plug-In Maneger产生IP核/宏功能模块 Mega Wizard Plug-In Maneger工具的使用基本可以分为以下几个步骤:工程的创建和管理,查找使用的IP核/宏功能模块及参数设计与生成,IP核/宏功能模块的仿真与综合等。

2.设计规划

在建立设计时,必须考虑QuartusⅡ软件提供的设计法,如LogicLock功能提供自顶向下和自底向上的设计方法,以及基于块的设计流程。在自顶向下的设计流程中,整个设计只有一个输出网络表,用户可以对整个设计进行跨设计边界和结构层次的优化处理,且管理容易;在自底向上的设计流程中,每个设计模块具有单独的网络表,它允许用户单独编译每个模块,且单个模块的修改不会影响其他模块的优化。基于块的设计流程使用EDA设计输入和综合工具分别设计和综合各个模块,然后将各模块整合到QuartusⅡ软件的最高层设计中。在设计时,用户可根据实际情况灵活使用这些设计方法。

在第2章中,将以具体实例来详细地介绍几种常用的设计方法。