组(Group)

组(Group)

组是已命名项目的集合。
A group is a named collection of items.

语法(Syntax)

group 组模板名 is( 类, ... );              -- 组模板声明
类 = entity | architecture | label | signal | function | group | type | {etc.}  [ < > ] 
group 组名: 组模板名 ( name, ... );     -- 组声明
group group_template_name is( class, ... );              -- group template declaration
class = entity | architecture | label | signal | function | group | type | {etc.}  [ < > ] 
group group_name: group_template_name ( name, ... );     -- group declaration

说明(Description)

组将不同命名的项进行关联,其目的没有在语言内指明,并且对仿真没有任何意义。组可以当成是向下游工具传递信息的工具。
Groups relate different named items for the purposes not specified by the language, and have no meaning for simulation. Groups can be used to pass information to downstream tools.

设置一个组需要两个声明(组模板声明和组声明)。
Setting up a group requires two declarations (a group template declaration and a group declaration).

组模板声明定义了组的模式,由一些具有指定类的命名项连接而成。一个有范围的类必须有零个或多个单元属于该组,而且必须是类表中的最后一项。
The group template declaration defines pattern of a group connecting named items with the specified class. A class with range <> allows zero or more units belonging to this group, and must be the last item in this class list.

组声明将具有指定特征的命名项连接到一起。
The group declaration connects named items having the specified characteristics.

用户定义的属性被按照每个命名项分别连接起来,所以每个独立的命名项都有其各自的属性。因此当用户想把信息传递个一系列相关的命名项时,就可以定义一个组,然后为整个组指定其属性。
The user-defined attributes are connected individually with each named item, so each separate named item can have its own attributes. In case when the user wants to assign information to several related named items, a group consisting of these units can be defined, and then specify attributes for the entire group.

组的属性说明可其他属性说明一样。首先声明所给类型的属性,然后指定到指定的组。
The attribute specification of a group is realized in a similar way to other attribute specifications. First, the attribute of a given type is declared and it is specified for the given group in its declaration part which contains declaration of the particular group.

Example:

architecture Rtl of Ent1 is
  group Operations is (function, label <>);
  group Counters: Operations ("+", C1, C2);
begin
  C1: X <= A + B;
  C2: Y <= C + D;
end Rtl;

Note:

  • 组可能被分配网表
  • Groups can be nested.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值