エンティティ内のジェネリックのデータ型 - 2023.2 日本語

Vivado Design Suite ユーザー ガイド: 合成 (UG901)

Document ID
UG901
Release Date
2023-11-01
Version
2023.2 日本語

VHDL-2008 では、エンティティのジェネリック文で未定義のデータ型がサポートされます。次に例を示します。

entity my_entity is
generic (type my_type);

port (in1 : in std_logic;
out1 : out my_type);
end entity my_entity;

このエンティティ宣言では、データ型が未定義です。RTL では、このエンティティ my_entity を次のようにインスタンシエートします。

my_inst1 : entity work.my_entity(beh) generic map (my_type => std_logic) port map ...
my_inst2 : entity work.my_entity(beh) generic map (my_type => std_logic_vector(3 downto 0)) port map ...

上記のコードは、my_entity を 2 回インスタンシエートしており、1 つ目では out1 は 1 ビット、2 つ目では out1 は 4 ビット ベクターに指定されています。