Σχεδίαση Ψηφιακών Κυκλωμάτων

Save this PDF as:
 WORD  PNG  TXT  JPG

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Σχεδίαση Ψηφιακών Κυκλωμάτων"

Transcript

1 Σχεδίαση Ψηφιακών Κυκλωμάτων Η γλώσσα περιγραφής υλικού VHDL - Μέρος Ι Νικόλαος Καββαδίας 01 Δεκεμβρίου 2010

2 Σκιαγράφηση της διάλεξης Εισαγωγή στη VHDL Δομές ακολουθιακού και συντρέχοντος κώδικα Προχωρημένα στοιχεία της VHDL Σύνταξη παραμετρικών περιγραφών

3 Εισαγωγικά Η VHDL αποτελεί μια γλώσσα για τη μοντελοποίηση της δομής και της συμπεριφοράς υλικού Επιτρέπει τη χρήση διαφορετικών μεθοδολογιών σχεδίασης Προσφέρει ανεξαρτησία από την εκάστοτε τεχνολογία υλοποίησης (standard cell VLSI, FPGA) Διευκολύνει την επικοινωνία σχεδίων μεταξύ συνεργαζόμενων ομάδων σχεδίασης Βοηθά στην καλύτερη διαχείριση του έργου της σχεδίασης Στη VHDL μπορεί να περιγραφεί ένα μεγάλο εύρος ψηφιακών κυκλωμάτων Βασικά κριτήρια στην επιλογή HDL (Verilog ή VHDL) είναι: η διαθεσιμότητα εργαλείων ανάπτυξης, η δυνατότητα επαναχρησιμοποίησης κώδικα, και η οικειότητα με τις συντακτικές δομές της γλώσσας

4 Ιστορική αναδρομή της ανάπτυξης της VHDL

5 Ιεραρχική σχεδίαση με τη VHDL

6 Θεμελιώδεις γνώσεις για τη συγγραφή κώδικα VHDL Οι βασικές δομές της VHDL είναι η ΟΝΤΟΤΗΤΑ (ENTITY) και η ΑΡΧΙΤΕΚΤΟΝΙΚΗ (ARCHITECTURE) της περιγραφής ενός κυκλώματος ENTITY: Η διεπαφή του κυκλώματος (ϑύρες εισόδου και εξόδου) με το περιβάλλον ARCHITECTURE: Καταγράφει τους απαιτούμενους μηχανισμούς λειτουργίας για την υλοποίηση του κυκλώματος Δεν υφίσταται ευαισθησία πεζών-κεφαλαίων (case insensitivity). Κεφαλαίοι και πεζοί χαρακτήρες χρησιμοποιούνται ελεύθερα για τη σύνταξη λέξεων-κλειδιών, τελεστών (τερματικά) και αναγνωριστικών (identifiers) Η γραμμή σχολίου δηλώνεται με δύο διαδοχικές παύλες: -- Ο τύπος δεδομένων BIT είναι προκαθορισμένος και μπορεί να πάρει τις τιμές 0 ή 1 Ο τύπος BIT_VECTOR αποτελεί διάνυσμα από BIT

7 ENTITY (ΟΝΤΟΤΗΤΑ) (1) Περιγράφει τον τρόπο διασύνδεσης του κυκλώματος Δήλωση των ϑυρών εισόδου/εξόδου προς και από το κύκλωμα Δήλωση γενικών σταθερών με εμβέλεια την οντότητα και τις αρχιτεκτονικές που υπάγονται σε αυτή Για μια ϑύρα δηλώνονται: όνομα, κατευθυντικότητα, τύπος δεδομένων Τύποι ϑυρών: IN, OUT, INOUT, BUFFER IN: Είσοδος OUT: Εξοδος (δεν διαβάζεται εσωτερικά) INOUT: Είσοδος και έξοδος BUFFER: Εξοδος με δυνατότητα εσωτερικής ανάγνωσης

8 ENTITY (ΟΝΤΟΤΗΤΑ) (2) Z Καλό είναι να αποφεύγεται η χρήση του τύπου ϑύρας buffer. Οταν χρησιμοποιούνται ιεραρχικά, οι ϑύρες buffer μπορούν να συνδεθούν μόνο με άλλες ϑύρες buffer κάτι που υποχρεώνει το ιεραρχικό κύκλωμα να παρουσιάζει διεπαφή τύπου buffer. Αυτό περιορίζει τη διασυνδεσιμότητα του κυκλώματος με άλλες μονάδες Σύνταξη μιας ENTITY: entity name -of-entity is generic ( generic_list with initializations ); port ( port_list ); end [entity] name -of-entity;

9 ARCHITECTURE (ΑΡΧΙΤΕΚΤΟΝΙΚΗ) Στο σώμα της αρχιτεκτονικής (architecture body) περιγράφονται οι μηχανισμοί λειτουργίας του κυκλώματος Καταγράφει δηλώσεις υποπρογραμμάτων, σταθερών, συστατικών και σημάτων στην περιοχή δηλώσεων Μπορεί να περιλαμβάνει συντρέχοντα ή/και ακολουθιακό κώδικα Κάθε κύκλωμα περιγράφεται από μία μόνο οντότητα, αλλά επιτρέπονται περισσότερες της μιας αρχιτεκτονικές υλοποιήσεις Σύνταξη μιας ARCHITECTURE architecture architecture -name is [architecture declarations] begin [concurrent statements] [sequential statements] [structural code] end [architecture] architecture -name;

10 Ο πλήρης αθροιστής δυαδικού ψηφίου σε VHDL library IEEE; use IEEE.std_logic_1164.all; entity full_adder is port ( a : in STD_LOGIC; b : in STD_LOGIC; cin : in STD_LOGIC; s : out STD_LOGIC; cout : out STD_LOGIC ); end full_adder; architecture structural of full_adder is begin s <= a xor b xor cin; cout <= (a and b) or (a and cin) or (b and cin); end structural;

11 Συχνά χρησιμοποιούμενοι τύποι της VHDL ΤΥΠΟΣ ΤΙΜΗ ΠΡΟΕΛΕΥΣΗ std_ulogic U, X, 0, 1, Z, W, L, H, - std_logic_1164 std_ulogic_vector array of std_ulogic std_logic_1164 std_logic resolved std_ulogic std_logic_1164 std_logic_vector array of std_logic std_logic_1164 unsigned array of std_logic numeric_std, std_logic_arith signed array of std_logic numeric_std, std_logic_arith boolean true, false standard character 191 / 256 characters standard string array of character standard integer (2 31 1) to standard real 1.0E38 to 1.0E38 standard time 1 fs to 1 hr standard

12 Τύποι δεδομένων στο package STANDARD BIT: 0, 1 BIT_VECTOR: "001100", X"00FF" στο δεκαεξαδικό BOOLEAN: true, TRUE, TruE για το αληθές και False, false, FALsE για το ψευδές CHARACTER: A, Ενας πίνακας από CHARACTER αποτελεί συμβολοσειρά (string): "hold time out of range", "i ll be back", "0$#1324" REAL: -1.0, +2.35, 36.6, -1.0E+38 INTEGER με εύρος τιμών {-2,147,483,647, +2,147,483,647}: +1, 862, -257, +15 TIME: 10 ns, 100 us, 6.3 ns

13 Αναπαράσταση ακεραίων με διανύσματα Δυαδικό και δεκαεξαδικό (απρόσημοι) Ακέραιος Δυαδικό hex 0 "00000" X"0" 1 "00001" X"1" 2 "00010" X"2" 3 "00011" X"3" 4 "00100" X"4" 5 "00101" X"5" 6 "00110" X"6" 7 "00111" X"7" 8 "01000" X"8" 9 "01001" X"9" 10 "01010" X"A" 11 "01011" X"B" 12 "01100" X"C" 13 "01101" X"D" 14 "01110" X"E" 15 "01111" X"F" 16 "10000" X"10" 17 "10001" X"11" Συμπλήρωμα ως προς 2 Ακέραιος Δυαδικό hex -8 "1000" X"8" -7 "1001" X"9" -6 "1010" X"A" -5 "1011" X"B" -4 "1100" X"C" -3 "1101" X"D" -2 "1110" X"E" -1 "1111" X"F" 0 "0000" X"0" 1 "0001" X"1" 2 "0010" X"2" 3 "0011" X"3" 4 "0100" X"4" 5 "0101" X"5" 6 "0110" X"6" 7 "0111" X"7"

14 CONSTANT, VARIABLE και SIGNAL CONSTANT: αντικείμενο στο οποίο ανατίθεται μία αμετάβλητη τιμή constant identifier : type -indication [:=expression]; constant PI : REAL := ; constant FIVE : BIT_VECTOR := "0101"; VARIABLE: αντικείμενο στο οποίο κάποια στιγμή ανατίθεται μία τιμή η οποία μπορεί να μεταβληθεί εντός μιας PROCESS variable identifier : type -indication [constraint] [:=expression]; variable index: INTEGER range 1 to 50 := 50; variable x, y : INTEGER; variable memory : STD_LOGIC_VECTOR(0 to 7); SIGNAL: υλοποίηση διασυνδέσεων εντός ενός κυκλώματος αλλά και για την εξωτερική διασύνδεση διαφορετικών μονάδων σχεδιασμού signal identifier : type -indication [constraint] [:=expression]; signal control: BIT := 0 ; signal count: INTEGER range 0 to 100; signal y: STD_LOGIC_VECTOR(7 downto 1);

15 Τελεστές της VHDL (VHDL operators) Συνοπτικός πίνακας των τελεστών λογικοί and or nand nor xor xnor not αριθμητικοί + - * / mod rem σύγκρισης / < < > > ολίσθησης sll srl sla sra rol ror μοναδιαίοι + - άλλοι ** abs & Οι τελεστές αναγωγής σε δύναμη "**", απόλυτης τιμής "abs", και υπολογισμού ακέραιου υπολοίπου ("mod", "rem") δεν είναι συνθέσιμοι Οι τελεστές πολλαπλασιασμού και διαίρεσης υποστηρίζονται από ορισμένα εργαλεία λογικής σύνθεσης υπό προϋποθέσεις Η διαφορά των mod και rem είναι ότι: το A rem B παίρνει το πρόσημο του A ενώ το A mod B το πρόσημο του B

