ΚΥΚΛΩΜΑΤΑ VLSI Πανεπιστήμιο Ιωαννίνων Ακολουθιακή Λογική Κεφάλαιο 10 ο Τμήμα Μηχανικών Η/Υ και Πληροφορικής Γ. Τσιατούχας ΚΥΚΛΩΜΑΤΑ VLSI Διάρθρωση 1. Δισταθή κυκλώματα Μεταευστάθεια 2. Μανδαλωτές 3. Flip Flops Flops 4. Δομές διοχέτευσης 5. Διανομή ρολογιού 6. Συγχρονισμός ρολογιών VLSI Systems and Computer Architecture Lab Ακολουθιακή Λογική 2 1
Ακολουθιακή Λογική έξοδοι = f(εισόδων, κατάστασης) Είσοδοι Συνδυαστικό Λογικό Κύκλωμα Έξοδοι Είσοδοι Καταχωρητές Λογική Καταχωρητές Έξοδοι Κατάσταση Ρολόι Ρολόι Μηχανή Πεπερασμένων Καταστάσεων (Finite State Machine FSM) Σύστημα με Διοχέτευση (Pipeline) Ακολουθιακή Λογική 3 Αρχή Λειτουργίας Δισταθών Κυκλωμάτων V o1 V V / 2 V i2 V V / 2 Μετά από καθρεπτισμό στον κατακόρυφο άξονα και περιστροφή 90 ο στη φορά των δεικτών του ρολογιού 0 V / 2 V i1 V 0 V / 2 V o2 V V i1 V o1 V i2 V 1 2 V V i2 =V o1 V o2 i2 o1 V / 2 A C V o2 V i1 0 V / 2 B V i1 =V o2 V Ακολουθιακή Λογική 4 2
Μεταευσταθή & Ευσταθή Σημεία Λειτουργίας V in 1 V out A κέρδος βρόχου < 1 κέρδος βρόχου > 1 2 V V out V / 2 C Α και Β = ευσταθή σημεία λειτουργίας C = μεταευσταθές σημείο λειτουργίας 0 δ 2 δ 1 V / 2 V in V B Ακολουθιακή Λογική 5 Μανδαλωτές (Latches) Ακολουθιακή Λογική 6 3
Μανδαλωτής Βασισμένος σε Πολυπλέκτη Αρνητικός Μανδαλωτής 1 MUX 0 MUX Θετικός Μανδαλωτής 0 1 Μανδαλωτής: Κύκλωμα ευαίσθητο σε στάθμη τάσης (level sensitive) Συμπληρωματικά (μη επικαλυπτόμενα) ρολόγια CMOS υλοποίηση Ακολουθιακή Λογική 7 Χρονισμός Μανδαλωτών Αρνητικός Μανδαλωτής 1 0 MUX 0 1 MUX Θετικός Μανδαλωτής Μανδαλωτής σε κατάσταση μνήμης Μανδαλωτής σε διαφανή κατάσταση Μανδαλωτής σε κατάσταση μνήμης σταθερό Η έξοδος ακολουθεί την είσοδο σταθερό Η έξοδος ακολουθεί την είσοδο Ακολουθιακή Λογική 8 4
Μανδαλωτής Ελεγχόμενης Ανασύζευξης Ο μανδαλωτής ( latch) είναι κύκλωμα μνήμης ευαίσθητο στη στάθμη (λογική τιμή) του σήματος ρολογιού. Στη μία στάθμη είναι διαφανής και η τιμή της εισόδου περνάει αυτόματα στους κόμβους και του κυκλώματος. Στην δεύτερη στάθμη ο μανδαλωτής εμφανίζει μνήμη και οι εσωτερικοί κόμβοι δεν επηρεάζονται από την είσοδο. Ητιμήστονκόμβο είναι η τελευταία τιμή της εισόδου πριν το ρολόι εγκαταλείψει την στάθμη διαφάνειας. Ο αναστροφέας ανασύζευξης μπορεί να σχεδιαστεί με μικρές τιμές για τα k p,n των τρανζίστορ του. Σε αυτή την περίπτωση η πύλη διέλευσης που ακολουθεί μπορεί να καταργηθεί. Ακολουθιακή Λογική 9 Μανδαλωτής Τρισταθούς Ανασύζευξης (I) =1 V V V =0 =0 =1 Ακολουθιακή Λογική 10 5
Μανδαλωτής Τρισταθούς Ανασύζευξης (II) =0 V V V =0 =0 =1 Ακολουθιακή Λογική 11 Μανδαλωτής Τρισταθούς Ανασύζευξης (III) V V V Ισοδύναμη αναπαράσταση Ακολουθιακή Λογική 12 6
Μανδαλωτής Διαφορικής Εισόδου V V Ισοδύναμο Κύκλωμα Ακολουθιακή Λογική 13 Μεταευστάθεια Metastability & Έστω ότι τα σήματα και ενεργοποιούνται σχεδόν σύγχρονα με το ρολόι. Τότε κατά τη μετάβαση του ρολογιού τα σήματα αυτά θα βρεθούν κάποια χρονική στιγμή να έχουν την ίδια τιμή τάσης μεταξύ τους. Έτσι είναι πιθανό κατά το τέλος της μετάβασης του ρολογιού οι κόμβοι και να έχουν πολύ κοντινές τιμές, κοντά στο κατώφλι μετάβασης V M (π.χ. V /2) που είναι το μεταευσταθές σημείο λειτουργίας. Ως αποτέλεσμα το κύκλωμα θα χρειαστεί μεγάλο χρόνο για να κλειδώσει στην τελική του κατάσταση, ενώ η κατάσταση αυτή ενδεχομένως να εξαρτάται από τυχαίους παράγοντες όπως ο θόρυβος! V M Ακολουθιακή Λογική 14 t 7
Παράμετροι Μανδαλωτών PW m T t setup t pcq t hold Hold Time (t hold ) = Χρόνος Συγκράτησης t pdq Setup Time (t setup ) = Χρόνος Ενεργοποίησης Αποκατάστασης Ακολουθιακή Λογική 15 Flip FlopsFlops Ακολουθιακή Λογική 16 8
Flip Flop Flop Αφέντη Σκλάβου Μανδαλωτής Χρήση 2 Latch σε σειρά Τα Flip Flop είναι ακμοπυροδότητα στοιχεία μνήμης. Δηλ. είναι ευαίσθητα σε κάποια ακμή και όχι στη στάθμη του ρολογιού. Στη συγκεκριμένη ακμή τα δεδομένα στην είσοδο περνούν στην έξοδο, γεγονός που δενμπορείνασυμβείσεοποιαδήποτεάλλη χρονική στιγμή. Flip Flop Αφέντη Σκλάβου (Master Slave Flip Flop) M Master Latch Slave Latch Στατικό Flip Flop Ακολουθιακή Λογική 17 Λειτουργία Flip FlopFlop Αφέντη Σκλάβου = 0 low = 1 high Ακολουθιακή Λογική 18 9
Flip Flop Flop με Πολυπλέκτες Στατικό Flip Flop Αφέντης Σκλάβος 1 MUX 0 0 MUX 1 Ακολουθιακή Λογική 19 Παράμετροι Flip Flop Flop Setup Time (t setup ) = Χρόνος Ενεργοποίησης Αποκατάστασης Hold Time (t hold ) = Χρόνος Συγκράτησης T t setup t hold t pcq t setup Ακολουθιακή Λογική 20 10
Χρόνοι Ενεργοποίησης και Συγκράτησης Χρόνος Ενεργοποίησης Χρόνος Συγκράτησης Έγκυρα δεδομένα εισόδου 1 2 Μη έγκυρα δεδομένα εισόδου 3 Μη έγκυρα δεδομένα εισόδου t Ακολουθιακή Λογική 21 Χρονισμός Λογικής Βασισμένης σε Flip FlopFlop Συνδυαστική Λογική T t hold t setup t setup Πρέπει να ισχύει: και t pcq T t pcq + t plogic + t setup t hold t cdflip flop + t cdlogic t plogic t plogic = καθυστέρηση διάδοσης της λογικής στη χειρότερη περίπτωση t cdflip flop /t cdlogic = ελάχιστη καθυστέρηση ή καθυστέρηση μόλυνσης (contamination delay) Ακολουθιακή Λογική flip flop/ λογικής 22 11
Flip FlopFlop Πυλών Διέλευσης, Μιας Φάσης Δυναμικό Flip Flop ' ' Overlap Έγκυρα Ρολόγια Μη Έγκυρα Ρολόγια Clock Skew t V Αποφυγή clock skew Ακολουθιακή Λογική 23 C 2 MOS Flip FlopFlop Μίας Φάσης Δυναμικό Flip Flop V V t Ακολουθιακή Λογική 24 12
Flip FlopFlop Πυλών Διέλευσης, Δύο Φάσεων Δυναμικό Flip Flop Φ 1 Φ 2 Φ 1 Φ 2 Φ 1 Φ 2 Φ 1 Επικάλυψη Έγκυρα Ρολόγια Φ 2 Μη Έγκυρα Ρολόγια Clock Skew t Ακολουθιακή Λογική 25 Γεννήτρια μη Επικαλυπτόμενων Φάσεων Φ 1 Φ 2 Ακολουθιακή Λογική 26 13
Flip Flop Flop Δύο Φάσεων με Επίτρεψη Δυναμικό Flip Flop L Φ 1 Φ 2 Φ 1 Φ 2 L L επίτρεψη Ακολουθιακή Λογική 27 C 2 MOS Flip FlopFlop Δύο Φάσεων Δυναμικό Flip Flop V V Φ 1 Φ 2 Φ 1 Φ 2 Φ 1 Φ 2 t Ακολουθιακή Λογική 28 14
Δομές Διοχέτευσης (Ι) (Pipelines) a REG Αρχικό Κύκλωμα a REG Κύκλωμα με Δομή Διοχέτευσης + log Out + REG R REG R REG R log REG R Out b REG b REG T min, org t c q t p _ add t p _ abs t p _ log tsu T min, pipe t c q max t p _ add, t p _ abs, t p _ log tsu ό t p _ add T t min,pipe p _ abs T t min,org p _ log 3 Ακολουθιακή Λογική 29 Δομές Διοχέτευσης (ΙΙ) Logic Logic Logic Logic 0 0 1 2 3 4 4 Stage Stage Stage Stage IF I EX MEM r Register Register r 1 Register r 2 Register r 3 r Register Κύκλοι ρολογιού IF I EX MEM IF I EX MEM IF I EX MEM IF I EX MEM Εντολές IF I EX Ακολουθιακή Λογική 30 15
Παροχή Διανομή Ρολογιού (Ι) Τμήμα Λογικής 1 Τμήμα Λογικής 2 Μονωτική Βαθμίδα (Buffer) Δένδρο διάδοσης ρολογιού Τμήμα Λογικής 3 Τμήμα Λογικής 4 Τμήμα Λογικής 5 Τμήμα Λογικής 6 Τμήμα Λογικής 7 Τμήμα Λογικής 8 Τμήμα Λογικής 9 Ακολουθιακή Λογική 31 Παροχή Διανομή Ρολογιού (ΙΙ) Υποπεριοχή Ρολογιού Μονωτική Βαθμίδα (Buffer) Ακολουθιακή Λογική 32 16
Γεννήτορες Ρολογιού Βρόχοι Κλειδωμένης Ανάδρασης Phase Locked Loops (PLLs) εξ Ανιχνευτής Φάσης Up own Αντλία Φορτίου A Φίλτρο VCO Ταλαντωτής =n Ελεγχόμενος εξ από Τάση Διαιρέτης n Γένεση ρολογιού υψηλής συχνότητας σε συγχρονισμό με ένα ρολόι αναφοράς εξ χαμηλής συχνότητας. Η συνολική ασάφεια του ρολογιού είναι ίση με (jitter + skew). Ακολουθιακή Λογική 33 Παροχή Διανομή Ρολογιού (ΙIΙ) Ι) Μονωτική Βαθμίδα (Buffer) εξ PLL Ακολουθιακή Λογική 34 17
Clock Jitter Clock Skew Clock Jitter Ως clock jitter ονομάζουμε την ασάφεια στην άφιξη των ακμών του σήματος ρολογιού η οποία οφείλεται εγγενώς στο σύστημα παραγωγής του ρολογιού (π.χ. PLL). Clock Skew Ως clock skew ονομάζουμε την χρονική απόκλιση του σήματος ρολογιού η οποία οφείλεται στο σύστημα διανομής του ρολογιού. Ακολουθιακή Λογική 35 Απλής Φάσης Χρονισμός Flip FlopFlop Όριο κύκλου ρολογιού Είσοδοι Flip Flops Στατική Συνδυαστική Λογική Flip Flops Έξοδοι T C t pcq Κύκλος Ρολογιού t setup t skew T logic Διαθέσιμος χρόνος της λογικής για υπολογισμό: T logic C t pcq t setup t skew C overhead T overhead Ακολουθιακή Λογική 36 18
Διπλής Φάσης Χρονισμός Μανδαλωτών I Μνήμη μανδαλωτή στο 0! Όριο κύκλου ρολογιού Είσοδοι Latches Συνδυαστική Λογική 1 Latches Συνδυαστική Λογική 2 Latches Έξοδοι B T C Κύκλος Ρολογιού B T logic1 t setup t skew Κακή T Επιλογή nonoverlap Χρονισμού! T logic2 T Διαθέσιμος χρόνος της λογικής για υπολογισμό: logic logic1 logic2 C 2t pdq 2t setup 2t skew C overhead Μη αποδεκτή λύση! Ακολουθιακή Λογική 37 Διπλής Φάσης Χρονισμός Μανδαλωτών II Μνήμη μανδαλωτή στο 0! Είσοδοι B B Latches T nonoverlap Στατική Συνδυαστική Λογική 1 T C Κύκλος Ρολογιού Όριο κύκλου ρολογιού Latches Στατική Συνδυαστική Λογική 2 Latches Έξοδοι t pdq t pdq Σωστή Επιλογή Χρονισμού! T logic1 T logic2 Διαθέσιμος χρόνος της λογικής για υπολογισμό: T logic logic1 logic2 C 2t pdq C overhead Ακολουθιακή Λογική 38 19
Χρονισμός Παλμικών Μανδαλωτών Μνήμη μανδαλωτή στο 0! Όριο κύκλου ρολογιού Είσοδοι Latches Στατική Συνδυαστική Λογική Latches Έξοδοι T C t pcq t setup t skew Κύκλος Ρολογιού t pw T logic Διαθέσιμος χρόνος της λογικής για υπολογισμό: T logic C t pcq t setup tpw tskew TC overhead Ακολουθιακή Λογική 39 NORA CMOS Σχεδίαση (Ι) V V V V nmos network N1 pmos network nmos network N3 N4 N2 NORA Λογική C 2 MOS Latch Λογική Μανδαλωτής =0 Προφόρτιση Μνήμη Περιοχή =1 Υπολογισμός Διαφάνεια Ακολουθιακή Λογική 40 20
NORA CMOS Σχεδίαση (ΙΙ) V V V V nmos network N1 pmos network nmos network N3 N4 N2 NORA Λογική C 2 MOS Latch Λογική Μανδαλωτής =1 Προφόρτιση Μνήμη Περιοχή =0 Υπολογισμός Διαφάνεια Ακολουθιακή Λογική 41 Δομές Διοχέτευσης NORA CMOS... Περιοχή Περιοχή Περιοχή... 1 0 Υπολογισμός Διαφάνεια Προφόρτηση Μνήμη Υπολογισμός Διαφάνεια Προφόρτηση Μνήμη Υπολογισμός Διαφάνεια Προφόρτηση Μνήμη Χ ρ ό ν ο ς Υπολογισμός Διαφάνεια Προφόρτηση Μνήμη Υπολογισμός Διαφάνεια Ακολουθιακή Λογική 42 21
Συγχρονισμός Ρολογιών (Ι) Προβλήματα συγχρονισμού εξ αιτίας: πολλαπλών, διαφορετικών, ρολογιών σε ξεχωριστές περιοχές του ολοκληρωμένου ασύγχρονων σχεδιασμών μεικτών (σύγχρονων ασύγχρονων) σχεδιασμών σε ένα ολοκληρωμένο Το πρόβλημα είναι πιο έντονο στις περιπτώσεις σχεδιασμών συστημάτων σε ένα ολοκληρωμένο (system on a chip SOC) όπου πυρήνες (cores IP blocks) διαφόρων σχεδιαστών, με διαφορετικές ανάγκες χρονισμού (συχνότητες ρολογιών), πρέπει να συνδυαστούν και να συνλειτουργήσουν (να διασυνδεθούν) στοίδιοολοκληρωμένο. Ακολουθιακή Λογική 43 Συγχρονισμός Ρολογιών (ΙΙ) Φ1 IP-1 IP-2 Φ2 Φ1 Φ2 t Ακολουθιακή Λογική 44 22
Συγχρονισμός Ρολογιών (ΙΙΙ) IP 1 IP 2 IP 1 IP 2 Φ1 Φ2 Φ1 Φ2 Δύσκολη η αποφυγή της καταστρατήγησης των περιορισμών στους χρόνους αποκατάστασης (setup time) και συγκράτησης (hold time) και κατά συνέπεια της εμφάνισης φαινομένων μεταευστάθειας στα στοιχεία μνήμης κατά την επικοινωνία μεταξύ των δύο κυκλωμάτων. Ακολουθιακή Λογική 45 Συγχρονισμός Ρολογιών (ΙV) IP 1 IP 2 Φ1 MUX Πιθανή αντιμετώπιση: Ανίχνευση συμφασικών ρολογιών. Αν ναι δειγματοληψία με καθυστερημένο ρολόι Φ2. Φ2 Φ1 Φ2 elay Ανιχνευτής Φάσης Ακολουθιακή Λογική 46 23