首页 百科知识 实体(ENTITY)

实体(ENTITY)

时间:2022-10-15 百科知识 版权反馈
【摘要】:“ENTITY”、“IS”、“END”为关键字,而“实体名”是由设计者依据设计单元的功能或特定项目的命名规则起的名字,只要满足标识符的命名规则即可。实体说明中的每一个输入输出信号称为端口,端口对应于电路图上的引脚。端口说明描述的是设计单元与外部的接口,具体来说就是对端口名称、数据类型和信号模式进行描述。

2.1.1 实体(ENTITY)

实体描述的是设计单元的外围,主要包括类属参数说明(Generic Declarations)和外围输入输出端口说明(Port Declarations),这两部分都是可选部分。为了方便阅读,本书中以“[]”表示可选部分。实体说明的语法结构如下所示:

img6

实体说明必须按照上述格式来编写,即实体说明应以“ENTITY〈实体名〉IS”开始,以“END〈实体名〉;”或“END ENTITY〈实体名〉;”结束。“ENTITY”、“IS”、“END”为关键字,而“实体名”是由设计者依据设计单元的功能或特定项目的命名规则起的名字,只要满足标识符(后续章节有详尽说明)的命名规则即可。

1.类属参数说明(Generic Declarations)

类属参数说明主要用来为用户设计指定待定参数,如用来定义端口宽度、器件延时时间等参数,该参数在整个设计单元内有效。书写格式如下:

img7

类属参数说明必须放在端口说明之前。需要注意的是类属参数可在编译时被赋予新的值,但类属参数在仿真和综合过程中是只读的。数据类型及初值相同的类属参数可以“,”分隔写在同一行,否则要分行写。例2-1给出了类属参数说明的实例。

【例2-1】类属参数的说明

img8

该例中,定义了INTEGER类型的类属参数width,定义了TIME类型的类属参数tphz和tplz,其中tphz和tplz具有相同的数据类型,且初值均为3ns。

2.端口说明(Port Declarations)

实体说明中的每一个输入输出信号称为端口,端口对应于电路图上的引脚。端口说明描述的是设计单元与外部的接口,具体来说就是对端口名称、数据类型和信号模式进行描述。书写格式如下:

img9

端口名是输入输出端口的名字,可由字母和数字等符号构成,只要满足标识符定义的规则即可。

端口方向用来说明端口信号的流动方向,有IN、OUT、INOUT、BUFFER和LINKAGE五种。如表2.1所示。


表2.1 端口方向使用说明

img10

3.数据类型

数据类型说明经过该端口信号的数据类型。由于VHDL是强数据类型的语言,不同数据类型的信号、变量等不可以相互赋值,所以要给端口指定数据类型。端口可以使用的数据类型可以是VHDL的标准数据类型,也可以是用户自己定义的包集合中的数据类型。关于数据类型会在后续章节详细介绍。

下面以例子说明实体部分在VHDL中的作用。

【例2-2】二选一选择器的实体说明

img11

附带说明:在VHDL中,通常在一段程序中可以加入注释,其格式是“-- 注释语句”,一行中从“--”开始直到此行末尾都被认为是注释语句,编译(Compile)时注释行不被编译。

例2-2定义了一个名为mux的实体,其中用PORT语句说明了实体mux的端口信息,即输入端口d0,d1,sel;输出端口q;输入和输出端口的数据类型均为一位二进制(BIT)类型。BIT 数据类型有“0”或“1”两种可能值。

上述实体说明部分定义了如图2.3所示的二选一选择器的外貌,但并没有定义输入信号和输出信号之间的关系。而定义输入信号和输出信号之间的关系的任务则由下面介绍的构造体来完成。

img12


图2.3 二选一选择器

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