Πανεπιστήµιο Αιγαίου Τµήµα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστηµάτων. 3η Άσκηση Logical Effort - Ένα ολοκληρωµένο παράδειγµα σχεδίασης

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

Εργαστηριακή άσκηση. Θεωρητικός και πρακτικός υπολογισμός καθυστερήσεων σε αναστροφείς CMOS VLSI

Εργαστηριακή άσκηση. Θεωρητικός και πρακτικός υπολογισμός καθυστερήσεων σε λογικά δίκτυα πολλών σταδίων

Αποκωδικοποιητές Μνημών

Καθυστέρηση στατικών πυλών CMOS

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

Οργάνωση της φυσικής δομής του ολοκληρωμένου κυκλώματος

ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ. Δρ. Δ. Λαμπάκης (10 η σειρά διαφανειών)

10o ΕΡΓΑΣΤΗΡΙΟ Στοιχεία Χωροθεσίας (Layout) CMOS

4/10/2008. Στατικές πύλες CMOS και πύλες με τρανζίστορ διέλευσης. Πραγματικά τρανζίστορ. Ψηφιακή λειτουργία. Κανόνες ψηφιακής λειτουργίας

ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ. Δρ. Δ. Λαμπάκης (9 η σειρά διαφανειών)

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

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

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

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

4 η διάλεξη Καθυστέρηση Διασυνδέσεων Μοντέλο Elmore

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

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

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

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

Πολυσύνθετες πύλες. Διάλεξη 11

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

Στατική ηλεκτρική ανάλυση του αντιστροφέα CMOS. Εισαγωγή στην Ηλεκτρονική

