欢迎来到天天文库
浏览记录
ID:1485890
大小:347.50 KB
页数:29页
时间:2017-11-11
《vhdl对象数据及运算符》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章VHDL语言的对象和数据类型及运算操作符5.1VHDL文字规则5.1.1数字整数:整数都是十进制的数,如:5,678,0,156E2(=15600),45_234_287(=45234287)实数:实数也都是十进制的数,但必须带有小数点,如:1.335,88_670_551.453_909(=88670551.453909),1.0,44.99E-2(=0.4499)以数制基数表示的文字:用这种方式表示的数由五个部分组成。SIGNALd1,d2,d3,d4,d5:INTEGERRANGE0TO
2、255;d1<=10#170#;--(十进制表示,等于十进制170)d2<=16#FE#;--(十六进制表示,等于十进制254)d3<=2#1111_1110#;--(二进制表示,等于十进制254)d4<=8#376#;--(八进制表示,等于十进制254)d5<=16#E#E1;--(十六进制表示,等于十进制224)物理量文字(VHDL综合器不接受此类文字)。如:60s(60秒),100m(100米),kΩ(千欧姆),177A(177安培)5.1VHDL文字规则5.1.2字符串(2)文字字符串(3)
3、数位字符串用单引号括起来的ASCII字符,如:‘R’,’a’,’1’,’-’B:二进制基数符号,表示二进制位0或1,在字符串中的每位表示一个Bit。O:八进制基数符号,在字符串中的每一个数代表一个八进制数,即代表一个3位(BIT)的二进制数。X:十六进制基数符号(0~F),代表一个十六进制数,即一个4位的二进制数。data1<=B"1_1101_1110"--二进制数数组,位矢数组长度是9data2<=O"15"--八进制数数组,位矢数组长度是6data3<=X"AD0"--十六进制数数组,位矢数组
4、长度是12data4<=B"101_010_101_010"--二进制数数组,位矢数组长度是12data5<="101_010_101_010"--表达错误,缺B。data6<="0AD0"--表达错误,缺X。(1)字符"ERROR","BothSandQequalto1","X","BB$CC"5.1VHDL文字规则5.1.3标识符标识符是最常用的操作符,可以是常数、变量、信号、端口、子程序或参数的名字。VHDL基本标识符的书写需遵循如下规则:l有效的字符:包括26个大小写英文字母,数字包括0~9
5、以及下划线“_”。l任何标识符必须以英文字母开头。l必须是单一下划线“_”,且其前后都必须有英文字母或数字。l标识符中的英语字母不分大小写。l允许包含图形符号(如回车符、换行符等),也允许包含空格符。合法的标识符:A,fft,and_4,max2uc非法的标识符:21A,_fft,and__4,max#2uc,a-b,return5.1VHDL文字规则5.1.4下标名下标名用于指示数组型变量或信号的某一元素。格式:标识符(表达式)标识符必须是数组型的变量或信号的名字,表达式所代表的值必须是数组下标范
6、围中的一个值,这个值将对应数组中的一个元素。如果这个表达式是一个可计算的值,则此操作数可很容易地进行综合。如果是不可计算的,则只能在特定的情况下综合。下例的两个下标名中一个是m,属不可计算,另一个是3,属可计算的。SIGNALa,b:BIT_VECTOR(0TO3);SIGNALm:INTEGERRANGE0TO3;SIGNALy,z:BIT;y<=a(m);--不可计算型下标表示z<=b(3);--可计算型下标表示5.2数据类型标量型(ScalarType)复合类型(CompositeType)存
7、取类型(AccessType)文件类型(FilesType)5.2.1VHDL的预定义数据类型1.布尔(BOOLEAN)数据类型2.位(BIT)数据类型如:constanta:bit:=‘1’;variableq:bit:=‘0’;signala,b:bit;3.位矢量(BIT_VECTOR)数据类型如:signals:bit_vector(15downto0);constantq:bit_vector(3downto0):=“0110”;5.2.1VHDL的预定义数据类型4.字符(CHARACTE
8、R)数据类型通常用单引号括起来,区分大小写。6.实数(REAL)数据类型如:variableq:realrange0.0to255.0;constanta:real:=1.0;1.0十进制浮点数0.0十进制浮点数65971.333333十进制浮点数65_971.333_3333与上一行等价8#43.6#e+4八进制浮点数43.6E-4十进制浮点数5.字符串(STRING)数据类型如:VARIABLEstring_var:STRING(0TO3);string_var:
此文档下载收益归作者所有