Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Διάλεξθ 2

Σχετικά έγγραφα
Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Διάλεξθ 4

Τυπικζσ Γλώςςεσ Περιγραφήσ Υλικοφ Εργαςτήριο 4

Library, package και subprograms

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


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

Κυκλωμάτων» Χειμερινό εξάμηνο

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

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

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

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

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

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

Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Εργαςτιριο 1

Μοντελοποίηση Επιπέδου Πύλης. (Peter Ashenden, The Students Guide to VHDL)

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

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

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

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

Συπικζσ Γλϊςςεσ Περιγραφισ Τλικοφ Διάλεξθ 5

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

Οι Βιβλιοθήκες IEEE και παραδείγµατα functions

Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Εργαςτιριο 2

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

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

ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ Σχεδίαση Λογικών Κυκλωμάτων

Πρόλογος...13 I ΣΧΕ ΙΑΣΜΟΣ ΣΕ ΕΠΙΠΕ Ο ΚΥΚΛΩΜΑΤΟΣ Εισαγωγή... 19

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

Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Εργαςτιριο 3

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

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

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


Προσοµοίωση Συστηµάτων µε VHDL. (Peter Ashenden, The Students Guide to VHDL)

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

Σύνθετοι τύποι και λειτουργίες. (Peter Ashenden, The Students Guide to VHDL)

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

Structural VHDL. Structural VHDL

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

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

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


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

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 Συµπληρωµατική ΔΙΑΛΕΞΗ 14: Περιγραφή Ακολουθιακών Κυκλωµάτων στη VHDL


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

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

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 15: Καταχωρητές (Registers)

(Peter Ashenden, The Students Guide to VHDL)

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

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

Περίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Παράδειγµα: Καταχωρητής 2-bit. Καταχωρητής 4-bit. Μνήµη Καταχωρητών

Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.

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

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

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

Βαζικές Δνόηηηες VHDL

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

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


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

VHDL. ΗΜΥ-210: Λογικός Σχεδιασµός, Εαρινό Εξάµηνο Απλό παράδειγµα: Entity. Μοντελοποίηση. Απλό παράδειγµα:αρχιτεκτονική. Στοιχεία γλώσσας VHDL

Πανεπιστήµιο Θεσσαλίας


Ακολουθιακές εντολές. (Peter Ashenden, The Students Guide to VHDL)

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

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

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

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

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων

ΨΗΦΙΑΚΗ ΣΧΔΓΙΑΣΗ (Θεωπία) Θέμαηα Δξεηάζεων

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

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφιακή Σχεδίαση. Ενότητα 13: Εισαγωγή στην VHDL

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



ΕΙΣΑΓΩΓΙΚΟ ΕΓΧΕΙΡΙ ΙΟ ΓΙΑ ΣΧΕ ΙΑΣΜΟ ΜΕ ΧΡΗΣΗ ΤΗΣ ΓΛΩΣΣΑΣ VHDL

Βάςεισ Δεδομζνων Ι. Ενότητα 7: Ειςαγωγή ςτην γλώςςα_sql. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικϊν Πλθροφορικισ ΣΕ

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

Βασικές οµές Μοντελοποίησης. (Peter Ashenden, The Students Guide to VHDL)

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

Προπτυχιακός φοιτητής Σχολής Θετικών Επιστημών τμήματος Φυσικής ΑΠΘ


Εισαγωγή Η VHDL υποστηρίζει τους εξής τρείς βασικούς και διαφορετικούς τρόπους περιγραφής

Σκιαγράφηση της διάλεξης. Σχεδίαση Ψηφιακών Κυκλωμάτων. Απαριθμητοί τύποι δεδομένων (enumerated data types)

ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ. Κεφάλαιο 8 Η γλϊςςα Pascal

