bpc-los_06 - VHDL-strukturální popis, generic
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.
-- Popis architektury half_adder
ARCHITECTURE Behavioral OF half_adder IS
SIGNAL s: std_logic_vector(1 DOWNTO 0);
BEGIN s <= std_logic_vector(unsigned'('0' & a) + unsigned'('0' & b));
sum <= s(0);
cout <= s(1);
END ARCHITECTURE Behavioral;
Behaviorální styl popisu obvodu
-- Deklarace entity half_adder
ENTITY half_adder IS
PORT (a, b: IN std_logic; -- Datové vstupy
sum, cout: OUT std_logic -- Datové výstupy
);
END ENTITY half_adder;
LIBRARY ieee; -- Knihovna IEEE
USE ieee.std_logic_1164.ALL; -- Knihovní balík std_logic_1164
USE ieee.numeric_std.ALL; -- Knihovní balík numeric_std
-- Popis architektury half_adder
ARCHITECTURE Behavioral OF half_adder IS
SIGNAL s: std_logic_vector(1 DOWNTO 0);
BEGIN s <= std_logic_vector(unsigned'('0' & a) + unsigned'('0' & b));
sum <= s(0);
cout <= s(1);
END ARCHITECTURE Behavioral;
Toto je evidentně obecnější styl popisu půlsčítačky?
Behaviorální styl popisu obvodu
-- Deklarace entity half_adder
ENTITY half_adder IS
PORT (a, b: IN std_logic; -- Datové vstupy
sum, cout: OUT std_logic -- Datové výstupy
);
END ENTITY half_adder;
LIBRARY ieee; -- Knihovna IEEE
USE ieee.std_logic_1164.ALL; -- Knihovní balík std_logic_1164
USE ieee.numeric_std.ALL; -- Knihovní balík numeric_std
Strukturální styl popisu
• Ve strukturálním stylu je každá entita popsána
jako skupina vzájemně propojených komponent.
• Entita nejvyšší úrovně hierarchicky popisuje
propojení návrhových entit nejbližší nižší úrovně.
• Strukturální styl je účelně využitelný v případech,
kdy je komplexní systém možné popsat pomocí
propojení středně složitých konstrukčních entit.
• Tento přístup umožňuje, aby každá konstrukční
entita byla nezávisle navržena a ověřena před
použitím na vyšší úrovni modelu.
Popis entity a architektury xor_gate
xor_gate.vhdl:
Popis entity a architektury xor_gate
LIBRARY ieee; -- Knihovna IEEE
USE ieee.std_logic_1164.ALL; -- Knihovní balík std_logic_1164
ENTITY xor_gate IS -- Definice entity xor_gate
PORT (i1, i2: IN std_logic;
o: OUT std_logic
);
END ENTITY xor_gate;
ARCHITECTURE Behavioral OF xor_gate IS
BEGIN -- Tělo entity xor_gate
o <= i1 XOR i2;
END ARCHITECTURE Behavioral;
xor_gate.vhdl:
Popis entity a architektury xor_gate
LIBRARY ieee; -- Knihovna IEEE
USE ieee.std_logic_1164.ALL; -- Knihovní balík std_logic_1164