ΗΜΥ-210: Λογικός Σχεδιασμός Εαρινό Εξάμηνο 2005 ΗΜΥ 210: Λογικός Σχεδιασμός, Εαρινό Εξάμηνο 2005 Νοε-18 ΗΜΥ-210: Λογικός Σχεδιασμός Εαρινό Εξάμηνο 2005 Κεφάλαιο 3 -ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
ΗΜΥ 210: Λογικός Σχεδιασμός, Εαρινό Εξάμηνο 2005 Νοε-18 Περίληψη Διαδικασία σχεδιασμού (συν.) Παραδείγματα μετατροπέων κώδικα Άλλα παραδείγματα Αντιστοίχιση Τεχνολογίας (Technology Mapping) Προγραμματιζόμενες Λογικές Συσκευές (Programmable Logic Devices – PLDs) Mνήμη μόνο ανάγνωσης (Read-Only Memory -- ROM) Προγραμματιζόμενη λογική διάταξη (Programmable Logic Array -- PLA) Προγραμματιζόμενη διάταξη λογικής (Programmable Array Logic -- PAL) Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Παραδείγματα Σχεδιασμού: Μετατροπείς Κώδικα Παραδείγματα Σχεδιασμού: Μετατροπείς Κώδικα Οι μετατροπείς κώδικα είναι κυκλώματα που μετατρέπουν πληροφορίες από ένα κώδικα σε ένα άλλο: BCD-to-Excess-3 BCD-to-Seven-Segment Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Μετατροπέας Κώδικα BCD-to-Excess-3 Σχεδιάστε ένα κύκλωμα που μετατρέπει ένα κώδικα BCD (Binary-Coded Decimal) στον ανάλογο Excess-3 κώδικα. Κώδικας Excess-3: Δεδομένου ενός δεκαδικού ψηφίου n, ο ανάλογος excess-3 κώδικας είναι (n+3)2 Παράδειγμα: n=5 n+3=8 1000excess-3 n=0 n+3=3 0011excess-3 Επιθυμητός κώδικας για δεκαδική αφαίρεση … Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Μετατροπέας Κώδικα BCD-to-Excess-3 (συν.) Χρειαζόμαστε 4 μεταβλητές εισόδου: 1. Α 2. Β 3. C 4. D και 4 συναρτήσεις εξόδων: 1. W(A,B,C,D) 2. X(A,B,C,D) 3. Y(A,B,C,D) 4. Z(A,B,C,D). BCD to Excess-3 A W B X C Y D Z Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
BCD-to-Excess-3 (συν.) Ακριβής Διατύπωση Λειτουργίας (Specifications) Οι τιμές των εξόδων από την τιμή εισόδου 1010 έως 1111 έχουν τιμές αδιαφορίας (και δεν φαίνονται εδώ). Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων BCD-to-Excess-3 (συν.) Βελτιστοποίηση με χρήση Κ-χάρτη (Two-level Optimization) Οι K-χάρτες κατασκευάζονται χρησιμοποιώντας όρους αδιαφορίας Βελτιστοποίηση ατομικής συνάρτησης (δυεπίπεδη) Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων BCD-to-Excess-3 (συν.) Βελτιστοποίηση συνόλου συναρτήσεων (Multi-level Optimization) W = A + B(C + D) X = B’(C + D) + BC’D’ Y = (C D)’ Z = D’ Από τους K-χάρτες έχουμε: W = A + BC + BD X = B’C + B’D + BC’D’ Y = CD + C’D’ Z = D’ f = C + D = 1 OR W = A + Bf = 1 AND, 1 OR X = B’f + BC’D’ = 3 NOT, 2 AND, 1 OR Y = (C D)’ = 1 XNOR Z = D’ Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
BCD-to-Excess-3 (συν.) Σχηματικό Διάγραμμα Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Άλλο παράδειγμα μετατροπέα κώδικα BCD-to-Seven-Segment 7 LEDs (Light Emitting Diodes), κάθε μια ελέγχεται από μία είσοδο Το 1 σημαίνει “on”, και το 0 “off” a b c e f g d Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Άλλο παράδειγμα μετατροπέα κώδικα BCD-to-Seven-Segment 7 LEDs (Light Emitting Diodes), κάθε μια ελέγχεται από μία είσοδο Το 1 σημαίνει “on”, και το 0 “off” Για την εμφάνιση του ψηφίου “3” Θέστε a, b, c, d, g σε 1 Θέστε e, f σε 0 a b c e f g d Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
BCD-to-Seven-Segment (συν.) Η είσοδος είναι ένα 4-bit BCD κώδικας 4 είσοδοι (w, x, y, z). Η έξοδος είναι ένα 7-bit κώδικας (a, b, c, d, e, f, g) που επιτρέπει στο αντίστοιχο δεκαδικό να εμφανιστεί. Παράδειγμα: Είσοδος: 0000BCD Έξοδος: 1111110 (a=b=c=d=e=f=1, g=0) a f b g e c d Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
BCD-to-Seven-Segment (συν.) Διατύπωση Λειτουργίας--Πίνακας Αληθείας Ψηφίο wxyz abcdefg 0000 1111110 1 0001 0110000 2 0010 1101101 3 0011 1111001 4 0100 0110011 5 0101 1011011 6 0110 X011111 7 0111 11100X0 Ψηφίο wxyz abcdefg 8 1000 1111111 9 1001 111X011 1010 XXXXXXX 1011 1100 1101 1110 1111 Χ ή 0; Γιατί; Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων Άλλο Παράδειγμα Σχεδιάστε ένα «Συγκριτή Ισοτιμίας» 4ων bit Εισόδοι: 2 αριθμοί, 4-bit ο κάθε ένας Α(3:0) = A3A2A1A0 και Β(3:0) = B3B2B1B0 ‘Εξοδος: F (1 όταν Α=Β, 0 στις άλλες περιπτώσεις) Ευθύς τρόπος σχεδιασμού (εύκολη σκέψη): πίνακας αληθείας με 8 μεταβλητές εισόδων 28 γραμμές και Quine-McCluskey για βελτιστοποίηση Έμμεσος τρόπος σχεδιασμού: χρήση Ιεραρχίας Εi = (Αi)’Βi + Αi(Βi)’ = Ai Bi (Ei = 1 εάν Αi Bi) E = ( Ε1 + Ε2 + Ε3 + Ε4 )’ Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Τεχνολογίες Αντιστοίχισης (Technology Mapping) Σχεδιαστικό στυλ για Ολοκληρωμένα Βιβλιοθήκες Στοιχείων (Cell Libraries) Τεχνολογίες Αντιστοίχισης Πύλες NAND – βλέπετε διάλεξη 11/2/05 Πύλες NOR – βλέπετε διάλεξη 11/2/05 Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Σχεδιαστικό στυλ για Ολοκληρωμένα Πλήρη Προσαρμοσμένο (Full Custom): Γίνετε όλος ο σχεδιασμός του ολοκληρωμένου, μέχρι την πιο μικρή λεπτομέρεια Ακριβό Δικαιολογείτε μόνο για πυκνά (dense), γρήγορα ολοκληρωμένα, με ευρεία χρήση (υψηλές πωλήσεις) Τυποποιημένα Στοιχεία (Standard cell): Κομμάτια που έχουν σχεδιαστεί από πριν ή είναι κομμάτια προηγούμενων σχεδιασμών Μεσαίο κόστος Λιγότερο πυκνά και γρήγορα σε σχέση με τα πλήρη προσαρμοσμένα Διάταξη Πυλών (Gate Array): Τακτικές διατάξεις (regular patterns) από τρανζίστορ πυλών που μπορούν να χρησιμοποιηθούν σε πολλά σχέδια στο ολοκληρωμένο – μόνο οι διασυνδέσεις μεταξύ πυλών είναι συγκεκριμένες για το σχέδιο Χαμηλότερο κόστος Λιγότερη πυκνότητα σε σχέση με τα άλλα 2 Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Βιβλιοθήκες Στοιχείων (Cell Libraries) Στοιχείο (Cell )– ένα προσχεδιασμένο βασικό (primitive) μπλοκ Βιβλιοθήκη – ένα σύνολο από cells διαθέσιμα για σχεδιασμό, βάση συγκεκριμένης τεχνολογία υλοποίησης Χαρακτηρισμός του Cell – λεπτομερή προδιαγραφή του cell για χρήση από τον σχεδιαστή (συχνά βασίζεται στον σχεδιασμό του cell, την υλοποίηση και τις τιμές μετρήσεως του) Τα Cells χρησιμοποιούνται για σχεδιασμό ολοκληρωμένων τύπου gate array, standard cell, και σε μερικές περιπτώσεις, full custom. Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Προγραμματιζόμενες Λογικές Συσκευές (Programmable Logic Devices—PLDs) Τυποποιημένα λογικά κυκλώματα που μπορούν να «προγραμματιστούν» ανάλογα, έτσι ώστε υλοποιούν συγκεκριμένο κύκλωμα «Προγραμματισμός» = διαδικασία (Η/W ή S/W) καθορισμού λογικής που θα υλοποιηθεί από ένα PLD Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Προγραμματιζόμενη Λογική – Γιατί; Γεγονότα (γενικά): Πιο οικονομική η παραγωγή IC σε μεγάλη ποσότητα Πολλοί σχεδιασμοί χρειάζονταν σε μικρή ποσότητα Χρειάζεται ένα IC που θα μπορεί να: Παράγετε σε μεγάλη ποσότητα Να παράγει πολλά σχέδια που χρειάζονται μικρές ποσότητες Ένα προγραμματιζόμενο λογικό κομμάτι μπορεί να: Κατασκευαστεί σε μεγάλες ποσότητες Προγραμματιστεί για να υλοποιεί μεγάλο αριθμό διαφορετικών σχεδίων μικρής παραγωγή Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Προγραμματιζόμενες Λογικές Επιπρόσθετα Πλεονεκτήματα Προγραμματιζόμενες Λογικές Επιπρόσθετα Πλεονεκτήματα Πολλές προγραμματιζόμενες λογικές συσκευές field-programmable, δηλ., μπορούν να προγραμματιστούν εκτός εργοστασίου παραγωγής Οι πιο πολλές προγραμματιζόμενες λογικές συσκευές είναι διαγράψιμες (erasable) και ξανά-προγραμματιζόμενες (reprogrammable). Επιτρέπει “ενημέρωση (updating)” μιας συσκευής ή διόρθωση λαθών Επιτρέπει την επαναχρησιμοποίηση της συσκευής για διαφορετικό σχέδιο – καλύτερη δυνατή επαναχρησιμοποίηση! Ιδανικές για εργαστήρια μαθήματος Οι προγραμματιζόμενες λογικές συσκευές μπορούν να χρησιμοποιηθούν σε ένα πρωτότυπο σχεδιασμό, που μπορεί να υλοποιηθεί για πώληση σε κανονικό ICs. Το πρωτότυπο ολοκληρωμένων σχεδίων του Intel Pentium υλοποιήθηκε από ειδικά συστήματα, βασισμένα σε ένα μεγάλο αριθμό από προγραμματιζόμενες συσκευές VLSΙ! Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Προγραμμαζόμενες Τεχνολογίες Χρήσεις: Ενώσεις ελέγχου (καλυπτόμενος προγραμματισμός–mask programming, fuse, antifuse, στοιχείο μνήμης-Single bit) Κτίσιμο πινάκων αναζήτησης (μνήμη) Έλεγχο αλλαγής Τρανζίστορ = το φορτίο φυλάγετε σε μια πύλη τρανζίστορ “floating” με διάφορες μεθόδους: Διαγράψιμοτητα Ηλεκτρική Διαγραψιμότητα Flash (όπως για την μνήμη Flash) Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Χαρακτηριστικά Τεχνολογίας Μόνιμο – δεν μπορεί να αφαιρεθεί ούτε και να ξανά-προγραμματιστεί Καλυπτόμενος προγραμματισμός Fuse Antifuse Επανα-προγραμματιζόμενο Προσωρινό (Volatile) – Εάν η ισχύς του ολοκληρωμένου χαθεί τότε χάνεται και ο προγραμματισμός του Στοιχείο μνήμης Single-bit Μη-προσωρινό (Non-Volatile) Διαγράψιμοτητα Ηλεκτρική Διαγραψιμότητα Flash (όπως την μνήμη Flash) Flash Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Προγραμματιζόμενες Συσκευές Μνήμη Μόνο Ανάγνωσης (ROM) – ένας αριθμός από πύλες AND και μια προγραμματιζόμενη διάταξη πυλών OR Προγραμματιζόμενη Διάταξη Λογικής (PAL)Ò – μια προγραμματιζόμενη διάταξη από πύλες AND που τροφοδοτούν μια διάταξη πυλών OR. Προγραμματιζόμενη Λογική Διάταξη (PLA) - μια προγραμματιζόμενη διάταξη από πύλες AND που τροφοδοτούν μια προγραμματιζόμενη διάταξη πυλών OR. Σύνθετη προγραμματιζόμενη λογική συσκευή (CPLD) /Πεδίο-προγραμματιζόμενης διάταξη πυλών (FPGA) – αρκετά πολύπλοκες για να ονομάζονται “architectures” – Δέστε παράρτημα του βιβλίου σας για τις προγραμματιζόμενες λογικές συσκευές VLSI Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Προγραμματιζόμενες Συσκευές (συν.) Χωρίζονται, συνήθως, σε 2 μέρη: (1) Διάταξη AND Επίσης, (2) Διάταξη OR I1 I2 … In . . . I1 F I2 F A A x x x In Α’ F = I1∙I2∙In I1 I2 … In . . . I1 F F Α’ A x x In F = I1 + In Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων ROM, PAL και PLA Προγραμματιζό-μενες Ενώσεις Είσοδοι Διάταξη AND (αποκωδικοποιητής) Προγραμματιζόμενη διάταξη OR Έξοδοι (a) Προγραμματιζόμενη ROM (PROM) Προγραμματιζό-μενες Ενώσεις Είσοδοι Προγραμματιζόμενη διάταξη AND Διάταξη OR Έξοδοι (β) Προγραμματιζόμενες συσκευές PAL Προγραμματιζό-μενες Ενώσεις Προγραμματιζό-μενες Ενώσεις Είσοδοι Προγραμματιζόμενη διάταξη AND Προγραμματιζόμενη διάταξη OR Έξοδοι γ) Προγραμματιζόμενες συσκευές PLA Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Μνήμη Μόνο Ανάγνωσης (Read-Only Memory -- ROM) Οι μνήμες μόνο ανάγνωσης (ROM) ή οι προγραμματιζόμενες ROM (PROM) έχουν: N γραμμές εισόδων, M γραμμές εξόδων, και 2N κωδικοποιημένους ελαχιστόρους (ή διευθύνσεις). Αμετάβλητη διάταξη AND με 2N εξόδους που υλοποιούν όλους τους N-literal ελαχιστόρους (συνήθως με Decoder). Προγραμματιζόμενη διάταξη OR με M εξόδους που σχηματίζουν μέχρι και M αθροίσματα ελαχιστόρων. Ένα πρόγραμμα για ένα ROM ή PROM είναι ένας πίνακας αληθείας με πολλαπλό αριθμό εξόδων. Εάν έχουμε είσοδο 1 τότε γίνεται μια ένωση (σύνδεση) στον αντίστοιχο ελαχιστόρο για την αντίστοιχη έξοδο Εάν έχουμε 0, δεν γίνεται καμιά ένωση (σύνδεση) Μπορούμε να το δούμε σαν μια μνήμη με τις εισόδους σαν διευθύνσεις δεδομένων, άρα ROM ή PROM! Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
ΗΜΥ 210: Λογικός Σχεδιασμός, Εαρινό Εξάμηνο 2005 ROM -- Παράδειγμα ΗΜΥ 210: Λογικός Σχεδιασμός, Εαρινό Εξάμηνο 2005 Νοε-18 Παράδειγμα: 8 X 4 ROM (N = 3 είσοδοι, M= 4 έξοδοι) Η διάταξη "AND" είναι ένας “απόκωδικοποιητής” με 3 εισόδους και 8 εξόδους που υλοποιεί όλους τους ελαχιστόρους. Η προγραμματιζόμενη διά- ταξη "OR“ χρησιμοποιεί μια κάθετη γραμμή για την αναπαράσταση όλων των εισόδων στην πύλη ΟR. Ένα “x” στην διάταξη, αντιστοιχεί στην προσάρτηση του ελαχιστόρου στο OR Παράδειγμα “Read”: Για είσοδο (A2,A1,A0) = 001, η έξοδος είναι (F3,F2,F1,F0 ) = 0011. Τι είναι οι συναρτήσεις F3, F2 , F1 και F0 σε σχέση με του όρους (A2, A1, A0)? D7 D6 D5 D4 D3 D2 D1 D0 A2 A1 A0 A B C F0 F1 F2 F3 X F3 = D7 + D5 + D2 = A2 A0 + A2’ A1 A0’ F2 = D7 + D0 = A2 A1 A0 + A2’ A1’ A0’ F1 = D4 + D1 = A1 A1’ A0’ + A2’ A1’ A0 F0 = D7 + D5 + D1 = A2 A0 + A1’ A0 Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
ROM -- Παράδειγμα (συν.) ΗΜΥ 210: Λογικός Σχεδιασμός, Εαρινό Εξάμηνο 2005 Νοε-18 Δεδομένης μιας ROM μεγέθους 2nxM, μπορούμε να υλοποιήσουμε οποιοδήποτε κύκλωμα μέχρι n εισόδους και Μ εξόδους. Πως; D7 D6 D5 D4 D3 D2 D1 D0 A2 A1 A0 A B C F0 F1 F2 F3 X F3 = D7 + D5 + D2 = A2 A0 + A2’ A1 A0’ F2 = D7 + D0 = A2 A1 A0 + A2’ A1’ A0’ F1 = D4 + D1 = A1 A1’ A0’ + A2’ A1’ A0 F0 = D7 + D5 + D1 = A2 A0 + A1’ A0 Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Προγραμματιζόμενη Διάταξη Λογικής (Programmable Array Logic -- PAL) Το αντίθετο του ROM, ένα προγραμματιζόμενο σύνολο από ANDs συνδυασμένο με αμετάβλητα ORs. Μειονέκτημα: Το ROM εγγυείται την υλοποίηση οποιοδήποτε M συναρτήσεων με N εισόδους. Το PAL είναι περιοριστικό, αφού έχει συγκεκριμένο αριθμό εισόδων στις πύλες OR. Πλεονεκτήματα: Για δεδομένη εσωτερική πολυπλοκότητα, ένα PAL μπορεί να έχει μεγαλύτερα N και M Κάποια PALs έχουν εξόδους που μπορούν να συμπληρωθούν, προσθέτοντας συναρτήσεις POS Δεν υπάρχουν υλοποιήσεις πολλαπλών επιπέδων στο ROM (χωρίς εξωτερικές ενώσεις από την έξοδο στην είσοδο). Το PAL έχει εξόδους από όρους OR ως εσωτερικούς εισόδους σε όλους τους όρους AND, κάνοντας την υλοποίηση κυκλωμάτων πολλαπλών επιπέδων εφικτή. Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
ΗΜΥ 210: Λογικός Σχεδιασμός, Εαρινό Εξάμηνο 2005 PAL -- Παράδειγμα ΗΜΥ 210: Λογικός Σχεδιασμός, Εαρινό Εξάμηνο 2005 Νοε-18 AND gates inputs 1 2 3 4 5 6 7 8 9 F1 = + F2 = B + AC + AB F3 = F4 = Product term 1 X 2 X X F 1 4-εισόδοι, 4-εξόδοι PAL με αμετάβλητους όρους OR 3-εισόδων Ποιες είναι οι εξισώσεις από το F1 μέχρι το F4; 3 I 1 A 4 X X X 5 X X F 2 6 X X I 2 B 7 X X A B C F3 = AD + BD + F1 = AD + BD + A’B+ C’ = AD + BD + A’B’ + C’ F4 = AB + CD + F1’ = AB + CD + (A’B’ + C’)’ = AB + CD + AC + BC 8 X X F 3 A C 9 X I 3 C 10 X X 11 X X F 4 12 X I 4 D I 4 Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων 1 2 3 4 5 6 7 8 9 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
Προγραμματιζόμενη Λογική Διάταξη (Programmable Logic Array -- PLA) Συγκριτικά με ROM και PAL, το PLA είναι το πιο ευέλικτο, αφού έχει ένα προγραμματιζόμενο σύνολο από ANDs συνδυασμένο με ένα προγραμματιζόμενο σύνολο από ORs. Πλεονεκτήματα Ένα PLA μπορεί να έχει μεγάλο N και M και έτσι επιτρέπει την υλοποίηση εξισώσεων που είναι μη-πρακτικές για ένα ROM (λόγω του αριθμού των εισόδων, N, που χρειάζεται) Ένα PLA αφήνει όλους τους όρους γινομένου να μπορούν να ενωθούν με όλες τις εξόδους, ξεπερνώντας έτσι το πρόβλημα των λιγοστών εισόδων στα PAL ORs Κάποια PLAs έχουν εξόδους που μπορούμε να πάρουμε το συμπλήρωμα τους, προσθέτοντας έτσι συναρτήσεις POS Μειονεκτήματα Συχνά, ο αριθμός όρων γινομένου μειώνει την εφαρμογή ενός PLA. Η βελτιστοποίηση 2-επιπέδων κυκλωμάτων με πολλαπλές εξόδους μειώνει τον αριθμό των όρων γινομένων σε μια υλοποίηση, βοηθώντας έτσι την προσαρμογή του σε ένα PLA. Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων
ΗΜΥ 210: Λογικός Σχεδιασμός, Εαρινό Εξάμηνο 2005 PLA -- Παράδειγμα ΗΜΥ 210: Λογικός Σχεδιασμός, Εαρινό Εξάμηνο 2005 Νοε-18 Fuse intact Fuse blown 1 F 2 X A B C 3 4 A B A C B C Ποιες είναι οι εξισώσεις για το F1 και F2; Μπορεί το PLA να υλοποιήσει τις συναρτήσεις χωρίς τις XOR πύλες; F1 = AB +BC + AC F2 = (AB + A’B’)’ = (A’ + B’) (A + B) = A’B + AB’ No. If only SOP functions used, requires at least 5 AND gates. PLA 3-εισόδων, 3-εξόδων με με 4 όρους γινομένου Νοε-18 Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων Κεφάλαιο 3-ii: Σχεδιασμός Συνδυαστικών Κυκλωμάτων