ΚΥΚΛΩΜΑΤΑ VLSI Ακολουθιακή Λογική Κεφάλαιο 7 ο Γ. Τσιατούχας ΚΥΚΛΩΜΑΤΑ VLSI Διάρθρωση 1. Δισταθή κυκλώματα Μεταστάθεια 2. Μανδαλωτές 3. Flip Flops Flops 4. Δομές διοχέτευσης 5. Διανομή ρολογιού 6. Συγχρονισμός ρολογιών VLSI Technology 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 Θετικός Μανδαλωτής Μανδαλωτής σε κατάσταση μνήμης Μανδαλωτής σε διαφανή κατάσταση Μανδαλωτής σε κατάσταση μνήμης k ευσταθές Η έξοδος ακολουθεί την είσοδο ευσταθές Η έξοδος ακολουθεί την είσοδο Ακολουθιακή Λογική 8 4
Μανδαλωτής Ελεγχόμενης Ανασύζευξης Οι μανδαλωτές ( latches) είναι κυκλώματα μνήμης ευαίσθητα στη στάθμη (τιμή) του σήματος ρολογιού. Στη μία στάθμη είναι διαφανείς και η τιμή της εισόδου περνάει αυτόματα στους κόμβους και του κυκλώματος. Στην δεύτερη στάθμη το κύκλωμα εμφανίζει μνήμη και οι εσωτερικοί κόμβοι δεν επηρεάζονται από την είσοδο. Ητιμήστονκόμβο είναι η τελευταία τιμή της εισόδου πριν το ρολόι εγκαταλείψει την στάθμη διαφάνειας. Ο αναστροφέας ανασύζευξης μπορεί να σχεδιαστεί με μικρές τιμές για τα 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 Αφέντη Σκλάβου Μανδαλωτής Τα Flip Flop είναι ακμοπυροδότητα στοιχεία μνήμης. Δηλ. είναι ευαίσθητα σε κάποια ακμή και όχι στη στάθμη του ρολογιού. Στη συγκεκριμένη ακμή τα δεδομένα στην είσοδο περνούν στην έξοδο, γεγονός που δενμπορείνασυμβείσεοποιαδήποτεάλλη χρονική στιγμή. Χρήση 2 Latch σε σειρά Flip Flop Αφέντη Σκλάβου (Master Slave Flip Flop) 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 hold t setup t setup t t plogic pcq Ακολουθιακή Λογική 20 10
Χρονισμός Λογικής Βασισμένης σε 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/ λογικής Ακολουθιακή Λογική 21 Χρόνοι Ενεργοποίησης και Συγκράτησης Χρόνος Ενεργοποίησης Χρόνος Συγκράτησης Έγκυρα δεδομένα εισόδου 1 2 Μη έγκυρα δεδομένα εισόδου 3 Μη έγκυρα δεδομένα εισόδου t Ακολουθιακή Λογική 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 min, org = t c q ( t p _ add + t p _ abs + t p _ log ) tsu T + + min, pipe = t c q ( t p _ add, t p _ abs, t p _ log ) tsu T + max + αν τότε 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 Τμήμα Λογικής 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 kjitter ονομάζουμε την ασάφεια του σήματος ρολογιού η οποία οφείλεται εγγενώς στο σύστημα παραγωγής του ρολογιού (π.χ. PLL). Clock Skew Ως clock skew ονομάζουμε την ασάφεια του σήματος ρολογιού η οποία οφείλεται στο σύστημα διανομής του ρολογιού. Ακολουθιακή Λογική 35 Απλής Φάσης Χρονισμός Flip FlopFlop Όριο κύκλου ρολογιού Είσοδοι Flip Flops Στατική Συνδυαστική Λογική Flip Flops Έξοδοι T C t pcq Κύκλος Ρολογιού t setup t skew T logic Διαθέσιμος χρόνος της λογικής για υπολογισμό: T logic = T C t pcq t setup t skew = T C T overhead T overhead Ακολουθιακή Λογική 36 18
Διπλής Φάσης Χρονισμός Μανδαλωτών I Μνήμη μανδαλωτή στο 0! Όριο κύκλου ρολογιού Είσοδοι Latch Συνδυαστική Λογική Latch Συνδυαστική Λογική Latch Έξοδοι B T C Κύκλος Ρολογιού t setup t skew B T logic T nonoverlap T logic Ακολουθιακή Λογική 37 Διπλής Φάσης Χρονισμός Μανδαλωτών II Μνήμη μανδαλωτή στο 0! Όριο κύκλου ρολογιού Είσοδοι Latches Στατική Συνδυαστική Λογική Latches Στατική Συνδυαστική Λογική Latches Έξοδοι B T C Κύκλος Ρολογιού t pdq t pdq B T nonoverlap T logic T logic Διαθέσιμος χρόνος της λογικής για υπολογισμό: T logic = T C 2t pdq = T C T overhead Ακολουθιακή Λογική 38 19
Χρονισμός Παλμικών Μανδαλωτών Όριο κύκλου ρολογιού Είσοδοι Latch Στατική Συνδυαστική Λογική Latch Έξοδοι T C t pcq t setup t skew Κύκλος Ρολογιού T logic Διαθέσιμος χρόνος της λογικής για υπολογισμό: T logic = T C t pcq t setup = T C T 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