Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΕΝΟΤΗΤΑ 9 Η Η ΓΛΩΣΣΑ VHDL: ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ  Εργαλεία σύνθεσης και προσομοίωσης VHDL  Πολυπλέκτες και αποκωδικοποιητές σε VHDL  Συγκριτές σε VHDL.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΕΝΟΤΗΤΑ 9 Η Η ΓΛΩΣΣΑ VHDL: ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ  Εργαλεία σύνθεσης και προσομοίωσης VHDL  Πολυπλέκτες και αποκωδικοποιητές σε VHDL  Συγκριτές σε VHDL."— Μεταγράφημα παρουσίασης:

1 ΕΝΟΤΗΤΑ 9 Η Η ΓΛΩΣΣΑ VHDL: ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ  Εργαλεία σύνθεσης και προσομοίωσης VHDL  Πολυπλέκτες και αποκωδικοποιητές σε VHDL  Συγκριτές σε VHDL  Αριθμητικά κυκλώματα σε VHDL Τμήμα Πληροφορικής και Επικοινωνιών, «Ενίσχυση Σπουδών Πληροφορικής», ΕΠΕΑΕΚ ΙΙ Ιωάννη Καλόμοιρου, Προηγμένα Ψηφιακά Συστήματα

2 Εργαλεία Σχεδίασης ψηφιακών κυκλωμάτων. Το Λογισμικό Quartus II επιθυμητό σχέδιο Εισαγωγή σχεδίασης Πίνακας αληθείας Σχηματικό διάγραμμα Κώδικας HDL Σύνθεση προσομοίωση ΛΑΘΟΣ ΣΩΣΤΟ Φυσική σχεδίαση- δρομολόγηση Ροή εργασιών στο λογισμικό σύνθεσης και προσομοίωσης Quartus II

3 Εισαγωγή σχηματικού διαγράμματος στο Quartus II

4 Compilation (Μετάφραση) στο Quartus II

5 Η ΓΛΩΣΣΑ VHDL Σχεδιαστική ροή σε VHDL ή σε άλλη γλώσσα περιγραφής υλικού

6 Δομή προγράμματος σε VHDL

7 Πολυπλέκτης 2:1 σε VHDL LIBRARY ieee; USE ieee.std_logic_1164.all; --simple example 2-to-1 multiplexer ENTITY mux2to1 IS PORT(x, y, s :IN STD_LOGIC; m :OUT STD_LOGIC); END mux2to1; ARCHITECTURE Behavior OF mux2to1 IS BEGIN m<=(NOT(s) AND x) OR (s AND y); END Behavior;

8 Πολυπλέκτης 2:1 (συνέχεια) Η δομή εντολών with (signal) select…when…others library ieee; use ieee.std_logic_1164.all; Εntity mux2_1 is port (x,y,s : in std_logic; f : out std_logic); end mux2_1; Αrchitecture behavior of mux2_1 is begin with s select f<= x when '0', y when others; end behavior;

9 Λογισμικό Σύνθεσης-Προσομοίωσης Quartus II Προσομοίωση του πολυπλέκτη 2:1

10 Πολυπλέκτης 2 καναλιών 8-bits H δομή δεδομένων std_logic_Vector library ieee; use ieee.std_logic_1164.all; entity part2 is port (x,y : in std_logic_vector (7 downto 0); s : in std_logic; f : out std_logic_vector (7 downto 0)); end part2; architecture behavior of part2 is begin with s select f<= x when '0', y when others; end behavior;

11 Αποκωδικοποιητές σε VHDL LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY DECODER_2TO4 IS PORT(X :IN STD_LOGIC_VECTOR (1 DOWNTO 0); Y :OUT STD_LOGIC_VECTOR (3 DOWNTO 0)); END DECODER_2TO4; ARCHITECTURE BEHAVIOR OF DECODER_2TO4 IS BEGIN WITH X SELECT Y<= "0001" WHEN "00", "0010" WHEN "01", "0100" WHEN "10", "1000" WHEN OTHERS; END BEHAVIOR;