16 Αναθέσεις σε VARIABLE και SIGNAL Η ανάθεση σε VARIABLE αντικαθιστά την τρέχουσα τιμή της με μια νέα τιμή Τα SIGNAL προσφέρουν επικοινωνία μεταξύ διαφορετικών PROCESS και COMPONENT instances ix := a ; y := "0000"; ix <= a ; y <= "0000"; SIGNAL VARIABLE Απόδοση τιμής <= := Χρησιμότητα Αναπαριστά κυκλωματικές διασυνδέσεις Αναπαριστά τοπική πληροφορία Εμβέλεια Μπορεί να είναι καθολική Τοπική (διεργασία, συνάρτηση ή διαδικασία) Συμπεριφορά Η ενημέρωση δεν είναι άμεση σε ακολου- Άμεση ενημέρωση ϑιακό κώδικα Χρήση PACKAGE, ENTITY, ARCHITECTURE PROCESS, FUNCTION, PROCEDURE

17 Συντρέχων και ακολουθιακός κώδικας Στη VHDL ο κώδικας είναι από τη φύση του παράλληλα εκτελούμενος (συντρέχων) Η VHDL διαθέτει προγραμματιστικές δομές για την περιγραφή ακολουθιακού κώδικα, προκειμένου την εξασφάλιση της διαδοχικής εκτέλεσης εντολών όταν αυτό είναι επιθυμητό Ακολουθιακός κώδικας στη VHDL: μέσα σε PROCESS, FUNCTION, PROCEDURE Συντρέχων κώδικας: ανάθεση σε SIGNAL, υπολογισμός έκφρασης με χρήση τελεστών και ανάθεση σε SIGNAL, εντολή WHEN, εντολή WITH/SELECT, εντολή GENERATE Μία διεργασία αποτελεί τμήμα συντρέχοντος κώδικα (μία διεργασία εκτελείται παράλληλα σε σχέση με τυχόν άλλες διεργασίες)

18 Ακολουθιακός κώδικας Ο ακολουθιακός κώδικας στη VHDL συντάσσεται εντός μιας PROCESS, η συμπεριφορά της οποίας προσομοιώνεται βήμα προς βήμα (εντολή προς εντολή) Δομές ελέγχου: εντολές IF και CASE Δομές επανάληψης: εντολές FOR και WHILE Εντολές NEXT και EXIT για τον εσωτερικό έλεγχο σε μια δομή επανάληψης Στον ίδιο χρόνο προσομοίωσης, επιτρέπεται να είναι ενεργές (active) περισσότερες από μία PROCESS. Ετσι η PROCESS αποτελεί δομικό λίθο για την ανάπτυξη συντρέχοντος κώδικα Μέσα σε μία PROCESS μπορούν να χρησιμοποιηθούν υποπρογράμματα

19 PROCESS Η PROCESS προσφέρει τη δυνατότητα σχεδιασμού ακολουθιακού κώδικα [process_label:] process [(sensitivity list)] [declarations (subprogram, type, subtype, constant, variable, file, alias, attribute), attribute specification, use clause] begin sequential_statements end process [process_label]; Η λίστα ευαισθησίας αποτελεί κατάλογο εισόδων και SIGNAL για μεταβολές των οποίων μία PROCESS υποχρεούται να αναμένει Παράδειγμα: process (a, b) begin if (a /= b) then cond <= 1 ; else cond <= 0 ; end if; end process;

20 Παραδείγματα σύνταξης μιας PROCESS Παράδειγμα 1: Μετατροπή βαθμών Κελσίου σε Φαρενάιτ (μη συνθέσιμος κώδικας) CtoF: process variable c, f, g: real; begin c := 0.0; while (c < 40.0) loop f := 1.8 * c ; c := c + 2.0; end loop; wait for 1 ns; end process CtoF; Παράδειγμα 2: 2-to-1 multiplexer (συνθέσιμος κώδικας) process(sel, a, b) begin if (sel = 1 ) then outp <= b; else outp <= a; end if; end process;

21 Ευαισθησία επιπέδου (level-sensitivity) και ακμοπυροδότηση (edge triggering) Οι μεταβολές των σημάτων που δηλώνονται σε μία λίστα ευαισθησίας και οι οποίες ενεργοποιούν τον υπολογισμό μεταβλητών και σημάτων σε μία PROCESS είναι δύο τύπων: Μεταβολή επιπέδου (για σήματα επίτρεψης/ενεργοποίησης και δεδομένα) Ανερχόμενη ή κατερχόμενη ακμή (για σήματα ρολογιού) Μανδαλωτής (μεταβολή επιπέδου) process (en, a) begin if (en = 1 ) then temp <= a; end if; end process; Συγχρονισμός ως προς ανερχόμενη ακμή process (clk, a) begin if (clk = 1 and clk EVENT) then temp <= a; end if; end process; Z Η έκφραση clk EVENT είναι TRUE όταν έχει συμβεί μεταβολή (0 1 ή 1 0) στο σήμα clk i Για ορισμένα εργαλεία σύνθεσης, τα σήματα εκτός του clk μπορούν να παραλειφθούν από μια λίστα ευαισθησίας

22 Δομές ελέγχου σε ακολουθιακό κώδικα Η εντολή IF αποτελεί τη ϑεμελιώδη δομή για την εκτέλεση κώδικα υπό συνθήκη if... then s1; [elsif... then s2;] [else s3;] end if; Η εντολή CASE χρησιμοποιείται για την περιγραφή δομών αποκωδικοποίησης case expression is when value => s1; s2;... sn; when value1 value2... valuen => s1; s2;... sn; when value1 to value2 =>... when others =>... end case;

23 Δομές επανάληψης Η εντολή LOOP προσφέρει έναν βολικό τρόπο για την περιγραφή επαναληπτικών κυκλωματικών δομών [loop_label:] [iteration_scheme] loop sequence_of_statements end loop [loop_label]; Το σχήμα επανάληψης (iteration scheme) μπορεί να είναι τύπου WHILE ή τύπου FOR: while condition for identifier in discrete_range Παράδειγμα υπολογισμού τετραγώνων ακεραίων με FOR FOR i IN 1 to 10 LOOP i_squared := i * i; END LOOP; Παράδειγμα υπολογισμού τετραγώνων ακεραίων με WHILE i := 1; WHILE (i<11) LOOP i_squared := i * i; i := i + 1; END LOOP;

24 Καταχωρητής με επίτρεψη φόρτωσης (load enable) Κώδικας VHDL library IEEE; use IEEE.std_logic_1164.all; entity dreg is port ( clk, d, rst : in std_logic; en : in std_logic; q : out std_logic ); end dreg; Σχηματικό διάγραμμα architecture rtl of dreg is signal temp: std_logic; begin process (clk, rst, d, en) if (clk event and clk = 1 ) then if (rst = 1 ) then temp <= 0 ; else if (en = 1 ) then temp <= d; end if; end if; end if; end process; q <= temp; end rtl;

25 Παράδειγμα περιγραφής κυκλώματος: Απαριθμητής ψηφίου με έξοδο σε display επτά τμημάτων (1) Δεκαδικός απαριθμητής ενός ψηφίου (μετρά 0 9) που επιπλέον μετατρέπει τους δυαδικά κωδικοποιημένους δεκαδικούς (BCD: Binary Coded Decimal) σε μορφή κατάλληλη για απεικόνιση σε ενδείκτη επτά τμημάτων (SSD: Seven Segment Display) Το κύκλωμα διασυνδέεται με τον ενδείκτη ως εξής: abcdefg, με το πιο σημαντικό bit (MSB) να τροφοδοτεί το τμήμα a και το LSB το τμήμα g. Η υποδιαστολή x δεν χρησιμοποιείται entity bcdcounter is port ( clk, reset: in std_logic; digit: out std_logic_vector(6 downto 0) ); end bcdcounter;

26 Παράδειγμα περιγραφής κυκλώματος: Απαριθμητής ψηφίου με έξοδο σε display επτά τμημάτων (2) architecture rtl of bcdcounter is begin process (clk, reset) variable temp : integer range 0 to 10; begin -- counter if (reset = 1 ) then temp := 0; elsif (clk EVENT and clk= 1 ) then temp := temp + 1; if (temp = 10) then temp := 0; end if; end if; -- BCD ->SSD conversion case temp is when 0 => digit <= " "; -- 7E when 1 => digit <= " "; when 2 => digit <= " "; -- 6D when 3 => digit <= " "; when 4 => digit <= " "; when 5 => digit <= " "; -- 5B when 6 => digit <= " "; -- 5F when 7 => digit <= " "; when 8 => digit <= " "; -- 7F when 9 => digit <= " "; -- 7B when others => digit <= " "; -- 9F ( E for error) end case; end process; end rtl;

27 Παράδειγμα περιγραφής κυκλώματος: Απαριθμητής ψηφίου με έξοδο σε display επτά τμημάτων (3) Διάγραμμα χρονισμού για το κύκλωμα του απαριθμητή ψηφίου

28 Δομές συντρέχοντος κώδικα Η εντολή WHEN/ELSE αποτελεί μία συντρέχουσα εντολή η οποία έχει ένα στόχο (target) επιλέγοντας από περισσότερες από μία εκφράσεις target <= {expression when condition else} expression; outp <= "000" WHEN (inp= 0 OR reset= 1 ) ELSE "001" WHEN (ctl= 1 ) ELSE "010"; Η εντολή WITH/SELECT προσφέρει τη δυνατότητα επιλεκτικής ανάθεσης σε ένα στόχο (target) επιλέγοντας από περισσότερες από μία εκφράσεις WITH expression SELECT target <= {expression WHEN choices,} expression; WITH control SELECT output <= reset WHEN "000", set WHEN "111", UNAFFECTED WHEN others;

29 Κωδικοποιητής προτεραιότητας (priority encoder) library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; entity priority is port ( sel : in std_logic_vector(7 downto 0); code : out unsigned(2 downto 0) ); end priority; architecture imp of priority is begin code <= "000" when sel(0) = 1 else "001" when sel(1) = 1 else "010" when sel(2) = 1 else "011" when sel(3) = 1 else "100" when sel(4) = 1 else "101" when sel(5) = 1 else "110" when sel(6) = 1 else "111"; end imp;

