EDA基础与应用 教学课件 作者 于润伟EDA技术项目教程3.ppt

EDA基础与应用 教学课件 作者 于润伟EDA技术项目教程3.ppt

ID:50321926

大小:277.00 KB

页数:35页

时间:2020-03-08

EDA基础与应用 教学课件 作者 于润伟EDA技术项目教程3.ppt_第1页
EDA基础与应用 教学课件 作者 于润伟EDA技术项目教程3.ppt_第2页
EDA基础与应用 教学课件 作者 于润伟EDA技术项目教程3.ppt_第3页
EDA基础与应用 教学课件 作者 于润伟EDA技术项目教程3.ppt_第4页
EDA基础与应用 教学课件 作者 于润伟EDA技术项目教程3.ppt_第5页
资源描述:

《EDA基础与应用 教学课件 作者 于润伟EDA技术项目教程3.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、EDA技术项目教程主编:于润伟第3章VHDL硬件描述语言本章要点VHDL语言的数据结构VHDL语言的并行语句VHDL语言的顺序语句VHDL程序设计3.1概述标识符的命名规则如下:(1)由26个英文字母、数字0~9及下划线“_”组成。(2)第一个字符必须以字母开头。(3)下划线不能连用,最后一个字符不能是下划线。(4)对大小写字母不敏感(英文字母不区分大小写)。3.1.1VHDL的基本结构--库和程序包部分LIBRARYIEEE;--IEEE库USEIEEE.STD_LOGIC_1164.ALL;--调用IEEE库中STD_LOGIC_1164程

2、序包--实体部分ENTITYnotAIS--实体名为notAPORT(--端口说明a:INSTD_LOGIC;--定义端口类型和数据类型y:OUTSTD_LOGIC);ENDnotA;--实体结束--结构体部分ARCHITECTUREinvOFnotAIS--结构体名为invBEGINy<=NOTa;--将a取反后赋值给输出端口yENDinv;--结构体结束3.1.2库和程序包1.库LIBRARY库名;常用的库有IEEE库、STD库和WORK库。2.程序包调用程序包的通用模式为:USE库名.程序包名.ALL;例如调用STD_LOGIC_1164

3、程序包中的项目需要使用以下语句:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;3.1.3VHDL的实体实体的格式如下:ENTITY实体名IS[GENERIC(类属说明)][PORT(端口说明)]END[ENTITY]实体名;1.类属说明GENERIC(常数名1:数据类型1:=设定值1;……;常数名n:数据类型n:=设定值n);2.端口说明PORT(端口信号名1:端口模式1数据类型1;……;端口信号名n:端口模式n数据类型n);3.1.4VHDL的结构体一个实体中可以有一个结构体,也可以有多个结构体,但各个结构体不

4、应有重名,其格式如下:ARCHITECTURE结构体名OF实体名IS[结构体说明部分;]BEGIN功能描述语句;END[ARCHITECTURE]结构体名;3.1.5VHDL的特点1.VHDL语法规范标准2.与工艺无关3.易于ASIC移植4.上市时间短成本低5.不具有描述模拟电路的能力6.综合工具生成的逻辑实现有时并不最佳7.EDA工具的不同导致综合质量的不同3.1.6VHDL的开发流程1.系统分析2.确定电路具体功能3.划分模块编写程序4.VHDL程序模拟5.综合优化和布局布线6.布局布线后的程序模拟7.生成器件编程文件8.进行器件编程3.2

5、VHDL的数据结构3.2.1数据对象1.常量CONSTANT常量名[,常量名…]:数据类型:=表达式;2.变量VARIABLE变量名[,变量名…]:数据类型[约束条件][:=表达式];3.信号SIGNAL信号名[,信号名…]:数据类型[约束条件][:=表达式];3.2.2数据类型1.STANDARD程序包中预定义的数据类型(1)整数类型(INTEGER)(2)自然数(NATURAL)和正整数(POSITIVE)类型。(3)实数(REAL)类型。(4)位(BIT)类型。(5)位向量(BIT_VECTOR)类型。(6)布尔(BOOLEAN)类型。(

6、7)字符(CHARACTER)类型。(8)字符串(STRING)类型(9)时间(TIME)类型。(10)错误等级(SEVERITYLEVEL)类型。2.IEEE库中预定义的数据类型(1)标准逻辑位(STD_LOGIC)数据类型。(2)标准逻辑位向量(STD_LOGIC_VECTOR)数据类型。(3)无符号(UNSIGNED)数据类型。(4)有符号(SIGNED)数据类型。3.用户自定义数据类型(1)枚举类型(ENUMERATED)TYPE数据类型名IS(取值1,取值2,…);(2)数组类型(ARRAY)。TYPE数据类型名ISARRAY数组下标

7、范围OF数组元素的数据类型;(3)用户自定义子类型SUBTYPE子数据类型名IS数据类型名RANGE数据范围;3.2.3数据类型间的转换例如把INTEGER数据类型的信号A转换为STD_LOGIC_VECTOR数据类型的信号B,程序如下:SIGNALA:INTEGERRANGER0TO15;--定义信号ASIGNALB:STD_LOGIC_VECTOR(3DOWNTO0);--定义信号BB<=CONV_STD_LOGIC_VECTOR(A);--调用转换函数注意:使用数据类型转换函CONV_STD_LOGIC_VECTOR,需要调用IEEE库中

8、的STD_LOGIC_ARITH程序包。3.2.4VHDL的运算符(1)逻辑运算符。(2)关系运算符。(3)移位运算符。(4)符号运算符。(5)连接运

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。