如何在vhdl子模块中使用用户定义的类型?

时间:2012-08-05 19:00:33

标签: vhdl user-defined-types

让我说我的顶级.vhd文件中有以下内容

entity toplevel is
....
end toplevel;
architecture behave of toplevel is
type state is (A, B, C);
signal cur_state : state;
...
E1 : entity submodule_entity port map(
...
cur_state => cur_state);
...
end behave;

并且在我的第二个文件的实体/体系结构对中,我有以下

entity submodule_entity is
port(
    ...
    cur_state : in state);
end entity;

合成器抱怨在submodule_entity中没有定义类型状态(这是有意义的)。我如何在另一个模块中使用用户定义的类型?

1 个答案:

答案 0 :(得分:1)

您需要将自定义类型放在一个包中,然后包含在两个实体中。