赞
踩
介绍
本章介绍AMD Vivado™合成和
注意支持的任何例外情况。VHDL紧凑地描述了复杂的逻辑,并允许您:
•描述系统的结构:如何将系统分解为子系统,以及如何这些子系统是相互连接的。
•使用熟悉的语言形式指定系统的功能。
•在硬件中实施和编程之前,模拟系统设计。
•根据更多抽象规范。
有关更多信息,请参阅IEEE VHDL语言参考手册(LRM)。
支持和不支持的VHDL数据类型
某些VHDL数据类型是预定义包的一部分。有关他们在哪里的信息编译,以及如何加载它们,请参阅VHDL预定义包。该类型在IEEE std_logic_1164包中定义。
不支持的数据类型
VHDL支持仅用于计算的标准包中定义的真实类型,例如泛型值的计算。
重要!不能定义real类型的可合成对象。
VHDL数据类型
VHDL预定义枚举类型
Vivado综合支持以下预定义的VHDL枚举类型。
VHDL用户定义枚举类型
您可以创建自己的枚举类型。用户定义的枚举类型通常描述有限状态机(FSM)的状态。
用户定义枚举类型编码示例(VHDL)
VHDL整数类型
整数类型是预定义的VHDL类型。Vivado合成在32位上实现一个整数默认情况下。为了更紧凑的实现定义可应用值的精确范围,其中类型MSB在8到15的范围内。您还可以利用预定义的自然类型和正类型,重载整数类型
VHDL多维数组类型
Vivado synthesis支持VHDL多维数组类型。
建议:尽管尺寸数量没有限制,但描述的数量不超过三维。
多维数组类型的对象可以传递给函数并在组件中使用实例化。可以描述的多维数组类型的对象是信号,
常量和变量。
完全约束阵列类型编码示例
数组类型必须在所有维度上都受到完全约束。
VHDL记录类型代码示例
•记录类型的字段也可以是记录类型。
•常量可以是记录类型。
•记录类型不能包含属性。
•Vivado合成支持记录信号的聚合分配。以下代码snippet就是一个例子:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。