首页>>科技 >>内容

VHDL语言中的component,VHDL语言

发布时间:2023-10-07 19:02:21编辑:温柔的背包来源:

很多朋友对VHDL语言中的component,VHDL语言不是很了解,每日小编刚好整理了这方面的知识,今天就来带大家一探究竟。

VHDL语言中的component,VHDL语言

一个完整的VHDL程序包括五个部分:实体、体系结构、配置、包和库。在VHDL程序中,实体和结构这两种基本结构是必不可少的,它们可以构成最简单的VHDL程序。

实体用于描述电路器件的外部特性;结构用于描述电路器件的内部逻辑功能或电路结构;该软件包存储所有设计模块可以共享的数据类型、常量和子程序。配置用于从库中选择所需的单元,形成不同版本的系统设计;库用于存储编译后的实体、结构、包集合和配置。

第一,实体是VHDL编程的基本单位。实体声明描述了设计实体和外部电路的端口,定义了所有输入输出端口的基本属性,是实体的一个通信接口。实体声明以Entity开头,以end entity或end结尾,关键字不区分大小写。

实体声明语句的结构如下:实体实体名为[generic(泛型参数);][端口(端口描述);]最终实体实体名称;1.实体名称:一般由用户定义,最好能体现功能;2.泛型参数:它是一个选项;它是一个端口接口常数,通常用于指定端口的大小、实体中组件的数量以及实体的时序特性。

通用参数的值可以由实体外部提供,用户可以通过从外部重置通用参数来改变实体或组件的内部电路结构和规模。3、端口描述:端口为实体及其外部环境提供一个动态的通信通道,设计电路的端口和端口模式可以用端口语句来描述。

格式如下:port(端口名:端口模式数据类型;)(1)端口名:用户为实体的每个外部通道获取的名称,通常采用英文字母加数字的形式。(2)端口模式:有四种综合的端口模式,分别是:in、out、IN、OUT、INOUT、BUFFER,用来定义端口上数据的流向和模式。

二、结构结构描述了实体的结构、行为、组件和内部联系,即定义了设计实体的功能,规定了实体的数据流,规定了实体的内部数据联系。结构是实体功能的具体描述,必须遵循实体。

结构一般分为两部分,第一部分是解释数据类型、常数、信号、子程序和组件;第二部分描述实体的逻辑行为和各种不同描述风格的功能描述语句,包括各种顺序语句和并行语句。

结构声明语句的结构如下:实体名的架构结构名为[定义语句]begin[函数描述语句] end结构名;1.结构名:用户自定义,通常以数据流、行为和结构命名。它体现了对三种不同结构的描述。

2.结构信号定义语句结构信号定义语句必须放在关键字architecture之间,并开始解释结构内部要使用的信号、常数、数据类型、组件功能和过程。由该结构定义的信号是该结构的内部信号,并且只能在该结构中使用。结构中的信号定义和端口描述一样,应该有信号名称和数据类型定义。结构中使用的信号是内部连接的信号,因此不需要进行方向解释。

3.结构功能描述语句结构功能描述语句位于begin和end之间,具体描述结构的行为及其连接关系。结构函数描述语句可以包含5种不同类型的并行语句。您可以在语句结构中使用并行语句或顺序语句。

第三,库用于存储VHDL设计和数据,如完成的包,包括各种包定义、实体、机构等。在VHDL库中,库的描述总是在设计单元的前面。这样,设计单位中的报表可以使用库中的数据,方便用户共享编制的设计成果。

1.库的描述使用use语句,通常有以下两种格式:使用库名、包名和项目名;使用库名。包名。所有;第一种格式的作用是将指定库中的特定包中的选定项目打开给设计实体。第二种格式的作用是将指定库中的特定包中的所有内容开放给设计实体。

2、常用库(1)IEEE库IEEE库包含以下四个包集STD_LOGIC_1164:标准逻辑类型和对应的函数;STD_LOGIC_ARITH:数学函数;STD_LOGIC_SIGNED:符号数学函数;STD_LOGIC_UNSIGNED:无符号数学函数;(2)STD库STD库是符合VHDL标准的库,使用时不需要显示语句;(3)各公司提供的ASIC向量库ASIC逻辑门库;(4)工作库工作库是目前业界的库,用来存储用户的VHDL程序,做用户自己的库。

VHDL语法是相对标准的。对于任何数据对象(信号、变量、常量),其取值范围都必须严格限定,即必须明确定义要传输或存储的数据类型。在VHDL中,有许多预定义的数据类型,如整数数据类型、布尔数据类型、标准逻辑位数据类型STD_LOGIC和位数据类型。VHDL要求赋值运算符“=”两边的信号数据类型必须一致。

VHDL语言中有7种基本的逻辑运算符,包括与、或、与非、或非、异或、XNOR和非。逻辑运算符需要三种数据类型的操作数,即BIT、BOOLEAN、STD_LOGIC。

审核编辑黄浩宇

以上知识分享希望能够帮助到大家!