网站大量收购闲置独家精品文档,联系QQ:2885784924

VHDL数据类型..doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VHDL数据类型 ????? VHDL是一种强数据类型语言。 ???? 要求设计实体中的每一个常数、信号、变量、 函数以及设定的各种参量都必须具有确定的数据类 型,并且相同数据类型的量才能互相传递和作用。 ???? VHDL数据类型分为四大类: ??????? 1标量类型(SCALAR TYPE); ??????? 2复合类型(COMPOSITE TYPE); ??????? 3存取类型(ACCESS TYPE); ??????? 4文件类型(FILES TYPE) 又分为: ?? 1预定义数据类型、 ?? 2用户自定义数据类型 1、VHDL的预定义数据类型 ?1)布尔量(boolean) ????? 布尔量具有两种状态:false 和 true ?? 常用于逻辑函数,如相等(=)、比较()?? 等中作逻辑比较。?? 如,bit 值转化成boolean 值: ?????? boolean_var := (bit_var = ‘1’); 2)位(bit) ??? bit 表示一位的信号值。? 放在单引号中,如 ‘0’ 或 ‘1’。 3)位矢量 (bit_vector) ?? bit_vector 是用双引号括起来的一组位数据。?如: “001100”?????? X“00B10B” 4)字符(character) ?? 用单引号将字符括起来。 ??? variable character_var : character; ???? ... ... ??? Character_var : = ‘A’; 5)整数(integer) ?? integer 表示所有正的和负的整数。硬件实现时,利用32位的位矢量来表示。可实现的整数范围为: ?????? -(231-1) to (231-1) ??? VHDL综合器要求对具体的整数作出范围限定,否则无法综合成硬件电路。 ?? 如:signal s : integer range 0 to 15; ?? 信号 s 的取值范围是0-15,可用4位二进制数表示,因此 s 将被综合成由四条信号线构成的信号。 6)自然数(natural)和正整数(positive) ?? natural是integer的子类型,表示非负整数。 ?? positive是integer的子类型,表示正整数。 ?? 定义如下: ?? subtype natural is integer range 0 to ????? integer’high; ?? subtype positive is integer range 1 to ????? integer’high; 7)实数(REAL) ????? 或称浮点数 ????? 取值范围:-1.0E38 - +1.0E38 ????? 实数类型仅能用于VHDL仿真器,一般综合器不支持。 8)字符串(string) ?????? string 是 character 类型的一个非限定数组。用双引号将一串字符括起来。如: ????? variable string_var : string(1 to 7); ??????? …… ???? string_var := “Rosebud”; 9)时间(TIME) ???? 由整数和物理单位组成 ???? 如:55 ms,20 ns 10)错误等级(SEVERITY_LEVEL) ??? 仿真中用来指示系统的工作状态,共有四种: ??????? NOTE(注意)、 ??????? WARNING(警告)、 ??????? ERROR(出错)、 ??????? FAILURE(失败) 2、IEEE预定义标准逻辑位与矢量 ?? 1)std_logic 类型 ?????? 由 ieee 库中的std_logic_1164 程序包定义,为九值逻辑系统,如下: ??? (‘U’,‘X’,‘0’,‘1’,‘Z’,‘W’,‘L’,‘H’,‘-’) ????? ‘U’:未初始化的, ‘X’:强未知的, ????? ‘0’:强0,??????? ‘1’:强1, ????? ‘Z’:高阻态,???? ‘W’:弱未知的, ????? ‘L’:弱0,??????? ‘H’:弱1, ????? ‘-’:忽略 ???? 由 std_logic 类型代替 bit 类型可以完成电子系统的精确模拟,并可实现常见的三态总线电路。 2)std_logic_vector 类型 ?? 由 std_logic 构成的数组。定义如下: ????? type std_logic_vector is array(natural?range) of std_logic; ?? 赋值的原则:相同位宽,相同数据类型。 3、用户自定义类型 ?? 用户自定义类型是VHDL语言的一大

文档评论(0)

gangshou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档