ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα

Σχετικά έγγραφα
ΑΣΚΗΣΗ 9η-10η ΑΡΙΘΜΗΤΙΚΗ-ΛΟΓΙΚΗ ΜΟΝΑΔΑ ΕΝΟΣ ΨΗΦΙΟΥ (1-BIT ALU)

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Σχεδίαση Ψηφιακών Συστημάτων. Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΗΛΕΚΤΡΟΝΙΚΗ VLSI. Δρ. ΕΥΣΤΑΘΙΟΣ ΚΥΡΙΑΚΗΣ-ΜΠΙΤΖΑΡΟΣ ΑΝΑΠΛΗΡΩΤΗΣ ΚΑΘΗΓΗΤΗΣ

ΑΣΚΗΣΗ 8 η -9 η ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΗΣ ΛΟΓΙΚΗΣ ΜΟΝΑΔΑΣ ΤΕΣΣΑΡΩΝ ΔΥΑΔΙΚΩΝ ΨΗΦΙΩΝ

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

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

ΑΣΚΗΣΗ 2 η N-MOS ΚΑΙ P-MOS TRANSISTOR ΩΣ ΔΙΑΚΟΠΤΗΣ

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα

Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια

Μικροηλεκτρονική - VLSI

Μικροηλεκτρονική - VLSI

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Συστήματα Αυτομάτου Ελέγχου. Ενότητα Α: Γραμμικά Συστήματα

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΕΦΑΡΜΟΓΕΣ ΚΑΤΑΧΩΡΗΤΩΝ ΟΛΙΣΘΗΣΗΣ

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΗΛΕΚΤΡΟΝΙΚΗ VLSI. Δρ. ΕΥΣΤΑΘΙΟΣ ΚΥΡΙΑΚΗΣ-ΜΠΙΤΖΑΡΟΣ ΑΝΑΠΛΗΡΩΤΗΣ ΚΑΘΗΓΗΤΗΣ

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

Ψηφιακή Λογική Σχεδίαση

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΑΣΥΓΧΡΟΝΟΙ ΜΕΤΡΗΤΕΣ

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

K24 Ψηφιακά Ηλεκτρονικά 9: Flip-Flops

Α. ΣΚΟΔΡΑΣ ΠΛΗ21 ΟΣΣ#2. 14 Δεκ 2008 ΠΑΤΡΑ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ 2008 Α. ΣΚΟΔΡΑΣ ΧΡΟΝΟΔΙΑΓΡΑΜΜΑ ΜΕΛΕΤΗΣ

K24 Ψηφιακά Ηλεκτρονικά 10: Ακολουθιακά Κυκλώματα

Εισαγωγή στις Τηλεπικοινωνίες / Εργαστήριο

Μικροηλεκτρονική - VLSI

Εισαγωγή στις Τηλεπικοινωνίες / Εργαστήριο

ΑΣΚΗΣΗ 1η ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΣΧΕΔΙΑΣΗΣ QUARTUS II ΤΗΣ ALTERA

Ψηφιακή Λογική Σχεδίαση

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

Μικροηλεκτρονική - VLSI

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ. Ενότητα : ΥΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΣΥΣΤΗΜΑΤΩΝ

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΥΓΧΡΟΝΟΙ ΜΕΤΡΗΤΕΣ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Τεχνική Σχεδίαση

ΑΣΚΗΣΗ 7 FLIP - FLOP

Υδραυλικά & Πνευματικά ΣΑΕ

Εισαγωγή στις Τηλεπικοινωνίες / Εργαστήριο

Πρόγραμμα Επικαιροποίησης Γνώσεων Αποφοίτων. Διδάσκοντες

Συστήματα Αυτομάτου Ελέγχου 1

Εργαστήριο Εισαγωγής στη Σχεδίαση Συστημάτων VLSI

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Εργαστηριακή άσκηση. Κανόνες σχεδίασης και κατασκευαστικές λεπτομέρειες στη σχεδίασης μασκών (layout) και προσομοίωσης κυκλώματος VLSI

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2007

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

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα

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

ΑΣΚΗΣΗ 4 η ΕΙΣΑΓΩΓΗ ΣΤΗ ΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΜΕ ΧΡΗΣΗ Η/Υ (QUARTUS II ALTERA)

Λογική Σχεδίαση Ι - Εξεταστική Φεβρουαρίου 2013 Διάρκεια εξέτασης : 160 Ονοματεπώνυμο : Α. Μ. Έτος σπουδών:

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

Θέματα χρονισμού σε φλιπ-φλοπ και κυκλώματα VLSI

