哈工大CPLD教程-VHDL语言元素ppt课件.ppt

哈工大CPLD教程-VHDL语言元素ppt课件.ppt

ID:59331178

大小:93.00 KB

页数:35页

时间:2020-09-20

哈工大CPLD教程-VHDL语言元素ppt课件.ppt_第1页
哈工大CPLD教程-VHDL语言元素ppt课件.ppt_第2页
哈工大CPLD教程-VHDL语言元素ppt课件.ppt_第3页
哈工大CPLD教程-VHDL语言元素ppt课件.ppt_第4页
哈工大CPLD教程-VHDL语言元素ppt课件.ppt_第5页
资源描述:

《哈工大CPLD教程-VHDL语言元素ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第二章VHDL语言元素2.1VHDL语言的客体2.2VHDL语言的数据类型2.3VHDL数据类型转换2.4VHDL词法规则与标识符2.1VHDL语言的客体VHDL语言中,可以赋予一个质的对象就称为客体。客体主要包括以下三种:变量(VARIABLE)、常量(CONSTANT)、信号(SIGNAL)。2.1.1常量(CONSTANT)(常数)定义一个常数主要是为了使设计实体中的某些量易于阅读和修改。常数说明就是对某一常数名赋予一个固定的值。通常在程序开始前进行赋值,该值的数据类型在说明语句中说明。常数说明语句格式为:CONSTANT常数名:数据类型

2、:=表达式;例如:CONSTANTVcc:REAL:=5.0;CONSTANTFbus:BIT_VECTOR:=“1011”;CONSTANTDelay:TIME:=10ns;注:常量是一个恒定不变的值,一旦做了数据类型和赋值定义,它在程序中就不能再改变。2.1.2变量(VARIABLE)变量只能在进程和子程序中用,是一个局部量,不能将信息带出对它做出定义的当前设计单元。与信号不同,变量的赋值是理想化数据传输,其赋值是立即生效的,不存在任何的延时行为。变量定义语句的格式为:VARIABLE变量名:数据类型:约束条件:=初始值;例如:VARIAB

3、LEn:INTEGERRANGE0TO15:=2;VARIABLEa:INTEGER;变量赋值语句的格式为:目标变量名:=表达式;赋值语句“:=”右边的表达式必须与目标变量具有相同的数据类型,这个表达式可以是一个运算表达式也可以是一个数值。变量赋值语句左边的目标变量可以是单值变量,也可以是变量的集合。例如定义变量:VARIABLEa,b:=REAL;VARIABLEx,y:=BIT_VECTOR(0TO7);2.1.3信号(SIGNAL)信号是电子电路内部硬件连接的抽象。它可以作为设计实体中的并行语句模块间交流信息的通道。信号及其相关的延时语句

4、明显地体现了硬件系统的特征。信号定义语句的格式为:SIGNAL信号名:数据类型:约束条件:=表达式;例如:SIGNALgnd:BIT:=‘0’;SIGNALdata:STD_LOGIC_VECTOR(7DOWNTO0);信号赋值语句表达式为:目标信号名<=表达式;符号“<=”表示赋值操作,即将数据信息传入。数据信息传入时可以设置延时过程,这与器件的实际传播延时十分接近。因此信号值的代入采用“<=”代入符,而不是像变量赋值时那样用“:=”。但信号定义时初始赋值符号“:=”,即仿真的时间坐标是从赋初始值开始的。信号赋值语句举例:x<=y;a<=‘1

5、’;s1<=s2AFTER10ns;注意:变量和信号都必须先定义,后赋值。注意赋值符“<=”和“:=”的差别。信号与变量的区别:信号和变量是VHDL中重要的客体,他们之间的主要区别有:·信号赋值至少要有δ延时;而变量赋值没有。·信号除当前值外有许多相关的信息,如历史信息和投影波形;而变量只有当前值。·进程对信号敏感而不对变量敏感。·信号可以是多个进程的全局信号;而变量只在定义他们的顺序域可见(共享变量除外)。·信号是硬件中连线的抽象描述,他们的功能是保存变化的数据值和连接子元件,信号在元件的端口连接元件。变量在硬件中没有类似的对应关系,他们用于

6、硬件特性的高层次建模所需要的计算中。2.2VHDL语言的数据类型在对VHDL的客体进行定义时,都要指定其数据类型。VHDL有多种标准的数据类型,并且允许用户自定义数据类型。在VHDL语言语义约束中,对类型的要求反映在赋值语句的目标与源的一致,表达式中操作的一致,子类型中约束与类型的一致等许多方面。2.2.1VHDL中预定义的数据类型(编程者可直接使用)预定义类型在VHDL标准程序包STANDARD中定义,在应用中自动包含进VHDL的源文件,不需要USE语句显示调用。数据类型说明如下。1.整数(INTEGER)整数与数学中整数的定义相似,可以使用

7、预定义运算操作符,如加“+”、减“-”、乘“×”、除“÷”进行算术运算。在VHDL语言中,整数的表示范围为-2147483647~2147483647,即从-(231-1)到(231-1)。2.实数(REAL)在进行算法研究或实验时,作为对硬件方案的抽象手段,常常采用实数四则运算。实数的定义值范围为-1.0E+38~+1.0E+38。实数有正负数,书写时一定要有小数点。例如:-1.0,+2.5,-1.0E+383.位(BIT)用来表示数字系统中的信号值。位值用字符‘0’或者‘1’(将值放在引号中)表示。与整数中的1和0不同,‘1’和‘0’仅仅表

8、示一个位的两种取值。位数据可以用来描述数字系统中总线的值。位数据不同于布尔数据,可以用转换函数进行转换。4.位矢量(BIT_VECTOR)位矢量是用双

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

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

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