30 Αθροιστές απρόσημων και προσημασμένων (2 s complement) ακεραίων (1) Περιγραφή για απρόσημους αριθμούς library IEEE; use IEEE.std_logic_1164.all; use IEEE.std_logic_unsigned.all; entity adder is port ( a,b : in std_logic_vector(7 downto 0); sum : out std_logic_vector(7 downto 0) ); end adder; architecture rtl of adder is signal temp : std_logic_vector(8 downto 0); begin temp <= ( 0 & a) + ( 0 & b); sum <= temp(7 downto 0); end rtl; Διάγραμμα χρονισμού

31 Αθροιστές απρόσημων και προσημασμένων (2 s complement) ακεραίων (2) Για την άθροιση προσημασμένων (συμπλήρωμα-ως-προς-2) απαιτείται η επέκταση προσήμου (sign extension) του ενδιάμεσου αποτελέσματος Περιγραφή για προσημασμένους αριθμούς... signal temp : std_logic_vector(8 downto 0); begin temp <= (a(7) & a) + (b(7) & b); sum <= temp(7 downto 0); end rtl; Διάγραμμα χρονισμού

32 Αριθμητική-λογική μονάδα (ALU) (1) Σχηματικό διάγραμμα μιας ALU για έναν υποθετικό 8-bit επεξεργαστή

33 Αριθμητική-λογική μονάδα (ALU) (2) Προδιαγραφές μιας ALU για έναν υποθετικό 8-bit επεξεργαστή Ρεπερτόριο εντολών Opcode Κωδικοπ. Πράξη Λειτουργία Αριθμητική μονάδα MOVA 0000 y <= a Μεταφορά του a INCA 0001 y <= a + 1 Αύξηση κατά 1 του a DECA 0010 y <= a - 1 Μείωση κατά 1 του a MOVB 0011 y <= b Μεταφορά του b INCB 0100 y <= b + 1 Αύξηση κατά 1 του b DECB 0101 y <= b - 1 Μείωση κατά 1 του b ADD 0110 y <= a + b Άθροιση των a,b ADC 0111 y <= a + b + cin Άθροιση των a,b με κρατούμενο Λογική μονάδα NOTA 1000 y <= not a Αντιστροφή του a NOTB 1001 y <= not b Αντιστροφή του b AND 1010 y <= a and b Λογική πράξη AND IOR 1011 y <= a or b Λογική πράξη OR NAND 1100 y <= a nand b Λογική πράξη NAND NOR 1101 y <= a nor b Λογική πράξη NOR XOR 1110 y <= a xor b Λογική πράξη XOR XNOR 1111 y <= a xnor b Λογική πράξη XNOR

34 Αριθμητική-λογική μονάδα (ALU): Κώδικας (3) library IEEE; use IEEE.std_logic_1164.all; use IEEE.std_logic_unsigned.all; entity alu is port ( a,b : in std_logic_vector(7 downto 0); cin : in std_logic; sel : in std_logic_vector(3 downto 0); y : out std_logic_vector(7 downto 0) ); end alu; architecture dataflow of alu is signal arith: std_logic_vector(7 downto 0); signal logic: std_logic_vector(7 downto 0); begin -- Arithmetic unit with sel(2 downto 0) select arith <= a when "000", a+1 when "001", a-1 when "010", b when "011", b+1 when "100", b-1 when "101", a+b when "110", a+b+cin when "111"; -- Logic unit with sel(2 downto 0) select logic <= not a when "000", not b when "001", a and b when "010", a or b when "011", a nand b when "100", a nor b when "101", a xor b when "110", a xnor b when "111"; -- Multiplexer with sel(3) select y <= arith when 0, logic when others; end dataflow;

35 Αριθμητική-λογική μονάδα (ALU) (4) Διάγραμμα χρονισμού για την ALU

36 Συστατικό στοιχείο (COMPONENT) - Στιγμιότυπο ενός COMPONENT Το COMPONENT αποτελεί δήλωση για τη χρησιμοποίηση ενός κυκλώματος ως υπομονάδα COMPONENT <component name > IS [GENERIC ( <generic name> : <type> [:= <initialization >];... )] PORT ( <port name > : [direction] <signal type >;... ); END COMPONENT; Το στιγμιότυπο (instance) ενός COMPONENT αποτελεί ένα αντίτυπό του που χρησιμοποιείται στα πλαίσια της δομικής περιγραφής ενός κυκλώματος <label >: <component name > [GENERIC MAP ( [<generic name > =>] <expression >,... ); PORT MAP ( [<port name > =>] <expression >,... );

37 PACKAGE Το πακέτο (PACKAGE) αποτελεί μέσο για την οργάνωση τμημάτων κώδικα PACKAGE <package name > IS statements END <package name >; [PACKAGE BODY <package name > IS implementation of functions and procedures END <package name >;] Δήλωση χρήσης ενός πακέτου USE <library name >.<package name >.<package parts >; Παράδειγμα PACKAGE my_package IS TYPE state IS (st1, st2, st3, st4); FUNCTION positive_edge(signal s: BIT) RETURN BOOLEAN; END my_package; PACKAGE BODY my_package IS FUNCTION positive_edge(signal s: BIT) RETURN BOOLEAN IS BEGIN RETURN (s EVENT and s= 1 ); END positive_edge; END my_package;

38 FUNCTION (ΣΥΝΑΡΤΗΣΗ) Οι συναρτήσεις αποτελούν είδος υποπρογράμματος το οποίο επιστρέφει μία μοναδική τιμή Δεν μπορούν να τροποποιήσουν τις παραμέτρους εισόδου τους FUNCTION <function name > [<parameter list >] RETURN <type > IS [statements] BEGIN sequential statements END <function name >; Παράδειγμα: Συνάρτηση log 2 function LOG2C(input: INTEGER) return INTEGER is variable temp,log: INTEGER; begin log := 0; temp := 1; for i in 0 to input loop if temp < input then log := log + 1; temp := temp * 2; end if; end loop; return (log); end function LOG2C;

39 PROCEDURE (ΔΙΑΔΙΚΑΣΙΑ) Μπορούν να τροποποιούν τις τιμές των παραμέτρων τους Δεν περιλαμβάνουν εντολή RETURN Παράμετροι (CONSTANT, SIGNAL ή VARIABLE) με κατευθυντικότητα (IN, OUT, INOUT) PROCEDURE <procedure name > [<parameter list >] IS [statements] BEGIN sequential statements END <procedure name >; Παράδειγμα: Διαδικασία sort PROCEDURE sort (SIGNAL in1, in2: IN INTEGER RANGE 0 to limit; SIGNAL min, max: OUT INTEGER RANGE 0 to limit) IS BEGIN IF (in1 >= in2) THEN max <= in1; min <= in2; ELSE max <= in2; min <= in1; END IF; END sort;... sort (inp1, inp2, outp1, outp2); -- usage

40 GENERATE Η εντολή GENERATE παρέχει τη δυνατότητα περιγραφής επαναλαμβανόμενων κυκλωματικών δομών με συμπαγή τρόπο σε συντρέχοντα κώδικα Διευκολύνει την περιγραφή δομών που παρουσιάζουν κανονικότητα Ειδικότερα, μια εντολή GENERATE μπορεί να περικλείει στιγμιότυπα συστατικών ή άλλες GENERATE Σχήματα FOR και IF <label > : (FOR IF) parameter_specification GENERATE [declaration_statements] BEGIN {concurrent_statements} END GENERATE <label >;

41 Παραμετρικός αθροιστής ριπής κρατουμένου (parameterized ripple-carry adder) Η γενική σταθερά N καθορίζει το εύρος bit του αθροιστή Για κάθε m στην εντολή GENERATE δημιουργείται ένας πλήρης αθροιστής με διασύνδεση του κρατουμένου εξόδου του στο κρατούμενο εισόδου της επόμενης βαθμίδας library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; entity rca is generic (N: integer := 8); port ( a, b : in unsigned(n-1 downto 0); cin : in std_logic; sum : out unsigned(n-1 downto 0); cout : out std_logic ); end rca; architecture gatelevel of rca is signal c : unsigned(n downto 0); begin c(0) <= cin; G1: for m in 0 to N-1 generate sum(m) <= a(m) xor b(m) xor c(m); c(m+1) <= (a(m) and b(m)) or (b(m) and c(m)) or (a(m) and c(m)); end generate G1; cout <= c(n); end gatelevel;

Σκιαγράφηση της διάλεξης. Σχεδίαση Ψηφιακών Κυκλωμάτων. Εισαγωγικά. Δομές ακολουθιακού και συντρέχοντος κώδικα

Σκιαγράφηση της διάλεξης. Σχεδίαση Ψηφιακών Κυκλωμάτων. Εισαγωγικά. Δομές ακολουθιακού και συντρέχοντος κώδικα Σκιαγράφηση της διάλεξης Σχεδίαση Ψηφιακών Κυκλωμάτων Η γλώσσα περιγραφής υλικού VHDL - Μέρος Ι Νικόλαος Καββαδίας nkavv@uop.gr Εισαγωγή στη VHDL Δομές ακολουθιακού και συντρέχοντος κώδικα Προχωρημένα

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Ανάθεση σε VARIABLE. Ανάθεση σε SIGNAL. identifier := expression; Συντρέχων και ακολουθιακός κώδικας

Σκιαγράφηση της διάλεξης. Ανάθεση σε VARIABLE. Ανάθεση σε SIGNAL. identifier := expression; Συντρέχων και ακολουθιακός κώδικας Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Δομές ακολουθιακού και συντρέχοντος κώδικα Νικόλαος Καββαδίας nkavv@physics.auth.gr 24 Μαρτίου 2009 Συντρέχων και ακολουθιακός κώδικας Ανάθεση σε ΜΕΤΑΒΛΗΤΗ

Διαβάστε περισσότερα

Γλώσσες Περιγραφής Υλικού Δομές ακολουθιακού και συντρέχοντος κώδικα Νικόλαος Καββαδίας nkavv@physics.auth.gr 24 Μαρτίου 2009 Σκιαγράφηση της διάλεξης Συντρέχων και ακολουθιακός κώδικας Ανάθεση σε ΜΕΤΑΒΛΗΤΗ

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. nkavv@uop.gr. Περισσότερα για τα αρθρώματα Αναθέσεις και τελεστές Συντρέχων κώδικας

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. nkavv@uop.gr. Περισσότερα για τα αρθρώματα Αναθέσεις και τελεστές Συντρέχων κώδικας Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Μοντελοποίηση συνδυαστικών κυκλωμάτων Νικόλαος Καββαδίας nkavv@uop.gr 06 Μαρτίου 2012 Περισσότερα για τα αρθρώματα Αναθέσεις και τελεστές Συντρέχων

Διαβάστε περισσότερα

nkavv@physics.auth.gr

nkavv@physics.auth.gr Γλώσσες Περιγραφής Υλικού Εισαγωγή στην VHDL Νικόλαος Καββαδίας nkavv@physics.auth.gr 17 Μαρτίου 2009 Αντικείμενο του μαθήματος CST256: Γλώσσες Περιγραφής Υλικού Επιμέρους στόχοι του μαθήματος Σχεδιασμός

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Η έννοια του πακέτου (PACKAGE) στη VHDL. Σύνταξη ενός πακέτου. Σύνταξη παραμετρικών περιγραφών

Σκιαγράφηση της διάλεξης. Η έννοια του πακέτου (PACKAGE) στη VHDL. Σύνταξη ενός πακέτου. Σύνταξη παραμετρικών περιγραφών Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Σύνταξη παραμετρικών περιγραφών Νικόλαος Καββαδίας nkavv@physics.auth.gr 7 Απριλίου 2009 Σύνταξη παραμετρικών περιγραφών Βιβλιοθήκες και πακέτα (libraries

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συντρέχων Κώδικας

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συντρέχων Κώδικας «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 216-217 Συντρέχων Κώδικας Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr

Διαβάστε περισσότερα

Γλώσσες Περιγραφής Υλικού. Εισαγωγικά. Οργάνωση των παραδόσεων. 02 Ιουνίου 2009

Γλώσσες Περιγραφής Υλικού. Εισαγωγικά. Οργάνωση των παραδόσεων.  02 Ιουνίου 2009 Αντικείμενο και περίγραμμα του μαθήματος: Γλώσσες Περιγραφής Υλικού Γλώσσες Περιγραφής Υλικού Ανασκόπηση του μαθήματος Νικόλαος Καββαδίας nkavv@physics.auth.gr nkavv@uop.gr 02 Ιουνίου 2009 Αντικείμενο

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης

Σκιαγράφηση της διάλεξης Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Προχωρημένα στοιχεία της VHDL Νικόλαος Καββαδίας nkavv@physics.auth.gr 31 Μαρτίου 2009 Προχωρημένα στοιχεία της VHDL Τύποι και υποτύποι προκαθορισμένοι

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. nkavv@uop.gr. Ανασκόπηση ϑεμάτων παλαιών εξετάσεων του μαθήματος. Περιεχόμενο εξετάσεων

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. nkavv@uop.gr. Ανασκόπηση ϑεμάτων παλαιών εξετάσεων του μαθήματος. Περιεχόμενο εξετάσεων Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Θέματα πρακτικής εξάσκησης Νικόλαος Καββαδίας nkavv@uop.gr 08 Ιουνίου 2011 Ανασκόπηση ϑεμάτων παλαιών εξετάσεων του μαθήματος Εξεταστική περίοδος Ιουνίου-Ιουλίου

Διαβάστε περισσότερα

Γλώσσες Περιγραφής Υλικού

Γλώσσες Περιγραφής Υλικού Αντικείμενο του μαθήματος CST256: Γλώσσες Περιγραφής Υλικού Γλώσσες Περιγραφής Υλικού Εισαγωγή στην VHDL Νικόλαος Καββαδίας nkavv@physics.auth.gr 17 Μαρτίου 2009 Επιμέρους στόχοι του μαθήματος Σχεδιασμός

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα)

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα) «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα) Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

