- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 数据对象
* /数据类型
VHDL的运算符;数据对象;例如:
CONSTANT Vcc: REAL := 5.0;
CONSTANT m: STD_LOGIC_VECTOR(0 TO 3) := “1011”;
CONSTANT Delay : TIME := 10 ns;;2 变量(VARIABLE);变量赋值语句的格式为:
变量名:=表达式;
赋值语句“:=”右边的表达式必须与目标变量具有相同 的数据类型,这个表达式可以是一个运算表达式也可以 是一个数值。变量赋值语句左边的目标变量可以是单值 变量,也可以是变量的集合。
例如定义变量:
VARIABLE a, b : REAL;
VARIABLE x, y : BIT VECTOR (0TO7);
a:=lL0;
x(0 to 5):=y(2 to 7);;3 信号(SIGNAL);信号赋值语句表达式为:
信号名 =表达式;;信号与变量的区别;标准数据类型
r STD库的STAN DARD包集预定义了位 (BIT)、布尔(BOOLEAN)、整数 (INTEGER)和实数(REAL)数据类 型。;整数(INTEGER);位(BIT)数据类型有2种取值:0,和 1。 例如:这两种数据类型的信号可作如下声明: SIGNAL x: BIT; ■■将x声明为位(BIT)数据 类型??信号
SIGNAL y: BIT_VECTOR(3 DOWNTO 0);
..将y声明为位矢量
SIGNAL z: BIT_VECTOR(0 TO 3);
■■将N声明为位矢量
(BIT_VECTOR)数据类型的信号,位宽4位,最右 边的一位是最高位(MSB);位(BIT)数据类型和位矢量(BIT_VECTOR) 数据类型的信号的赋值:
x = r; ■■位(BIT)数据类型的值
应放在单引号之中
y = “1000”; ■■位矢量
(BIT_VECTOR)数据类型的值应放在双引号 之中,这里MSB=r
z = “1110”; ■■这里MSB= 0,
y V=X“8”; ■■采用十六进制
y=Ou10,; ■■釆用八进制;位串:VHDL语言中用壬表示位多量 -
位串是被双引号引起来的扩展的数字序列,
格式:基数说明符“数字字符申” 0
基数符有“B”、“O”、“X”,他们的含义如下。
B:二进制基数符号,表示二进制位。或1,在字符串中每一 个位表示一个BIT。
0:八进制基数符号,在字符申中每一个数代表一个八进制 数,即代表一个3位(BIT)的二进制数。
X:十六进制基数符号,代表一个十六进制数,即代表一个4 位二进制数。;STD_LOGIC 和
STD_LOGIC_VECTOR;有符号数(SIGNED)和无符号
数(UNSIGNED)数据类型
IEEE库的STD_LOGIC_ARITH包集作了预定
义 一 一
这两种数据类型的声明和赋值举例如下:
SIGNAL x: SIGNED(3 DOWNTO 0);
”声明信号X为有符号数
SIGNAL x: UNSIGNED(3 DOWNTO 0);
■■声明信号y为无符号数;无符号类型数据代表无符号数值,最左边的 位为最高位。
如:Unsigned(〃0110〃)代表: 6
Unsigned(〃1010〃)代表: 〔°
有符号类型数据代表有符号数值,即可以是正数,0,负 数;最左边的位为符号位。 八
二进制补码是常用的计数方法,方便进行加减运算。;无符号(Unsigned)和有符号(Signed)类型;常用的预定义的程序包;数据类型转换;?STD LOGIC 1164包集合函数;VHDL的运算符;赋值运算符;r例如:
SIGNAL x: STD_L0GIC_VECT0R(3 DOWNTO 0):顼1000,
r VARIABLE y: STD_L0GIC_VECT0R(3 DOWNTO 0):=” 1000; 一
r接着向它们进行赋值:
r x= “0001”;“ 向信号赋值 “0001” r x= (0 = 1, OTHER = O);
■■向信号赋值“0001”
r y := “0001” ■■向变量赋值 “0001”
ry := (0 = OTHER = 0);
■■向变量赋循“0001”;逻辑运算符 一
在VHDL语言中,共有6种逻辑运算符,他们分别是:
NOT 取反;
AND 与;
OR 或;
NAND 与非;
NOR 或非;
XOR 异或。XNOR同或
这6种逻辑运算符可以对“STD_LOGIC”和“BIT等逻 辑型数据、STD_LOGIC _VECTOR,,逻辑型数组及布 尔数据进行逻辑运算。必须注意,运算符的左
原创力文档


文档评论(0)