VHDL语言数据类型及相互转换

VHDL语言数据类型及相互转换

ID:37907888

大小:43.00 KB

页数:6页

时间:2019-06-02

VHDL语言数据类型及相互转换_第1页
VHDL语言数据类型及相互转换_第2页
VHDL语言数据类型及相互转换_第3页
VHDL语言数据类型及相互转换_第4页
VHDL语言数据类型及相互转换_第5页
资源描述:

《VHDL语言数据类型及相互转换》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、标准数据类型1,整数(INTEGER)范围:-2147483547---21474836462,实数(REAL)范围:-1.0E38---1.0E38(综合器不支持)书写时一定要有小数.3,位(BIT)在数字系统中,信号经常用位的值表示,位的值用带单引号的'1'和'0'来表示标准数据类型4,位矢量(BIT_VECTOR)位矢量是用双引号括起来的一组位数据"010101"5,布尔量(BOOLEAN)只有"真"和"假"两个状态,可以进行关系运算6,字符(CHARACTER)字符量通常用单引号括起来,对大小写敏感明确说明1是字

2、符时:CHARACTER'('1')标准数据类型7,字符串(STRING)字符串是双引号括起来的由字母,数字或@,%,$组成的一串字符.区分大小写"laksdklakld""1010101010"8,时间(TIME)时间的单位:fs,ps,ns,ms,sec,min,hr例:10ns整数数值和单位之间应有空格标准数据类型9,错误等级(SEVERITYLEVEL)在VHDL仿真器中,错误等级用来表示系统的状态,它共有4种:NOTE(注意)WARNING(警告)ERROR(错误)FAILURE(失败)标准数据类型10,自然数

3、(NATURAL)正整数(POSITIVE)自然数是整数的一个子类型,包括0和正整数;正整数也是整数的一个子类型.只能是正整数数据除定义类型外,有时还需要定义约束范围.INTEGERRANGE100DOWNTO0BIT_VECTOR(3DOWNTO0)REALRANGE2.0TO30.0IEEE定义的逻辑位与矢量在IEEE的程序包std_logic_1164中定义了两个非常重要的数据类型:1,std_logic取值:0,1,Z,X,W,L,HZ:高阻X:不定W:弱信号不定L:弱信号0H:弱信号12,Std_logic_v

4、ector注意1,在使用"std_logic"和"std_logic_vector"时,在程序中必须声明库及程序包说明语句,即LIBRARYieee和std_logic_1164.ALL这两句在程序中必不可少.2,std_logic有多个取值,与BIT不同,在编程时应特别注意,需要考虑全所有情况.用户自定义的数据类型1,枚举类型格式:TYPE数据类型名IS(元素,元素,…);TYPESTD_LOGICIS('U','X','0','1','Z','W','L','H','-');TYPEweekIS(Sun,Mon,Tu

5、e,wed,Thu,Fri,Sat);TYPEcolorIS(red,green,yellow,blue)TYPElift_stateIS(stopon1,doorpeen,doorclose,doorwait1,doorwait2,doorwait3,doorwait4,doorwait5,up,down,stop)枚举类型的声明TYPEcolorIS(red,green,yellow,blue);VARIABLEA:COLOR;SIGNALB:COLOR;A:=RED;B<=YELLOW;TYPEleverIS('0

6、','1','z');SIGNALV:lever;V<='1';用户自定义的数据类型2,整数(INTEGER)格式:TYPE数据类型名IS数据类型定义约束范围例TYPEdigitISINTEGERRANGE0TO9VARIABLEA:DIGIT;A:=5;A:=28;用户自定义的数据类型3,实数(REAL)格式:TYPE数据类型名IS数据类型定义约束范围TYPEcurrentISREALRANGE-1E4TO1E4VARIABLEA:CURRENT;A:=1E3;A:=1E10;用户自定义的数据类型4,数组(ARRAY)

7、格式:TYPE数据类型名ISARRAY范围OF原数据类型名;例:TYPEwordISARRAY(1TO8)OFSTD_LOGIC;TYPEwordISARRAY(INTEGER1TO8)OFSTD_LOGIC;数组常在总线,ROM和RAM中使用.用户自定义的数据类型5,记录(RECODE)类型将不同的数据类型放在一块,就是记录类型数据格式:TYPE记录类型名ISRECORD元素名:数据类型名;元素名:数据类型名;::ENDRECORD[记录类型名];记录(RECODE)类型例:TYPEbankISRECORDaddr0:

8、STD_LOGIC_VECTOR(7DOWNTO0);addr1:STD_LOGIC_VECTOR(7DOWNTO0);r0:INTEGER;ENDRECORD;记录(RECODE)类型例:CONSTANTLEN:integer:=100;TYPEarraylogicISARRAY(99downto0)OFSTD_L

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

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

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