水电电工知识
电工技术|VHDL自定义类型
2016-05-16  浏览:18
水电之家讯:在VHDL中,用户自定义库的类型有几种类型:枚举类型、整数和实数类型、数组类型、记录类型、子类型。

VHDL自定义类型定义语句TYPE和子类型定义语句SUBTYPE实现用户自定义数据类型。

(1)枚举类型

枚举该类型的所有可能的值。格式:

如:type std_logic is('U','X','0','1','Z','W','L','H','-)

type 类型名称 is (枚举文字{,枚举文字});

枚举类型的编码:

综合器自动实现枚举类型元素的编码,一般将第一个枚举量(最左边)编码为0,以后的依次加1。

编码用位矢量表示,位矢量的长度将取所需表达的所有枚举元素的最小值。

(2)整数类型

用户定义的整数类型是标准包中整数类型的子范围。格式:

例:type my_integer is integer range 0 to 9;

(3)数组类型

数组:同类型元素的集合。VHDL支持多维数组。

多维数组的声明:

type byte is array(7 downto 0) of bit;

type vector is array(3 downto 0) of byte;

限定数组、非限定数组、属性:

type 类型名称 is range 整数范围;

限定数组:

其索引范围有一定的限制。

type 数组名 is array(数组范围) of 数据类型;

非限定数组:数组索引范围被定义成一个类型范围。

type 数组名 is array(类型名称 range <>) of 数据类型;

属性:VHDL为多种类型定义了属性。

(4)记录类型

记录是不同类型的名称域的集合。

格式如下:

访问记录体元素的方式:记录体名.元素名

type 记录类型名is record

元素名:数据类型名;

元素名:数据类型名;

(5)子类型

子类型是已定义的类型或子类型的一个子集。

格式:

bit_vector 类型定义如下:

type bit_vector is array (natural range <>) of bit;

如设计中只用16bit;可定义子类型如下:

subtype my_vector is bit_vector(0 to 15);

注:子类型与基(父)类型具有相同的操作符和子程序。可以直接进行赋值操作。

水电之家为您提供最全面的管材,管件,水电,电线,电工,管材水电品牌的装修知识点和各种管材水电的导购与在线购买服务,拥有最便宜的管材水电价格和最优质的售后服务,每天都有秒杀的抢购活动哦!敬请登陆水电之家:http://shuidian.jc68.com/
更多»您可能感兴趣的文章:
更多»有关 管材 的产品:
  • 水电电工资讯
  • 发表评论 | 0评
  • 评论登陆
  • 移动社区 天花之家 木门之家 灯具之家 铁艺之家 幕墙之家 五金头条 楼梯头条 墙纸头条 壁纸头条 玻璃头条 老姚之家 灯饰之家 电气之家 全景头条 照明之家 防水之家 防盗之家 区快洞察 建材 枣庄建材 临沂建材 南昌建材 上饶建材 抚州建材 宜春建材 吉安建材 赣州建材 鹰潭建材 新余建材 九江建材 萍乡建材 景德镇陶瓷 石家庄建材 衡水建材 廊坊建材 沧州建材 承德建材 建材之家 企业之家 720全景
    (c)2015-2017 Bybc.cn SYSTEM All Rights Reserved