nkavv@physics.auth.gr nkavv@uop.gr

nkavv@physics.auth.gr nkavv@uop.gr Γλώσσες Περιγραφής Υλικού Μη προγραμματιζόμενοι επεξεργαστές Νικόλαος Καββαδίας nkavv@physics.auth.gr nkavv@uop.gr 26 Μαΐου 2009 Σκιαγράφηση της διάλεξης Μη προγραμματιζόμενοι επεξεργαστές Υλοποίηση με

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Τύποι Δεδομένων και Τελεστές

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Τύποι Δεδομένων και Τελεστές «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Τύποι Δεδομένων και Τελεστές Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr Αντίρριο

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Η εντολή ASSERT (2) nkavv@physics.auth.gr nkavv@uop.gr

Σκιαγράφηση της διάλεξης. Η εντολή ASSERT (2) nkavv@physics.auth.gr nkavv@uop.gr Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Δομές ελέγχου/επαλήθευσης λειτουργίας των κυκλωμάτων Νικόλαος Καββαδίας nkavv@physics.auth.gr nkavv@uop.gr Δομές ελέγχου/επαλήθευσης λειτουργίας των κυκλωμάτων

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών

ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών Θέμα Β.1: Απλός καταχωρητής 1 bit (D Flip-Flop) preset D D Q Q clk clear Σχήμα 2.1: D Flip-Flop με εισόδους preset και clear Με τη

Διαβάστε περισσότερα

Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL

Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι Εισαγωγή στη VHDL Εισαγωγή Very High Speed Integrated Circuits Hardware Description Language ιαφορές από γλώσσες προγραμματισμού: παράλληλη εκτέλεση εντολών προσδιορισμός

Διαβάστε περισσότερα

Γλώσσες Περιγραφής Υλικού Ι

Γλώσσες Περιγραφής Υλικού Ι Γλώσσες Περιγραφής Υλικού Ι Θέματα πρακτικής εξάσκησης Νικόλαος Καββαδίας nkavv@uop.gr 29 Μαΐου 2012 Σκιαγράφηση της διάλεξης Ανασκόπηση ϑεμάτων παλαιών εξετάσεων του μαθήματος Εξεταστική περίοδος Ιουνίου-Ιουλίου

Διαβάστε περισσότερα

Γλώσσες Περιγραφής Υλικού Ι

Γλώσσες Περιγραφής Υλικού Ι Γλώσσες Περιγραφής Υλικού Ι Μηχανές πεπερασμένων καταστάσεων Νικόλαος Καββαδίας nkavv@uop.gr 24 Απριλίου 2012 Σκιαγράφηση της διάλεξης Μηχανές πεπερασμένων καταστάσεων (FSM: Finite-State Machine) Ορισμός

Διαβάστε περισσότερα

Γλώσσες Περιγραφής Υλικού Ι. Εισαγωγικά. Οργάνωση των παραδόσεων. nkavv@uop.gr. 1 Εισαγωγή στη Verilog HDL. 28 Φεβρουαρίου 2012

Γλώσσες Περιγραφής Υλικού Ι. Εισαγωγικά. Οργάνωση των παραδόσεων. nkavv@uop.gr. 1 Εισαγωγή στη Verilog HDL. 28 Φεβρουαρίου 2012 Αντικείμενο του μαθήματος CST304: Γλώσσες Περιγραφής Υλικού Ι Γλώσσες Περιγραφής Υλικού Ι Εισαγωγή στη Verilog HDL Νικόλαος Καββαδίας nkavv@uop.gr 28 Φεβρουαρίου 2012 Επιμέρους στόχοι του μαθήματος Σχεδιασμός

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Προχωρημένα Θέματα Σχεδιασμού με VHDL

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Προχωρημένα Θέματα Σχεδιασμού με VHDL «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Προχωρημένα Θέματα Σχεδιασμού με VHDL Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Μηχανές Πεπερασμένων Καταστάσεων: Εισαγωγή και.

Σκιαγράφηση της διάλεξης. Μηχανές Πεπερασμένων Καταστάσεων: Εισαγωγή και. Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Μηχανές πεπερασμένων καταστάσεων Νικόλαος Καββαδίας nkavv@physics.auth.gr, nkavv@uop.gr 12 Μαΐου 2009 Μηχανές πεπερασμένων καταστάσεων (FSM: Finite-State

Διαβάστε περισσότερα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches)

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches) «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches) Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος

Διαβάστε περισσότερα

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Γενικά χαρακτηριστικά, σύνταξη και τύποι. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 -

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Γενικά χαρακτηριστικά, σύνταξη και τύποι. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 - Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL Γενικά χαρακτηριστικά, σύνταξη και τύποι Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 - Περίγραµµα διάλεξης Τι είναι η VHDL? Πλεονεκτήµατα της VHDL στη σχεδίαση κυκλωµάτων

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Χρήση τελεστών σε αναθέσεις. Σύνταξη κώδικα στη Verilog HDL: Βασικές συμβάσεις.

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Χρήση τελεστών σε αναθέσεις. Σύνταξη κώδικα στη Verilog HDL: Βασικές συμβάσεις. Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Προχωρημένα στοιχεία της Verilog HDL Νικόλαος Καββαδίας nkavv@uop.gr 27 Μαρτίου 2012 Προχωρημένα στοιχεία της Verilog HDL Χρήση τελεστών στη σύνταξη

Διαβάστε περισσότερα

Πανεπιστήμιο Πατρών. Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών. Εργαστήριο Σχεδίασης Ολοκληρωμένων Κυκλωμάτων

Πανεπιστήμιο Πατρών. Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών. Εργαστήριο Σχεδίασης Ολοκληρωμένων Κυκλωμάτων Πανεπιστήμιο Πατρών Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Εργαστήριο Σχεδίασης Ολοκληρωμένων Κυκλωμάτων Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων (VLSI) ΙΙ Εισαγωγή στη VHDL και το Εργαλείο

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Η οργάνωση ενός μη-προγραμματιζόμενου επεξεργαστή (1) Μη προγραμματιζόμενοι επεξεργαστές

