Components & Instantiation
Designing structural architectures in VHDL: component declarations, port map, generic map, and direct instantiation.
Structural Design
In VHDL there are two main ways to describe a circuit:
| Style | Description |
|---|---|
| Behavioral (RTL) | Describes what the circuit does (process, assignments) |
| Structural | Assembles existing components like a schematic |
The structural style is essential for organizing large designs into hierarchical blocks. A top-level connects components (UART, ALU, FIFO…) through internal signals.
Component Declaration (component)
Before instantiating a component, its interface must be declared in the architecture declarative region:
architecture rtl of top_level is
-- Component declaration (copy of the entity)
component adder is
generic (
g_WIDTH : integer := 8
);
port (
i_a : in std_logic_vector(g_WIDTH-1 downto 0);
i_b : in std_logic_vector(g_WIDTH-