ΑΤΕΙ ΚΑΛΑΜΑΤΑΣ ΠΑΡΑΡΤΗΜΑ ΣΠΑΡΤΗΣ. ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ της φοιτήτριας: ΓΕΩΡΓΟΥΑΑΚΗ ΑΛΕΞΑΝΔΡΑ του ΣΤΑΥΡΟΥ

VHDL Introduction. Subtitle

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

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

inputs outputs Σχήμα 3.1: Σχηματική παράσταση της λειτουργίας του testbench

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

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

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

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

τεσσάρων βάσεων δεδομένων που θα αντιστοιχούν στους συνδρομητές

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

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

Σχεδίαση κυκλωμάτων επικοινωνίας με απλές οθόνες, με τη γλώσσα VHDL και υλοποίηση στις αναπτυξιακές πλακέτες LP-2900 και DE2.

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Διαφορές μεταξύ των περιγραφών συνδυαστικών και ακολουθιακών κυκλωμάτων

Transcript:

Τμήμα Μησανικών Πληποφοπικήρ, Τ.Ε.Ι. Ηπείπος Ακαδημαϊκό Έτορ 2016-2017, 6 ο Εξάμηνο Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Διάλεξθ 2 Διδάςκων Τςιακμάκθσ Κυριάκοσ, Phd MSc in Electronic Physics (Radioelectrology) Computer and Electronic Circuits Technology MSc in Science - Agricultural Engineering

Δομικά ςτοιχεία ςτθ VHDL Οντότθτεσ Αρχιτεκτονικζσ Πακζτα και βιβλιοκικεσ Τφποι δεδομζνων Λζξεισ κλειδιά Τελεςτζσ Αναγνωριςτικά Αντικείμενα Διεργαςίεσ *Διαδικαςίεσ και ςυναρτιςεισ+

Οντότθτα και Αρχιτεκτονικι Ζνα απλό παράδειγμα H αρχιτεκτονική rtl τθσ οντότθτασ enaonoma υλοποιεί μια πύλθ AND --ΟΝΤΟΤΗΤΑ entity enaonoma is port ( in1 : in BIT; in2 : in BIT; out1: out BIT ); end andgate; --ΑΡΧΙΤΕΚΤΟΝΙΚΗ architecture rtl of enaonoma is out1 <= in1 and in2; end rtl; Η γραμμή ςχολίου δθλώνεται με δύο διαδοχικέσ παύλεσ: -- Δεν υφίςταται ευαιςκθςία πεηών-κεφαλαίων (case insensitivity)

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

Αρχιτεκτονικι Οι βαςικέσ δομέσ τθσ VHDL είναι θ ΟΝΤΟΤΗΤΑ (ENTITY) και θ ΑΡΧΙΤΕΚΤΟΝΙΚΗ (ARCHITECTURE) τθσ περιγραφήσ ενόσ κυκλώματοσ ENTITY: Η διεπαφή του κυκλώματοσ (ϑύρεσ ειςόδου και εξόδου) με το περιβάλλον ARCHITECTURE: Καταγράφει τουσ απαιτούμενουσ μηχανιςμούσ λειτουργίασ για την υλοποίηςη του κυκλώματοσ Η λειτουργικότθτα (εςωτερικοί μθχανιςμοί) του ςχεδιαηόμενου κυκλώματοσ. Στο ςώμα τθσ αρχιτεκτονικήσ (architecture body) δίνεται ο τρόποσ λειτουργίασ του κυκλώματοσ Κάκε κύκλωμα περιγράφεται από μία μόνο οντότθτα, αλλά επιτρέπονται περιςςότερεσ τθσ μιασ αρχιτεκτονικέσ υλοποιήςεισ.

