Τμήμα Μησανικών Πληποφοπικήρ, Τ.Ε.Ι. Ηπείπος Ακαδημαϊκό Έτορ 2016-2017, 6 ο Εξάμηνο Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Εργαςτιριο 2 Διδάςκων Τςιακμάκθσ Κυριάκοσ, Phd MSc in Electronic Physics (Radioelectrology) Computer and Electronic Circuits Technology MSc in Science - Agricultural Engineering
Ειςαγωγι ςτο εργαλείο λογιςμικοφ Quartus ΙΙ τθσ Altera Το εργαλείο Quartus II παρζχει ζνα περιβάλλον ςχεδιαςμοφ ςυςτθμάτων ανεξάρτθτο αρχιτεκτονικισ, με πολλαπλζσ πλατφόρμεσ. Δίνει τθν δυνατότθτα ολοκλθρωμζνου ςχεδιαςμοφ ςυςτθμάτων, γριγορθσ επεξεργαςίασ και άμεςου προγραμματιςμοφ των ςυςκευϊν τθσ Altera -Cyclone. Καλφπτει όλο το φάςμα λογικοφ ςχεδιαςμοφ, με δυνατότθτεσ δθμιουργίασ πολφπλοκων και ιεραρχικϊν ςχεδιαςμϊν, δυναμικι ςφνκεςθ, διαμζριςθ, λειτουργικι και χρονικι εξομοίωςθ, χρονικι ανάλυςθ, αυτόματο εντοπιςμό λακϊν, προγραμματιςμό ςυςκευϊν και επιβεβαίωςθ τθσ λειτουργίασ τουσ. Γίνονται αποδεκτοί ςχεδιαςμοί ςε VHDL, Verilog, AHDL (Altera HDL) κακϊσ και ςχθματικά διαγράμματα που δθμιουργοφνται από τον ειδικό γραφικό Editor του εργαλείου. Επίςθσ μπορεί να επικοινωνιςει και με άλλα εργαλεία χρθςιμοποιϊντασ αρχεία netlist τφπου Edif ι Xilinx.
Quartus ΙΙ τθσ Altera Ο compiler είναι μία από τισ ιςχυρζσ δυνατότθτεσ του Quartus και δίνει τθν καλφτερθ δυνατι υλοποίθςθ του ςυςτιματοσ. Με δυνατότθτεσ αυτόματου εντοπιςμοφ των λακϊν ςτον αρχικό ςχεδιαςμό ι ςτθν υλοποιθμζνθ μορφι του ςτο FPGA κακϊσ και με τθν εκτεταμζνθ τεκμθρίωςθ λακϊν διευκολφνει κατά πολφ τθν διαδικαςία ςχεδιαςμοφ.
Σθμαντικά βιματα του οδθγοφ
Διαδικαςία Σχεδιαςμοφ Τα ςτάδια δθμιουργίασ ενόσ ςχεδιαςμοφ από τθν αρχι ζωσ και τθν ολοκλιρωςι του είναι τα ακόλουκα: 1. Δθμιουργία αρχείου ςχεδιαςμοφ ι ιεραρχίασ ςχεδιαςμϊν (VHDL, Verilog, Graphic Design κλπ). 2. Επιλογι μίασ προγραμματιηόμενθσ ςυςκευισ (θ ςυςκευι που κα χρθςιμοποιοφμε είναι θ Cyclone IV E EP4CE115F29C8), Εμείσ κα βάλουμε ςτα αρχικά ςτάδια τθν Cyclone IΙ E EP2C5F256C8 3. Σφνκεςθ του ςχεδιαςμοφ με παραγωγι χρονικισ πλθροφορίασ και εκτζλεςθ χρονικισ εξομοίωςθσ και χρονικισ ανάλυςθσ. 4. Προγραμματιςμόσ τθσ ςυςκευισ με χριςθ τθσ ειδικισ προγραμματιςτικισ μονάδασ (board).
Ειςαγωγι και αποςφαλμάτωςθ κϊδικα VHDL Επιλζξτε από το menu File New ϊςτε να εμφανιςτεί θ παρακάτω λίςτα επιλογϊν. Επιλζξτε από τθν ομάδα Design Files το VHDL File και πατιςτε OK. Ζνα παράκυρο ειςαγωγισ κϊδικα VHDL κα ανοίξει ςτο δεξί μζροσ τθσ οκόνθσ ςασ με το όνομα Vhdl1.vhd.
Ειςαγωγι και αποςφαλμάτωςθ κϊδικα VHDL Επιλζξτε από το Menu File --> Save as και επιλζξτε το όνομα του αρχείου όπου κα αποκθκευκεί ο κϊδικασ VHDL που κα γράψετε. Δϊςτε το όνομα: myaskisi1.vhd Για να μθ δθμιουργοφνται προβλιματα ςε επόμενα βιματα τθσ άςκθςθσ να χρθςιμοποιείτε πάντα το ίδιο όνομα για το project και το top-level entity όταν ορίηετε το project, το αρχείο VHDL και το entity μζςα ςτο αρχείο VHDL.
Ειςαγωγι και αποςφαλμάτωςθ κϊδικα VHDL Γράψτε ςτο αρχείο αυτό τον παρακάτω κϊδικα VHDL: library ieee; use ieee.std_logic_1164.all; entity myaskisi1 is port (x1, x2 : in std_logic; f : out std_logic); end entity; architecture ask1_behav of myaskisi1 is begin f <= (x1 and x2) or (not x2 ); end architecture;
Ειςαγωγι κϊδικα VHDL (1) Όταν ολοκλθρϊςετε τθν ειςαγωγι του κϊδικα VHDL πρζπει να βεβαιωκείτε ότι δεν υπάρχουν ορκογραφικά ι ςυντακτικά λάκθ ςτο πρόγραμμα. H πλιρθσ μετάφραςθ μπορεί να διαρκεί αρκετό χρόνο το QUARTUS-II δίνει τθ δυνατότθτα να αναλφςετε τον κϊδικα και να προςδιορίςετε τυχόν λάκθ εκτελϊντασ μόνο το πρϊτο βιμα. Από το menu Processing επιλζξτε Start και ακολοφκωσ Start Analysis and Synthesis.
Ειςαγωγι κϊδικα VHDL (2) Η διαδικαςία αυτι αναλαμβάνει τθ μετάφραςθ του προγράμματόσ ςασ (compilation) και μόλισ ολοκλθρωκεί εμφανίηει ςτθν οκόνθ ζνα πλθροφοριακό μινυμα για το αν ιταν επιτυχισ θ διαδικαςία ι όχι. Στο κάτω μζροσ τθσ οκόνθσ εμφανίηονται διάφορα μθνφματα τα οποία χωρίηονται ςε τρεισ κατθγορίεσ: πλθροφοριακά (info) με πράςινα γράμματα, προειδοποιθτικά (warning) με μπλε γράμματα, και ςφάλματα (errors) με κόκκινα γράμματα. Αν ο κϊδικασ περιζχει ςφάλματα θ διαδικαςία ανάλυςθσ ςταματάει και αναφζρεται ο ςυνολικόσ αρικμόσ των ςφαλμάτων.
Ειςαγωγι κϊδικα VHDL (3) Όταν ολοκλθρϊςετε τθ διόρκωςθ των ςφαλμάτων πρζπει να προχωριςετε ςε πλιρθ μετάφραςθ του κϊδικα. Για να ανοίξετε το παράκυρο του μεταφραςτι επιλζξτε από το pull-down menu Processing --> Start Compilation Όταν ο Compiler ολοκλθρϊςει τθ μετάφραςθ, βλζπετε ςτθν οκόνθ το Compilation Report ςτο οποίο δίνονται πλθροφοριακά και ςτατιςτικά ςτοιχεία για τθ διαδικαςία τθσ μετάφραςθσ του κυκλϊματοσ. Το παράκυρο αυτό μπορείτε να το ανοίξετε και από το menu Processing --> Compilation Report.
Σθμαντικά λάκθ (1) Error: Top-level design entity "Lab4And" is undefined Το αρχείο vhdl πρζπει να είναι το ίδιο όνομα με τθν Entity Αλλιϊσ κα πρζπει να αλλάξουμε τθν ρφκμιςθ ςτο Assignents-> EDA Tools Settings /-> General /-> Top-level entity
Σθμαντικά λάκθ (2) Αν χρθςιμοποιθκεί ο Cyclone IV E EP4CE115F29C8 μπορεί να εμφανίςει πρόβλθμα ςε Error: The core supply voltage value of '1.0V' is illegal for the currently selected part Λφςθ: 1. Choose File->open and open the.qsf file 2. set_global_assignment -name NOMINAL_CORE_SUPPLY_VOLTAGE 1.0V 3. Modify the 1.0V to 1.2V and then click save 4. Recompile your design. Επίςθσ χρειάηεται το ModelSim ςαν Third Party Simulator Αλλιϊσ μπορεί να χρθςιμοποιθκεί ο Cyclone IΙ E EP2C5F256C8