我可以在行为方法中使用端口映射,并且在行为建模VHDL中使用过程强制

时间:2014-05-22 09:16:29

标签: vhdl

我很少有人怀疑。我可以用进程编写VHDL结构程序吗?我可以在没有流程的情况下编写行为建模吗?我可以在行为和结构建模中使用端口映射吗?在VHDL中编写结构和行为是否有某些语法规则?

2 个答案:

答案 0 :(得分:1)

混合任何这些结构是合法的(推荐的是另一个问题,并且有些主观,因此可能在这里偏离主题)。

行为建模通常意味着一个过程,而一些(许多?)设计师避免将过程与结构代码混合(一般而言不是我),但混合它们并不是非法的,并且没有任何意义"神奇"关于用一个或另一个术语标记体系结构。

答案 1 :(得分:1)

Structural是指组件的层次结构。在某种程度上,所有功能VHDL设计模型都是抽象的和行为的,VHDL没有原生基元。

精心设计的模型由层次结构,流程语句,并发语句及其顺序等价物(例如顺序过程调用)组成,分为块语句(层次结构)和/或等效过程。函数调用是表达式的一部分。

来自IEEE Std 1076-2008(LRM):

  

设计实体和配置

     

设计实体是VHDL中的主要硬件抽象。它   表示具有明确定义的输入的硬件设计的一部分   并输出并执行明确定义的功能。设计实体   可以代表整个系统,子系统,板,芯片,等等   宏单元,逻辑门或其间的任何抽象级别。一个   配置可用于描述如何将设计实体组合在一起以形成完整的设计。

     

可以根据的层次结构来描述设计实体,   每个都代表整个设计的一部分。顶级   这种层次结构中的块是设计实体本身;这样的一块就是   一个驻留在库中的外部块,可以用作   其他设计的组成部分。层次结构中的嵌套块是   内部块,由块语句定义(见11.2)。

     

设计实体也可以根据互连来描述   组件。设计实体的每个组件可以绑定到a   较低级别的设计实体,以便定义结构或行为   那个组成部分。将设计实体连续分解为   组件,并将这些组件绑定到其他设计实体   可以以类似的方式分解,导致设计的层次结构   代表完整设计的实体。这样的设计集合   实体称为设计层次结构。必要的绑定   识别设计层次结构可以在配置中指定   层次结构中的顶级实体。

在这里您可以找到设计模型的结构和行为之间的区别。

架构主体

  

架构主体定义设计实体的主体。它指定了设计的输入和输出之间的关系   实体,可以用结构,数据流或表达来表达   行为。这些规范可能是部分或完整的。

注意,您可以在没有功能设计模型的情况下提取结构(网表)。最低规格是

architecture architecture_name of entity_name is
begin

end architecture;

详细阐述设计层次结构

  

设计层次结构的细化创建了一个集合   通过网络互联的过程;这个过程和集合   然后可以执行网络来模拟设计的行为。

来自术语表:

  

设计层次结构:完整的设计表示形式   将设计实体连续分解为   子组件以及这些组件与其他设计实体的绑定   可能会以类似的方式分解。

     

model:精心设计层次结构。可以执行模型   为了模拟它所代表的设计。

     

执行:(A)首先详细说明模型的设计层次结构,然后初始化其网络,最后进行模拟   在此期间,重复执行模拟循环   执行哪些进程并更新网络。 (B)当一个过程   执行由其中描述的算法指定的动作   声明部分

纯粹的结构设计模型没有指定的行为,仅代表网表。它在模拟时不会执行任何操作,但是当实体与目标设备原语匹配时,网表可以直接映射。设备供应商倾向于为设计实体提供架构主体,为其目标基元提供行为规范。