您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 电子设计/PCB > 10电-第3章-3.2 VHDL文字规则
CPLD/FPGA技术与应用孙静物理与机械电子工程学院第3章VHDL设计初步CPLD/FPGA技术与应用3.2VHDL文字规则【P3229.7】VHDL文字(Literal)主要包括数值和标识符。数值型文字主要有数字型、字符串型、位串型。一、数字1)整数文字:十进制整数5,678,156E2(=15600),45_234_287(=45234287)例如:CPLD/FPGA技术与应用一、数字2)实数文字:十进制,必须有小数点例如:1.335,1.0,88_670_551.453_909(=88670551.453909),44.99E-2(=0.4499)CPLD/FPGA技术与应用一、数字用这种方式表示的数由五个部分组成:第一部分,用十进制数标明数制进位的基数;第二部分,数制隔离符号“#”;第三部分,表达的文字;第四部分,指数隔离符号“#”;第五部分,用十进制表示的指数部分;如果指数是0,可以省去不写。3)以数制基数表示的文字基数#数字文字#E指数CPLD/FPGA技术与应用一、数字例如:10#170#--(十进制数,等于170)2#1111_1110#--(二进制数,等于254)8#376#--(八进制表示,等于254)16#FE#--(十六进制数,等于254)16#A#E3--(十六进制表示,等于--16#A000#,等于40960)16#F.01#E+2--(十六进制数,等于(15+1/(16×16))×16×16=3841.00)CPLD/FPGA技术与应用一、数字4)物理量文字【注意】整数可综合实现;实数一般不可综合实现;物理量不可综合实现。60s(60秒)、100m(100米)、33k(33千欧姆)、177mA(177毫安)例如:CPLD/FPGA技术与应用二、字符串1)字符:用单引号引起来的ASCII字符,可以是数值,也可以是符号或字母。‘A’,‘*’,‘z’,‘1’例如:2)字符串:用双引号引起来的一维字符数组“BOTHSANDQEQUALTOL”“1_1101_1110”例如:3)VHDL中有两种类型的字符串:文字字符串和数位字符串。CPLD/FPGA技术与应用二、字符串文字字符串是用双引号引起来的一串文字。数位字符串:也称位矢量,是预定义的数据类型BIT的一位数组,它们所代表的是二进制、八进制或十六进制的数组,其位矢量的长度即为等值的二进制数的位数。ERROR,X,B□B□$□C□C,“VHDL基数符号有三种格式:B:二进制基数符号。O:八进制基数符号,每一个八进制数代表一个3位的二进制数。X:十六进制基数符号,每一个十六进制数代表一个4位的二进制数。CPLD/FPGA技术与应用二、字符串data1=B1_1101_1110--二进制数数组,位矢数组长度是9data2=O15--八进制数数组,位矢数组长度是6data3=XAD0--十六进制数数组,位矢数组长度是12data4=B101_010_101_010--二进制数数组,位矢数组长度是12data5=101_010_101_010--表达错误,缺B。data6=0AD0--表达错误,缺X。例如:CPLD/FPGA技术与应用三、标识符标识符用来定义常数、变量、信号、端口、子程序或参数的名字。【87版标准】VHDL的基本标识符的书写规则:由26个大小写英文字母、数字0~9以及下划线“_”组成的字符串。以英文字母开头,不连续使用下划线“_”,不以下划线“_”结尾的,如a_7,a666,如a__b错误、mname_错误。标识符中的英语字母不分大小写,ab和AB是一样的。允许包含回车符,也允许包含空格。VHDL的关键字不能用于作为标识符使用,如entity,is等。CPLD/FPGA技术与应用三、标识符例如:合法的标识符:DECODER_1FFTSig_NNOT_ACKState0IdleCPLD/FPGA技术与应用三、标识符如:非法的标识符:_Decoder_1--起始为非英文字母74LS164--起始为数字Sig_#N--符号“#”不能成为标识符的构成Not-Ack--符号“-”不能成为标识符的构成RyY_RST_--标识符的最后不能是下划线“_”data__BUS--标识符中不能有双下划线BEGIN--关键词CPLD/FPGA技术与应用三、标识符【93版标准】扩展标识符:以反斜杠来界定,免去了87标准中基本标识符的一些限制。可以以数字打头;允许包含图形符号;允许使用VHDL保留字;区分字母大小写等。如:\74LS163\、\Sig_#N\、\entity\、\ENTITY\CPLD/FPGA技术与应用四、下标名及下标段名下标名用于指示数组型变量或信号的某一元素,而下标段名则用于指示数组型变量或信号的某一段元素。下标名/下标段名的语句格式:数组类型信号名或变量名(表达式1[TO/DOWNTO表达式2]);表达式的数值必须在数组元素下标号范围以内,并且必须是可计算的。TO表示数组下标序列由低到高,如“2TO8”。DOWNTO表示数组下标序列由高到低,如“8DOWNTO2”。CPLD/FPGA技术与应用四、下标名及下标段名如:SIGNALa,b,c:BIT_VECTOR(0TO3);SIGNALm:INTEGERRANGE0TO3;SIGNALy,z:BIT;y=a(m);--不可计算型下标表示z=b(3);--可计算型下标表示c(0TO1)=A(2TO3);--以段的方式进行赋值c(2TO3)=A(0TO1);--以段的方式进行赋值不可计算的下标:只能在特定的情况下综合,且耗费资源较大。可计算的下标:此操作数可很容易进行综合。CPLD/FPGA技术与应用五、特殊文字格式的说明注释‘--’:只在该文本行有效。分隔‘;’:行分隔符,VHDL的语句行可写在不同文本行中。空格:除关键字、标识符自身中间不能插入空格外,其他地方可插入任意数目的空格。
本文标题:10电-第3章-3.2 VHDL文字规则
链接地址:https://www.777doc.com/doc-3849832 .html