-- Fichier : reseau.vhd -- Société : ENSERB -- Date de création : Sept-96 -- Exemple trouvé dans le livre de R.Airiau ( VHDL etc..) -- Modifié par : P.Nouel -- Réseau en étoile - Test de 3 noeuds ------------------------------------------------------------------------------ ENTITY reseau IS END; USE WORK.pkg_res.ALL; ARCHITECTURE trois OF reseau IS SIGNAL h1, h2, h3 : BIT; SIGNAL ligne : type_ligne; COMPONENT noeud -- nom de l'entite qui va avec GENERIC ( attente : TIME; duree : TIME; message : STRING); PORT ( h : in BIT; ligne : INOUT type_ligne) ; END COMPONENT; BEGIN n1 : noeud GENERIC MAP ( 10 ms, 4 ms, "Noeud1_") PORT MAP (h1,ligne); n2 : noeud GENERIC MAP ( 20 ms, 6 ms, "Noeud2_") PORT MAP (h2,ligne); n3 : noeud GENERIC MAP ( 30 ms, 8 ms, "Noeud3_") PORT MAP (h3,ligne); -- A 50 ms, demande simple de h1 sans conflit -- A 100 ms 2 demendes simultanées de h1 et h2 -- A 145 ms demande de h3 et à 150 ms demande de h1 -- A 200 ms 2 demandes, puis une troisieme(h3) décalée -- h1 <= '1' AFTER 50 ms, '0' AFTER 51 ms, '1' AFTER 100 ms, '0' AFTER 101 ms, '1' AFTER 150 ms, '0' AFTER 151 ms, '1' AFTER 200 ms, '0' AFTER 201 ms; h2 <= '1' AFTER 100 ms, '0' AFTER 101 ms, '1' AFTER 200 ms, '0' AFTER 201 ms; h3 <= '1' AFTER 145 ms, '0' AFTER 146 ms, '1' AFTER 205 ms, '0' AFTER 206 ms; END trois;