《vhdl程序设计语言》ppt课件

上传人:tian****1990 文档编号:74725531 上传时间:2019-01-29 格式:PPT 页数:199 大小:6.64MB
返回 下载 相关 举报
《vhdl程序设计语言》ppt课件_第1页
第1页 / 共199页
《vhdl程序设计语言》ppt课件_第2页
第2页 / 共199页
《vhdl程序设计语言》ppt课件_第3页
第3页 / 共199页
《vhdl程序设计语言》ppt课件_第4页
第4页 / 共199页
《vhdl程序设计语言》ppt课件_第5页
第5页 / 共199页
点击查看更多>>
资源描述

《《vhdl程序设计语言》ppt课件》由会员分享,可在线阅读,更多相关《《vhdl程序设计语言》ppt课件(199页珍藏版)》请在金锄头文库上搜索。

1、 课程简介,数字系统与VHDL程序设计语言,引例 :,VHDL原理 :, VHDL语言,非常高速硬件描述语言, 也就是一种硬件(数字电路)设计语言. 其最大特点是对电路的行为与结构进行高度抽象化规范化,并对设计进行模拟验证与综合优化,使分析和设计高度自动化。, 支持VHDL语言的软件平台,Max+PlusII, 由软件设计到硬件实现之间的媒介,CPLD / FPGA (可编程器件),在Max+PlusII编写VHDL程序,存盘 (文件名为实体名,后缀为 .VHD),编译,软件仿真,管脚安排,下载, 由软件设计到硬件实现的流程,基本顺序语句 (1)Process语句 (2)If-Else语句 (

2、3)Case-When语句 (4)Null语句 (5)Wait until语句 (6)变量赋值语句 (7)For-Loop语句 (8)过程调用语句,基本的并行语句 (1)直接赋值语句 (2) Process语句 (3)When-Else (4)With-Select-When (5)元件例化语句 (6)For-Generate,常用数字电路回顾,(1)编码器,输入信号,输出信号,使能端口,注:EN为1时编码器工作,举例,参看EWB辅助电路,(2)译码器, ,1 1 1 1,译码器,VHDL与数字电路设计,引 言 VHDL简介,一、由来 VHDL是Very High speed Integrat

3、ed Circuit Hardware Description Language (非常高速集成电路硬件描述语言)的英文缩写。它是由美国国防部支持的一项研究计划,于1983年创建,目的是以文字化方法描述电子电路与系统。至今VHDL约有40年的发展历史,1987年,VHDL成为IEEE标准,即IEEE1076标准,1993年修改为IEEE1164标准,1996年,IEEE又将电路合成的标准程序与规格加入到VHDL语言中,称为1076.3标准。之后,又有1076.4标准和1076.6标准。,第一章 VHDL的程序结构和软件操作,1-1 VHDL程序的基本结构,1-2软件操作Max+plus的操作,

