Σύνθεση για χαµηλή κατανάλωση
Κατανάλωση στην CMOS τεχνολογία Vdd Vdd Vdd In Out 0 1 1 0 Gnd Gnd Gnd Λειτουργία αντιστροφέα σε συνάρτηση της εισόδου του. Σύνθεση Χαµηλής Κατανάλωσης 2
Κατανάλωση στην CMOS τεχνολογία Nmos: Αποκοπή Pmos: Γραµµική Στατική κατανάλωση Κατανάλωση ενέργειας µόνο από ρεύµατα διαρροής Χωρητικότητα εξόδου φορτισµένη στο V dd Σύνθεση Χαµηλής Κατανάλωσης 3
Κατανάλωση στην CMOS τεχνολογία Nmos: κόρου Pmos: Γραµµική υναµική κατανάλωση Αποφόρτιση χωρητικότητας εξόδου + Μονοπάτι από V dd G nd Σύνθεση Χαµηλής Κατανάλωσης 4
Κατανάλωση στην CMOS τεχνολογία Nmos, Pmos: στον κόρο Κατανάλωση βραχυκυκλώµατος Αποφόρτιση χωρητικότητας εξόδου + Έντονο µονοπάτι από V dd G nd Σύνθεση Χαµηλής Κατανάλωσης 5
Κατανάλωση βραχυκυκλώµατος Στο διάστηµα V in [V tn, V dd -V tp ] ρέει ρεύµα από τροφοδοσία στην γείωση όπου η κατανάλωση είναι β P = V V 12 ( ) 3 sc DD t t rf T Χρόνος ανόδου καθόδου Περίοδος Κατώφλι Η κατανάλωση βραχυκυκλώµατος µειώνει µε α) την µείωση της τάσης τροφοδοσίας β) την µείωση των χρόνων ανόδου/καθόδου Ικανοί οδηγοί των πυλών απαιτούνται Σύνθεση Χαµηλής Κατανάλωσης 6
υναµική Κατανάλωση Η φόρτιση και εκφόρτιση της χωρητικότητας εξόδου προκαλεί κατανάλωση που λόγω των αντιστάσεων µετατρέπεται σε θερµότητα Για µείωση της κατανάλωσης ενέργειας: Μικρή χωρητικότητα Μικρή τάση τροφοδοσίας Σύνθεση Χαµηλής Κατανάλωσης 2 Pd = CLVDD fp Μικρή συχνότητα εναλλαγών 7
Μείωση Τάσης Τροφοδοσίας Με την µείωση της τάσης τροφοδοσίας µειώνεται και η δυναµική κατανάλωση Τα τελευταία χρόνια η τάση έχει πέσει από 5V σε 1V. Για διατήρηση της απόδοσης µειώνονται και οι τάσεις κατωφλίου Αυξάνονται τα ρεύµατα υπο-κατωφλίου και άρα η στατική κατανάλωση Σύνθεση Χαµηλής Κατανάλωσης 8
I 1 pn Reverse-Bias I 2 Weak Inversion I 4 I 5 Gate- Induced Drain Punchthrough Στατική Κατανάλωση Drain-Induced Barrier- Lowering Effect I 3 Τα ρεύµατα υποκατωφλίου αυξάνονται δραµατικά στις τεχνολογίες υποκατωφλίου και η στατική κατανάλωση προσεγγίζει την δυναµική I 6 Narrowwidth effect I Hot-Carrier 8 Injection I 7 Gate-Oxide Tunneling Σύνθεση Χαµηλής Κατανάλωσης 9
Σύνθεση για χαµηλή κατανάλωση Αρχικά, στόχος της σύθνεσης είναι ήταν η µείωση της επιφάνειας Στην συνέχεια στόχος έγινε και η αύξηση της απόδοσης Σήµερα, στις υποµικρονικές τεχνολογίες η επιφάνεια δεν αποτελεί πρόβληµα Αντίθετα η απόδοση και η χαµηλή κατανάλωση έχουν την µεγαλύτερη σηµασία Μείωση τάσης τροφοδοσίας Μείωση κατανάλωσης και απόδοσης Τεχνικές βελτίωσης απόδοσης Σύνθεση Χαµηλής Κατανάλωσης 12
Σύνθεση για χαµηλή κατανάλωση Λογικοί και Κυκλωµατικοί µετασχηµατισµοί µπορούν να µιεώσουν την δυναµική κατανάλωση ενός κυκλώµατος Στόχος: η µείωση της δραστηριότητας µεταβάσεων των κόµβων του κυκλώµατος Μέσο: η πιθανότητα µετάβασης κάθε σήµατος του κυκλώµατος που υπολογίζεται µε αναλυτικές µεθόδους Σύνθεση Χαµηλής Κατανάλωσης 13
Μετασχηµατισµοί σε επίπεδα αφαίρεσης Έκταση Βελτίωσης Behavioral & Algorithm Level Architectural Level Logic Circuit Technology / Circuits Όσο νωρίτερα γίνονται οι µετασχηµατισµοί τόσο µεγαλύτερη είναι η βελτίωση Σύνθεση Χαµηλής Κατανάλωσης 14
Επίπεδο Συµπεριφοράς Στο επίπεδο συµπεριφοράς µπορούν να γίνουν οι πιο δραστικές επεµβάσεις για την µείωση της κατανάλωσης Σε αυτό το επίπεδο µπορεί να αλλάξει η περιγραφή συµπεριφοράς χωρίς να αλλάξει η λειτουργία του κυκλώµατος (µε σηµαντική βελτίωση της δραστηριότητας σηµάτων) Παράδειγµα: ιαφορικοί Συντελεστές σε Finite Impulse Response Filters Σύνθεση Χαµηλής Κατανάλωσης 15
FIR Filters Αριθµός εισόδων ή µήκος φίλτρου Σήµατα εξόδου διακριτού χρόνου Άµεση µορφή N ιακριτός χρόνος 1 Y = C X j n j n n = 0 Σταθεροί συντελεστές Σήµατα εισόδου διακριτού χρόνου Συνάρτηση Μεταφοράς Για κάθε αποτέλεσµα απιτούνται Ν πολλαπλασιασµοί και Ν-1 προσθέσεις Differential Coefficient Method (DCM) Μείωση πολυπλοκότητας πολλ/µων για µείωση κατανάλωση ενέργειας Σύνθεση Χαµηλής Κατανάλωσης 16
DCM Αλγόριθµοι Απαιτούν µικρότερο υπολογιστικό φόρτο σε σχέση µε την άµεση µορφή Απαιτούν αποθηκευτικά στοιχεία τα οποία καταναλώνουν ενέργεια Y = C X + C X + C X + K C X j 0 j 1 j 1 2 j 2 N 1 j N+ 1 Y = C X + C X + C X + K C X j+ 1 0 j+ 1 1 j 2 j 1 N 1 j N + 2 Y + = C X + + C X + + C X + K C X + j 2 0 j 2 1 j 1 2 j N 1 j N 3 Yj = C0 X j + C1 X j 1+ K CN 1 X j N+ 1 Y = C X + ( C C ) X + ( C C ) X + K ( C C ) X + j+ 1 0 j+ 1 1 0 j 2 1 j 1 N 1 N 2 j N+ 2 + C X + C X + K + C X 0 j 1 j 1 N 2 j N+ 2 Οι πράξεις είναι µικρότερες Έχουν υπολογιστεί τον προηγούµενο κύκλο Σύνθεση Χαµηλής Κατανάλωσης 17
DCM Αλγόριθµοι 1 1 1 ( 1) 1 Ck X j k+ = Ck X j k+ + Ck Ck X j k+ Απαιτούν αποθήκευση σε κάθε κύκλο Μπορούν να µειώσουν το κόστος του πολλαπλασιασµού και άρα επιφάνεια ή/και κατανάλωση Το όφελος αυτής της µετατροπής στο επίπεδο συµπεριφοράς είναι συνήθως µεγαλύτερο από κάθε βελτιστοποίηση σε επόµενο επίπεδο Σύνθεση Χαµηλής Κατανάλωσης 18
Architecture-Driven Voltage Scaling Μείωση της κατανάλωσης επιτυγχάνεται µε την µείωση του V dd Η απόδοση των κυκλωµάτων µειώνει µε την µείωση του V dd Η µείωση των διαστάσεων και της τάσης κατωφλίου επανακτά µέρος της απόδοσης Αρχιτεκτονικοί µετασχηµατισµοί µπορούν να βελτιώσουν παραπέρα την απόδοση Οι καθυστερήσεις διασυνδέσεων δεν ακολουθούν την βελτίωση απόδοσης στις υποµικρονικές τεχνολογίες Παράλληλες Αρχιτεκτονικές Pipeline Σύνθεση Χαµηλής Κατανάλωσης 19
Παράδειγµα παραλληλοποίησης P = C V dd 2 f Έστω µείωση της τάσης τροφοδοσίας κατά 40% Comparator Η ταχύτητα µειώνεται κατά 50% Για διατήρηση της απόδοσης απαιτείται η παράλληλη χρήση δύο δοµών Σύνθεση Χαµηλής Κατανάλωσης 20
1/T A 1/T B Παράδειγµα παραλληλοποίησης + V dd = 0.58 V dd C = 2.15 C f = 0.5 f Αύξηση της χωρητικότητας στο διπλάσιο + χωρητικότητα επιπλέον διασυνδέσεων C 1/T P = 2 par C V dd C V f f = A (2.15C) (0.58V) 2 0.5f = 0.36 P 2/T 2/T B + 1/T Μειονέκτηµα: ο υπερδιπλασιασµός της επιφάνειας C 2/T Σύνθεση Χαµηλής Κατανάλωσης 21
Παράδειγµα παραλληλοποίησης Το κρίσιµο µονοπάτι µειώνεται στο µέγιστο µεταξύ του συγκριτή και του αθροιστή αντί του αθροίσµατος τους Comparator Έστω T adder = T compare τότε η ταχύτητα διπλασιάζεται P par = (1.15C) (0.58V) 2 f = 0.39 P Επιπλέον λόγω µείωσης βάθους µειώνονται και τα glitches Έστω για διπλάσια ταχύτητα ότι η τάση τροφοδοσίας µειώνεται από 5 σε 2.9V και η χωρητικότητα αυξάνει κατά 15% λόγω των επιπλέον καταχωρητών Σύνθεση Χαµηλής Κατανάλωσης 22
Μείωση τελεστών Η µείωση των λειτουργιών οδηγεί σε µείωση κατανάλωσης αφού µειώνει την συνολική χωρητικότητα Χ Υ = Χ 2 +ΑΧ+Β * Χ Χ + + * Β Χ + Υ Α Υ = Χ(Χ+Α)+Β * + Χ Β Υ Α Έχουν ίδιο µήκος κρίσιµου µονοπατιού Το δεξιό δέντρο έχει έναν πολλαπλασιασµό λιγότερο Σύνθεση Χαµηλής Κατανάλωσης 23
Χ Χ Μείωση τελεστών Σε πολλές περιπτώσεις το κρίσιµο µονοπάτι µεγαλώνει Α Υ = Χ 3 +ΑΧ 2 +ΒΧ+Γ Υ = ((Χ+A)X+B)Χ+Γ Χ * + Υ Α * + + * * Χ + + Β Χ Β Χ * * Γ Χ Γ + 4 πολλαπλ., 3 αθροισ. 2 πολλαπλ., 3 αθροισ. Σύνθεση Χαµηλής Κατανάλωσης 24 Υ
Αλλαγή τελεστών Κάποιες λειτουργίες έχουν µεγαλύτερη κατανάλωση από άλλες. Πχ. η πρόσθεση είναι πιο φθηνή από τον πολλαπλασιασµό σε επιφάνεια και κατανάλωση Xr Ar Xi Ai Xr Ai Xi Ar * * * * - + Υr Υi 4 x, 2 +/- O πολλαπλ. αντικαταστάθηκε µε πρόσθεση Xr Xi Ai-Ar Xr Ar + Ai+Ar * * * 3x, 3+/- + - Γ Υi Υr Σύνθεση Χαµηλής Κατανάλωσης 25
Precomputation-based Optimization Ο φθηνός υπολογισµός τιµών περιπτώσεων εισόδων µπορεί να χρησιµοποιηθεί για την απενεργοποίηση του κυκλώµατος και την µείωση των µεταβάσεων υπολογισµού Συναρτήσεις πρόβλεψης f 1 = 1 Z = 1 f 2 = 1 Z = 0 Σύνθεση Χαµηλής Κατανάλωσης 26
Συγκριτής n-bit Όταν τα πιο σηµαντικά δυαδικά ψηφία διαφέρουν η έξοδος υπολογίζεται ανεξάρτητα από τα υπόλοιπα δυαδικά ψηφία Συναρτήσεις πρόβλεψης: f = A B C D 1 n 1 n 1 n 1 n 1 f = A B C D 2 n 1 n 1 n 1 n 1 Μειώνουν τις µεταβάσεις του συγκριτή δραστικά (για 50% πιθ. εισόδου = 1 η µείωση κατανάλωσης είναι 50%) Σύνθεση Χαµηλής Κατανάλωσης 27
Shannon Expansion Μπορεί να εφαρµοστεί αναδροµικά Για σύνολο εισόδων Χ = {x 1, x 2,, x n } Z = xz j x + xz j j x j Ανάλογα µε την τιµή του x j µόνο ο ένας παράγοντας υπολογίζεται και η κατανάλωση µειώνεται Σύνθεση Χαµηλής Κατανάλωσης 28
Βελτιστοποίηση Λογικού Επιπέδου Λογικό Επίπεδο Βελτιστοποίηση Συνδ. Λογικής Βελτιστοποίηση Λογικής Ελέγχου Χρήση πιθανοτήτων σηµάτων για εύρεση κοινών υποεκφράσεων για µείωση συνολικής χωρητικότητας που φορτίζεται-αποφορτίζεται Χρήση πιθανοτήτων σηµάτων για καθορισµό των καταστάσεων Σύνθεση Χαµηλής Κατανάλωσης 29
Finite State Machines p jm = m 1 p 12 + p 13 + p 14 = 1 Απόσταση Hamming: H(S i, S j ) = F(S i S j ) Κατανάλωση ισχύος: 1 2 Power avg = V dd C i D i 2 i () Αριθµός µεταβάσεων στον κόµβο i Σύνθεση Χαµηλής Κατανάλωσης 30
Finite State Machines Προφανώς p 51 =p 61 =p 21 = 1 Έστω p 12 >> p 13, p 12 >> p 14 Η πιθανότητα µετάβασης από την S 1 στην S 2 και αντίστροφα είναι µεγάλη Η απόσταση Hamming των S 1, S 2 πρέπει να είναι ελάχιστη για ελαχιστοποίηση µεταβάσεων Σύνθεση Χαµηλής Κατανάλωσης 31
Finite State Machines Παράδειγµα: a) S 1 =0000, S 2 =1000 H(S 1, S 2 ) = 1 b) S 1 =0000, S 2 =1111 H(S 1, S 2 ) = 4 Μοντελοποίηση Προβλήµατος: Στην περίπτωση (α) µόνο ένα flip flop θα µεταβληθεί και θα ελαχιστοποιηθεί το πλήθος των µεταβάσεων που θα διαδοθεί στο κύκλωµα P ij = P(S i S j ), L ij = {τιµές εισόδων x ij } p = W W x = ij x x L ij P x εαν x=1 1-P x εαν x=0 1 εαν x = αδιάφορη Objective function Ελαχιστοποίηση γ µε γ = over all edges (, ) ij i j p H S S Πχ. Simulated Annealing Σύνθεση Χαµηλής Κατανάλωσης 32
FSM: an example Έστω FSM που αναγνωρίζει πέντε διαδοχικούς άσσους οι οποίοι έρχονται µε πιθανότητα ½ ο κάθε ένας Coding 1: γ = 10 Coding 2: γ = 5.5 Το Coding 2 δίνει 15% λιγότερη κατανάλωση από το 1 ο. Σύνθεση Χαµηλής Κατανάλωσης 33
Signal Probabilities at State Inputs Οι Signal Probabilities των εισόδων ενός κυκλώµατος δίνονται και των καταστάσεων του υπολογίζονται αναλυτικά ή µε εξοµοίωση Σύνθεση Χαµηλής Κατανάλωσης 34
Αναπαράσταση πολλαπλών επιπέδων Στην ελαχιστοποίηση πολλαπλών επιπέδων χρησιµοποιούνται Boolean Networks: 1. Κάθε κόµβος αντιστοιχεί σε µεταβλητή 2. Κάθε κόµβος εµπεριέχει µία συνάρτηση 3. Υπάρχει κατευθυνόµενη σύνδεση από τον κόµβο f στον g εαν η συνάρτηση ρη ητου g περιέχει την µεταβλητή βηή που αντιστοιχεί στον κόµβο f Οι διαδικασίες της παραγοντοποίησης και αντικατάστασης (factoring substitution) που χρησιµοποιούνται για βελτιστοποίηση επιφάνειας απόδοσης προσαρµόζονται για τον στόχο της κατανάλωσης Σύνθεση Χαµηλής Κατανάλωσης 35
Αναπαράσταση πολλαπλών επιπέδων Έστω g = g(u 1, u 2,, u k ) (k 1) µία κοινή υποέκφραση των f 1, f 2,, f L (L 2) Έστω v 1, v 2,, v M οι εσωτερικοί κόµβοι της g. Όταν παραγοντοποιείται η g από τις f 1, f 2,, f L,τα signal probabilities και τα signal activities δεν αλλάζουν αλλά αλλάζουν οι χωρητικότητες των εξόδων των οδηγών κόµβων των u 1, u 2,, u k που οδηγούν L-1 λιγότερες κόµβους από πριν Α Μείωση στην κατανάλωση: οι οδηγοί των u i οδηγούν L-1 λιγότερες πύλες (άρα αλλάζει ο φόρτος οδήγησης τους) 2 ( L 1 ) V C n D( u ) K dd 0 u k k k = 1 Αριθµός πυλών στον κόµβο u k Χωρητικότητα εξόδου που αντιστοιχεί σε fanout = 1 ραστηριότητα στον κόµβο u k Σύνθεση Χαµηλής Κατανάλωσης 36
Αναπαράσταση πολλαπλών επιπέδων Οι πύλες που αντιστοιχούν στην υπο-έκφραση g οδηγούν τόσους κόµβους όσους και οι υποεκφράσεις που υπήρχαν µη παραγοντοποιηµένες (δεν αλλάζει η κατανάλωση σε αυτή την διάσταση) Β Μείωση στην κατανάλωση: L-1 λιγότερες πύλες έχουν δραστηριότητα 2 ( L 1 ) V C n D( v ) M L-1 λιγότερα αντίγραφα των πυλών v 1, v 2,, v M dd 0 v m m m = 1 Αριθµός πυλών που οδηγουνται από την πύλη v m Χωρητικότητα εξόδου που αντιστοιχεί σε fanout = 1 ραστηριότητα στον κόµβο v m Σύνθεση Χαµηλής Κατανάλωσης 37
Technology Mapping Εύρεση αντιστοίχισης πυλών στους κόµβους του Boolean Network που ελαχιστοποιεί την κατανάλωση Ο δυναµικός προγραµµατισµός µπορεί να χρησιµοποιηθεί για την αντιστοίχηση Power(g, n) = power(g) + [power(a) + power(b)] 0.5fV dd 2 ai C i Από προηγούµενο βήµα Χωρητικότητα εξόδου g a b gate n Είσοδοι a, b ραστηριότητα στον κόµβο Σύνθεση Χαµηλής Κατανάλωσης 38
Κατανάλωση CMOS πυλών ιαφορετικοί συνδυασµοί εισόδων προκαλούν το ίδιο αποτέλεσµα αλλά έχουν διαφορετική κατανάλωση Η χωρητικότητα που αποφορτίζεται x1 x1 διαφέρει x3 x3 σηµαντικά x2 z1 CY+Cz1 Cz1 x2 z1 CY x1 x2 x3 Y x1 x2 x3 Y Αναδιάταξη εισόδων µε βάση την πιθανότητα µετάβασης για µείωση κατανάλωσης x1= x2 = 0 x3 = 1 x1= 0 x2 = x3 = 1 Σύνθεση Χαµηλής Κατανάλωσης 39
Καθορισµός µεγέθους τρανζίστορ Το µέγεθος των τρανζίστορ επηρεάζει την κατανάλωση και την ταχύτητα. Μεγάλα τρανζίστορ έχουν µεγάλη ταχύτητα και µικρό χρόνο µετάβασης Το ρεύµα βραχυκυκλώµατος κατά την µετάβαση µειώνει και άρα και το αντίστοιχο ποσό δυναµικής κατανάλωσης Οι χωρητικότητες αυξάνουν και άρα το αντίστοιχο ποσό της δυναµικής κατανάλωσης αυξάνει. Για την επιλογή των µεγεθών αναλύονται tradeoff και χρησιµοποιούνται αλγόριθµοι βελτιστοποίησης Σύνθεση Χαµηλής Κατανάλωσης 40