eda技术与vhdl实用教程电子教案动画源程序 廖超平第5章 VHDL设计深入.ppt

eda技术与vhdl实用教程电子教案动画源程序 廖超平第5章 VHDL设计深入.ppt

ID:51963674

大小:745.50 KB

页数:76页

时间:2020-03-26

eda技术与vhdl实用教程电子教案动画源程序 廖超平第5章 VHDL设计深入.ppt_第1页
eda技术与vhdl实用教程电子教案动画源程序 廖超平第5章 VHDL设计深入.ppt_第2页
eda技术与vhdl实用教程电子教案动画源程序 廖超平第5章 VHDL设计深入.ppt_第3页
eda技术与vhdl实用教程电子教案动画源程序 廖超平第5章 VHDL设计深入.ppt_第4页
eda技术与vhdl实用教程电子教案动画源程序 廖超平第5章 VHDL设计深入.ppt_第5页
资源描述:

《eda技术与vhdl实用教程电子教案动画源程序 廖超平第5章 VHDL设计深入.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、EDA技术与VHDL实用教程作者:苏莉萍陈东廖超平第5章VHDL设计深入<>EDA技术与VHDL实用教程作者:苏莉萍陈东廖超平要求理解VHDL语言的一些高级特性与方法,提高运用VHDL分析、设计电路的能力。知识点理解VHDL子程序和块语句的应用进一步理解VHDL库与程序包的应用理解QuartusII的HDL设计中的LPM函数的应用理解VHDL层次化文件设计重点和难点VHDL块语句和子程序的应用理解QuartusII的HDL设计中的LPM函数的应用VHDL层次化文件设计EDA技术与VHDL实用教程作者:苏莉萍

2、陈东廖超平引言本章在第四章的基础上,对QuartusII的VHDL文本输入设计法作进一步的讨论。本章主要讨论VHDL文本输入法中的子程序与子程序调用语句、VHDL库与程序包、块语句结构、VHDL设计中LPM函数的应用和VHDL层次化文件设计。EDA技术与VHDL实用教程作者:苏莉萍陈东廖超平第五章VHDL设计深入深入VHDL程序结构5.1VHDL层次化文件设计5.3VHDL设计中LPM函数的应用5.25.1深入VHDL程序结构一、子程序与子程序调用语句1.子程序的一般特点子程序是一个VHDL程序模块,它内部由顺序语句组成,可把需要重复完成的设计

3、工作写成子程序,这样可以在需要的地方多次调用。子程序有两种类型,即函数和过程。函数的调用只能返回一个值,而过程可以不返回任何值,也可以返回多个值。在函数的接口中,所有参数都是输入参数,而过程有输入参数、输出参数和双向参数。函数通常作为表达式的一部分,而过程则一般被用作一种语句结构。函数通常作为语句的一部分调用,而过程可以单独存在。在子程序体可以有返回语句,用来结束当前子程序体的执行。其语句格式如下:RETURN[表达式];返回语句用于函数时,必须有表达式,只能并且必须返回一个值。每一函数必须至少包含一个以上的返回语句,但是在函数调用时,只有其中

4、一个返回语句可以将值带出。返回语句用于过程时,表达式缺省,不返回任何值。VHDL子程序具有可重载的特性,即允许有许多个重名的子程序,但这些子程序的参数类型及返回值数据类型是不同的,开发工具根据子程序的参数类型及返回值数据类型来区分各个重载的子程序。[重点提示]综合后的子程序将映射成目标芯片中的一个相应的电路模块,且每一次调用又将在硬件结构中产生具有相同结构的不同模块,这一点与普通的软件中调用子程序有很大的不同。2.函数(1)函数及声明函数是用来描述重复使用的返回单一值的顺序算法的子程序。函数中应至少有一个返回语句,通过其中一个返回语句返回所要求

5、返回的值。函数声明分函数首声明和函数体声明两部分,同一个函数的函数首和函数体应具有相同的名字。函数首的声明格式如下:FUNCTION函数名(参数表)RETURN数据类型;函数体声明格式如下:FUNCTION函数名(参数表)RETURN数据类型IS[说明部分];BEGIN顺序语句;END[FUNCTION]函数名;函数首是由函数名、参数表和返回值的数据类型三部分组成。函数名需放在关键词FUNCTION之后,它可以是普通的标识符,也可以是运算符,当是运算符时必须加上双引号,这是运算符的重载。函数的参数表中的参数只能是IN模式,用来定义输入值,它只能

6、是信号或常数,参数名需放在关键词CONSANT或SIGNAL之后,若没有特别的说明,则参数被默认为常数。信号或常数的数据类型不能是类似“STD_LOGIC_VECTOR(7DOWNTO0)”或“INTEGERRANGE3DOWNTO0”的加范围限制的形式,只能使用类似STD_LOGIC_VECTOR和INTEGER的非限制的形式。下面是三个不同的函数首声明例子:FUNCTIONFUNC1(A,B,C:REAL)RETURNREAL;----参量前没注明CONSANT或SIGNAL默认为常数。FUNCTION“*”(CONSANTA,B:INTE

7、GER)RETURNINTEGER;----注意重载运算符函数名*要用引号括起来。FUNCTIONAS2(SIGNALIN1,IN2:REAL)RETURNREAL;----注意信号参量前要注明SIGNAL。函数体的说明部分包括对数据类型、常量、变量等的局部说明,其顺序语句部分则是描述用以完成规定算法或者转换的顺序语句,通常函数体内的顺序语句部分含有返回语句:RETURN表达式,用来在该处返回所要求返回的值。函数体的说明以关键词ENDFUNCTION以及函数名结尾。一旦函数被调用,就将执行函数体内的顺序语句部分的语句。下面是一个函数体声明的例子

8、:FUNCTIONSAM(x,y,z:BIT)RETURNBITIS----定义函数SAM,该函数无函数首BEGINRETURN(xORz)ANDy;

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

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

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