Generics 使用内部ID初始化组件
我应该创建一个由N个组件(实体“B”)组成的结构(实体“a”)。每个组件都有多个输入和输出以及一个内部信号ID(必须是静态的),用于标识从0到N-1的组件。每个组件根据ID执行一些操作。我的问题是如何在初始化时(在端口映射期间)将静态ID分配给每个组件。显然,组件是在for..generate循环中“创建”的,因为N可以是泛型的 为组件声明一个泛型,为其指定generate的循环索引,并在内部为信号指定泛型:Generics 使用内部ID初始化组件,generics,components,vhdl,Generics,Components,Vhdl,我应该创建一个由N个组件(实体“B”)组成的结构(实体“a”)。每个组件都有多个输入和输出以及一个内部信号ID(必须是静态的),用于标识从0到N-1的组件。每个组件根据ID执行一些操作。我的问题是如何在初始化时(在端口映射期间)将静态ID分配给每个组件。显然,组件是在for..generate循环中“创建”的,因为N可以是泛型的 为组件声明一个泛型,为其指定generate的循环索引,并在内部为信号指定泛型: entity insider is generic(id: natural);
entity insider is
generic(id: natural);
port(
...
);
end entity insider;
architecture arc of insider is
signal s: natural;
begin
...
s <= id;
...
end architecture arc;
...
architecture arc of outsider is
...
begin
...
g: for i in 1 to 10 generate
i: entity work.insider
generic map(id => i)
port map(
...
);
end generate g;
...
end architecture arc;
实体内幕是
通用(id:天然);
港口(
...
);
终端实体内部人员;
内部人的建筑弧是
信号s:自然;
开始
...
(一)
港口地图(
...
);
末端生成g;
...
末端结构弧;
为什么不直接使用中的循环标识符来表示。。是否将
作为实例化组件的ID生成?顺便说一句,如果你包含了相关的代码,这将对理解这个问题有很大帮助。我知道插入代码是非常有用的,但写这个问题时我很累。谢谢你的建议谢谢!如果这个问题没有示例代码,那么很抱歉,我写它的时候非常累。