Cet exemple décrit comment créer une conception hiérarchique à l’aide de VHDL. La conception de haut niveau, appelée top.vhd, implémente une instance de la logique fonctionnelle.vhd. Dans le fichier top.vhd, un composant pour la fonction logique est déclaré à l’intérieur de l’architecture dans laquelle il est instantané. La Déclaration des composants définit les ports de la fonction de niveau inférieur.
Liens connexes
Pour plus d’informations sur l’utilisation de cet exemple dans votre projet, reportez-vous à la section « Comment utiliser les exemples VHDL » sur la page Web de VHDL.
top.vhd (fichier haut de gamme)
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY top IS
PORT(w_in, x_in, y_in :IN std_logic;
clock :IN std_logic;
z_out :OUT std_logic);
END top;
ARCHITECTURE a OF top IS
COMPONENT logic
PORT(a,b,c :IN std_logic;
x :OUT std_logic);
END COMPONENT;
SIGNAL w_reg, x_reg, y_reg, z_reg :std_logic;
BEGIN
low_logic : logic PORT MAP (a => w_reg, b => x_reg, c => y_reg, x => z_reg);
PROCESS(clock)
BEGIN
IF (clock'event AND clock='1') THEN
w_reg<=w_in; x_reg<=x_in; y_reg<=y_in; z_out<=z_reg; END IF; END PROCESS; END a; </PRE>
logic.vhd
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY logic IS
PORT(a,b,c : IN std_logic;
x : OUT std_logic);
END logic;
ARCHITECTURE a OF logic IS
BEGIN
PROCESS (a,b,c)
BEGIN
x<=(a and b) or c; END PROCESS; END; </pre>