Hallo zusammen,
kann mir jemand die Vor- und Nachteile einer direkten Instanzierung
erklären ?
Es besteht ja die Möglichkeit mit component zu arbeiten. Wie z.B.
1 | --
|
2 | -- [...]
|
3 | component async_adder is
|
4 | port (
|
5 | ain : in std_ulogic_vector(3 downto 0);
|
6 | bin : in std_ulogic_vector(3 downto 0);
|
7 | result : out std_ulogic_vector(4 downto 0)
|
8 | );
|
9 | end component;
|
10 | -- [...]
|
11 | --
|
12 | --Spaeter im Code dann die Instanz:
|
13 |
|
14 | dev1 : async_adder
|
15 | port map (
|
16 | ain => sw_ain,
|
17 | bin => sw_bin,
|
18 | result => data);
|
Jetzt besteht ja auch die Möglichkeit, über die direkte Angabe der
entity+architecture mein Modul "async_adder" einzubinden. Wie z.B. :
1 | dev1 : entity work.async_adder(rtl)
|
2 | port map (
|
3 | ain => sw_ain,
|
4 | bin => sw_bin,
|
5 | result => data);
|
Aufgrund der Übersichtlichkeit habe ich habe bis jetzt immer den
direkten Weg verwendet.
Gruß Till