-------------------------------------- ΤΜΗΜΑ 1 library ieee; use ieee.std_logic_1164.all; -------------------------------------- ΤΜΗΜΑ 2 entity OR_ent is port( x: in std_logic; y: in std_logic; F: out std_logic ); end OR_ent; --------------------------------------- ΤΜΗΜΑ 3 architecture OR_arch of OR_ent is process(x, y) -- compare to truth table if ((x='0') and (y='0')) then F <= '0'; else F <= '1'; end if; end process; end OR_arch; --------------------------------------- ΤΜΗΜΑ 4 architecture OR_beh of OR_ent is Υλοποίθςθ κυκλϊματοσ OR Θα περιγράψουμε ςτοιχεία αυτοφ του απλοφ κϊδικα βιμα-βιμα. ΤΜΗΜΑ 1 ΒΙΒΛΙΟΘΗΚΗ (LIBRARY) library ieee; use ieee.std_logic_1164.all; F <= x or y; end OR_beh; ---------------------------------------

-------------------------------------- ΤΜΗΜΑ 1 library ieee; use ieee.std_logic_1164.all; -------------------------------------- ΤΜΗΜΑ 2 entity OR_ent is port( x: in std_logic; y: in std_logic; F: out std_logic ); end OR_ent; --------------------------------------- ΤΜΗΜΑ 3 architecture OR_arch of OR_ent is process(x, y) -- compare to truth table if ((x='0') and (y='0')) then F <= '0'; else F <= '1'; end if; end process; end OR_arch; --------------------------------------- ΤΜΗΜΑ 4 architecture OR_beh of OR_ent is F <= x or y; end OR_beh; --------------------------------------- ΒΙΒΛΙΟΘΗΚΗ (LIBRARY) Μια LIBRARY αποτελεί ςυλλογή από κοινώσ χρθςιμοποιούμενα τμήματα κώδικα. Αποτελείται από ΠΑΚΕΤΑ (PACKAGES) τα οποία περιλαμβάνουν δθλώςεισ COMPONENTS και δθλώςεισ/υλοποιήςεισ FUNCTIONS και PROCEDURES LIBRARY library_name; USE library_name.package_name.package_parts; LIBRARY IEEE; USE IEEE.std_logic_1164.all; USE IEEE.numeric_std.all; USE STD.standard.all; USE work.all;

-------------------------------------- ΤΜΗΜΑ 1 library ieee; use ieee.std_logic_1164.all; -------------------------------------- ΤΜΗΜΑ 2 entity OR_ent is port( x: in std_logic; y: in std_logic; F: out std_logic ); end OR_ent; --------------------------------------- ΤΜΗΜΑ 3 architecture OR_arch of OR_ent is process(x, y) -- compare to truth table if ((x='0') and (y='0')) then F <= '0'; else F <= '1'; end if; end process; end OR_arch; --------------------------------------- ΤΜΗΜΑ 4 architecture OR_beh of OR_ent is F <= x or y; Υλοποίθςθ κυκλϊματοσ OR ΤΜΗΜΑ 2 entity OR_ent is port( ); end OR_ent; Οντότητα OR_ent x: in std_logic; y: in std_logic; F: out std_logic Ενϊ ζχει περιγραφεί θ ςφνταξθ και λειτουργία τθσ οντότθτασ, όπωσ και οι τφποι Θυρϊν in, out δεν αναλφκθκαν οι τφποι δεδομζνων, όπωσ το std_logic. end OR_beh; ---------------------------------------

Τφποι Δεδομζνων - Σιματα Τα ςήματα αντιςτοιχούν ςε φυςικό επίπεδο με καλώδια (wires) τα οποία διαςυνδέουν τισ διάφορεσ υπομονάδεσ Προκακοριςμένοι τύποι ςτθν VHDL BIT: 0, 1 Διάνυςμα (μονοδιάςτατοσ πίνακασ) από BIT (BIT_VECTOR): -> ςτο todianysmamou(0 to 3) ανακέτουμε τθν τιμή 0011. Οι εκφράςεισ <LSB> to <MSB> και <MSB> downto <LSB> δθλώνουν περιοχή τιμών ή διευκύνςεων Το πρότυπο IEEE 1164-1993 κακορίηει τουσ εξήσ τύπουσ ςθμάτων: std_ulogic και std_logic και τουσ διανυςματικούσ τύπουσ std_ulogic_vector και std_logic_vector

