数字电路硬件描述语言VHDL.pptVIP

  • 21
  • 0
  • 约2.61万字
  • 约 97页
  • 2017-12-27 发布于河南
  • 举报
数字电路硬件描述语言VHDL

VHDL中数据类型较为复杂,根据使用目的不同可以分为用于综合的数据类型和用于仿真的数据类型。用于综合的数据类型有标量型、复合型和子类型;用于仿真的数据类型有存取类型和文件类型。 其中标量类型包括所有的简单类型,例如整数类型、浮点类型等;复合类型主要包括数组和记录;子类型主要是对已有数据类型加以限制;存取类型是一种指针类型;文件类型主要用于定义代表文件的对象。 1.标量类型 标量类型是基本的数据类型,它包括整数类型、浮点数类型、可枚举类型和物理类型。它们都属于预定义类型,设计人员不必显示地说明它们就可以直接使用的数据类型。 (1)整数类型 整数与数学中的整数定义十分相似,定义一个连续的整数范围。 整数和适用于整数的关系运算符、算术运算符均由VHDL预先定义。VHDL的软件工具支持的最小整数范围是- (231 - 1)到+ (231 - 1)。下面是几个整数的例子: 十进制整数:12345,10E4,-256,-1999; 二进制整数:2,2#1111_1111#; 八进制整数:8#377#,8#3_77#,-8#3257#; 十六进制整数:16#32a7#,16#32_a7#,-16#afff7#; VHDL综合器不能够对未限定整数类型的变量或信号进行综合,所以在定义变量和信号时应对整数的范围有所约束。例如: variable temp:integer range –255 to +255; signal count:integer range –1023 to +1023; ③ 由于选择信号赋值语句是并发执行的,所以不能够在进程中使用。 ④ 选择信号赋值语句对选择条件的测试是同时进行的,因此不允许有选择条件重叠的情况。 ⑤ 选择条件不允许出现涵盖不全的情况。 选择信号赋值语句对选择条件的测试是同时进行的,因此语句将对所有的选择条件进行判断,而没有优先级之分 。 (4)元件例化语句 在用VHDL设计一个大的数字系统时,可将系统分为几个部分来设计,每一部分对应一个设计实体。各部分设计完成后,将各部分连接起来完成整个系统的设计。各部分的连接有两种方法,一种是用原理图进行的,此时需为各部分实体创建符号(symbol)文件,用原理图将各实体对应 的符号文件连接起来。另一种连接方法为元件例化,利用元件例化语句将设计好的各个设计实体连接起来。 元件例化语句由两部分组成,第一部分是元件说明语句,第二部分为调用的元件与当前设计实体的连接说明,即元件调用部分。 元件说明语句的书写格式为: component 元件名 [generic 参数说明;] port端口说明; end component; 元件说明语句以component开头,以end component结尾,保留字component后面的引用元件名必须与存放在程序包中的被调用的元件、单元或模块的VHDL程序中的实体名保持一致。 [generic参数说明;]是一个可选项,如果要在结构体描述中进行参数或信息的传递,就要有generic参数说明项。 元件端口说明中的信号、模式、数据类型等定义规则与实体端口说明中的定义规则是完全相同的。 元件调用语句书写格式为: 标号名:元件名 [generic map(参数映射)] port map(端口映射); 元件调用语句说明低层元件同顶层文件的连接关系。其中的标号名是必须存在的并且是唯一的;元件名是被调用的元件模块名,必须与component语句中的引用元件名相一致;[generic map(参数映射)]是可选项,当需要进行参数传递时,就需要有参数映射项。 低层元件的端口信号(被调用元件)与顶层文件的端口的连接是用port map的映射关系联系起来。 映射方法有两种,一种是位置映射,一种是名称映射。 位置映射是在下一层元件端口说明中的信号书写顺序及位置和port map()中指定的实际信号书写顺序及位置一一对应。例如,在二输入与门中端口的输入输出定义为: port (a,b:in std_logic; c:out std_logic); 在设计的引用中与门u2的信号对应关系描述为: u2:and2 port map(nsel,d1,ab); 可见实际结构体的信号nsel与元件端口a相对应;结构体的信号d1与元件端口b相对应;结构体的信号ab与元件端口信号c相对应。 名称映射是将已经存在于库中的现成模块的各端口名称,赋予结构体描述中所使用的信号名。上述位置映射描述的语句对应的名称映射描述语句为: u2:and2 port map(a=nsel

文档评论(0)

1亿VIP精品文档

相关文档