END 配置名;
(4)程序包(PACKAGE)
这也是一种属性选项,用来存放各种模块模块都能共享的数据类型、常数、程序等等。
(5)库(LIBRARY)
用来存放已经编译的实体、结构体、包集合和配置,可以由用户生成或者由ASIC芯片制造商提供,这样设计时可以调用库中资源。
库的语句结构: LIBRARY库名;
这一语句即相当于为其后的设计实体打开了以此为库名命名的库,以便设计实体可以利用其中的程序包。库的种类如下:
①IEEE库:IEEE库是VHDL设计中最常见的库,它包含IEEE标准的程序包。IEEE
库中的标准程序包主要包括
STD—LOGIC—1164、NUMERIC—BIT和NUMERIC—STD等程序包,其中STD—LOGIC—1164是最重要和最常用的程序包,大部分基于数字许同设计的程序包都是以此程序包中设定的标准为基础。一些工业标准程序包也都并入IEEE库,在这些程序包中最常用的是SYNOPSYS公司的STD—LOGIC—1ARITH、STD—LOGIC—SIGNED和STD—LOGIC—UNSIGNED程序包。对于在一般基于大规模可编程逻辑器件的数字系统设计,IEEE
库中的
4
个程序包
STD—LOGIC—1164、STD—LOGIC—1ARIT、STD—LOGIC—SIGNED和STD—LOGIC—UNSIGNED已经足够使用。另外,在IEEE库中符合
IEEE
标准的程序包并非符合
VHDL
语言标准,如
STD—LOGIC—1164程序包。因此在使用VHDL设计实体的前面必须显示表达出来。
②STD库:VHDL语言标准定义了两个标准程序包,即STANDARD和TEXTIO程序包,它们都被收在STD库中。只要在VHDL环境中应用,可以随时调用这两个程序包中所有的内容,即在编译和综合过程中,VHDL的每一项都自动的将其包含进去了。因此在应用中不必如IEEE库那样以显示表达出来。
③WORK库:它是用户的VHDL设计的现行工作库,用于存放用
15
户设计和定义的一些设计单元和程序包,所以自动满足VHDL语言标准,在实际调用过程中一般并不需要VITAL库中程序包。
§3.3 VHDL语言的特点
VHDL语言是对逻辑电路进行描述的高级语言。他与其他高级语言相比既有相同之处也有其自身特点:
(1)VHDL是工业标准的文本格式语言
VHDL已成为一种工业标准。设计者、EDA工具的供应商以及芯片生产厂家,都要遵循这一标准。 该语言是一种文本格式的语言, ASIC的设计者在设计电路时,就像编写其他高级语言一样,用文字来表达所要设计的电路,这样能比较直观地表达设计者的设计思想,并且易于修改。
(2)VHDL语言能同时支持仿真和综合
VHDL语言是一种能够支持系统仿真的语言。事实上,ASIC成功的关键在于生产前的设计,而保证设计正确性的主要手段就是系统仿真。目前在大部分的EDA工具中,都有支持VHDL语言级仿真的工具。这样。设计者在ASIC生产前就能够知道设计的正确与否、系统的性能如何等关键问题。
(3)VHDL是一种并发执行的语言
我们知道几乎所有的高级语言的执行都是顺序的,而VHDL语言在仿真过程中的执行式并行的。这种特征符合实际逻辑电路的工作过程。
(4)VHDL的描述与工艺无关
设计者在利用VHDL描述电路时并不需要关心电路最终将在哪种工艺上实现,EDA工具可以将VHDL源代码映射道不同的工艺库上,提高了设计的可重用性。
(5)支持多种风格的描述方法
VHDL不仅支持行为级的描述。而且支持数据流及结构描述。
16
第四章 QuartusII开发系统
QuartusII是Altera提供的FPGA/CPLD开发集成环境,Altera是世界最大的可编程逻辑器件供应商之一。QuartusII在21世纪初推出,它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。
§4.1 QuartusII设计流程:
1.创建工程准备工作
任何一项设计都是一项工程(Project),都要首先为此工程建立一个放置与此工程相关的所有设计文件的文件夹。此文件夹将被EDA软件默认为工作库(Work Library)。一般地,不同的设计项目最好放在不同的文件夹中,而同一工程的所有文件都必须放在同一文件夹中。
建立文件夹后就可以将设计文件通过QuartusII的文本编辑器编辑并存盘,步骤如下:
(1)新建一个文件夹。打开QuartusII软件,选择File→New Project Wirard… 出现下面如图1的菜单,
图4-1 新建工程 图4-2选择文件路径
单击“NEXT”按钮,在菜单中点击“What is the working…”后面的
17
“…”选择桌面中的”我的地盘“文件夹输入要编辑文件名”YUMEN”,出现如上面图2的菜单,逐次单击“NEXT”,最后出现如图3菜单单击”Finish”按钮。
图4-3 完成工程建立
(2)输入源程序。打开QuartusII,选择File→New命令。在New窗口中的Device Design Files选项卡中选择编译文件的语言类型,这里选VHDL File选项,然后在VHDL文本编译窗口中输入一个程序。
单击保存按钮弹出如下菜单单击保存。(示意图如下图4)
图 4-4 保存文件
(3)程序运行。单击右上方的运行按钮“”,检验程序是否有
无,程序没问题的话会出现如下图5界面,点击“确定”。
18
图 4-5 检查出错地方
(4)时序仿真。再选择File→New在弹出的窗口中选择Other File中的 Vector Waveform File,示意图如下图6。点击“OK”就出现波形编辑器界面。
图 4-6选择波形文件 图 4-7选择引脚
双击Name,弹出上面图7菜单,点击Node Finder 按钮弹出如图8的菜单,点击“
”按钮,再点击“
”按钮即可在编辑器中产生所要
”和
的输入输出信号,然后给定输入信号如图9,在单击保存按钮“运行按钮“
”就可产生仿真波形如图10。
19