ΗΜΥ-10: Λογικός Σχεδιασµός Εαρινό Εξάµηνο 005 Κεφάλαιο -ii: Σχεδιασµός Συνδυαστικών Κυκλωµάτων Περίληψη ιαδικασία σχεδιασµού (συν.) Παραδείγµατα µετατροπέων κώδικα Άλλα παραδείγµατα Αντιστοίχιση Τεχνολογίας (Thnology Mpping) Προγραµµατιζόµενες Λογικές Συσκευές (Progrmml Logi Dvis PLDs) Mνήµη µόνο ανάγνωσης (R-Only Mmory -- ROM) λογική διάταξη (Progrmml Logi rry -- PL) διάταξη λογικής (Progrmml rry Logi -- PL) Πανεπιστήµιο Κύπρου Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών MKM - Παραδείγµατα Σχεδιασµού: Μετατροπείς Κώδικα Οι µετατροπείς κώδικα είναι κυκλώµατα που µετατρέπουν πληροφορίες από ένα κώδικα σε ένα άλλο: D-to-Exss- D-to-Svn-Sgmnt Μετατροπέας Κώδικα D-to-Exss- Σχεδιάστε ένα κύκλωµα που µετατρέπει ένα κώδικα D (inry-o Diml) στον ανάλογο Exss- κώδικα. Κώδικας Exss-: εδοµένου ενός δεκαδικού ψηφίου n, ο ανάλογος xss- κώδικας είναι (n+) Παράδειγµα: n=5 n+=8 1000 xss- n=0 n+= 0011 xss- Επιθυµητός κώδικας για δεκαδική αφαίρεση MKM - MKM - 4 Μετατροπέας Κώδικα Χρειαζόµαστε 4 µεταβλητές εισόδου: 1. Α. Β. 4. D και 4 συναρτήσεις εξόδων: 1. W(,,,D). (,,,D). Y(,,,D) 4. Z(,,,D). D D to Exss- W Y Z Ακριβής ιατύπωση Λειτουργίας (Spiitions) MKM - 5 Οι τιµές των εξόδων από την τιµή εισόδου 1010 έως 1111 έχουν τιµές αδιαφορίας (και δεν φαίνονται εδώ). MKM - 6 Κεφάλαιο -ii: Σχεδιασµός Συνδυαστικών Κυκλωµάτων 1
Βελτιστοποίηση µε χρήση Κ-χάρτη (Two-lvl Optimiztion) Οι K-χάρτες κατασκευάζονται χρησιµοποιώντας όρους αδιαφορίας Βελτιστοποίηση ατοµικής συνάρτησης (δυεπίπεδη) MKM - 7 Βελτιστοποίηση συνόλου συναρτήσεων (Multi-lvl Optimiztion) Από τους K-χάρτες έχουµε: W = + + D = + D + D Y = D + D = + D W = + = + D Y = ( D) W = + ( + D) = ( + D) + D Y = ( D) = 1 OR = 1 ND, 1 OR = NOT, ND, 1 OR = 1 NOR MKM - 8 Σχηµατικό ιάγραµµα Άλλο παράδειγµα µετατροπέα κώδικα D-to-Svn-Sgmnt Εµφάνιση Svn-Sgmnt: 7 LEDs (Light Emitting Dios), κάθε µια ελέγχεται από µία είσοδο Το 1 σηµαίνει on, και το 0 o g MKM - 9 MKM - 10 Άλλο παράδειγµα µετατροπέα κώδικα D-to-Svn-Sgmnt Εµφάνιση Svn-Sgmnt: 7 LEDs (Light Emitting Dios), κάθε µια ελέγχεται από µία είσοδο Το 1 σηµαίνει on, και το 0 o Για την εµφάνιση του ψηφίου g Θέστε,,,, g σε 1 Θέστε, σε 0 MKM - 11 D-to-Svn-Sgmnt (συν.) Η είσοδος είναι ένα 4-it D κώδικας 4 είσοδοι (w, x, y, z). Η έξοδος είναι ένα 7-it κώδικας (,,,,,,g) που επιτρέπει στο αντίστοιχο δεκαδικό να εµφανιστεί. Παράδειγµα: Είσοδος: 0000 D Έξοδος: 1111110 (======1, g=0) MKM - 1 g Κεφάλαιο -ii: Σχεδιασµός Συνδυαστικών Κυκλωµάτων
D-to-Svn-Sgmnt (συν.) ιατύπωση Λειτουργίας--Πίνακας Αληθείας Ψηφίο 0 1 4 5 6 7 Γιατί; wxyz 0000 0001 0010 0011 0100 0101 0110 0111 g 1111110 0110000 1101101 1111001 0110011 1011011 011111 111000 Ψηφίο wxyz 1001 1010 1011 1100 1101 1110 1111 g 111011 MKM - 1 8 9 Χή 0; 1000 1111111 Άλλο Παράδειγµα Σχεδιάστε ένα «Συγκριτή Ισοτιµίας» 4ων it Εισόδοι: αριθµοί, 4-it ο κάθε ένας Α(:0) = 1 0 και Β(:0) = 1 0 Εξοδος: F(1 όταν Α=Β, 0 στις άλλες περιπτώσεις) Ευθύς τρόπος σχεδιασµού (εύκολη σκέψη): πίνακας αληθείας µε 8 µεταβλητές εισόδων 8 γραµµές και Quin-Mlusky για βελτιστοποίηση Έµµεσος τρόπος σχεδιασµού: χρήση Ιεραρχίας Ε i = (Α i ) Β i + Α i (Β i ) = i i (E i = 1 εάν Α i i ) E = ( Ε 1 + Ε + Ε + Ε 4 ) MKM - 14 Τεχνολογίες Αντιστοίχισης (Thnology Mpping) Σχεδιαστικό στυλ για Ολοκληρωµένα Βιβλιοθήκες Στοιχείων (ll Lirris) Τεχνολογίες Αντιστοίχισης Πύλες NND βλέπετε διάλεξη 11//05 Πύλες NOR βλέπετε διάλεξη 11//05 Σχεδιαστικό στυλ για Ολοκληρωµένα Πλήρη Προσαρµοσµένο (Full ustom): Γίνετε όλος ο σχεδιασµός του ολοκληρωµένου, µέχρι την πιο µικρή λεπτοµέρεια Ακριβό ικαιολογείτε µόνο για πυκνά (ns), γρήγορα ολοκληρωµένα, µε ευρεία χρήση (υψηλές πωλήσεις) Τυποποιηµένα Στοιχεία (Stnr ll): Κοµµάτια που έχουν σχεδιαστεί από πριν ή είναι κοµµάτια προηγούµενων σχεδιασµών Μεσαίο κόστος Λιγότερο πυκνά και γρήγορα σε σχέση µε τα πλήρη προσαρµοσµένα ιάταξη Πυλών (Gt rry): Τακτικές διατάξεις (rgulr pttrns) από τρανζίστορ πυλών που µπορούν να χρησιµοποιηθούν σε πολλά σχέδια στο ολοκληρωµένο µόνο οι διασυνδέσεις µεταξύ πυλών είναι συγκεκριµένες για το σχέδιο Χαµηλότερο κόστος Λιγότερη πυκνότητα σε σχέση µε τα άλλα MKM - 15 MKM - 16 Βιβλιοθήκες Στοιχείων (ll Lirris) Στοιχείο (ll ) ένα προσχεδιασµένο βασικό (primitiv) µπλοκ Βιβλιοθήκη ένα σύνολο από lls διαθέσιµα για σχεδιασµό, βάση συγκεκριµένης τεχνολογία υλοποίησης Χαρακτηρισµός του ll λεπτοµερή προδιαγραφή του ll για χρήση από τον σχεδιαστή (συχνά βασίζεται στον σχεδιασµό του ll, την υλοποίηση και τις τιµές µετρήσεως του) Τα lls χρησιµοποιούνται για σχεδιασµό ολοκληρωµένων τύπου gt rry, stnr ll, και σε µερικές περιπτώσεις, ull ustom. MKM - 17 Προγραµµατιζόµενες Λογικές Συσκευές (Progrmml Logi Dvis PLDs) Τυποποιηµένα λογικά κυκλώµατα που µπορούν να «προγραµµατιστούν» ανάλογα, έτσι ώστε υλοποιούν συγκεκριµένο κύκλωµα «Προγραµµατισµός» = διαδικασία (Η/W ή S/W) καθορισµού λογικής που θα υλοποιηθεί από ένα PLD MKM - 18 Κεφάλαιο -ii: Σχεδιασµός Συνδυαστικών Κυκλωµάτων
Λογική Γιατί; Γεγονότα (γενικά): Πιο οικονοµική η παραγωγή I σε µεγάλη ποσότητα Πολλοί σχεδιασµοί χρειάζονταν σε µικρή ποσότητα Χρειάζεται ένα I που θα µπορεί να: Παράγετε σε µεγάλη ποσότητα Να παράγει πολλά σχέδια που χρειάζονται µικρές ποσότητες Ένα προγραµµατιζόµενο λογικό κοµµάτι µπορεί να: Κατασκευαστεί σε µεγάλες ποσότητες Προγραµµατιστεί για να υλοποιεί µεγάλο αριθµό διαφορετικών σχεδίων µικρής παραγωγή Προγραµµατιζόµενες Λογικές Επιπρόσθετα Πλεονεκτήµατα Πολλές προγραµµατιζόµενες λογικές συσκευές ilprogrmml, δηλ., µπορούν να προγραµµατιστούν εκτός εργοστασίου παραγωγής Οι πιο πολλές προγραµµατιζόµενες λογικές συσκευές είναι διαγράψιµες (rsl) και ξανά-προγραµµατιζόµενες (rprogrmml). Επιτρέπει ενηµέρωση (upting) µιας συσκευής ή διόρθωση λαθών Επιτρέπει την επαναχρησιµοποίηση της συσκευής για διαφορετικό σχέδιο καλύτερη δυνατή επαναχρησιµοποίηση! Ιδανικές για εργαστήρια µαθήµατος Οι προγραµµατιζόµενες λογικές συσκευές µπορούν να χρησιµοποιηθούν σε ένα πρωτότυπο σχεδιασµό, που µπορεί να υλοποιηθεί για πώληση σε κανονικό Is. Το πρωτότυπο ολοκληρωµένων σχεδίων του Intl Pntium υλοποιήθηκε από ειδικά συστήµατα, βασισµένα σε ένα µεγάλο αριθµό από προγραµµατιζόµενες συσκευές VLSΙ! MKM - 19 MKM - 0 Προγραµµαζόµενες Τεχνολογίες Χρήσεις: Ενώσεις ελέγχου (καλυπτόµενος προγραµµατισµός msk progrmming, us, ntius, στοιχείο µνήµης-singl it) Κτίσιµο πινάκων αναζήτησης (µνήµη) Έλεγχο αλλαγής Τρανζίστορ = το φορτίο φυλάγετε σε µια πύλη τρανζίστορ loting µε διάφορες µεθόδους: ιαγράψιµοτητα Ηλεκτρική ιαγραψιµότητα Flsh (όπως για την µνήµη Flsh) MKM - 1 Χαρακτηριστικά Τεχνολογίας Μόνιµο δεν µπορεί να αφαιρεθεί ούτε και να ξανάπρογραµµατιστεί Καλυπτόµενος προγραµµατισµός Fus ntius Επανα-προγραµµατιζόµενο Προσωρινό (Voltil) Εάν η ισχύς του ολοκληρωµένου χαθεί τότε χάνεται και ο προγραµµατισµός του Στοιχείο µνήµης Singl-it Μη-προσωρινό (Non-Voltil) ιαγράψιµοτητα Ηλεκτρική ιαγραψιµότητα Flsh (όπως την µνήµη Flsh) Flsh MKM - Προγραµµατιζόµενες ιαρθρώσεις Μνήµη Μόνο Ανάγνωσης (ROM) ένας αριθµός από πύλες ND και µια προγραµµατιζόµενη διάταξη πυλών OR ιάταξη Λογικής (PL) µια προγραµµατιζόµενη διάταξη από πύλες ND που τροφοδοτούν µια διάταξη πυλών OR. Λογική ιάταξη (PL) -µια προγραµµατιζόµενη διάταξη από πύλες ND που τροφοδοτούν µια προγραµµατιζόµενη διάταξη πυλών OR. Σύνθετη προγραµµατιζόµενη λογική συσκευή (PLD) /Πεδίο-προγραµµατιζόµενης διάταξη πυλών (FPG) αρκετά πολύπλοκες για να ονοµάζονται rhitturs έστε παράρτηµα του βιβλίου σας για τις προγραµµατιζόµενες λογικές συσκευές VLSI MKM - ιαρθρώσεις ROM, PL και PL ιάταξη ND (αποκωδικοποιητής) () ROM (PROM) διάταξη ND (β) Προγραµµατιζόµενες συσκευές PL διάταξη ND γ) Προγραµµατιζόµενες συσκευές PL διάταξη OR ιάταξη OR διάταξη OR MKM - 4 Κεφάλαιο -ii: Σχεδιασµός Συνδυαστικών Κυκλωµάτων 4
Μνήµη ΜόνοΑνάγνωσης (R-Only Mmory -- ROM) Οι µνήµες µόνο ανάγνωσης (ROM) ή οι προγραµµατιζόµενες ROM (PROM) έχουν: N γραµµές εισόδων, M γραµµές εξόδων, και N κωδικοποιηµένους ελαχιστόρους. Αµετάβλητη διάταξη ND µε N εξόδους που υλοποιούν όλους τους N-litrl ελαχιστόρους. διάταξη OR µε M εξόδους που σχηµατίζουν µέχρι και M αθροίσµατα ελαχιστόρων. Ένα πρόγραµµα για ένα ROM ή PROM είναι ένας πίνακας αληθείας µε πολλαπλό αριθµό εξόδων Εάν έχουµε είσοδο 1 τότε γίνεται µια ένωση (σύνδεση) στον αντίστοιχο ελαχιστόρο για την αντίστοιχη έξοδο Εάν έχουµε 0, δεν γίνεται καµιά ένωση (σύνδεση) Μπορούµε να το δούµε σαν µια µνήµη µε τις εισόδους σαν διευθύνσεις δεδοµένων, άρα ROM ή PROM! ROM -- Παράδειγµα Παράδειγµα: 8 4 ROM (N = είσοδοι, M= 4 έξοδοι) Η διάταξη "ND" είναι ένας απόκωδικοποιητής µε εισόδους και 8 εξόδους που υλοποιεί όλους τους ελαχιστόρους. Η προγραµµατιζόµενη διάταξη "OR χρησιµοποιεί µια κάθετη γραµµή για την αναπαράσταση όλων των εισόδων στην πύλη ΟR. Ένα x στην διάταξη, αντιστοιχεί στην προσάρτηση του ελαχιστόρου στο OR Παράδειγµα R : Για είσοδο (, 1, 0 ) = 001, η έξοδος είναι (F,F,F 1,F 0 ) = 0011. D7 D6 D5 D4 D D 1 D1 0 D0 Τι είναι οι συναρτήσεις F, F, F 1 και F 0 σε σχέση µε του όρους (, 1, 0 )? F F F1 F0 MKM - 5 MKM - 6 ιάταξη Λογικής (Progrmml rry Logi -- PL) Το PL είναι το αντίθετο του ROM, ένα προγραµµατιζόµενο σύνολο από NDs συνδυασµένο µε αµετάβλητα ORs. Μειονέκτηµα: Το ROM εγγυείται την υλοποίηση M συναρτήσεων µε N εισόδους. Το PL µπορεί να έχει λίγες εισόδους (συγκεκριµένες) στις πύλες OR. Πλεονεκτήµατα: Για δεδοµένη εσωτερική πολυπλοκότητα, ένα PL µπορεί να έχει µεγαλύτερα N και M Κάποια PLs έχουν εξόδους που µπορούν να συµπληρωθούν, προσθέτοντας συναρτήσεις POS εν υπάρχουν υλοποιήσεις πολλαπλών επιπέδων στο ROM (χωρίς εξωτερικές ενώσεις από την έξοδο στην είσοδο). Το PL έχει εξόδους από όρους OR σαν εσωτερικούς εισόδους σε όλους τους όρους ND κάνοντας την υλοποίηση κυκλωµάτων πολλαπλών επιπέδων πιο εύκολη. MKM - 7 4-εισόδοι, -εξόδοι PL µε αµετάβλητους όρους OR - εισόδων Ποιες είναι οι εξισώσεις από το F1 µέχρι το F4; PL -- Παράδειγµα F1 = + F = + + F = F4 = Prout 1 trm ND gts inputs 0 1 4 5 6 7 8 9 0 1 4 5 6 7 8 9 MKM - 8 I1 I I I4 4 5 6 7 8 9 10 11 1 F 1 F F F 4 Λογική ιάταξη (Progrmml Logi rry -- PL) Συγκριτικά µε ROM και PL, το PL είναι πιο ευέλικτο αφού έχει ένα προγραµµατιζόµενο σύνολο από NDs συνδυασµένο µε ένα προγραµµατιζόµενο σύνολο από ORs. Πλεονεκτήµατα Ένα PL µπορεί να έχει µεγάλο N και M και έτσι επιτρέπει την υλοποίηση εξισώσεων που είναι µη-πρακτικές για ένα ROM (λόγω του αριθµού των εισόδων, N, που χρειάζεται) Ένα PL αφήνει όλους τους όρους γινοµένου να µπορούν να ενωθούν µε όλες τις εξόδους, ξεπερνώντας έτσι το πρόβληµα των λιγοστών εισόδων στα PL ORs Κάποια PLs έχουν εξόδους που µπορούµε να πάρουµε το συµπλήρωµα τους, προσθέτοντας έτσι συναρτήσεις POS Μειονεκτήµατα Συχνά, ο αριθµός όρων γινοµένου µειώνει την εφαρµογή ενός PL. Η βελτιστοποίηση -επιπέδων κυκλωµάτων µε πολλαπλές εξόδους µειώνει τον αριθµό των όρων γινοµένων σε µια υλοποίηση, βοηθώντας έτσι την προσαρµογή του σε ένα PL. MKM - 9 PL -- Παράδειγµα Ποιες είναι οι εξισώσεις για το F1 και F; Μπορεί το PL να υλοποιήσει τις συναρτήσεις χωρίς τις OR πύλες; 4 0 1 PL -εισόδων, -εξόδων µε µε 4 όρους γινοµένου 1 Fus intt Fus lown MKM - 0 F1 F Κεφάλαιο -ii: Σχεδιασµός Συνδυαστικών Κυκλωµάτων 5