Λογιστικές Εφαρμογές Εργαστήριο

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

ΒΑΣΙΚΑ ΑΚΟΛΟΥΘΙΑΚΑ ΚΥΚΛΩΜΑΤΑ

7 η διάλεξη Ακολουθιακά Κυκλώματα

Εισαγωγή στις Τηλεπικοινωνίες / Εργαστήριο

12 o Εργαστήριο Σ.Α.Ε

Εισαγωγή στις Τηλεπικοινωνίες / Εργαστήριο

Πληροφορική. Εργαστηριακή Ενότητα 3 η : Επεξεργασία Κελιών Γραμμών & Στηλών. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Εισαγωγή στην πληροφορική

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στις Τηλεπικοινωνίες / Εργαστήριο

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΕΙΡΙΑΚΗ ΠΡΟΣΘΕΣΗ

Συστήματα Αυτομάτου Ελέγχου 1 Ενότητα # 5: Χρήση μετασχηματισμού Laplace για επίλυση ηλεκτρικών κυκλωμάτων Μέθοδοι εντάσεων βρόχων και τάσεων κόμβων

Μικροηλεκτρονική - VLSI

ΠΛΗ10 Κεφάλαιο 2. ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών

Εισαγωγή στις Τηλεπικοινωνίες / Εργαστήριο

7 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

ΑΣΚΗΣΗ 9 ΑΣΥΓΧΡΟΝΟΙ ΜΕΤΡΗΤΕΣ (COUNTERS)

ΑΣΚΗΣΗ 3 η Ο ΑΝΤΙΣΤΡΟΦΕΑΣ CMOS

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ

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

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

Μοντελοποίηση Λογικών Κυκλωμάτων

Εισαγωγή στην πληροφορική

Η συχνότητα f των παλµών 0 και 1 στην έξοδο Q n είναι. f Qn = 1/(T cl x 2 n+1 )

Ψηφιακή Επεξεργασία Σήματος

Εργαστηριακή Άσκηση 4: Ιεραρχική σχεδίαση και προσχεδιασμένοι πυρήνες

100 ΕΡΩΤΗΣΕΙΣ ΜΕ ΤΙΣ ΑΝΤΙΣΤΟΙΧΕΣ ΑΠΑΝΤΗΣΕΙΣ ΓΙΑ ΤΟ ΜΑΘΗΜΑ ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

7.1 Θεωρητική εισαγωγή

ΑΣΚΗΣΗ 9. Tα Flip-Flop

Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια

Ηλεκτρικές Μηχανές ΙΙ Εργαστήριο

Περιεχόμενα. Πρόλογος... XI. Κεφάλαιο 1. Συστήματα Βασισμένα σε FPGA Κεφάλαιο 2. Τεχνολογία VLSI Εισαγωγή Βασικές Αρχές...

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

ΑΣΚΗΣΗ 10 ΣΧΕΔΙΑΣΗ ΑΚΟΛΟΥΘΙΑΚΩΝ ΚΥΚΛΩΜΑΤΩΝ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009

Πληροφορική. Εργαστηριακή Ενότητα 1 η : Εισαγωγή στα Λογιστικά Φύλλα με το MS Excel. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

9 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

8 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

ΗΥ220: Εργαστήριο σχεδίασης ψηφιακών κυκλωμάτων Χριστόφορος Κάχρης

Σχεδιασμός Αποκωδικοποιητή και υλοποίηση του στο Logisim και στο Quartus. Εισαγωγή στο Logisim

ΑΣΚΗΣΗ 8 ΚΑΤΑΧΩΡΗΤΕΣ - REGISTERS

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

Εισαγωγή στις Τηλεπικοινωνίες

ΑΣΚΗΣΗ 6 ΠΟΛΥΠΛΕΚΤΕΣ (MUX) ΑΠΟΠΛΕΚΤΕΣ (DEMUX)

Κεφάλαιο 6. Σύγχρονα και ασύγχρονα ακολουθιακά κυκλώματα

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

Transcript:

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΜΙΚΡΟΗΛΕΚΤΡΟΝΙΚΗ - VLSI Ενότητα: Ακολουθιακή λογική, καταχωρητές και flip-flops Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε. 1

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Αθηνών» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 2

ΠΕΡΙΕΧΟΜΕΝΑ ΑΣΚΗΣΗ 8 η : Ακολουθιακά κυκλώματα D-latch και D-flip-flop... ΑΣΚΗΣΗ 9 η -10 η : Αριθμητική λογική μονάδα ενός ψηφίου (1-bit ALU)... ΑΣΚΗΣΗ 8 η 3