4、第一章 VHDL的程序结构和软件操作,1-1 VHDL程序的基本结构,(1)LIBRARY和PACHAGE的声明部分,作用:库(Library)是用于存放预先编译好的程序包 (Package),程序包中定义了数据集合体、逻 辑操作和元件等。主要是声明在设计或实体中 将用到的常数,数据类型,元件及子程序等。,使用格式:LIBRARY 库名;,USE 库名. 程序包名. All;,(2)ENTITY定义 作用:定义本设计的输入/出端口,即定义电路的外观, 即I/O接口的类型和数量使用格式:, 端口名 :端口模式 数据类型;);,ENTITY 实体名 Is,End 实体名;,格式:,Port ( 端

5、口名 :端口模式 数据类型;,(3)ARCHITECTURE定义 作用:定义实体的实现。即电路的具体描述,说明电路执 行什么动作或实现功能。,ARCHITECTURE 结构体名 Of 实体名 Is,Begin 描述语句; End 结构体名;,使用格式:,在Max+plus系统中有4个库能支持VHDL语言,它们分 别是Std库、IEEE库、Altera库和Lpm库。Std库和IEEE库 提供基本的逻辑运算函数及数据类型转换函数等。IEEE 库中的程序包std_logic_1164定义了std_logic和 std_logic_vector等数据类型。,举例:,设计一个与门电路,逻辑符号,真值表,

6、Library IEEE; Use std.standard.all; Entity and2 is Port( A: in bit; B: in bit; Y:out bit); End and2;,-首先定义输入输出端口名字, 模式(Mode),信号类型,-注意最后语句的分号在括号外,实体定义:,Architecture Na of and2 is Begin Y=0 when a=0 and B= 0 else0 when A=1 and B = 0 else 0 when A=0 and B = 1 else 1; End Na,结构体定义:,端口模式有以下几种类型:IN ;OUT;I

7、NOUT;BUFFER。,Architecture Nb of and2 is Begin c =1 when a=1 and b = 1 else 0; End Nb;,以上结构体表达何种电路?,一个实体可以有几个结构体,即结构体的定义可以有不同的形式,结论:,1-2软件操作Max+plus的操作,1-2-1 建立和编写一个VHDL语言的工程文件,1-2-2 VHDL程序的编译,1-2-3 VHDL语言程序的仿真,1-2-4 芯片的时序分析,1-2-5 安排芯片脚位,1-2软件操作Max+plus的操作,1.Max+plus开发工具是美国Altera公司自行设计的一种软 件工具,其全称为Mu

8、ltiple Array Matrix and Programmable Logic User System。它具有原理图输入和文本输入(采用 硬件描述语言)两种输入手段,利用该工具所配备的编 辑、编译、仿真、综合、芯片编程等功能,将设计电路 图或电路描述程序变成基本的逻辑单元写入到可编程的 芯片中(如FPGA芯片),作成ASIC芯片。它是EDA设 计中不可缺少的一种工具。,2. 软件安装,我们通过范例介绍:利用Max+plus系统,(1)如何编写VHDL程序(使用Text Editor);,(2)如何编译VHDL程序(使用Compiler);,(3)如何仿真验证VHDL程序(使用Wavefo

9、rm Editor,Simulator);,(4)如何进行芯片的时序分析(使用Timing Analyzer);,(5)如何安排芯片脚位(使用Floorplan Editor);,(6)如何下载程序至芯片(使用Programmer)。,1-2-1 建立和编写一个VHDL语言的工程文件,首先启动Max+plus系统,启动后系统进入主菜单画面,在主菜单 上有5个选项,分别是:Max+plus、File、Assign、Options和Help。,(1)打开文本编辑器;用鼠标点击File选项,点击子菜单中的 New选项,接着屏幕会出现New的对话框。在对话框内有4 种编辑方式:图形编辑、符号编辑、文本

10、编辑和波形编辑。 VHDL文件属于文本,那么应该选择文本编辑方式,点击 OK按钮,屏幕上将出现一个无名的编辑窗口,则系统进入 文本编辑状态。,(2)在编辑窗口中进行编辑输入,输入相应的描述语句。,(3)存盘。(a 我们编辑的VHDL文件扩展名为vhd;b 保存的文 件名必须和所定义的实体名相同。c 文件存盘的目录不应是 根目录或桌面,建议存放在Max2work或Maxplus2目录,或 其子目录。),以与门的设计为例讲述具体过程,1-2-2 VHDL程序的编译,(1)若文件没有打开,需首先打开要编译的VHDL文件;,(2)将目前的文件设置成工程文件;点击File选项,光标移到子菜单的 Proj

11、ect项停留几秒钟,屏幕上会出现下一级菜单,点击Set Project to Current File,(3)打开编译器;点击主菜单MAX+plus/Compiler选项,屏幕上就出现编译 对话框。,(4)开始编译;完成了上述编译前的准备及必要的设置工作,点击编译对话框 中的Start按钮,编译即开始。,以与门的设计为例讲述具体过程,1-2-3 VHDL语言程序的仿真,仿真是为了验证我们所编写的VHDL程序的功能是否正确。,(1)首先生成仿真波形文件,(a)打开波形编辑器;点击主菜单的MAX+plus/Waveform Editor选项,就 可在屏幕上显示波形编辑器窗口。在未输入信号名以前,整

12、个窗口是空 白的。,(b)确定仿真持续时间(File/End Time)。,(c)选则输入输出端口名;,(d)编辑输入信号波形;,(e)信号波形编辑完成后,需存盘为仿真使用,文件名采取默认方式即可。,(2)打开仿真器;点击主菜单MAX+plusSimulator项,此时弹出Simulator 对话框。点击对话框的Start按钮,仿真即开始。在仿真结束后打开仿真波 形文件(点击右下角的Open SCF按钮)即可以显示仿真结果。,(以与门的设计为例讲述具体过程 ),1-2-4 芯片的时序分析,仿真结果从波形上来看,很难给出定量的信号延迟关系,这一点时序分析却能 直观地用表来进行显示。,(1)选择要

13、下载的器件型号;,(2)需要再编译一次。,(点击主菜单的Assign/Device项得到Device对话框),(3)打开时序仿真器;,(点击Timing Analyzer选项 ),(4)最后点击Start按钮后,时序分析器开始启动。,(以与门的设计为例讲述具体过程 ),1-2-5 安排芯片脚位,为了将程序下载到芯片,需安排芯片脚位。,(1)打开芯片脚位设置器;,(MAX+plus/Floorplan Editor),(2)将实体定义的端口名字和下载芯片的管脚进行具体对应;,(3)最后再进行一次编译。,教学演示片,第二章 VHDL语言要素,2.1 VHDL语言规则,数字型文字、字符串文字、标识符

14、、下标名、段名, 2-2 数据类型,数据类型分类:逻辑信号类型和数值信号类型。, 2-2-1逻辑数据类型,(1)布尔代数(Boolean)型,定义位置:在std库的standard程序包中进行定义。,信号形式:FALSE,TRUE,(2)位(Bit),定义位置:在std库的standard程序包中进行定义。,信号形式:0,1,(低电位,高电位 ),编码器 :,输入信号,输出信号,(3)位数组类型(Bit_Vector),定义位置:在std库的standard程序包中进行定义。,例 :,Signal A: bit_vector(0 to 7);,Signal B: bit_vector(2 do

15、wnto 0);,输入信号,输出信号,(4)标准逻辑型(Std_Logic ),定义位置:在IEEE库的std_logic_1164程序包中进行定义,可以看出,这个“标准逻辑”信号定义,比“位即bit”信号对于数字逻辑电路的 逻辑特性描述更完整、更真实。所以在VHDL的程序里,对于逻辑信号的定 义,通常都是采用这个“标准逻辑”信号形式。,使用这类数据信号,必须包含下面两条声明语句:,Library IEEE; Use IEEE.std_logic_1164.all;,(5)标准逻辑数组类型(Std_Logic_vector),定义位置:在ieee库的std_logic_1164程序包中进行定义

16、。,Bit_Vector与Std_Logic_vector的区别在于数组的 每一位前者为BIT型(0,1)后者为Std_Logic型, 2-2-2 数值数据类型,(1)整数(Integer) 定义位置:在std库的standard程序包中进行定义。即数值范 围为-231231。,(2)无符号(Unsigned)和有符号(Signed)类型,定义位置:有符号(Signed)和无符号(Unsigned)逻辑信号定义在 库IEEE的程序包std_logic_arith中。,有符号类型数据代表有符号数值,即可以是正数,0,负数;编 译器将有符号数类型作为一个补码的二进制数,最左边的位为 符号位。,无符号类型数据代表无符号数值,即代表0或正数;最左边的位 为最高位。如:Unsigned(“0110”)代

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号