超大规模集成电路VHDL

超大规模集成电路VHDL

ID:37550808

大小:204.10 KB

页数:56页

时间:2019-05-12

超大规模集成电路VHDL_第1页
超大规模集成电路VHDL_第2页
超大规模集成电路VHDL_第3页
超大规模集成电路VHDL_第4页
超大规模集成电路VHDL_第5页
资源描述:

《超大规模集成电路VHDL》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第2章VHDL词法基础2.1标识符2.2数据对象2.3数据类型2.4类型转换2.5词法单元2.6运算符与操作符2.7属性标识符规则是VHDL语言中符号书写的一般规则。不仅对电子系统设计工程师是一个约束,同时也为各种各样的EDA工具提供了标准的书写规范,使之在综合仿真过程中不生产生歧义,易于仿真。VHDL语言有两个标准版:VHDL’87版和VHDL’93版。VHDL’87版的标识符语法规则经过扩展后,形成了VHDL’93版的标识符语法规则。前一部分称为短标识符,扩展部分称为扩展标识符。VHDL’93版含有短标识

2、符和扩展标识符两部分。2.1标识符短标识符规则:短标识符由字母、数字以及下划线字符组成,且具有以下特征要求:●第一个字符必须是字母;●最后一个字符不能是下划线;●不允许连续两个下划线;●在标识符中大、小写字母是等效的。●VHDL中的注释文字一律为2个连续的连接线“--”,可以出现在任一语句后面,也可以出现在独立行;●VHDL的保留字(关键字)不能用于标识符;2.1.1短标识符如下标识符是非法的:_tx_clk8B10Blarge#numberlink__barselectrx_clk_例如:如下标识符是合法的

3、:tx_clkThree_state_Enablesel7DHIT_1124--标识符必须起始于字母--只能是字母、数字、下划线--不能有连续两个下划线--关键字(保留字)不能用于标识符--最后字符不能是下划线扩展标识符规则:扩展标识符是VHDL’93版增加的标识符书写规则:(1)扩展标识符用反斜杠来定界。例如:multi_screens,eda_centrol等都是合法的扩展标识符。(2)允许包含图形符号、空格符。例如:modeA,$100,p%name等。(3)反斜杠之间的字符可以用保留

4、字。例如:buffer,entity,end等。(4)扩展标识符的界定符两个斜杠之间可以用数字打头。如:100$,2chip,4screens等。(5)扩展标识符中允许多个下划线相连。例如:Four_screens,TWO_Computer_sharptor等。(6)扩展标识符区分大小写。例如:EDA与eda不同。(7)扩展标识符与短标识符不同。例如:COMPUTER与Computer不同。2.1.2扩展标识符2.2数据对象在VHDL中,凡是可以赋予一个值的客体称为

5、数据对象。常用的数据对象为常量、变量、信号和文件,其中文件类型是VHDL’93标准中新通过的。对象说明的一般书写格式为:对象类别标识符表:子类型标识[:=初值];对象说明举例:CONSTANTT1,T2:time:=30ns,--常量说明VARIABLESUM:read;--变量说明SIGNALCLOCK:bit;--信号说明FILEinput:TextISIN“STD_INPUT”--文件说明2.2.1常量●常量(CONSTANT)常量是指在设计描述中不会变化的值。在VHDL描述中,一般用常量名代替数值。常

6、量说明语句的一般格式为:CONSTANT常量名{,常量名}:数据类型:=取值;例:8位寄存器宽度指定:CONSTANTwidth:integer:=8;设计实体的电源供电电压指定:CONSTANTvcc:real:=5.0;某一模块信号输入/输出的延迟时间:CONSTANTdelay:time:=100ns;常量所赋值和定义的数据类型应一致。常量一旦赋值就不能再改变。若要改变常量值,必须要改变设计,改变实体中的常量说明,然后重新编译。常量必须在程序包、实体、结构体或进程的说明区域中对常量的标识符、类型、常量值

7、进行指定。定义在程序包中的常量由所在的实体或结构体调用。定义在实体内的常量仅在实体内使用,定义在进程内的常量仅在进程内使用。●常量的使用规则●2.2.2变量(VARIABLE)变量是暂存数据的量。变量说明语句的格式是:VARIABLE变量名{,变量名}:数据类型[:=初始值];例如:VARIABLEcount:INTEGERRANGE0TO99:=0VARIABLESresult:std_logic:='0';—变量赋初值VARIABLESx,y,z:integer;VARIABLEScount:intege

8、rrange0TO255:=10;赋值语句中的表达式必须与目标变量具有相同的数据类型。变量赋值语句格式为:目标变量名:=表达式;变量是一个局部量,它只用于进程和子程序。变量必须在进程或子程序的说明区域中加以说明。变量赋值是直接的、非预设的,它在某一时刻仅包含一个值。变量的赋值立即生效,不存在延时行为。变量常用在实现某种运算的赋值语句中。变量赋值和初始化赋值符号用“:=”表示。变量不能用于硬件连线和存

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

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

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