ΑΚΟΛΟΥΘΙΑΚΑ ΚΥΚΛΩΜΑΤΑ (D-Latch & D-Flip-Flop) ΘΕΩΡΙΑ Μανδαλωτής και καταχωρητής με πολυπλέκτες (Παρ. 7.2.2, 7.2.3 έως σελίδα 399) ΕΡΓΑΣΤΗΡΙΑΚΟ ΜΕΡΟΣ 1. Σχεδιάστε το λογικό κύκλωμα ενός στατικού D flip-flop που ενεργοποιείται στην κατερχόμενη παρυφή του σήματος χρονισμού (clock). Να χρησιμοποιήσετε πολυπλέκτες (multiplexers) για να υλοποιήσετε D-latches τα οποία θα συνδέσετε στη συνέχεια σε δομή master-slave. Στην ανατροφοδότηση να χρησιμοποιήσετε δύο αντιστροφείς για να εισάγετε την απαιτούμενη καθυστέρηση. 2. Σχεδιάστε και εξομοιώστε το layout ενός D-latch το οποίο ενεργοποιείται όταν το σήμα clock είναι 0 (level sensitive). (t r = t f = 50ps) ΣΗΜΕΙΩΣΗ:Για να σχεδιάσετε με το μεταφραστή μίας γραμμής (compile one line) τον multiplexer χρησιμοποιήστε τη λογική εξίσωση της εξόδου του χωρίς να λάβετε υπόψη την αντιστροφή στο σήμα επιλογής. 3. Υλοποιήστε το D-flip-flop χρησιμοποιώντας δύο D-latches σύμφωνα με το λογικό κύκλωμα που σχεδιάσατε στο πρώτο βήμα. Το τελικό layout φαίνεται στο παρακάτω σχήμα. (Β είναι η έξοδος του πρώτου latch) Q Q Σχήμα 8.1. Το D flip-flop 4. Εξομοιώστε το layout του D flip-flop που σχεδιάσατε ώστε να παραχθούν οι κυματομορφές που δίνονται στο επόμενο σχήμα. Προσέξτε ότι η συχνότητα του clock δεν είναι ακέραιο πολλαπλάσιο της συχνότητας της εισόδου D για να είναι σταθεροποιημένη η τιμή της εισόδου τη στιγμή της παρυφής του clock. Β D Clk Clk 4

Σχήμα 8.2. Παλμοί εξομοίωσης του D flip-flop. ΕΡΓΑΣΙΑ ΓΙΑ ΤΟ ΣΠΙΤΙ Χρησιμοποιώντας το D flip-flop που σχεδιάσατε στο εργαστήριο υλοποιείστε και εξομοιώστε έναν ασύγχρονο απαριθμητή που μετράει από το 0-15. 5

ΑΣΚΗΣΗ 9 η -10 η ΑΡΙΘΜΗΤΙΚΗ-ΛΟΓΙΚΗ ΜΟΝΑΔΑ ΕΝΟΣ ΨΗΦΙΟΥ (1-BIT ALU) ΘΕΩΡΙΑ Αντικείμενο της άσκησης είναι ο λογικός σχεδιασμός, η εξομοίωση και η παραγωγή του layout μιας αριθμητικής-λογικής μονάδας ενός ψηφίου (1-bit ALU) συνδυάζοντας τη χρήση του shematic editor DSCH, του Microwind και της γλώσσας περιγραφής υλικού (Hardware Description Language, HDL) Verilog. Το λογικό διάγραμμα και ο πίνακας αλήθειας των υπομονάδων που απαρτίζουν την ALU καθώς και της πλήρους ALU δίνονται στα επόμενα σχήματα: MUX Λογική Μονάδα (Logic unit, LU) Full adder Αριθμητική Μονάδα (Arithmetic Unit, AU) 6