Σκιαγράφηση της διάλεξης. Η οργάνωση ενός μη-προγραμματιζόμενου επεξεργαστή (1)  Μη προγραμματιζόμενοι επεξεργαστές Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Μη προγραμματιζόμενοι επεξεργαστές Νικόλαος Καββαδίας nkavv@physics.auth.gr nkavv@uop.gr 26 Μαΐου 2009 Μη προγραμματιζόμενοι επεξεργαστές Υλοποίηση με

Διαβάστε περισσότερα

VHDL για Σχεδιασµό Ακολουθιακών Κυκλωµάτων

VHDL για Σχεδιασµό Ακολουθιακών Κυκλωµάτων VHDL για Σχεδιασµό Ακολουθιακών Κυκλωµάτων Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήµιο Κύπρου Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών n VHDL Processes Περίληψη n Εντολές If-Then-Else και CASE

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Γενικά χαρακτηριστικά του επεξεργαστή MU0. nkavv@uop.gr. Προγραμματιζόμενοι επεξεργαστές

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Γενικά χαρακτηριστικά του επεξεργαστή MU0. nkavv@uop.gr. Προγραμματιζόμενοι επεξεργαστές Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Προγραμματιζόμενοι επεξεργαστές Νικόλαος Καββαδίας nkavv@uop.gr Προγραμματιζόμενοι επεξεργαστές Ρεαλιστικό παράδειγμα: ο επεξεργαστής MU0 (MicroProcessor

Διαβάστε περισσότερα

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Βασικές εντολές και η περιγραφή συνδυαστικών κυκλωµάτων. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 2 -

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Βασικές εντολές και η περιγραφή συνδυαστικών κυκλωµάτων. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 2 - Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL Βασικές εντολές και η περιγραφή συνδυαστικών κυκλωµάτων Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 2 - Περίγραµµα διάλεξης Υποκυκλώµατα Περιγραφή δοµής στη VHDL Βιβλιοθήκες

Διαβάστε περισσότερα

Η δήλωση `ifdef...`else...` endif

Η δήλωση `ifdef...`else...` endif Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Σύνταξη παραμετρικών περιγραφών και σχεδίαση μνημών Νικόλαος Καββαδίας nkavv@uop.gr 03 Απριλίου 2012 Σύνταξη παραμετρικών περιγραφών Δηλώσεις του προεπεξεργαστή

Διαβάστε περισσότερα

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II 1 η Εργαστηριακή Άσκηση Εισαγωγή στη VHDL και στο εργαλείο Modelsim 1 Άδειες Χρήσης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons

Διαβάστε περισσότερα

ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων, Χειμερινό Εξάμηνο Νοε-09. Διδάσκουσα: Μαρία Κ. Μιχαήλ

ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων, Χειμερινό Εξάμηνο Νοε-09. Διδάσκουσα: Μαρία Κ. Μιχαήλ ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων VHDL για Σχεδιασμό Συνδυαστικών Κυκλωμάτων Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών VHDL (Very high

Διαβάστε περισσότερα

Αποδεικτικές Διαδικασίες και Μαθηματική Επαγωγή.

Αποδεικτικές Διαδικασίες και Μαθηματική Επαγωγή. Αποδεικτικές Διαδικασίες και Μαθηματική Επαγωγή. Mαθηματικό σύστημα Ένα μαθηματικό σύστημα αποτελείται από αξιώματα, ορισμούς, μη καθορισμένες έννοιες και θεωρήματα. Η Ευκλείδειος γεωμετρία αποτελεί ένα

Διαβάστε περισσότερα

ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων

ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων VHDL για Σχεδιασμό Συνδυαστικών Κυκλωμάτων Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών VHDL (Very high

Διαβάστε περισσότερα

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. VHDL για Ακολουθιακά Κυκλώματα 1

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. VHDL για Ακολουθιακά Κυκλώματα 1 ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων VHDL για Σχεδιασμό Ακολουθιακών Κυκλωμάτων Διδάσκουσα: Μαρία Κ. Μιχαήλ Περίληψη VHDL Processes Εντολές If-Then Then-Else και CASE Περιγραφή Flip-Flop Flop με VHDL

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Σχεδίαση Ψηφιακών Κυκλωμάτων.

Σκιαγράφηση της διάλεξης. Σχεδίαση Ψηφιακών Κυκλωμάτων. Σκιαγράφηση της διάλεξης Σχεδίαση Ψηφιακών Κυκλωμάτων Ανασκόπηση του μαθήματος και ϑέματα πρακτικής εξάσκησης Νικόλαος Καββαδίας nkavv@uop.gr Αναδρομή στο περιεχόμενο του μαθήματος εξετάσεων (ϑεωρία και

Διαβάστε περισσότερα

ΛΥΣΕΙΣ 3 ης ΓΡΑΠΤΗΣ ΕΡΓΑΣΙΑΣ

ΛΥΣΕΙΣ 3 ης ΓΡΑΠΤΗΣ ΕΡΓΑΣΙΑΣ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗ ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ ΕΡΓΑΣΤΗΡΙΟ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΛΥΣΕΙΣ 3 ης ΓΡΑΠΤΗΣ ΕΡΓΑΣΙΑΣ ΠΑΤΡΑ 2006 9.

Διαβάστε περισσότερα

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων Περιγραφή Κυκλωμάτων με χρήση της VHDL Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων Οργάνωση Παρουσίασης Περιγραφή Δομής σε VHDL (Structural Description) Μηχανές Πεπερασμένων Καταστάσεων

Διαβάστε περισσότερα

Φόρμα Σχεδιασμού Διάλεξης (ημ/α: 17/03/08, έκδοση: 1.0)

Φόρμα Σχεδιασμού Διάλεξης (ημ/α: 17/03/08, έκδοση: 1.0) 1. Κωδικός Μαθήματος: (Εισαγωγή στον Προγραμματισμό) 2. Α/Α Διάλεξης: 1 1. Τίτλος: Εισαγωγή στους υπολογιστές. 2. Μαθησιακοί Στόχοι: Συνοπτική παρουσίαση της εξέλιξης των γλωσσών προγραμματισμού και των

Διαβάστε περισσότερα

(Peter Ashenden, The Students Guide to VHDL)

(Peter Ashenden, The Students Guide to VHDL) Υποπρογράµµατα Πακέτα (Peter Ashenden, The Students Guide to VHDL) Procedures Μία διαδικασία (procedure) δηλώνεται και κατόπιν καλείται όσες φορές θέλουµε. procedure identifier [(parameter_interface_list)]

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι (1) Μη προγραμματιζόμενοι επεξεργαστές

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι (1) Μη προγραμματιζόμενοι επεξεργαστές Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Μη προγραμματιζόμενοι επεξεργαστές Νικόλαος Καββαδίας nkavv@uop.gr 04 Μαΐου 2011 Μη προγραμματιζόμενοι επεξεργαστές Η οργάνωση των μη-προγραμματιζόμενων

Διαβάστε περισσότερα

Σχεδίαση Ψηφιακών Κυκλωμάτων

Σχεδίαση Ψηφιακών Κυκλωμάτων Σχεδίαση Ψηφιακών Κυκλωμάτων Η αρχιτεκτονική οργάνωση των FPGA Νικόλαος Καββαδίας nkavv@uop.gr 21 Δεκεμβρίου 2010 Σκιαγράφηση της διάλεξης Εισαγωγή στις προγραμματιζόμενες συσκευές Η αρχιτεκτονική οργάνωση

Διαβάστε περισσότερα

VHDL Introduction. Subtitle

VHDL Introduction. Subtitle VHDL Introduction Subtitle Getting Started VHDL means Very Hard Difficult Language That s a lie!!! τα αρχικά VHDL είναι συντομογραφία του VHSIC Hardware Description Language, ενώ το VHSIC αντιπροσωπεύει

Διαβάστε περισσότερα

ΠΑΡΑΡΤΗΜΑ Β. Verification

ΠΑΡΑΡΤΗΜΑ Β. Verification ΠΑΡΑΡΤΗΜΑ Β Ροή Σχεδίασης και VHDL Ροή Σχεδίασης Πριν περάσουµε σε περιγραφή της γλώσσας VHDL είναι χρήσιµο να δούµε το περιβάλλον και τη ροή της σχεδίασης. Τα βήµατα µιας σχεδίασης βασισµένης σε VHDL

Διαβάστε περισσότερα

constant number_of_bytes : integer := 4; constant number_of_bits : integer := 8 * number_of_bytes;

constant number_of_bytes : integer := 4; constant number_of_bits : integer := 8 * number_of_bytes; Σχεδίαση Υπολογιστικών Συστηµάτων Μοντελοποίηση και προσοµοίωση στην VHDL Μιχάλης Ψαράκης 3-1 Αντικείµενα στη VHDL Σταθερές (constants) Μεταβλητές (variables) Σήµατα (signals) Θύρες (ports) 3-2 ηλώσεις

Διαβάστε περισσότερα

Μεταγλωττιστές ΙΙ. nkavv@uop.gr. Γέννηση ενδιάμεσης αναπαράστασης. 10 Νοεμβρίου 2010. Νικόλαος Καββαδίας nkavv@uop.gr Μεταγλωττιστές ΙΙ

Μεταγλωττιστές ΙΙ. nkavv@uop.gr. Γέννηση ενδιάμεσης αναπαράστασης. 10 Νοεμβρίου 2010. Νικόλαος Καββαδίας nkavv@uop.gr Μεταγλωττιστές ΙΙ Μεταγλωττιστές ΙΙ Γέννηση ενδιάμεσης αναπαράστασης Νικόλαος Καββαδίας nkavv@uop.gr 10 Νοεμβρίου 2010 Η έννοια της ενδιάμεσης αναπαράστασης Ενδιάμεση αναπαράσταση (IR: intermediate representation): απλοποιημένη,

Διαβάστε περισσότερα

ΣΤΟ ΦΑΡΜΑΚΕΙΟ. Με την πιστοποίηση του έχει πρόσβαση στο περιβάλλον του φαρμακείου που παρέχει η εφαρμογή.

ΣΤΟ ΦΑΡΜΑΚΕΙΟ. Με την πιστοποίηση του έχει πρόσβαση στο περιβάλλον του φαρμακείου που παρέχει η εφαρμογή. ΣΤΟ ΦΑΡΜΑΚΕΙΟ Ο ασθενής έχοντας μαζί του το βιβλιάριο υγείας του και την τυπωμένη συνταγή από τον ιατρό, η οποία αναγράφει τον μοναδικό κωδικό της, πάει στο φαρμακείο. Το φαρμακείο αφού ταυτοποιήσει το

Διαβάστε περισσότερα

Σχεδίαση Ψηφιακών Κυκλωμάτων

Σχεδίαση Ψηφιακών Κυκλωμάτων Σχεδίαση Ψηφιακών Κυκλωμάτων Μεθοδολογίες σχεδίασης και η ροή λογικής σύνθεσης κυκλωμάτων σε FPGA Νικόλαος Καββαδίας nkavv@uop.gr 19 Ιανουαρίου 2011 Σκιαγράφηση της διάλεξης Η τυπική ροή της λογικής σχεδίασης

Διαβάστε περισσότερα

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ.

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ. ΤΕΙ ΚΡΗΤΗΣ / ΠΑΡΑΡΤΗΜΑ ΧΑΝΙΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΗΣ Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ mode mode(0) ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εµµανουήλ Καπαρού Επιβλέπων : ρ Μηχ Νικόλαος

Διαβάστε περισσότερα

Οι γέφυρες του ποταμού... Pregel (Konigsberg)

Οι γέφυρες του ποταμού... Pregel (Konigsberg) Οι γέφυρες του ποταμού... Pregel (Konigsberg) Β Δ Β Δ Γ Γ Κύκλος του Euler (Euler cycle) είναι κύκλος σε γράφημα Γ που περιέχει κάθε κορυφή του γραφήματος, και κάθε ακμή αυτού ακριβώς μία φορά. Για γράφημα

Διαβάστε περισσότερα

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1 ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Καταχωρητές Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Περίληψη Καταχωρητές Παράλληλης Φόρτωσης Καταχωρητές

Διαβάστε περισσότερα

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL Διδάσκoντες: Δρ. Γιώργος Ζάγγουλοςκαι Δρ. Παναγιώτα Δημοσθένους Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Διαιρέτης ρολογιού (clock divider) Ειδικά κυκλώματα

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Διαιρέτης ρολογιού (clock divider) Ειδικά κυκλώματα Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Κυκλώματα για προχωρημένους και στοιχεία λογικής σύνθεσης Νικόλαος Καββαδίας nkavv@uop.gr 25 Μαΐου 2011 Ειδικά κυκλώματα Διαιρέτης ρολογιού Στοιχεία

Διαβάστε περισσότερα

Τρίτη, 05 Ιουνίου 2001 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Τρίτη, 05 Ιουνίου 2001 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Τρίτη, 05 Ιουνίου 2001 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ 1 Α. Να µεταφέρετε στο τετράδιό σας και να συµπληρώσετε τον παρακάτω πίνακα αλήθειας δύο προτάσεων

Διαβάστε περισσότερα

Pointers. Σημερινό Μάθημα! Χρήση pointer Τελεστής * Τελεστής & Γενικοί δείκτες Ανάκληση Δέσμευση μνήμης new / delete Pointer σε αντικείμενο 2

Pointers. Σημερινό Μάθημα! Χρήση pointer Τελεστής * Τελεστής & Γενικοί δείκτες Ανάκληση Δέσμευση μνήμης new / delete Pointer σε αντικείμενο 2 Pointers 1 Σημερινό Μάθημα! Χρήση pointer Τελεστής * Τελεστής & Γενικοί δείκτες Ανάκληση Δέσμευση μνήμης new / delete Pointer σε αντικείμενο 2 1 Μνήμη μεταβλητών Κάθε μεταβλητή έχει διεύθυνση Δεν χρειάζεται

Διαβάστε περισσότερα

2. Δίκτυα Πολυπλεξίας Μήκους Κύματος (WDM Δίκτυα)

2. Δίκτυα Πολυπλεξίας Μήκους Κύματος (WDM Δίκτυα) 2. Δίκτυα Πολυπλεξίας Μήκους Κύματος (WDM Δίκτυα) Η πολυπλεξία μήκους κύματος (WDM πολυπλεξία) παρέχει συμβατότητα μεταξύ του εύρους ζώνης του οπτικού μέσου οπτική ίνα και του εύρους ζώνης του τερματικού

Διαβάστε περισσότερα

nkavv@physics.auth.gr nkavv@uop.gr

nkavv@physics.auth.gr nkavv@uop.gr Γλώσσες Περιγραφής Υλικού Υποδειγματική εργασία Νικόλαος Καββαδίας nkavv@physics.auth.gr nkavv@uop.gr 19 Μαΐου 2009 Σκιαγράφηση της διάλεξης Παρουσίαση υποδειγματικής εργασίας Γενικός οδηγός και συμβουλές

Διαβάστε περισσότερα

Αναγνώριση Προτύπων. Σήμερα! Λόγος Πιθανοφάνειας Πιθανότητα Λάθους Κόστος Ρίσκο Bayes Ελάχιστη πιθανότητα λάθους για πολλές κλάσεις

Αναγνώριση Προτύπων. Σήμερα! Λόγος Πιθανοφάνειας Πιθανότητα Λάθους Κόστος Ρίσκο Bayes Ελάχιστη πιθανότητα λάθους για πολλές κλάσεις Αναγνώριση Προτύπων Σήμερα! Λόγος Πιθανοφάνειας Πιθανότητα Λάθους Πιθανότητα Λάθους Κόστος Ρίσκο Bayes Ελάχιστη πιθανότητα λάθους για πολλές κλάσεις 1 Λόγος Πιθανοφάνειας Ας υποθέσουμε ότι θέλουμε να ταξινομήσουμε

Διαβάστε περισσότερα

26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ

26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Χειμερινό Εξάμηνο 2009 Καταχωρητές Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Περίληψη Καταχωρητές Παράλληλης

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος «Εισαγωγή στον Προγραμματισμό»

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος «Εισαγωγή στον Προγραμματισμό» Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ακαδημαϊκό Έτος 2007 2008 ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος «Εισαγωγή στον Προγραμματισμό» Διδάσκοντες: Θεόδωρος Ανδρόνικος & Δημήτριος Θεοτόκης Περιεχόμενα

Διαβάστε περισσότερα

Συναρτήσεις ΙΙ. Σημερινό μάθημα

Συναρτήσεις ΙΙ. Σημερινό μάθημα Συναρτήσεις ΙΙ 1 Σημερινό μάθημα Εμβέλεια Εμφωλίαση Τύπος αποθήκευσης Συναρτήσεις ως παράμετροι Πέρασμα με τιμή Πολλαπλά return Προκαθορισμένοι ρ Παράμετροι ρ Υπερφόρτωση συναρτήσεων Inline συναρτήσεις

Διαβάστε περισσότερα

VHDL Εισαγωγικές έννοιες

VHDL Εισαγωγικές έννοιες VHDL Εισαγωγικές έννοιες ρ. Κ. Καραφασούλης ckaraf@aegean.gr Σχεδίαση Αρχικά ψηφιακά κυκλώµατα µπορούν να σχεδιασθούν µε το κατάλληλο λογισµικό. Μεγαλύτερα κυκλώµατα µπορούν να σχεδιασθούν ιεραρχικά από

Διαβάστε περισσότερα

Αντικειμενοστραφής. Προγραμματισμού

Αντικειμενοστραφής. Προγραμματισμού Αντικειμενοστραφής προγραμματισμός Σημερινό μάθημα Μειονεκτήματα Δομημένου Προγραμματισμού Αντικειμενοστραφής προγραμματισμός Ορισμοί Κλάσεις Αντικείμεναμ Χαρακτηριστικά ΑΠ C++ Class 1 Δομημένος Προγραμματισμός

Διαβάστε περισσότερα

Ψηφιακή Εικόνα. Σημερινό μάθημα!

Ψηφιακή Εικόνα. Σημερινό μάθημα! Ψηφιακή Εικόνα Σημερινό μάθημα! Ψηφιακή Εικόνα Αναλογική εικόνα Ψηφιοποίηση (digitalization) Δειγματοληψία Κβαντισμός Δυαδικές δ έ (Binary) εικόνες Ψηφιακή εικόνα & οθόνη Η/Υ 1 Ψηφιακή Εικόνα Μια ακίνητη

Διαβάστε περισσότερα

Σκιαγράφηση της διάλεξης. Σχεδίαση Ψηφιακών Κυκλωμάτων. Εισαγωγή στις προγραμματιζόμενες συσκευές (2)

Σκιαγράφηση της διάλεξης. Σχεδίαση Ψηφιακών Κυκλωμάτων. Εισαγωγή στις προγραμματιζόμενες συσκευές (2) Σκιαγράφηση της διάλεξης Σχεδίαση Ψηφιακών Κυκλωμάτων Η αρχιτεκτονική οργάνωση των FPGA Νικόλαος Καββαδίας nkavv@uop.gr Εισαγωγή στις προγραμματιζόμενες συσκευές Η αρχιτεκτονική οργάνωση των PLD και των

Διαβάστε περισσότερα

Αναγνώριση Προτύπων. Σημερινό Μάθημα

Αναγνώριση Προτύπων. Σημερινό Μάθημα Αναγνώριση Προτύπων Σημερινό Μάθημα Bias (απόκλιση) και variance (διακύμανση) Ελεύθεροι Παράμετροι Ελεύθεροι Παράμετροι Διαίρεση dataset Μέθοδος holdout Cross Validation Bootstrap Bias (απόκλιση) και variance

Διαβάστε περισσότερα

ΗΥ-225. Verilog HDL. Τα βασικά...

ΗΥ-225. Verilog HDL. Τα βασικά... ΗΥ-225 Verilog HDL. Τα βασικά... Βασική Ροή Σχεδίασης Requirements RTL Model Simulate Synthesize Gate-level Model Simulate Test Bench ASIC or FPGA Place & Route Timing Model Simulate ΗΥ-225 Ιάκωβος Μαυροειδής

Διαβάστε περισσότερα

Σχεδίαση κυκλωμάτων με VHDL: 1o μέρος

Σχεδίαση κυκλωμάτων με VHDL: 1o μέρος Σχεδίαση κυκλωμάτων με VHDL: 1o μέρος Γ. Δημητρακόπουλος Το πρώτο σας κύκλωμα Τα ψηφιακά κυκλώματα είναι μια συλλογή από λογικές πύλες και ακολουθιακά στοιχεία αποθήκευσης (ή συγχρονισμού) όπως τα flip-flops.

Διαβάστε περισσότερα

Σχέσεις και ιδιότητές τους

Σχέσεις και ιδιότητές τους Σχέσεις και ιδιότητές τους Διμελής (binary) σχέση Σ από σύνολο Χ σε σύνολο Υ είναι ένα υποσύνολο του καρτεσιανού γινομένου Χ Υ. Αν (χ,ψ) Σ, λέμε ότι το χ σχετίζεται με το ψ και σημειώνουμε χσψ. Στην περίπτωση

Διαβάστε περισσότερα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Μούλου Ευγενία

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Μούλου Ευγενία ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΑΡΧΕΙΑ Ο πιο γνωστός τρόπος οργάνωσης δεδομένων με τη χρήση ηλεκτρονικών υπολογιστών είναι σε αρχεία. Ένα αρχείο μπορούμε να το χαρακτηρίσουμε σαν ένα σύνολο που αποτελείται από οργανωμένα

Διαβάστε περισσότερα

Ταξινόμηση των μοντέλων διασποράς ατμοσφαιρικών ρύπων βασισμένη σε μαθηματικά κριτήρια.

Ταξινόμηση των μοντέλων διασποράς ατμοσφαιρικών ρύπων βασισμένη σε μαθηματικά κριτήρια. ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ Ταξινόμηη των μοντέλων διαποράς ατμοφαιρικών ρύπων βαιμένη ε μαθηματικά κριτήρια. Μοντέλο Ελεριανά μοντέλα (Elerian) Λαγκρατζιανά μοντέλα (Lagrangian) Επιπρόθετος διαχωριμός Μοντέλα

Διαβάστε περισσότερα

Εισαγωγή στη γλώσσα VHDL

Εισαγωγή στη γλώσσα VHDL (document version 1.2) Ιωάννης Α. Καλόµοιρος Εισαγωγή στη γλώσσα VHDL Τεχνολογικό Εκπαιδευτικό Ίδρυµα Σερρών, Τµήµα Πληροφορικής και Επικοινωνιών, 2012 Το σύγγραµµα αυτό προορίζεται αποκλειστικά για χρήση

Διαβάστε περισσότερα

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD)

- Αναπαράσταση ακέραιας τιµής : - Εύρος ακεραίων : - Ακέραιοι τύποι: - Πράξεις µε ακεραίους (DIV - MOD) Η Γλώσσα Pascal Χαρακτηριστικά Τύποι Δεδοµένων Δοµή προγράµµατος 1. Βασικές έννοιες Χαρακτηριστικά της γλώσσας Pascal Γλώσσα προγραµµατισµού Συντακτικό Σηµασιολογία Αλφάβητο της γλώσσας Pascal (Σύνολο

Διαβάστε περισσότερα

Σχεδιασµός Συστηµάτων µε VHDL. (Peter Ashenden, The Students Guide to VHDL)

Σχεδιασµός Συστηµάτων µε VHDL. (Peter Ashenden, The Students Guide to VHDL) Σχεδιασµός Συστηµάτων µε VHDL (Peter Ashenden, The Students Guide to VHDL) ιαδικασία Σχεδιασµού Μοντέλο VHDL VHDL code netlist Σύνθεση Layout VHDL netlist VHDL code Εξοµοίωση SDF & netlist GDSII file Ανάπτυξη

Διαβάστε περισσότερα

Καράγιωργας Νικόλαος Α.Μ. 90 Τριανταφυλλόπουλος Σταύρος Α.Μ. 92 Μεταπτυχιακό Πρόγραµµα ΟΣΥΛ. Η δηµοφιλέστερη γλώσσα σχεδιασµού Hardware!

Καράγιωργας Νικόλαος Α.Μ. 90 Τριανταφυλλόπουλος Σταύρος Α.Μ. 92 Μεταπτυχιακό Πρόγραµµα ΟΣΥΛ. Η δηµοφιλέστερη γλώσσα σχεδιασµού Hardware! Μια παρουσίαση της VHDL! Σχεδιασµός Συστηµάτων των VLSI. Καράγιωργας Νικόλαος Α.Μ. 90 Τριανταφυλλόπουλος Σταύρος Α.Μ. 92 Μεταπτυχιακό Πρόγραµµα ΟΣΥΛ Μια παρουσίαση της VHDL! Η δηµοφιλέστερη γλώσσα σχεδιασµού

Διαβάστε περισσότερα

Αναγνώριση Προτύπων 1

Αναγνώριση Προτύπων 1 Αναγνώριση Προτύπων 1 Σημερινό Μάθημα Βασικό σύστημα αναγνώρισης προτύπων Προβλήματα Πρόβλεψης Χαρακτηριστικά και Πρότυπα Ταξινομητές Classifiers Προσεγγίσεις Αναγνώρισης Προτύπων Κύκλος σχεδίασης Συστήματος

Διαβάστε περισσότερα

21/11/2005 Διακριτά Μαθηματικά. Γραφήματα ΒΑΣΙΚΗ ΟΡΟΛΟΓΙΑ : ΜΟΝΟΠΑΤΙΑ ΚΑΙ ΚΥΚΛΟΙ Δ Ι. Γεώργιος Βούρος Πανεπιστήμιο Αιγαίου

21/11/2005 Διακριτά Μαθηματικά. Γραφήματα ΒΑΣΙΚΗ ΟΡΟΛΟΓΙΑ : ΜΟΝΟΠΑΤΙΑ ΚΑΙ ΚΥΚΛΟΙ Δ Ι. Γεώργιος Βούρος Πανεπιστήμιο Αιγαίου Γραφήματα ΒΑΣΙΚΗ ΟΡΟΛΟΓΙΑ : ΜΟΝΟΠΑΤΙΑ ΚΑΙ ΚΥΚΛΟΙ A Ε B Ζ Η Γ K Θ Δ Ι Ορισμός Ένα (μη κατευθυνόμενο) γράφημα (non directed graph) Γ, είναι μία δυάδα από σύνολα Ε και V και συμβολίζεται με Γ=(Ε,V). Το σύνολο

Διαβάστε περισσότερα

Εισαγωγή στη γλώσσα προγραμματισμού Fortran 95

Εισαγωγή στη γλώσσα προγραμματισμού Fortran 95 Τ Ε Τ Υ Π Κ Εισαγωγή στη γλώσσα προγραμματισμού Fortran 95 Σημειώσεις Διαλέξεων Σ. Σ Ηράκλειο Φεβρουάριος 2015 Copyright c 2006 2015 Σ. Σταματιάδης, (stamatis@materials.uoc.gr) Η στοιχειοθεσία έγινε από

Διαβάστε περισσότερα

Έννοια. Η αποδοχή της κληρονομίας αποτελεί δικαίωμα του κληρονόμου, άρα δεν

Έννοια. Η αποδοχή της κληρονομίας αποτελεί δικαίωμα του κληρονόμου, άρα δεν 1 1. Αποδοχή κληρονομίας Έννοια. Η αποδοχή της κληρονομίας αποτελεί δικαίωμα του κληρονόμου, άρα δεν μπορεί να ασκηθεί από τους δανειστές του κληρονόμου, τον εκτελεστή της διαθήκης, τον κηδεμόνα ή εκκαθαριστή

Διαβάστε περισσότερα

Ας υποθέσουμε ότι ο παίκτης Ι διαλέγει πρώτος την τυχαιοποιημένη στρατηγική (x 1, x 2 ), x 1, x2 0,

Ας υποθέσουμε ότι ο παίκτης Ι διαλέγει πρώτος την τυχαιοποιημένη στρατηγική (x 1, x 2 ), x 1, x2 0, Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Στατιστικής Εισαγωγή στην Επιχειρησιακή Ερευνα Εαρινό Εξάμηνο 2015 Μ. Ζαζάνης Πρόβλημα 1. Να διατυπώσετε το παρακάτω παίγνιο μηδενικού αθροίσματος ως πρόβλημα γραμμικού

Διαβάστε περισσότερα

Εισαγωγή στη VHDL Υλοποίηση στο Quartus

Εισαγωγή στη VHDL Υλοποίηση στο Quartus ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Εισαγωγή στη VHDL Υλοποίηση στο Quartus Διδάσκοντες: Δρ. Γιώργος Ζάγγουλος και Δρ. Παναγιώτα Μ. Δημοσθένους Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών

Διαβάστε περισσότερα

ΘΕΜΑ: Aποτελεσματικότητα της νομισματικής και δημοσιονομικής πολιτικής σε μια ανοικτή οικονομία

ΘΕΜΑ: Aποτελεσματικότητα της νομισματικής και δημοσιονομικής πολιτικής σε μια ανοικτή οικονομία ΘΕΜΑ: ποτελεσματικότητα της νομισματικής και δημοσιονομικής πολιτικής σε μια ανοικτή οικονομία Σύνταξη: Μπαντούλας Κων/νος, Οικονομολόγος, Ms Χρηματοοικονομικών 1 Η πρώτη θεωρία σχετικά με τον αυτόματο

Διαβάστε περισσότερα

Κληρονομικότητα. Σήμερα! Κλάση Βάσης Παράγωγη κλάση Απλή κληρονομικότητα Protected δεδομένα Constructors & Destructors overloading

Κληρονομικότητα. Σήμερα! Κλάση Βάσης Παράγωγη κλάση Απλή κληρονομικότητα Protected δεδομένα Constructors & Destructors overloading Κληρονομικότητα Σήμερα! Κλάση Βάσης Παράγωγη κλάση Απλή κληρονομικότητα Protected δεδομένα Constructors & Destructors overloading 2 1 Κλάση Βάση/Παράγωγη Τα διάφορα αντικείμενα μπορούν να έχουν μεταξύ

Διαβάστε περισσότερα

1. Ας υποθέσουμε ότι η εισοδηματική ελαστικότητα ζήτησης για όσπρια είναι ίση με το μηδέν. Αυτό σημαίνει ότι:

1. Ας υποθέσουμε ότι η εισοδηματική ελαστικότητα ζήτησης για όσπρια είναι ίση με το μηδέν. Αυτό σημαίνει ότι: 1. Ας υποθέσουμε ότι η εισοδηματική ελαστικότητα ζήτησης για όσπρια είναι ίση με το μηδέν. Αυτό σημαίνει ότι: α) Ανεξάρτητα από το ύψος της τιμής των οσπρίων, ο καταναλωτής θα δαπανά πάντα ένα σταθερό

Διαβάστε περισσότερα

{ i f i == 0 and p > 0

{ i f i == 0 and p > 0 ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ Σχεδίαση και Ανάλυση Αλγορίθμων Διδάσκων: Ε. Μαρκάκης, Φθινοπωρινό εξάμηνο 014-015 Λύσεις 1ης Σειράς Ασκήσεων

Διαβάστε περισσότερα

Μεταγλωττιστές ΙΙ. nkavv@uop.gr. Χρονοπρογραμματισμός κώδικα και βελτιστοποιήσεις εξαρτημένες από την αρχιτεκτονική

Μεταγλωττιστές ΙΙ. nkavv@uop.gr. Χρονοπρογραμματισμός κώδικα και βελτιστοποιήσεις εξαρτημένες από την αρχιτεκτονική Μεταγλωττιστές ΙΙ Χρονοπρογραμματισμός κώδικα και βελτιστοποιήσεις εξαρτημένες από την αρχιτεκτονική Νικόλαος Καββαδίας nkavv@uop.gr 21 Δεκεμβρίου 2010 Βελτιστοποιήσεις εξαρτημένες από την αρχιτεκτονική

Διαβάστε περισσότερα

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΤΑΞΗ

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΤΑΞΗ ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΣΑΒΒΑΤΟ 24 ΙΟΥΝΙΟΥ 2000 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΥ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΠΑΡΑΓΩΓΗΣ): ΗΛΕΚΤΡΟΛΟΓΙΑ ΣΥΝΟΛΟ ΣΕΛΙ ΩΝ : ΕΞΙ

Διαβάστε περισσότερα

Βελτίωση Εικόνας. Σήμερα!

Βελτίωση Εικόνας. Σήμερα! Βελτίωση Εικόνας Σήμερα! Υποβάθμιση εικόνας Τεχνικές Βελτίωσης Restoration (Αποκατάσταση) Τροποποίηση ιστογράμματος Ολίσθηση ιστογράμματος Διάταση (stretching) Ισοστάθμιση του ιστογράμματος (histogram

Διαβάστε περισσότερα

Αναγνώριση Προτύπων. Σημερινό Μάθημα

Αναγνώριση Προτύπων. Σημερινό Μάθημα Αναγνώριση Προτύπων Σημερινό Μάθημα Μη Παραμετρικός Υπολογισμός πυκνότητας με εκτίμηση Ιστόγραμμα Παράθυρα Parzen Εξομαλυμένη Kernel Ασκήσεις 1 Μη Παραμετρικός Υπολογισμός πυκνότητας με εκτίμηση Κατά τη

Διαβάστε περισσότερα

Κεφάλαιο 2.4: Τα βασικά στοιχεία ενός Επιχειρηματικού Σχεδίου (Business Plan) Μέσα από αυτό το κεφάλαιο φαίνεται ότι αφενός η σωστή δημιουργία και

Κεφάλαιο 2.4: Τα βασικά στοιχεία ενός Επιχειρηματικού Σχεδίου (Business Plan) Μέσα από αυτό το κεφάλαιο φαίνεται ότι αφενός η σωστή δημιουργία και Κεφάλαιο 2.4: Τα βασικά στοιχεία ενός Επιχειρηματικού Σχεδίου (Business Plan) Περίληψη Κεφαλαίου: Μέσα από αυτό το κεφάλαιο φαίνεται ότι αφενός η σωστή δημιουργία και αφετέρου η σωστή εφαρμογή του Επιχειρηματικού

Διαβάστε περισσότερα

Αλγόριθμοι. Α. Υπολογιστικά Προβλήματα. Β. Εισαγωγή στους Αλγόριθμους. Γ. ομή Αλγόριθμων. Δ. ομές εδομένων

Αλγόριθμοι. Α. Υπολογιστικά Προβλήματα. Β. Εισαγωγή στους Αλγόριθμους. Γ. ομή Αλγόριθμων. Δ. ομές εδομένων Αλγόριθμοι Α. Υπολογιστικά Προβλήματα Β. Εισαγωγή στους Αλγόριθμους Γ. ομή Αλγόριθμων Δ. ομές εδομένων Α. Υπολογιστικά Προβλήματα Πρόβλημα: Μια μη αποδεκτή κατάσταση που χρειάζεται επίλυση. Η διατύπωση

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων Χειµερινό Εξάµηνο 2007-2008 Verilog: Μια πιο κοντινή µατιά ΗΥ220 - Βασίλης Παπαευσταθίου 1 οµή της γλώσσας Μοιάζει αρκετά µε τηc Preprocessor Keywords Τελεστές = &

Διαβάστε περισσότερα

Προτεινόμενα θέματα στο μάθημα. Αρχές Οικονομικής Θεωρίας ΟΜΑΔΑ Α. Στις προτάσεις από Α.1. μέχρι και Α10 να γράψετε στο τετράδιό σας τον αριθμό της

Προτεινόμενα θέματα στο μάθημα. Αρχές Οικονομικής Θεωρίας ΟΜΑΔΑ Α. Στις προτάσεις από Α.1. μέχρι και Α10 να γράψετε στο τετράδιό σας τον αριθμό της Προτεινόμενα θέματα στο μάθημα Αρχές Οικονομικής Θεωρίας ΟΜΑΔΑ Α Στις προτάσεις από Α.1. μέχρι και Α10 να γράψετε στο τετράδιό σας τον αριθμό της καθεμιάς και δίπλα σε κάθε αριθμό την ένδειξη Σωστό, αν

Διαβάστε περισσότερα

Ημέρα 3 η. (α) Aπό την εργασιακή διαδικασία στη διαδικασία παραγωγής (β) Αξία του προϊόντος και αξία της εργασιακής δύναμης

Ημέρα 3 η. (α) Aπό την εργασιακή διαδικασία στη διαδικασία παραγωγής (β) Αξία του προϊόντος και αξία της εργασιακής δύναμης Ημέρα 3 η. (α) Aπό την εργασιακή διαδικασία στη διαδικασία παραγωγής (β) Αξία του προϊόντος και αξία της εργασιακής δύναμης Η εργασιακή διαδικασία και τα στοιχεία της. Η κοινωνική επικύρωση των ιδιωτικών

Διαβάστε περισσότερα

Εργαστηριακή Άσκηση Θερμομόρφωση (Thermoforming)

Εργαστηριακή Άσκηση Θερμομόρφωση (Thermoforming) Σελίδα 1 Πανεπιστήμιο Κύπρου Τμήμα Μηχανικών Μηχανολογίας και Κατασκευαστικής ΜΜΚ 452: Μηχανικές Ιδιότητες και Κατεργασία Πολυμερών Εργαστηριακή Άσκηση Θερμομόρφωση (Thermoforming) Σελίδα 2 Εισαγωγή: Η

Διαβάστε περισσότερα

Κληρονομικότητα. Σήμερα!

Κληρονομικότητα. Σήμερα! Κληρονομικότητα Σήμερα! Overriding Overloading Vs Overriding Απόκρυψη συναρτήσεων Κλήση overridden συνάρτησης Virtual Συναρτήσεις Abstract Classes Κανόνες πρόσβασης Κληρονομικότητας 2 1 Υπερίσχυση Συναρτήσεων

Διαβάστε περισσότερα

Μεταγλωττιστές ΙΙ. nkavv@uop.gr. Καταμερισμός καταχωρητών. Νικόλαος Καββαδίας nkavv@uop.gr Μεταγλωττιστές ΙΙ

Μεταγλωττιστές ΙΙ. nkavv@uop.gr. Καταμερισμός καταχωρητών. Νικόλαος Καββαδίας nkavv@uop.gr Μεταγλωττιστές ΙΙ Μεταγλωττιστές ΙΙ Καταμερισμός καταχωρητών Νικόλαος Καββαδίας nkavv@uop.gr 01 Δεκεμβρίου 2010 Γενικά για τον καταμερισμό καταχωρητών Καταμερισμός καταχωρητών (register allocation): βελτιστοποίηση μεταγλωττιστή

Διαβάστε περισσότερα

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Γλώσσα περιγραφής υλικού: Verilog

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Γλώσσα περιγραφής υλικού: Verilog ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Γλώσσα περιγραφής υλικού: Verilog Αρης Ευθυμίου Το σημερινό μάθημα! Η γλώσσα περιγραφής υλικού Verilog Περίληψη των αντίστοιχων μαθημάτων Ψηφιακής σχεδίασης έμφαση σε

Διαβάστε περισσότερα

Γέννηση ενδιάμεσης αναπαράστασης. Προηγμένα Θέματα Θεωρητικής Πληροφορικής. Τύποι IR. Άποψη του μεταγλωττιστή από την πλευρά της IR.

Γέννηση ενδιάμεσης αναπαράστασης. Προηγμένα Θέματα Θεωρητικής Πληροφορικής. Τύποι IR. Άποψη του μεταγλωττιστή από την πλευρά της IR. Η έννοια της ενδιάμεσης αναπαράστασης Προηγμένα Θέματα Θεωρητικής Πληροφορικής Γέννηση ενδιάμεσης αναπαράστασης Νικόλαος Καββαδίας nkavv@uop.gr 17 Μαρτίου 2010 Ενδιάμεση αναπαράσταση (IR: intermediate

Διαβάστε περισσότερα