第2章VHDL词汇基础.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章VHDL词汇基础

第2章 VHDL词法基础;2.1 标识符;扩标用反斜杠界定。如:\multi_screens\。 允许包含图形符号、空格符。如:\mode A\, \$100\等。 反斜杠之间的字符可用保留字。如:\buffer\, \entity\等。 扩标的界定符两个斜杠之间可以用数字打头。如:\100$\,\2chip\,\4screens\等。 扩标中允许多个下划线相连。如:\Four_screens\, \TWO_Computer_sharptor\等。 扩标区分大小写。如: \EDA\ 与\eda\不同。 扩标与短标不同。如:\COMPUTER\ 与Computer不同。 ;三、下标名及下标段名 下标名用于指示数组型变量或信号的某一元素。 下标段名用于指示数组型变量或信号的某一段元素,其语句格式:;数据对象(Data Objects)接受不同数据类型的赋值。 四种对象:常量(CONSTANT)、变量(VARIABLE)、信号(SIGNAL)、文件(FILES)。其中文件类型是VHDL’93标准中新通过的。 ;常量设置使得设计实体中的常数易阅读和修改。如将位矢的宽度定义为一个常量,只要修改这个常量就能改变宽度,从而改变硬件结构。 常量是一个恒定不变的值,一旦作了数据类型的赋值定义后,在程序中不能再改变,有全局意义。 常量与表达式类型必须一致,只能是标量类型或复合类型。 常量的可视性(其使用范围取决于定义的位置): 定义在程序包中的常量,具有最大全局化特征,可以用在调用此程序包的所有设计实体中; 定义在设计实体中的常量,其有效范围为这个实体定义的所有的结构体; 定义在设计实体的某一结构体中的常量,则只能用于此结构体; 定义在结构体的某一单元的常量,如一个进程中,则这个常量只能用在这一进程中。;变量是一个局部量,只能在进程和子程序中使用,不能将信息带出对它作出定义的当前设计单元。 变量赋值立即发生,无延时行为。 VHDL不支持变量附加延时语句。变量常用在实现某种算法的赋值语句中。 变量的初值不是必需的,综合器将略去所有初值。 变量数值的改变是通过变量赋值来实现的,其赋值语句的语法格式:目标变量名:=表达式;; 例:SIGNAL S1:STD_LOGIG:=0; --定义了一个标准位的单值信号S1,初始值为低电平 SIGNAL S2,S3:BIT; --定义了两个为BIT的信号S2和S3 SIGNAL S4:STD_LOGIC_VECTOR(15 DOWNTO 0); --定义了一个标准位矢的位矢量信号,共16个信号元素;信号不但可以容纳当前值,也可以保持历史值。这一属性与触发器的记忆功能有很好的对应关系。 信号的初值不是必需的,而且仅在仿真中有效。与变量相比,信号的硬件特征更为明显,它具有全局性特性。 “:=”表示对信号直接赋值,不产生延时。 “<=”表示代入赋值,是变量之间信号的传递,代入赋值法允许产生延时。例如:T1 <= T2 AFTER 20ns; 在EDA工具综合时,信号应在结构体中描述清楚。;四、文件(files);从硬件电路系统来看,常量相当于电路中的恒定电平,如GND或VCC接口,而变量和信号则相当于组合电路系统中门与门间的连接及其连线上的信号值。 从行为仿真和VHDL语句功能上看,信号和变量的区别主要表现在接受和保持信息的方式与传递的区域大小上。 从综合后所对应的硬件电路结构来看,信号一般将对应更多的硬件结构,但在许多情况下,信号和变量并没有什么区别。 虽然EDA仿真器允许变量和信号设置初始值,但在实际应用中,EDA综合器并不会把这些信息综合进去。 ;VHDL是一种强类型语言,要求设计实体中的每一个常数、信号、变量、函数以及设定的各种参量都必须具有确定的数据类型,并且只有数据类型相同的量才能互相传递和作用。 数据类型按使用目的分: ; 此数据类型都是在VHDL标准程序包STANDARD中定义的,在实际使用中,已自动包含进VHDL的源文件中,因而不必通过USE语句以显式调用。;位矢量(BIT_VECTOR)数据类型 由多个BIT组成的数组,BIT是其元素;使用时必须指出其 元素个数和排列。;字符(CHARACTER)数据类型 用单引号引起来,如‘A’。有大小写区分,如‘B’不同于‘b’。;自然数(NATURAL)和正整数(POSITIVE)数据类型 自然数是整数的一个子类型,是非负的整数,即零和正整数;正整数也是整数的一个子类型,它包括整数中非零和非负的数值。;实数(REAL)数据类型 VHDL的实数类型类似于数学上的实数,或称浮点数。 实数类型仅能在EDA仿真器中使用,EDA综合器不支持,因为其实现相当复杂,目前在电路规模上难以承受。 实数常量的

文档评论(0)

htfyzc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档