Τφποι δεδομζνων - VHDL Στα ΠΑΚΕΤΑ (PACKAGES) των ΒΙΒΛΙΟΘΗΚΩΝ IEEE και STD είναι δθλωμζνα τύποι δεδομένων, προκακοριςμένεσ ςτακερέσ και ένα ςύνολο από βοθκθτικέσ υπορουτίνεσ (ςυναρτήςεισ, διαδικαςίεσ) standard τησ std: BIT, BOOLEAN, INTEGER, REAL std_logic_1164 τθσ IEEE: STD_ULOGIC, STD_LOGIC numeric_std τησ IEEE: SIGNED, UNSIGNED και αρικμθτικούσ, λογικούσ και τελεςτέσ ςύγκριςθσ IEEE βιβλιοθήκη : std_logic_unsigned, std_logic_signed και Αρικμθτικοί και τελεςτέσ ςύγκριςθσ για STD_LOGIC_VECTOR

Πίνακασ Σφνοψθσ Τφπων Δεδομζνων

Τύποι δεδομένων ςτο package STANDARD BIT: 0, 1 BIT_VECTOR: "001100", X"00FF" ςτο δεκαεξαδικό BOOLEAN: true, false CHARACTER: A, a, @, και string REAL: -1.1, +2.32, 36.3, -1.0E+32 INTEGER με εύροσ τιμών {-2,447,463,687, +2,127,583,6547}: +1, 852, -254, +12 TIME: 10 ns, 100 us, 6.3 ns

Οι τύποι SIGNED και UNSIGNED Περιοχή τιμών: unsigned: 0 to 2 N 1 signed: -2 N-1 to 2 N-1-1 Οι τύποι VECTOR signal my_unsigned : unsigned(3 downto 0); signal my_signed : signed (3 downto 0); --------------------------------------------------------------------- my_unsigned <= "1111"; -- 15 decimal my_signed <= "1111"; -- -1 decimal

-------------------------------------- ΤΜΗΜΑ 1 library ieee; use ieee.std_logic_1164.all; -------------------------------------- ΤΜΗΜΑ 2 entity OR_ent is port( x: in std_logic; y: in std_logic; F: out std_logic ); end OR_ent; --------------------------------------- ΤΜΗΜΑ 3 architecture OR_arch of OR_ent is process(x, y) -- compare to truth table if ((x='0') and (y='0')) then F <= '0'; else F <= '1'; end if; end process; end OR_arch; --------------------------------------- ΤΜΗΜΑ 4 architecture OR_beh of OR_ent is Υλοποίθςθ κυκλϊματοσ OR ΤΜΗΜΑ 3 Διεργαςία process(x, y) -- compare to truth table if ((x='0') and (y='0')) then F <= '0'; else F <= '1'; end if; end process; F <= x or y; end OR_beh; ---------------------------------------

Διεργαςίεσ (PROCESS) Οι ακολουκιακζσ (sequential) εντολζσ που εκτελοφνται ςειριακά από το μεταφραςτι είναι αυτζσ που βρίςκονται φωλιαςμζνεσ μζςα ςε μια εντολι τφπου PROCESS, θ οποία όμωσ με τθ ςειρά τθσ αποτελεί μια σύγχρονη εντολι. process(x, y) -- compare to truth table if ((x='0') and (y='0')) then F <= '0'; else F <= '1'; end if; end process; Tο τελικό τθσ αποτζλεςμα εκτελείται παράλλθλα με τισ άλλεσ ςφγχρονεσ εντολζσ από το μεταφραςτι. H χριςθ τθσ λζξθσ PROCESS επιτρζπει τθν χριςθ των εντολϊν IF και ELSE κτλ.