Modelowanie i symulacja systemów cyfrowych Laboratorium 3
Transkrypt
Modelowanie i symulacja systemów cyfrowych Laboratorium 3
Modelowanie i symulacja systemów cyfrowych Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Zakład InŜynierii Komputerowej przygotował: dr inŜ. Remigiusz Wiśniewski dr inŜ. Arkadiusz Bukowiec Laboratorium 3-4 Procesy w języku VHDL CEL ĆWICZENIA • • Zapoznanie ze sposobami wykorzystania procesów w języku VHDL, Sposób opisu układów sekwencyjnych w języku VHDL. PRZYGOTOWANIE DO ĆWICZENIA • • Budowa i sposób działania podstawowych układów kombinacyjnych i sekwencyjnych, Podstawowe składnie języka VHDL. ZADANIA DO ZREALIZOWANIA Zad. 1. Zaprojektuj i przeprowadź symulację bramki AND wykorzystując instrukcję process. • Do realizacji zadania wykorzystaj następujący kod: library IEEE; use IEEE.STD_LOGIC_1164.all; entity bramka is port( a : in STD_LOGIC; b : in STD_LOGIC; y : out STD_LOGIC ); end bramka; architecture bramka_and of bramka is begin bramka_and_process: process (a,b) begin y<=a and b; end process; end bramka_and; Zad. 2. Do układu z zadania 1 dodaj nowe architektury opisujące bramki NOT, OR, XOR, NOR, NAND oraz XNOR. Do realizacji powyŜszych modeli wykorzystaj instrukcję process. Zad. 3. Wykorzystując process oraz instrukcję IF zaprojektuj multiplekser jednobitowy (2 na 1). W przypadku, gdy na wejściu S pojawi się inna wartość niŜ ‘0’ lub ‘1’, na wyjściu Y powinna pojawić się wartość ‘Z’ (stan wysokiej impedancji). Przeprowadź symulację układu. Zad. 4. Do układu z zadania 3 dodaj nową architekturę, wykorzystując instrukcję CASE. A B Y S mux Modelowanie i symulacja systemów cyfrowych Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Zakład InŜynierii Komputerowej przygotował: dr inŜ. Remigiusz Wiśniewski dr inŜ. Arkadiusz Bukowiec Zad. 5. Zaprojektuj model przerzutnika D wyzwalany zboczem narastającym. Układ powinien posiadać dwa wyjścia (Q oraz nQ) oraz dwa wejścia: informacyjne D oraz zegarowe Clk. Do realizacji zadania wykorzystaj poniŜszy kod: D Set Q Clk Reset ffd entity D_FF is port (D,Clk : in BIT; Q : out BIT := '0'; nQ : out BIT := '0' ); end entity D_FF; architecture opis_D_FF of D_FF is begin process_D_FF: process (Clk) begin if Clk = '1' and Clk'Event then Q <= D; NQ <= not D; end if; end process; end architecture opis_D_FF; Zad. 6. Do układu z zadania 5 dodaj synchroniczne wejście zerujące Set oraz asynchroniczne wejście zerujące Reset. Zad. 7. Napisać model sygnalizatora świetlnego dla samochodów. Układ powinien posiadać trzy wyjścia (światła Red, Yellow, Green), wejście zegarowe, ustawiające oraz zerujące. Układ powinien realizować funkcję sygnalizatora świetlnego (powinny zapalać się cyklicznie światła: Red -> Red & Yellow -> Green -> Yellow).