LU MUX AU Αριθμητική-Λογική Μονάδα (ALU) ΕΡΓΑΣΤΗΡΙΑΚΟ ΜΕΡΟΣ Αρχικά πρέπει να σχεδιαστούν και να εξομοιωθούν με χρήση του DSCH όλες οι υπομονάδες που απαιτούνται για την υλοποίηση της ALU, δηλαδή ένας πολυπλέκτης 4 σε 1, ένας πλήρης αθροιστής ενός ψηφίου, η λογική μονάδα LU και η αριθμητική μονάδα AU. Μετά θα σχεδιαστεί η ALU όπως φαίνεται στο προηγούμενο σχήμα. Ακολούθως πρέπει να παραχθεί ο κώδικας Verilog ο οποίος θα χρησιμοποιηθεί στο Microwind για την αυτόματη παραγωγή του layout. Το layout πρέπει τέλος να εξομοιωθεί ώστε να επιβεβαιωθεί η ορθή λειτουργία σύμφωνα με τα αποτελέσματα που παίρνουμε από την εξομοίωση του σχηματικού. Στο επόμενο σχήμα φαίνεται το περιβάλλον του schematic editor. Από την Symbol Library επιλέγονται τα λογικά στοιχεία που αποτελούν το κύκλωμα. Στα advanced στοιχεία περιλαμβάνονται και τα pads εισόδου-εξόδου τα οποία είναι απαραίτητα για τη δημιουργία συμβόλου από το σχηματικό. Τα προεπιλεγμένα ονόματα που δίνονται σε διάφορα στοιχεία (π.χ. clk1) μπορούν να αλλαχθούν με διπλό κλικ πάνω στο στοιχείο. Επίσης στο Schematic editor μπορείτε να φτιάξετε σύμβολο για το σχηματικό ώστε να είναι δυνατός ο ιεραρχικός σχεδιασμός του κυκλώματος. 7

Για να γίνει λογική εξομοίωση του κυκλώματος πρέπει στις εισόδους να τοποθετηθούν γεννήτριες παλμών (clocks) ή άλλη πηγή και στις εξόδους LEDs ή άλλου τύπου display. Η εξομοίωση ξεκινάει από το menu Simulate ή το αντίστοιχο εικονίδιο της γραμμής εργαλείων και εμφανίζεται στην οθόνη ένα παράθυρο ελέγχου. Πατώντας το εικονίδιο του διαγράμματος χρονισμού (timing diagram) από τη γραμμή εργαλείων η εξομοίωση παγώνει και εμφανίζονται οι κυματομορφές των εισόδων και εξόδων του κυκλώματος μέχρι εκείνη τη στιγμή. Στο επόμενο σχήμα φαίνεται το περιβάλλον εξομοίωσης για τον αθροιστή ενός ψηφίου. 8

Κλείνοντας το παράθυρο του διαγράμματος χρονισμού η εξομοίωση συνεχίζεται μέχρι να κλείσετε και το παράθυρο ελέγχου της εξομοίωσης. Επίσης, κατά τη διάρκεια της εξομοίωσης δίνεται η δυνατότητα να εμφανίζονται πάνω στο σχηματικό οι λογικές τιμές των κόμβων ή/και να αλλάζουν χρώμα τα καλώδια και να ρυθμίζεται η ταχύτητά της. Από το menu Simulatesimulation options καθορίζονται διάφορες παράμετροι της εξομοίωσης, όπως η καθυστερήσεις των πυλών και των διασυνδέσεων. 1. Σχεδιάστε και εξομοιώστε στον schematic editor ένα πολυπλέκτη (multiplexer) τεσσάρων εισόδων σε μία έξοδο, χρησιμοποιώντας πολυπλέκτες των δύο εισόδων. Το λογικό διάγραμμα δίνεται στο επόμενο σχήμα. Σώστε το σχέδιο με όνομα mmux4. ΠΡΟΣΟΧΗ: Μη δώσετε όνομα που αρχίζει από mux π.χ. mux4 γιατί το mux είναι δεσμευμένη λέξη και θα σας δημιουργήσει πρόβλημα κατά την παραγωγή του layout από Verilog. 2. Για τον πολυπλέκτη που σχεδιάσατε δημιουργήστε ένα σύμβολο. Πριν ξεκινήσετε τη διαδικασία δημιουργίας συμβόλου πρέπει να σβήσετε τα clocks που έχετε βάλει για την εξομοίωση. Επιλέξτε από το menu FILE Schema to new symbol ή το αντίστοιχο εικονίδιο από το toolbar. Στο menu που θα εμφανιστεί επιλέξτε Sort by increasing order για να αλλάξετε τη διάταξη των ακροδεκτών στο σύμβολο. Επιλέγοντας τη Verilog βλέπετε πώς περιγράφεται το κύκλωμά σας με τη γλώσσα περιγραφής υλικού. 3. Σχεδιάστε, εξομοιώστε και δημιουργήστε σύμβολο για τον πλήρη αθροιστή του ενός ψηφίου (1-bit full-adder) το λογικό διάγραμμα του οποίου δίνεται στο παρακάτω σχήμα. 9