12 Binary to 7 segment LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY bin_7segment IS PORT(m:IN STD_LOGIC_VECTOR(3 DOWNTO 0); ex:OUT STD_LOGIC_VECTOR(0 TO 6)); END bin_7segment; ARCHITECTURE behavior OF bin_7segment IS BEGIN WITH m SELECT ex<="0000001" WHEN "0000", "1001111" WHEN "0001", "0010010" WHEN "0010", "0000110" WHEN "0011", "1001100" WHEN "0100", "0100100" WHEN "0101", "0100000" WHEN "0110", "0001111" WHEN "0111", "0000000" WHEN "1000", "0000100" WHEN "1001", "0000001" WHEN "1010", "1001111" WHEN "1011", "0010010" WHEN "1100", "0000110" WHEN "1101", "1001100" WHEN "1110", "0100100" WHEN "1111"; END behavior;

13 Συγκριτής με το 9 LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY compare1 IS PORT(v :IN STD_LOGIC_VECTOR(3 DOWNTO 0); Agt9 :OUT STD_LOGIC); END compare1; ARCHITECTURE Behavior OF compare1 IS BEGIN Agt9 "1001" ELSE '0'; END Behavior;

14 Συγκριτές στη VHDL Library ieee; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENTITY compare IS PORT(A,B:IN STD_LOGIC_VECTOR(3 DOWNTO 0); AeqB, AgtB, AltB: OUT STD_LOGIC); END compare; ARCHITECTURE Behavior OF compare IS BEGIN AeqB<='1' WHEN A=B ELSE '0'; AgtB B ELSE '0'; AltB<='1' WHEN A { "@context": "http://schema.org", "@type": "ImageObject", "contentUrl": "http://images.slideplayer.gr/10/2820843/slides/slide_14.jpg", "name": "Συγκριτές στη VHDL Library ieee; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENTITY compare IS PORT(A,B:IN STD_LOGIC_VECTOR(3 DOWNTO 0); AeqB, AgtB, AltB: OUT STD_LOGIC); END compare; ARCHITECTURE Behavior OF compare IS BEGIN AeqB<= 1 WHEN A=B ELSE 0 ; AgtB B ELSE 0 ; AltB<= 1 WHEN A

15 Λειτουργική προσομοίωση του συγκριτή

16 ΑΘΡΟΙΣΤΕΣ LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY fulladder1 IS PORT(Cin,x,y :IN STD_LOGIC; s, Cout :OUT STD_LOGIC); END fulladder1; ARCHITECTURE structural OF fulladder1 IS BEGIN s<=x XOR y XOR Cin; Cout<=(x AND y) OR (Cin AND x) OR (Cin AND y); END Structural;

17 Προσομοίωση του πλήρη αθροιστή

18 Αθροιστής 4-bits - Συνιστώσες κυκλώματος LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY adder4 IS PORT(Cin:IN STD_LOGIC; x3,x2,x1,x0 :IN STD_LOGIC; y3,y2,y1,y0 :IN STD_LOGIC; s3,s2,s1,s0 :OUT STD_LOGIC; Cout :OUT STD_LOGIC); END adder4; ARCHITECTURE Structure OF adder4 IS SIGNAL c1,c2,c3:STD_LOGIC; COMPONENT fulladder1 PORT(Cin,x,y: IN STD_LOGIC; s, Cout :OUT STD_LOGIC); END COMPONENT; BEGIN Stage0: fulladder1 PORT MAP(Cin,x0,y0,s0,c1); stage1: fulladder1 PORT MAP (c1,x1,y1,s1,c2); stage2: fulladder1 PORT MAP (c2,x2,y2,s2,c3); stage3: fulladder1 PORT MAP (c3,x3,y3,s3,Cout); END Structure;

19 Προσομοίωση του αθροιστή 4-bits

20 Aθροιστής 16-bits - Χρήση αριθμητικού πακέτου LIBRARY ieee; USE ieee.std_logic_1164.all; USE ieee.std_logic_signed.all; ENTITY adder16 IS PORT(X,Y :IN STD_LOGIC_VECTOR(15 DOWNTO 0); S :OUT STD_LOGIC_VECTOR(15 DOWNTO 0)); END adder16; ARCHITECTURE arithm OF adder16 IS BEGIN S<=X+Y; END arithm;

21 Προσομοίωση αθροιστή 16-bits


Κατέβασμα ppt "ΕΝΟΤΗΤΑ 9 Η Η ΓΛΩΣΣΑ VHDL: ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ  Εργαλεία σύνθεσης και προσομοίωσης VHDL  Πολυπλέκτες και αποκωδικοποιητές σε VHDL  Συγκριτές σε VHDL."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google