VHDL基础:理解结构体中的关键词——实体与端口

需积分: 16 3 下载量 23 浏览量 更新于2024-08-25 收藏 1.44MB PPT 举报
在VHDL基础教程中,结构体是电路设计的关键组成部分,特别是在描述硬件行为时。本章节聚焦于结构体中的关键元素和语法。首先,理解`ARCHITECTURE`和`END ARCHITECTURE`这对标志词非常重要,它们用来定义电路的结构体说明的开始和结束。电路的结构体描述通常包括电路功能的详细描述,这部分由`BEGIN`和`END`引导。 结构体的描述以`ARCHITECTURE OF IS`开始,其中`IS`是连接词,用于引入结构体名称。接着,电路的行为逻辑会被编写在`BEGIN`之后,直到`END ARCHITECTURE`处,这里标志着结构体定义的完成。例如,对于一个2选1多路选择器电路(mux21a),其结构体`ARCHITECTURE one OF mux21a`定义了当输入信号`s`为0时输出`y`取`a`的值,当`s`为1时取`b`的值的逻辑。 在VHDL实体(Entity)部分,这是电路功能的主要声明,包含三个关键部分:`ENTITY`, `IS`, 和 `ENDENTITY`。`ENTITY`标志着实体声明的开始,`IS`连接词后面是实体的名称,如`mux21a`,它代表了电路的标识。`PORT`紧跟其后,用于声明电路的输入和输出信号,如`a`, `b`, `s: INBIT;`和`y: OUTBIT;`,表明这些信号的数据类型是位(BIT)。实体的描述要求遵循固定的命名规则,如实体名应具有描述性,避免使用数字开头或已定义的元件名,且实体名与VHDL文件名需一致。 在描述端口信号时,信号名可以自由指定但必须唯一,并在`PORT()`引导语句中列出,以分号`;`结尾。同时,支持多种端口模式,如输入(IN)、输出(OUT)、输入输出双向(INOUT)以及允许反馈的缓冲(BUFFER)。`BUFFER`与`INOUT`的主要区别在于,`BUFFER`信号要求输入信号来自内部,不允许外部反馈。 结构体中的关键词如`ARCHITECTURE`, `OF`, `BEGIN`, `END`, `ENTITY`, `IS`, `PORT`, `ENDENTITY`等在VHDL编程中起到连接和定义电路结构、行为和信号的作用,是理解和创建复杂电路设计的基础。理解并熟练运用这些关键词和规则,能够帮助你编写出准确无误的VHDL代码,实现电路功能的精确描述。