- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VHDL对象数据类型和运算符幻灯片
;数据对象;例如:
CONSTANT Vcc : REAL := 5.0;
CONSTANT m: STD_LOGIC_VECTOR(0 TO 3) := “1011”;
CONSTANT Delay : TIME := 10 ns; ;2 变量(VARIABLE)
变量只能在进程和子程序中用,是一个局部量,不能将信息带出对它做出定义的当前设计单元。与信号不同,变量的赋值是理想化数据传输,其赋值是立即生效的,不存在任何的延时行为。
变量定义语句的格式为:
VARIABLE 变量名 : 数据类型 约束条件 := 初始值;
例如:
VARIABLE num: INTEGER RANGE 0 TO 127 := 20;
VARIABLE m, n: INTEGER; ;变量赋值语句的格式为:
变量名 := 表达式;
赋值语句 “:=” 右边的表达式必须与目标变量具有相同的数据类型,这个表达式可以是一个运算表达式也可以是一个数值。变量赋值语句左边的目标变量可以是单值变量,也可以是变量的集合。
例如定义变量:
VARIABLE a,b : REAL;
VARIABLE x,y : BIT_VECTOR(0 TO 7);
a:=11.0;
x(0 to 5):=y(2 to 7);;3 信号(SIGNAL)
信号是电子电路内部硬件连接的抽象,它的性质类似于连接线。它可以作为设计实体中的并行语句模块间交流信息的通道。信号及其相关的延时语句明显地体现了硬件系统的特征。
信号定义语句的格式为:
SIGNAL 信号名:数据类型:= 初始值;
例如:
SIGNAL gnd :BIT := ‘0’;
SIGNAL data :STD_LOGIC_VECTOR (7 DOWNTO 0); ;信号赋值语句表达式为:
信号名 =表达式;
符号 “=” 表示赋值操作,即将数据信息传入。数据信息传入时可以设置延时过程,这与器件的实际传播延时十分接近。因此信号值的代入采用“=”代入符,而不是像变量赋值时那样用“:=”。但信号定义时初始赋值符号“:=”,即仿真的时间坐标是从赋初始值开始的。
信号赋值语句举例:
x = y;
a = ‘1’;
D1 = D2 AFTER 10 ns;;信号与变量的区别;标准数据类型;整数(INTEGER)
整数与数学中整数的定义相似,可以使用预定义运算操作符,如加“+”、减“-”、乘“×”、除“÷”进行算术运算。在VHDL语言中,整数的表示范围为-2147483647~2147483647,即从-(231-1)到(231-1)。;;;位串是被双引号引起来的扩展的数字序列,
格式:基数说明符“数字字符串”。
基数符有“B”、“O”、“X”,他们的含义如下。
B:二进制基数符号,表示二进制位0或1,在字符串中每一个位表示一个BIT。
O:八进制基数符号,在字符串中每一个数代表一个八进制数,即代表一个3位(BIT)的二进制数。
X:十六进制基数符号,代表一个十六进制数,即代表一个4位二进制数。
例如:
B“0001_1011”, O“207”, X“A0F” ;STD_LOGIC和STD_LOGIC_VECTOR;有符号数(SIGNED)和无符号数(UNSIGNED)数据类型 ;有符号类型数据代表有符号数值,即可以是正数,0,负数;最左边的位为符号位。
二进制补码是常用的计数方法,方便进行加减运算。;无符号(Unsigned)和有符号(Signed)类型
定义位置:有符号(Signed)和无符号(Unsigned)逻辑信号定义在库IEEE的程序包STD_LOGIC_ARITH中。
;常用的预定义的程序包;数据类型转换 ;·STD_LOGIC_1164包集合函数
函数 TO_ STDLOGICVECTOR(A)
由BIT_VECTOR转换为STD_LOGIC_VECTOR
函数 TO_ BITVECTOR(A)
由STD_LOGIC_VECTOR转换为BIT_VECTOR
函数 TO_ STDLOGIC(A) 由BIT转换为STD_LOGIC
函数 TO_ BIT(A) 由STD_LOGIC转换为BIT
.STD_LOGIC_ARITH包集合函数
函数:CONV_INTEGER (A)
由UNSINGED,SINGED转换为INTEGER
函数:CONV_STD_LOGIC_VECTOR (A,位长)
由INTEGER, UNSINGED,SINGED转换为 STD_LOGIC_VECTOR包集合
·STD_LO
您可能关注的文档
最近下载
- Korn-Ferry-方案-构建成功者画像.pdf VIP
- 铭记抗战历史,弘扬爱国精神——纪念抗日战争胜利八十周年主题班会.pptx VIP
- 扣押决定书文书范本.doc VIP
- 人民大2024现代大学美育 教学课件认识美——万物皆美(第一章 美是什么)(1).pptx VIP
- 人民大2024现代大学美育 教学课件认识美——万物皆美(第二章 何为美育)(1).pptx VIP
- 项目策划培训课件.ppt VIP
- 人民大2024现代大学美育 教学课件艺术美——美美与共(第十一章造型艺术美)(陈琳、刘晓晓).pptx VIP
- 大学美育课件:中国艺术美-音乐美.pptx VIP
- 文化旅游项目策划报告.pptx VIP
- 大学美育课件:中国艺术美-绘画美.pptx VIP
文档评论(0)