集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1103|回复: 2

VHDL 数据类型

[复制链接]
fpga_feixiang 发表于 2018-7-2 10:56:24 | 显示全部楼层 |阅读模式
1.用户自定义数据类型

使用关键字TYPE,例如:

TYPE my_integer IS RANGE -32 TO 32;

–用户自定义的整数类型的子集

TYPE student_grade IS RANGE 0 TO 100;

–用户自定义的自然数类型的子集

TYPE state IS (idle, forward, backward, stop);

–枚举数据类型,常用于有限状态机的状态定义

一般来说,枚举类型的数据自动按顺序依次编码。

2.子类型

在原有已定义数据类型上加一些约束条件,可以定义该数据类型的子类型。VHDL不允许不同类型的数据直接进行操作运算,而某个数据类型的子类型则可以和原有类型数据直接进行操作运算。

子类型定义使用SUBTYPE关键字。

3.数组(ARRAY)

ARRAY是将相同数据类型的数据集合在一起形成的一种新的数据类型。

TYPE type_name IS ARRAY (specification) OF data_type;

–定义新的数组类型语法结构

SIGNAL signal_name: type_name [:= initial_value];

–使用新的数组类型对SIGNAL,CONSTANT, VARIABLE进行声明

例如:

TYPE delay_lines IS ARRAY (L-2 DOWNTO 0) OF SIGNED (W_IN-1 DOWNTO 0);

–滤波器输入延迟链类型定义

TYPE coeffs IS ARRAY (L-1 DOWNTO 0) OF SIGNED (W_COEF-1 DOWNTO 0);

–滤波器系数类型定义

SIGNAL delay_regs: delay_lines;  – 信号延迟寄存器声明

CONSTANT coef: coeffs := (    ); –常量系数声明并赋初值
lixirui 发表于 2018-8-23 09:41:11 | 显示全部楼层
VHDL 数据类型
大鹏 发表于 2018-8-23 16:08:22 | 显示全部楼层

VHDL 数据类型
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-5-2 00:00 , Processed in 0.073589 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表