Ψηφιακά Κυκλώματα (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

ΑΣΚΗΣΗ 7. ΘΕΜΑ 1ο MINORITY A B C. C out

Αλγόριθµοι Εκτίµησης Καθυστέρησης και

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

Κεφάλαιο 4 ο. Γ. Τσιατούχας. VLSI Systems and Computer Architecture Lab. Λογικός Φόρτος 2

Εργαστηριακή άσκηση. Σχεδίαση layout και προσομοίωση κυκλώματος με το πρόγραμμα MICROWIND

Φυσική σχεδίαση ολοκληρωμένων κυκλωμάτων

Βασικές CMOS Λογικές οικογένειες (CMOS και Domino)

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

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI I 4 η Εργαστηριακή Άσκηση

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

K15 Ψηφιακή Λογική Σχεδίαση 6: Λογικές πύλες και λογικά κυκλώματα

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

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

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

V Vin $N PULSE 1.8V p 0.1p 1n 2n M M1 $N 0002 $N 0001 Vout $N 0002 MpTSMC180 + L=180n + W=720n + AD=0.324p + AS=0.

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

ΠΡΟΒΛΗΜΑ ΔΙΑΓΩΝΙΟΥ. Εξετάζουμε ενδεικτικά ορισμένες περιπτώσεις: 1 ο 2 ο. 3 ο 4 ο

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΠΑΤΡΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ 24/01/2012 ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΙΑΣ

4.2 Αναπαράσταση δυαδικών τιμών στα ψηφιακά κυκλώματα

Ψηφιακά Ηλεκτρονικά. Μάθηµα 6ο.. Λιούπης

Υ52 Σχεδίαση Ψηφιακών Ολοκληρωμένων Κυκλωμάτων και Συστημάτων. Δεληγιαννίδης Σταύρος Φυσικός, MsC in Microelectronic Design

Εισαγωγή στα κυκλώµατα CMOS 2

Μνήμες RAM. Διάλεξη 12

συντονισµός δ. όταν η συχνότητα της διεγείρουσας δύναµης συµπέσει µε την ιδιοσυχνότητα του συστήµατος, το πλάτος γίνεται ελάχιστο 4. Κατά τη σκέδαση 2

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

7.1 ΜΕΛΕΤΗ ΤΗΣ ΣΥΝΑΡΤΗΣΗΣ

Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Ολοκλήρωση Σχεδίασης µε CAD-tools. (Back-End) Χρ. Καβουσιανός

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

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

Ψηφιακά Ηλεκτρονικά. Μάθηµα 2ο.. Λιούπης

Πανεπιστήµιο Κύπρου Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

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

Λύσεις Παλιών Θεµάτων. Συστήµατα Παράλληλης Επεξεργασίας, 9ο εξάµηνο Υπεύθ. Καθ. Νεκτάριος Κοζύρης

Μελέτη της συνάρτησης ψ = α χ 2

ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ ΤΕΧΝΟΛΟΓΙΑΣ MOS KAI CMOS

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

ΜΕΡΟΣ Α: Απαραίτητε γνώσει

Κυκλώµατα CMOS και Λογική Σχεδίαση 2

Γ2.1 Στοιχεία Αρχιτεκτονικής. Γ Λυκείου Κατεύθυνσης

Απορρόφηση Αερίων (2)

Παραδείγματα (2) Διανυσματικοί Χώροι

ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ ΜΙΚΡΟΗΛΕΚΤΡΟΝΙΚΗΣ

Παρατηρήσεις για τη χρήση ενός κυκλικού διαγράμματος

ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΒΑΣΙΚΩΝ ΣΥΝΑΡΤΗΣΕΩΝ

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Τι θα απαντούσατε αλήθεια στην ίδια ερώτηση για την περίπτωση της επόμενης εικόνας;

Ανάλυση Ηλεκτρικών Κυκλωμάτων με Αντιστάσεις

Η αφετηρία είναι η συσκευή στην οποία η μπάλα βρίσκεται αρχικά. Έχει μόνο μία έξοδο. Ο σειριακός αριθμός της είναι.

5ο ιαγώνισµα - Ταλαντώσεις / Κύµατα. Θέµα Α

1η Εργαστηριακή Άσκηση: Απόκριση κυκλώµατος RC σε βηµατική και αρµονική διέγερση

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

ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ. Δρ. Δ. Λαμπάκης (3 ο σειρά διαφανειών)

Πανεπιστήµιο Κύπρου. Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

Συστήματα σε Ολοκληρωμένα Κυκλώματα

Λογικά Κυκλώματα με Διόδους, Αντιστάσεις και BJTs. Διάλεξη 2

Σχεδίαση κυκλωμάτων ακολουθιακής λογικής

Σχεδίαση µε CAD tools

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ. Δρ. Δ. Λαμπάκης (2 η σειρά διαφανειών)

Άσκηση 1 ΛΥΣΗ. Το Q Στη χαρακτηριστική αντιστοιχεί σε ρεύµα βάσης 35 (Fig.2). Η πτώση τάσης πάνω στην : Στο Q έχω

Ολοκληρωμένα κυκλώματα 1 ο σετ ασκήσεων


ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ. Δρ. Δ. Λαμπάκης (11 η σειρά διαφανειών)

Λογικά Κυκλώματα CMOS. Διάλεξη 5

Κεφάλαιο 5. Λογικά κυκλώματα

Ηλεκτρολόγοι Μηχανικοί ΕΜΠ Λογική Σχεδίαση Ψηφιακών Συστημάτων Διαγώνισμα κανονικής εξέτασης 2017

Ανάλυση Ηλεκτρικών Κυκλωμάτων

Μέγιστη ροή. Κατευθυνόμενο γράφημα. Συνάρτηση χωρητικότητας. αφετηρίακός κόμβος. τερματικός κόμβος. Ροή δικτύου. με τις ακόλουθες ιδιότητες

lim f ( x) x + f ( x) x a x a x a 2x 1

Επίλυση Προβλημάτων με Χρωματισμό. Αλέξανδρος Γ. Συγκελάκης

Ψηφιακά Ηλεκτρονικά. Μάθηµα 5ο.. Λιούπης

ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ. Δρ. Δ. Λαμπάκης (1 η σειρά διαφανειών)

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

ΑΣΚΗΣΕΙΣ Β ΛΥΚΕΙΟΥ -- ΑΛΓΕΒΡΑ ΓΡΑΜΜΙΚΑ ΣΥΣΤΗΜΑΤΑ

ΑΡΧΕΣ ΟΙΚΟΝΟΜΙΚΗΣ ΘΕΩΡΙΑΣ

Transcript:

Πανεπιστήµιο Αιγαίου Τµήµα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστηµάτων Εισαγωγή σε VLSI 3η Άσκηση Logical Effort - Ένα ολοκληρωµένο παράδειγµα σχεδίασης Μανόλης Καλλίγερος (kalliger@aegean.gr) ιαδικαστικά Η καταληκτική ηµεροµηνία παράδοσης της άσκησης είναι η Κυριακή 12/6/2011. O τρόπος παράδοσης της άσκησης θα είναι ηλεκτρονικός (αναφορά + τη βιβλιοθήκη που θα έχετε φτιάξει στο Electric). Εισαγωγή Το παραπάνω κύκλωµα είναι ένας arbiter (κύκλωµα διαιτησίας) των 4 bit. Το κύκλωµα αυτό λαµβάνει σαν είσοδο ένα διάνυσµα αιτήσεων (R 3, R 2, R 1 και R 0 ) µαζί µε τις ανεστραµµένες εκδοχές τους, καθώς και ένα διάνυσµα προτεραιοτήτων (P 3, P 2, P 1 και P 0 ). Μόνο ένα bit του διανύσµατος προτεραιοτήτων επιτρέπεται να είναι ενεργοποιηµένο κάθε φορά (κωδικοποίηση one-hot). Ανάλογα µε τις τιµές των διανυσµάτων αυτών, o arbiter 1

επιλέγει µία από τις αιτήσεις και ενεργοποιεί την αντίστοιχη έξοδο έγκρισης αίτησης (G i - grant). Για παράδειγµα, αν {P 3, P 2, P 1, P 0 } = {0, 0, 1, 0} (έχει προτεραιότητα η συσκευή 1) και {R 3, R 2, R 1, R 0 } = {1, 0, 1, 1} (έχουν κάνει αίτηση οι συσκευές 3, 1 και 0), τότε ο arbiter ενεργοποιεί την έξοδο G 1 (δηλ., εγκρίνει την αίτηση της συσκευής 1, η οποία έχει µεγαλύτερη προτεραιότητα έναντι των υπολοίπων τριών). Σε περίπτωση που δεν έχει κάνει αίτηση η συσκευή µε τη µεγαλύτερη προτεραιότητα, τότε επιλέγεται εκείνη µε την αµέσως µικρότερη σύµφωνα µε την πολιτική round-robin (κυκλική µετατόπιση της προτεραιότητας). Για παράδειγµα, αν και πάλι {P 3, P 2, P 1, P 0 } = {0, 0, 1, 0}, αλλά {R 3, R 2, R 1, R 0 } = {0, 1, 0, 1} (έχει προτεραιότητα η συσκευή 1, αλλά αιτήσεις έχουν κάνει µόνο οι συσκευές 2 και 0), τότε εγκρίνεται η αίτηση της συσκευής 2 (δηλ., {G 3, G 2, G 1, G 0 } = {0, 1, 0, 0} ), αφού αυτή είναι η συσκευή µε την αµέσως µικρότερη προτεραιότητα µετά τη συσκευή 1, σύµφωνα µε τη round-robin πολιτική (υποθέτουµε κυκλική µετατόπιση των προτεραιοτήτων από τα δεξιά προς τα αριστερά). Τέλος, αν καµία συσκευή δεν έχει κάνει αίτηση, όλες οι έξοδοι G i απενεργοποιούνται (γίνονται ίσες µε το λογικό 0), ενώ ταυτόχρονα απενεργοποιείται και η έξοδος AG (Any Grant). Η έξοδος AG, όπως υποδηλώνει και το όνοµά της, παραµένει ενεργοποιηµένη (ίση µε το λογικό 1) όσο οποιαδήποτε από τις εξόδους G i είναι 1. Σηµειώνεται, ότι arbiters σαν και τον παραπάνω περιλαµβάνονται σε κυκλώµατα διακοπτών (switches), τα οποία αποτελούν ένα από τα βασικότερα συστατικά των δικτύων διασύνδεσης (interconnection networks) των σύγχρονων, περίπλοκων ολοκληρωµένων συστηµάτων (Systems-on-Chip SoCs). Στόχος της άσκησης είναι να σχεδιάσετε τον παραπάνω 4-bit arbiter, έχοντας σαν στόχο τη µικρότερη δυνατή καθυστέρηση (άρα, θα πρέπει να χρησιµοποιήσετε την µέθοδο του Logical Effort). H άσκηση χωρίζεται σε δύο µέρη: Μέρος 1ο: Βελτιστοποίηση του κυκλώµατος µε χρήση της µεθόδου του Logical Effort Λάβετε υπόψη σας τα ακόλουθα: Κάθε είσοδος του κυκλώµατος ( P, i R i, R i ) µπορεί να οδηγήσει χωρητικότητα ίση µε 14C, όπου C είναι η χωρητικότητα ενός τρανζίστορ ελαχίστου πλάτους (4λ). Κάθε έξοδος του κυκλώµατος (G i, AG) µπορεί να οδηγήσει χωρητικότητα ίση µε 84C. Οι πύλες που θα χρησιµοποιηθούν για την υλοποίηση του κυκλώµατος θα είναι static CMOS, µε τα πλάτη των τρανζίστορ κατάλληλα επιλεγµένα, ώστε το ρεύµα κατά την ανοδική µετάβαση του κόµβου εξόδου να είναι ίσο µε αυτό της καθοδικής µετάβασης (και ίσο µε το αντίστοιχο ρεύµα ενός µοναδιαίου αντιστροφέα). Όσο αφορά το logical effort (g) και το parasitic delay (p) των διαφόρων πυλών, χρησιµοποιήστε τις θεωρητικές τιµές που υπολογίζονται από τα πλάτη των τρανζίστορ, οι οποίες περιλαµβάνονται στους πίνακες του βιβλίου και των διαφανειών. Αν χρειαστείτε τα p και g για κάποια πύλη που δεν περιλαµβάνεται στους πίνακες αυτούς, υπολογίστε τις τιµές τους µε βάση, και πάλι, τα πλάτη των τρανζίστορ της πύλης. Για τη βελτιστοποίηση του κυκλώµατος ακολουθήστε τα παρακάτω βήµατα: Βρείτε όλα τα διαφορετικά µονοπάτια του κυκλώµατος. Αν το ίδιο µονοπάτι 2

επαναλαµβάνεται περισσότερες από µία φορές, µελετήστε το µόνο µία. Αναγνωρίστε το µονοπάτι µε τη µεγαλύτερη καθυστέρηση (critical path κρίσιµο µονοπάτι) και υπολογίστε µε τη βοήθεια της µεθόδου του Logical Effort την ελάχιστη τιµή της καθυστέρησης αυτής. Εναλλακτικά, µπορείτε να υπολογίσετε την ελάχιστη καθυστέρηση όλων των µονοπατιών του κυκλώµατος ώστε να βρείτε αυτό µε τη µεγαλύτερη (το/τα µονοπάτι/τια µε την καθυστέρηση αυτή θα είναι και το/τα critical), αλλά είναι σχετικά εύκολο να σκεφθείτε ποιο µονοπάτι µπορεί να είναι το πιο αργό. Στο παραπάνω βήµα, αλλά και σε όλους τους υπολογισµούς σας, για να βρείτε το branching effort (b) χρησιµοποιήστε τον τύπο (C onpath +C offpath )/C onpath (µη θέσετε δηλαδή το branching effort ενός κόµβου ίσο µε τον αριθµό των κλάδων που οδηγούνται από αυτόν, αλλά χρησιµοποιήστε τον τύπο από τον ορισµό του branching effort πιο ακριβής υπολογισµός). Για το branching effort των κόµβων που οδηγούνται από τις εισόδους P i και R i (δηλ., πριν τις πύλες του 1ου επιπέδου), θεωρήστε ότι οι σύνθετες πύλες και οι πύλες AND (NAND σε ένα CMOS κύκλωµα) κλιµακώνονται κατά τον ίδιο παράγοντα k σε σχέση µε τις αντίστοιχες πύλες «οδηγούς» (template gates). Με άλλα λόγια, αν οι σύνθετες πύλες είναι, για παράδειγµα, 2 φορές µεγαλύτερες από την αντίστοιχη σύνθετη πύλη που παρέχει το ίδιο ρεύµα µε το µοναδιαίο αντιστροφέα, το ίδιο συµβαίνει και για τις πύλες NAND (είναι 2 φορές µεγαλύτερες σε σχέση µε τη NAND που δίνει το ίδιο ρεύµα µε το µοναδιαίο αντιστροφέα). Αυτό µπορεί να εξηγηθεί από τη δοµή του κυκλώµατος και το είδος των πυλών (µπορείτε αν θέλετε να προσπαθήσετε να το εξηγήσετε, χωρίς αυτό να προσµετράται στη βαθµολογία). Από την τιµή του F του κρίσιµου µονοπατιού, υπολογίστε το βέλτιστο αριθµό επιπέδων που πρέπει να έχει το κύκλωµά σας, ώστε να επιτυγχάνει την ελάχιστη δυνατή καθυστέρηση. Τροποποιήστε το κύκλωµα σας (δηλ., τις πύλες του, χωρίς φυσικά να αλλάζουν οι συναρτήσεις εξόδου που παράγονται), ώστε το πλήθος των επιπέδων του (στα κρίσιµα µονοπάτια), να συµπίπτει µε τον αριθµό των επιπέδων που υπολογίσατε στο προηγούµενο βήµα. Αν θέλετε µπορείτε να δοκιµάσετε διάφορες τοπολογίες µε το βέλτιστο αριθµό επιπέδων και να κρατήσετε την ταχύτερη (σηµείωση: ο έλεγχος διαφορετικών τοπολογιών δεν είναι απαραίτητος για την επιτυχή ολοκλήρωση της άσκησης µία τοπολογία µε το βέλτιστο αριθµό επιπέδων είναι αρκετή). Υπολογίστε τη βέλτιστη καθυστέρηση του κρίσιµου µονοπατιού του νέου σας κυκλώµατος, καθώς και το βέλτιστο αριθµό επιπέδων από τη νέα τιµή του F, ώστε να διαπιστώσετε ότι συµπίπτει µε το βέλτιστο αριθµό επιπέδων που βρήκατε προηγουµένως. Υπολογίστε το C in (χωρητικότητα εισόδου) των πυλών που βρίσκονται στο κρίσιµο µονοπάτι, και από αυτή βρείτε τα µεγέθη των τρανζίστορ που τις απαρτίζουν. Από το προηγούµενο βήµα και από την υπόθεση σχετικά µε το µέγεθος των πυλών του 1ου επιπέδου, θα έχετε καταλήξει στο µέγεθος των περισσότερων πυλών του κυκλώµατος. Θα σας αποµένει µόνο να αποφασίσετε για το µέγεθος της πύλης (2ου επιπέδου) που οδηγεί τον αντιστροφέα που παράγει την έξοδο AG, καθώς και για το µέγεθος του αντιστροφέα αυτού. Όσο αφορά την πύλη του 2ου επιπέδου, µπορείτε να κάνετε µία υπόθεση που θα σας βολεύει (π.χ., ότι κλιµακώνεται κατά τον ίδιο παράγοντα, σε σχέση µε τις υπόλοιπες πύλες 3

2ου επιπέδου, ως προς την αντίστοιχή πύλη «οδηγό» είστε ελεύθεροι να κάνετε όποια υπόθεση θέλετε για το µέγεθος της πύλης αυτής, εξηγώντας το λόγο για τον οποίο σας βολεύει να κάνετε την υπόθεση αυτή). Έτσι, ο αντιστροφέας που παράγει την έξοδο AG θα πρέπει να έχει τέτοιο µέγεθος, ώστε η καθυστέρηση των µονοπατιών που καταλήγουν στην έξοδο AG να µην υπερβαίνει τη βέλτιστη καθυστέρηση του κρίσιµου µονοπατιού του κυκλώµατος που βρήκατε σε προηγούµενο βήµα. Υπολογίστε την καθυστέρηση των µονοπατιών που καταλήγουν στην έξοδο AG, θέστε τη µικρότερη ή ίση από την καθυστέρηση του κρίσιµου µονοπατιού και λύστε την ανισότητα, ώστε να βρείτε το εύρος τιµών για το C in του αντιστροφέα αυτού. Στη συνέχεια, επιλέξτε όποια τιµή σας βολεύει ή όποια εσείς κρίνετε καλύτερη (π.χ., τη µικρότερη, για µικρότερη επιφάνεια υλοποίησης και κατανάλωση ισχύος). Σαν τελευταίο βήµα της εφαρµογής της µεθόδου του Logical Effort, υπολογίστε την καθυστέρηση όλων των υπολοίπων µονοπατιών του κυκλώµατος (εκτός δηλαδή από το κρίσιµο, για το οποίο έχετε βρει τη βέλτιστη καθυστέρηση). Αν η επιλογή του κρίσιµου µονοπατιού που κάνατε είναι σωστή, θα πρέπει η καθυστέρηση των υπολοίπων µονοπατιών να είναι µικρότερη ή ίση από αυτή του κρίσιµου. ΠΡΟΣΟΧΗ: Ο υπολογισµός της N καθυστέρησης των µονοπατιών αυτών δεν θα γίνει από τη σχέση N F+P αλλά από τη σχέση N gih+p. i Η πρώτη σχέση δίνει τη βέλτιστη καθυστέρηση ενός µονοπατιού i=1 ανεξάρτητα από τα µεγέθη των πυλών (τα µεγέθη προσαρµόζονται στη συνέχεια ώστε να επιτυγχάνεται αυτή η βέλτιστη καθυστέρηση), ενώ η δεύτερη σχέση µας δίνει την καθυστέρηση ενός µονοπατιού µε γνωστά µεγέθη πυλών. Μέρος 2ο: Σχεδιασµός του κυκλώµατος στο Electric σε επίπεδο layout Για το σχεδιασµό του κυκλώµατος θα χρησιµοποιήσετε το εργαλείο Electric, όπως και στο 1ο Σετ ασκήσεων. Ο σχεδιασµός θα γίνει σε επίπεδο layout, ενώ θα πρέπει να ακολουθήσετε την αρχή της ιεραρχικής σχεδίασης, δηλαδή αρχικά θα σχεδιάσετε όλες τις πύλες που σας είναι απαραίτητες σαν ανεξάρτητα cells (χρησιµοποιώντας τα µεγέθη των τρανζίστορ που υπολογίσατε στο 1ο µέρος της άσκησης) και στη συνέχεια θα χρησιµοποιήσετε τα cells αυτά ώστε να υλοποιήσετε τον ζητούµενο arbiter. ώστε προσοχή στις ακόλουθες οδηγίες: Υλοποιήστε τις πύλες σας σαν standard cells. Αυτό σηµαίνει ότι οι πύλες σας θα πρέπει να «κουµπώνουν» όταν τοποθετηθούν η µία δίπλα στην άλλη και, άρα, θα πρέπει να έχουν το ίδιο ύψος. Το ύψος µίας πύλης καθορίζεται από την απόσταση µεταξύ των γραµµών του V DD και του Gnd. Φροντίστε να φτιάξετε τη µεγαλύτερη σας πύλη (σε ύψος) πρώτη, ώστε στις υπόλοιπες να διατηρήσετε την ίδια απόσταση µεταξύ των γραµµών τροφοδοσίας και γείωσης. Οι γραµµές τροφοδοσίας και γείωσης των πυλών θα πρέπει να είναι οριζόντιες, µετάλλου-1, µε πλάτος 8λ. Όλες οι υπόλοιπες γραµµές µετάλλου του κυκλώµατος θα πρέπει να έχουν πλάτος 4λ. Συνολικά, για την υλοποίηση ολόκληρου του κυκλώµατος επιτρέπεται 4

να χρησιµοποιήσετε γραµµές µετάλλου-1 και µετάλλου-2. Στις πύλες σας χρησιµοποιήστε µόνο γραµµές µετάλλου-1 και πολυσιλικόνης (για τις συνδέσεις των gates των τρανζίστορ). Αν σε κάποιες πύλες πρέπει να χρησιµοποιήσετε τρανζίστορ πολύ µεγάλου πλάτους, εφαρµόστε την τεχνική του folding (σελ. 556 του βιβλίου). Έτσι θα αποφύγετε το υπερβολικό ύψος των πυλών, εξαιτίας του µεγέθους των τρανζίστορ ενός συγκεκριµένου είδους πυλών. Φροντίστε κάθε πύλη σας να έχει ένα ελάχιστο περιθώριο 2λ σε κάθε πλευρά της, σε σχέση µε την τελευταία γραµµή µετάλλου-1 σε εκείνη την πλευρά, έτσι ώστε αν τοποθετηθούν δύο πύλες η µία δίπλα στην άλλη ή η µία κάτω από την άλλη, να µην παραβιάζεται η ελάχιστη απόσταση µεταξύ γειτονικών γραµµών µετάλλου (4λ). Φροντίστε στις εισόδους και στην έξοδο κάθε πύλης να υπάρχει µία via προς το επίπεδο µετάλλου 2 (για να συνδέσετε πολυσιλικόνη µε µέταλλο-2 θα πρέπει να τοποθετήσετε, τη µία πάνω στην άλλη, µία via πολυσιλικόνης-µετάλλου-1 και µία via µετάλλου-1 µετάλλου-2 stacked vias). εν είναι υποχρεωτικό όλες οι συνδέσεις στις εισόδους και εξόδους των πυλών να είναι µε γραµµές µετάλλου-2 (µπορείτε να χρησιµοποιήσετε και µέταλλο-1 αν σας βολεύει). Παρόλα αυτά, η ύπαρξη των vias προς το επίπεδο µετάλλου 2, σας δίνει τη δυνατότητα να χρησιµοποιήσετε όποιο είδος γραµµής θέλετε (µέταλλο-1 ή µέταλλο-2) για τη σύνδεση των εισόδων και εξόδων των πυλών. Όταν τελικά αποφασίσετε πως θα κάνετε τη διασύνδεση κάθε επιπέδου πυλών του arbiter µε το επόµενο, µπορείτε (αν θέλετε) να αφαιρέσετε από τα cells σας όσες vias προς µέταλλο-2 δεν πρόκειται να χρησιµοποιηθούν (σε όσες δηλαδή εισόδους ή εξόδους θα χρησιµοποιηθεί µέταλλο-1 για τη σύνδεσή τους µε τις γειτονικές πύλες). Προσπαθήστε οι είσοδοι και οι έξοδοι των πυλών να έχουν µεταξύ τους απόσταση 4λ, είτε κατά τον οριζόντιο, είτε κατά τον κατακόρυφο άξονα (ή, αν είναι δυνατόν, και κατά τους δύο άξονες). Αυτό θα σας βοηθήσει στη φάση της διασύνδεσης των πυλών, αφού θα υπάρχει η κατάλληλη απόσταση ώστε να µπορούν παράλληλα καλώδια ενός επιπέδου µετάλλου να συνδεθούν µε τις εισόδους και εξόδους των πυλών. Περισσότερες πληροφορίες σχετικά µε τη σχεδίαση πυλών σαν standard cells µπορείτε να βρείτε στην παράγραφο ΧΙ του αρχείου Lab0.pdf (βλ. 1ο Σετ Ασκήσεων), καθώς και στην Παράγραφο 8.8.2 του βιβλίου (σελ. 553-556). Όσο αφορά τη διασύνδεση των cells που φτιάξατε µε στόχο την υλοποίηση του ζητούµενου arbiter, τοποθετήστε τις πύλες σας µε τέτοιο τρόπο ώστε να σχηµατιστεί ένα δισδιάστατο array (διάταξη ορθογωνίου παραλληλογράµµου). Για τη διασύνδεση των πυλών µπορείτε να χρησιµοποιήσετε γραµµές µετάλλου-1 και µετάλλου-2 (αλλά όχι µετάλλου-3). Σε µεγαλύτερους σχεδιασµούς, συνήθως περιορίζεται η χρήση των γραµµών ενός επιπέδου µετάλλου, έτσι ώστε να σχεδιάζονται όλες κατά µία συγκεκριµένη κατεύθυνση (π.χ., το µέταλλο-2 κατακόρυφα, το µέταλλο-3 οριζόντια, κ.ο.κ.). Για το ζητούµενο κύκλωµα δεν υπάρχει τόσο αυστηρός περιορισµός. Παρόλα αυτά, θα πρέπει να τηρήσετε κάποιον κανόνα για τις γραµµές που τέµνονται. Και αφού οι γραµµές τροφοδοσίας και γείωσης είναι οριζόντιες µετάλλου-1, φροντίστε, όπου χρειαστείτε κατακόρυφες γραµµές που τέµνονται µε οριζόντιες, αυτές να είναι σε µέταλλο-2. Γενικά 5

προσπαθήστε οι οριζόντιες γραµµές του κυκλώµατός σας να είναι σε µέταλλο-1 και οι κατακόρυφες σε µέταλλο-2 (ειδικά αυτές που έχουν µεγάλο µήκος). Αν τώρα κάπου χρειαστείτε µία µικρή γραµµή ή αν µία γραµµή πρέπει σε κάποιο σηµείο της να αλλάξει κατεύθυνση, µπορείτε, αν δεν σας δηµιουργεί πρόβληµα, να χρησιµοποιήσετε όποιο επίπεδο µετάλλου θέλετε ή να συνεχίσετε να χρησιµοποιείτε το ίδιο επίπεδο µετάλλου, αν πρόκειται για γραµµή που αλλάζει κατεύθυνση. Συνδέστε µεταξύ τους τις γραµµές V DD και Gnd όλων των πυλών που βρίσκονται στην ίδια γραµµή του δισδιάστατου array που φτιάξατε και, στη συνέχεια, δηµιουργήστε ένα νέο Export για κάθε ενιαία γραµµή V DD και Gnd. Φυσικά, νέα Exports θα χρειαστεί να δηµιουργήσετε και για όλες τις εισόδους και εξόδους του τελικού σας κυκλώµατος. Περισσότερες πληροφορίες σχετικά µε την ιεραρχική σχεδίαση στο Electric µπορείτε να βρείτε στην παράγραφο ΧV του αρχείου Lab0.pdf. 6