VHDL语言的对象和数据类型及运算操作符.ppt
《VHDL语言的对象和数据类型及运算操作符.ppt》由会员分享,可在线阅读,更多相关《VHDL语言的对象和数据类型及运算操作符.ppt(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第5章章 VHDL语言的对象和数据类语言的对象和数据类型及运算操作符型及运算操作符EDA技术讲义技术讲义5.1 VHDL文字规则文字规则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)以数制基数表示的文字:以数制基数表示的文字:用这种方式表示的数由五个部分组成。SIGNAL d1,d2,d3,d4,d5:INTEGE
2、R RANGE 0 TO 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安
3、培安培)EDA技术讲义技术讲义5.1 VHDL文字规则文字规则5.1.2 字符串字符串(2)文字字符串)文字字符串(3)数位字符串)数位字符串用单引号括起来的ASCII字符,如:R,a,1,-B:二进制基数符号,表示二进制位二进制基数符号,表示二进制位0或或1,在字符串中的每位表示一个,在字符串中的每位表示一个Bit。O:八进制基数符号,在字符串中的每一个数代表一个八进制数,即代表一个八进制基数符号,在字符串中的每一个数代表一个八进制数,即代表一个3 位位(BIT)的二进制数。的二进制数。X:十六进制基数符号十六进制基数符号(0F),代表一个十六进制数,即一个代表一个十六进制数,即一个4位的二
4、进制数。位的二进制数。data1=B1_1101_1110 -二进制数数组,位矢数组长度是二进制数数组,位矢数组长度是9data2=O15 -八进制数数组,位矢数组长度是八进制数数组,位矢数组长度是6data3=XAD0 -十六进制数数组,位矢数组长度是十六进制数数组,位矢数组长度是12data4=B101_010_101_010 -二进制数数组,位矢数组长度是二进制数数组,位矢数组长度是12data5=101_010_101_010 -表达错误,缺表达错误,缺B。data6=0AD0 -表达错误,缺表达错误,缺X。(1)字符)字符ERROR ,Both S and Q equal to 1,
5、X ,BB$CCEDA技术讲义技术讲义5.1 VHDL文字规则文字规则5.1.3 标识符标识符 标标识识符符是是最最常常用用的的操操作作符符,可可以以是是常常数数、变变量量、信信号号、端端口口、子子程程序序或参数的名字。或参数的名字。VHDL基本标识符的书写需遵循如下基本标识符的书写需遵循如下规则:规则:l有有效效的的字字符符:包包括括26个个大大小小写写英英文文字字母母,数数字字包包括括09 以以及及下下划划线线“_”。l l任何标识符必须以英文字母开头。任何标识符必须以英文字母开头。l l必须是单一下划线必须是单一下划线“_”,且其,且其前后前后都必须有英文字母或数字。都必须有英文字母或数
6、字。l l标识符中的英语字母不分大小写。标识符中的英语字母不分大小写。l l允许包含图形符号允许包含图形符号(如回车符、换行符等如回车符、换行符等),也允许包含空格符。,也允许包含空格符。合法的标识符:合法的标识符:A,fft,and_4,max2uc非法的标识符:非法的标识符:21A,_fft,and_ _4,max#2uc,a-b,returnEDA技术讲义技术讲义5.1 VHDL文字规则文字规则5.1.4 下标名下标名下标名用于指示数组型变量或信号的某一元素。下标名用于指示数组型变量或信号的某一元素。格式:格式:标识符标识符(表达式表达式)标标识识符符必必须须是是数数组组型型的的变变量量
7、或或信信号号的的名名字字,表表达达式式所所代代表表的的值值必必须须是是数数组组下下标标范范围围中中的的一一个个值值,这这个个值值将将对对应应数数组组中中的的一一个个元元素素。如如果果这这个个表表达达式式是是一一个个可可计计算算的的值值,则则此此操操作作数数可可很很容容易易地地进进行行综综合合。如如果果是是不不可可计计算算的,则只能在特定的情况下综合。的,则只能在特定的情况下综合。下例的两个下标名中一个是下例的两个下标名中一个是m,属不可计算,另一个是属不可计算,另一个是3,属可计算的。,属可计算的。SIGNAL a,b:BIT_VECTOR(0 TO 3);SIGNAL m :INTEGER
8、RANGE 0 TO 3;SIGNAL y,z:BIT;y=a(m);-不可计算型下标表示不可计算型下标表示z=b(3);-可计算型下标表示可计算型下标表示EDA技术讲义技术讲义5.2 数据类型数据类型标量型标量型(Scalar Type)复合类型复合类型(Composite Type)Composite Type)存取类型存取类型(Access Type)文件类型文件类型(Files Type)EDA技术讲义技术讲义5.2.1 VHDL的预定义数据类型的预定义数据类型1.布尔布尔(BOOLEAN)数据类型数据类型2.位位(BIT)数据类型数据类型 如:如:constant a:bit :=1
9、;variable q:bit:=0;signal a,b:bit;3.位矢量位矢量(BIT_VECTOR)数据类型数据类型 如:如:signal s:bit_vector(15 downto 0);constant q:bit_vector(3 downto 0):=“0110”;EDA技术讲义技术讲义5.2.1 VHDL的预定义数据类型的预定义数据类型4.字符字符(CHARACTER)数据类型数据类型 通常用单引号括起来,区分大小写。通常用单引号括起来,区分大小写。6.实数实数(REAL)数据类型数据类型 如:如:variable q:real range 0.0 to 255.0;con
10、stant a:real:=1.0;1.0 十进制浮点数十进制浮点数 0.0 十进制浮点数十进制浮点数 65971.333333 十进制浮点数十进制浮点数 65_971.333_3333 与上一行等价与上一行等价 8#43.6#e+4 八进制浮点数八进制浮点数 43.6E4 十进制浮点数十进制浮点数5.字符串字符串(STRING)数据类型数据类型如:如:VARIABLE string_var:STRING(0 TO 3);string_var:=a b c d;EDA技术讲义技术讲义8.8.时间时间(TIME)TIME)数据类型数据类型TYPE time IS RANGE 2147483647
11、 TO 2147483647 units fs;-飞秒,飞秒,VHDL中的最小时间单位中的最小时间单位 ps=1000 fs;-皮秒皮秒 ns=1000 ps;-纳秒纳秒 us=1000 ns;-微秒微秒 ms=1000 us;-毫秒毫秒 sec=1000 ms;-秒秒 min=60 sec;-分分 hr=60 min;-时时end units;5.2.1 VHDL的预定义数据类型的预定义数据类型7.整数整数(INTEGER)数据类型数据类型 如:如:signal b:integer range 7 to 7;variable a:integer:=5;EDA技术讲义技术讲义5.2.2 IEE
12、E预定义标准逻辑位与矢量预定义标准逻辑位与矢量1.1.标准逻辑位标准逻辑位STD_LOGICSTD_LOGIC数据类型数据类型2.2.标准逻辑矢量标准逻辑矢量(STD_LOGIC_VECTOR)STD_LOGIC_VECTOR)数据类型数据类型5.2 数据类型数据类型EDA技术讲义技术讲义5.2.3 其他预定义数据类型其他预定义数据类型1.无符号数据类型无符号数据类型(UNSIGNED TYPE)2.有符号数据类型有符号数据类型(SIGNED TYPE)5.2 数据类型数据类型十进制的8可以作如下表示:UNSIGNED(1000)两则无符号数据定义的示例:VARIABLE var:UNSIGN
13、ED(0 TO 10);SIGNAL sig:UNSIGNED(5 TO 0);例如:SIGNED(0101)代表代表+5,5SIGNED(1011)代表代表 5EDA技术讲义技术讲义5.2.4 用户自定义数据类型用户自定义数据类型1.枚举类型枚举类型2.物理类型物理类型5.2 数据类型数据类型如:Type year is(Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec);Signal thismoth:year;result=sep else 0;如:Type voltage is range 0 to 1000000000Units uv;(
14、基本单位基本单位)mv=1000uv;v=1000mv;End units;EDA技术讲义技术讲义5.2.5 数组类型数组类型5.2 数据类型数据类型限定性数组限定性数组限定性数组定义语句格式如下:TYPE TYPE 数组名数组名IS ARRAY(IS ARRAY(数组范围数组范围)OF OF 数据类型数据类型 ;如:如:type word is array(0 to 7)of std_logic;type word is array(0 to 7)of std_logic;非限定性数组非限定性数组非限制性数组的定义语句格式如下:TYPE TYPE 数组名数组名IS ARRAY(IS ARRA
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL 语言 对象 数据类型 运算 操作
限制150内