4. Χρησιμοποιώντας τον πολυπλέκτη 4:1 που σχεδιάσατε στο βήμα 1 σχεδιάστε, εξομοιώστε και δημιουργήστε σύμβολο για τη λογική μονάδα του ενός ψηφίου, όπως φαίνεται στο αντίστοιχο σχήμα του θεωρητικού μέρους. 5. Σχεδιάστε, εξομοιώστε και δημιουργήστε σύμβολο για την αριθμητική μονάδα του ενός ψηφίου, όπως φαίνεται στο αντίστοιχο σχήμα του θεωρητικού μέρους. 6. Σχεδιάστε και εξομοιώστε την αριθμητική-λογική μονάδα του ενός ψηφίου (1-bit ALU). Το λογικό διάγραμμά της καθώς και τα σήματα εισόδου και εξόδου που πρέπει να λάβετε υπόψη σας δίνονται στο παρακάτω σχήμα. Το διάγραμμα χρονισμού της ALU φαίνεται στο παρακάτω σχήμα. Για να είναι πιο εύκολη η σύγκρισή του με τον αντίστοιχο πίνακα αλήθειας, που δίνεται στο θεωρητικό μέρος και για να διευκολυνθείτε στην εξομοίωση του layout χρησιμοποιήστε στην εξομοίωση παλμούς ρολογιού όπως αυτοί που φαίνονται στο παρακάτω σχήμα. Η περίοδος του σήματος εισόδου Α είναι 40nsec, του Β 80nsec κλπ. 10

7. Από το menu File Make Verilog File παράγετε το αρχείο Verilog για την τελική μορφή της ALU χωρίς να σβήσετε τα σήματα χρονισμού. Ο αρχείο Verilog Verilog έχει την παρακάτω μορφή: // DSCH 2.6e // 4/6/2003 12:34:57 ðì // C:\users\mpitz\tei\lab\aluhier.sch module aluhier( C_in,C_in,S1,S0,A,B,S1,S0,B,A,S2, S2,C_out,alu,alu,au,lu); input C_in,C_in,S1,S0,A,B,S1,S0; input B,A,S2,S2; output C_out,alu,alu,au,lu; wire w11,w12,w13,w14,w15,w16,w17,w18; wire w19,w20,w21,w22,w23; mux #(17) mux(alu,au,lu,s2); not #(12) inv_lu1(w11,a); and #(15) and2_lu2(w12,b,a); or #(15) or2_lu3(w13,a,b); xor #(15) xor2_lu4(w14,a,b); mux #(13) mux_mm1_lu5(w15,w14,w11,s0); mux #(20) mux_mm2_lu6(lu,w16,w15,s1); mux #(13) mux_mm3_lu7(w16,w12,w13,s0); and #(15) and2_au8(w18,w17,s1); and #(15) and2_au9(w19,b,s0); or #(26) or2_au10(w20,w19,w18); not #(12) inv_au11(w17,b); xor #(27) xor2_fa1_au12(w21,a,w20); or #(15) or2_fa2_au13(c_out,w22,w23); and #(15) and2_fa3_au14(w22,c_in,w21); xor #(22) xor2_fa4_au15(au,w21,c_in); and #(15) and2_fa5_au16(w23,w20,a); endmodule // Simulation parameters in Verilog Format always #64000 C_in=~C_in; #16000 S1=~S1; #8000 S0=~S0; #2000 A=~A; #4000 B=~B; #32000 S2=~S2; 11

// Simulation parameters // C_in CLK 640.000 640.000 // S1 CLK 160.000 160.000 // S0 CLK 80.000 80.000 // A CLK 20.000 20.000 // B CLK 40.000 40.000 // S2 CLK 320.000 320.000 Οι γραμμές που αρχίζουν με // είναι σχόλια. Το πρώτο τμήμα του κώδικα που ξεκινάει με τη λέξη module και τελειώνει με endmodule περιγράφει τη δομή του κυκλώματος της ALU. Το δεύτερο τμήμα του κώδικα περιγράφει στην ίδια γλώσσα τους παλμούς που χρησιμοποιήθηκαν για την εξομοίωση του κυκλώματος. 8. Παράγετε αυτόματα με το Μicrowind το layout της ALU (από το menu Compile Compile Verilog File) χρησιμοποιώντας τεχνολογία CMOS 0.12μm, και εξομοιώστε το. Σημαντική βοήθεια προσφέρει η μετάφραση των παλμών που περιλαμβάνονται στον κώδικα Verilog και η αντιστοίχησή τους στα σήματα του layout. Παρατηρείστε την αναλογική μορφή των σημάτων και τα πιθανά spikes σε αντίθεση με τους ψηφιακούς παλμούς του λογικού εξομοιωτή του DSCH. 12