Περιεχόµενα Κεφάλαιο 4: Συνδυαστικές Συναρτήσεις και Κυκλώµατα Συναρτήσεις και µονάδες συναρτήσεων Στοιχειώδες λογικές συναρτήσεις Αποκωδικοποίησης Κωδικοποίηση Επιλογή (πολυπλέκτης) Chapter 4 Chapter 4 2 Συναρτήσεις και Μονάδες (Blocks) Συναρτήσεων Θα µελετήσουµε τις συναρτήσεις οι οποίες είναι χρήσιµες στο σχεδιασµό Σε κάθε µια από τις συναρτήσεις αντιστοιχεί ένα λογικό κύκλωµατοοποίοονοµάζεται µονάδα συνάρτησης (functional block) Στο παρελθόν οι µονάδες συναρτήσεων υλοποιούνταν σε κυκλώµατα SSI, MSI, and LSI Σήµερα είναι µικρές οντότητες εντός κυκλώµατος VLSI Στοιχειώδης Λογικές Συναρτήσεις Συναρτήσεις ενός µεταβλητή Χρησιµοποιούνται σαν είσοδο στις µονάδες συναρτήσεων για να υλοποιήσουν κάτι διαφορετικό από αυτό που έχει προοριστεί η µονάδα F5 F5 V CC or V DD TABLE 4- Functions of One Variable F F F F F5 F5 (c) F5 F5 Chapter 4 3 Chapter (d) 4 4 Ενεργοποίηση Συνάρτησης (Enabling) Ενεργοποίηση (Enabling) επιτρέπει ένα σήµα εισόδου να περάσει στη έξοδο του κυκλώµατος Απενεργοποίηση (Disabling) εµποδίζει ένα σήµα εισόδου να περάσει στη έξοδο και το αντικαθιστά µε µια σταθερή τιµή Ητιµή εξόδου ενός απενεργοποιηµένου κυκλώµατος µπορεί να είναι, ή Απενεργο, στην έξοδο F EN Απενεργο, στην έξοδο EN F Αποκωδικοποίηση (Decoding) Είναι η µετατροπή ενός n-bit κώδικα εισόδου σε ένα m-bit κώδικα εξόδου όπου n m 2 n και κάθε σωστός κώδικας εισόδου παράγει ένα µοναδικό κώδικα εξόδου Τα κυκλώµατα που αποκωδικοποιούν λέγονται αποκωδικοποιητές (decoders) Μια µονάδα συνάρτησης αποκωδικοποίησης ονοµάζεται: n-to-m line decoders, όπου m 2 n, και παράγει 2 n (ήλιγότερα) minterms για n µεταβλητές εισόδου Chapter 4 5 Chapter 4 6
Παραδείγµατα Αποκωδ (Decoder) Επέκταση του Αποκωδικοποιητή -to-2-line Decoder 2-to-4-Line Decoder A A D D D 2 Ο αποκωδ 2-το-4 αποτελείται από 2 -to-2 line decoders και 4 AND gates A D D A A A D 5 A D 5 A D 5 A A D 5 A A D 2 5 A A 5 A A Chapter 4 7 Γιαναδηµιουργήσουµε αποκωδ µε περισσότερους εισόδους και εξόδους µπορούµε να χρησιµοποιήσουµε το ιεραρχικό σχεδιασµό ιαδικασία: έστω k n και k ζυγός Χρησιµοποίησε 2 k πύλες AND τα οποία τροφοδοτούνται από 2 αποκωδ µε 2 k/2 εξόδους Αν k µονός τότε οι αποκωδ θα έχουν 2 (k+)/2 2 (k-)/2 εξόδους Αυτή η διαδικασία δηµιουργεί ένα αποκωδ αναδροµικά από Πάνω-προς-τα-κάτω Σταµατάµε τη διαδικασία όταν φτάνουµε στους βασικούς αποκωδικοποιτές µε 2-to- εξόδους Chapter 4 8 Παράδειγµα 3-to-8-line decoder Αριθµός εξόδων ANDs 8 Αριθµός των εισόδων 3 Μπορούµε ναδιαιρέσουµετοκύκλωµα σε δύο υπο- µονάδες 2-to-4-line decoder -to-2-line decoder 2-to-4-line decoder Αριθµός εξόδων ANDs 4 Αριθµός των εισόδων 2 ιαιρείται το κύκλωµα σε δύο υπο-µονάδες Two -to-2-line decoders Παράδειγµα Αποτέλεσµα A A A 2 2-to-4-Line decoder 4 2-input ANDs 8 2-input ANDs -to-2-line decoders D D D 2 D 4 D 5 D 6 D 7 Chapter 4 9 3-to-8 Line decoder Chapter 4 Παράδειγµα ηµιουργία µέσω πίνακας αλήθειας εν είναι πάντα δυνατό Παράδειγµα 2 Άσκηση: Να σχεδιαστεί ένας 4-to-6-line decoder Άσκηση: Να σχεδιαστεί ένας 5-to-32-line decoder Chapter 4 Chapter 4 2 2
Αποκωδικοποιητής µε Ενεργοποίηση (Decoder with Enable) ιαδικασία: στείλε m-enabling σύρµατα εισόδου στις εξόδους Ο πίνακας αλήθειας αποκωδ 2-to-4 είναι Με Χ δείχνουµε τιµές και υο Χ δείχνουν 4 συνδυασµούς Μπορούµε νατοχρησιµοποιήσουµε να στείλουµετοσήµα ΕΝ σε µεαπότιςεξόδους EN A Τέτοιο κύκλωµα λέγεται αποπλέκτης (demultiplexer) EN A A D D D 2 A D D D 2 Κωδικοποίηση (Encoding) Κωδικοποίηση - το αντίθετο της αποκωδικοποίησης - είναι η µετατροπή ενός m-bit κώδικα εισόδου (όπου n m 2 n ) και σε κάθε κώδικα εισόδου αντιστοιχεί ένα µοναδικό κώδικα εξόδου Τα κυκλώµατα που κωδικοποιούν λέγονται κωδικοποιητές (encoders) Ο κωδικοποιητής έχει 2 n (ή λιγότερες) γραµµές εισόδου και παράγει ένα δυαδικό κώδικα που αντιστοιχεί στην τιµή εισόδου Συνήθως, ο κωδικοπ µετατρέπει ένα κώδικα το οποίο περιέχει µόνο ένα bit ίσο µε, σε ένα κώδικα που αντιστοιχεί στη θέση του bit µε τιµή Chapter 4 3 Chapter 4 4 Κωδικοποίηση: Παράδειγµα οχταδικό-σε-δυαδικό Κωδικοποίηση: Παράδειγµα οχταδικό-σε-δυαδικό Αi έχει τιµή στις στήλες όπου Dj έχει τιµή όταν j σε δυαδική αναπαράσταση έχει τιµή στη θέση i πχ Α στης θέσεις j, 3, 5, 7 (περιττοί αριθµοί) A D+D3+D5+D7 A D2+D3+D6+D7 A2 D4+D5+D6+D7 Chapter 4 5 Chapter 4 6 Κωδικοποίηση: Παράδειγµα 2 εκαδικός-σε-bcd κωδικοποίηση Είσοδος: bits τα οποία αντιστοιχούν σε δεκαδικά ψηφία µέχρι 9, (D,, D 9 ) Έξοδος: 4 bits µε BCD κώδικες Συνάρτηση: Αν το bit εισόδου D i είναι, τότε ηέξοδος(a 3, A 2, A, A ) είναι ο κώδικας BCD του i, Ησυναρτήσειςµπορεί να σχηµατιστούν από τον πίνακα αλήθειας ή απευθείας Κωδικοποίηση: Παράδειγµα 2 Είσοδος D i είναι όρος στο A j αν το bit A j είναι στη δυαδική αναπαράσταση του i Εξισώσεις: A 3 D 8 + D 9 A 2 D 4 + D 5 + D 6 + D 7 A D 2 + + D 6 + D 7 A D + + D 5 + D 7 + D 9 F D 6 + D 7 µπορεί να χρησιµοποιηθεί στο A 2 and A Τι κέρδος έχουµε στοκόστος? Chapter 4 7 Chapter 4 8 3
Κωδικοποιητής µε Προτεραιότητα (Priority Encoder) Εάν περισσότερα από µεταβλητές εισόδου έχουν την τιµή, ο κωδικοποιητής δεν δουλεύει Ο κωδικοποιητής ο οποίος δέχεται στην είσοδο όλους τους πιθανούς συνδυασµούς, ονοµάζεται κωδικοποιητής µε προτεραιότητα (priority encoder) Ανάµεσα στους ςπουεµφανίζονται, διαλέγει την πιο σηµαντική είσοδο όπου εµφανίζεται ςκαι µετατρέπει τον κωδικό στον δυαδικό που αντιστοιχεί για αυτή τη θέση Κωδικοποιητής µε Προτεραιότητα ΚµΠ (Priority Encoder) ΚµΠ µε 4 εισόδους Προτεραιότητα έχει το πιο σηµαντικό bit V δείχνει όταν κανένα είσοδο είναι και όταν υπάρχει τουλάχιστον ένα στην είσοδο Πίνακας αλήθειας του ΚµΠ Χ στην είσοδο δείχνει τιµή ή (δηλ συµπληρώνει τους 6 πιθανούς συνδυασµούς) είχνει επίσης τους όρους οι οποίοι δεν είναι ελαχιστόροι (πχ x -- D 2 D ) Χ στη έξοδο δείχνει τις τιµές αδιαφορίας Η στήλη στα αριστερά συµπληρώνει και τους 32 συνδυασµούς εισόδου Chapter 4 9 Chapter 4 2 Κωδικοποιητής µε Προτεραιότητα ΚµΠ Κωδικοποιητής µε Προτεραιότητα ΚµΠ Α + D D 2 A D 2 + V D + D + D 2 + Chapter 4 2 Chapter 4 22 Επιλογή (Selecting) ΗΕπιλογήείναιµια σηµαντική συνάρτηση στα ψηφιακά συστήµατα και τους υπολογιστές Τα κυκλώµατα που εξάγουν την επιλογή έχουν: Ένα σύνολο δεδοµένων εισόδου από τα οποία γίνεται η επιλογή Μια µοναδική έξοδο Ένα σύνολο γραµµών εισόδου οι οποίες κάνουν τη επιλογή Τα λογικά κυκλώµαταταοποίαεξάγουντην επιλογή λέγονται αποπλέκτες (multiplexers) Chapter 4 23 Αποπλέκτες (Multiplexers) Ο αποπλέκτης επιλέγει την πληροφορία από µια γραµµή εισόδου και την κατευθύνει σε µια γραµµήεξόδου Ένας κανονικός αποπλέκτης έχει n εισόδους ελέγχου (S n, S ) (selection inputs), 2 n πληροφορίες εισόδου (I 2 n, I ), και µια έξοδο Y Μπορεί επίσης να σχεδιαστεί µε m πληροφορίες εισόδου όπου m < 2 n και n εισόδους ελέγχου Chapter 4 24 4
2-to--Line Αποπλέκτης 2-to--Line Αποπλέκτης Επειδή 2 2, n Ο µεταβλητής ελέγχου S έχει δυο τιµές: S επιλέγει την είσοδο I S επιλέγει την είσοδο I Πίνακας αλήθειας The equation: Y S I + SI The circuit: Decoder Enabling Circuits S I I Y Chapter 4 25 Chapter 4 26 Παράδειγµα: 4-to--line Multiplexer Παράδειγµα: 4-to--line Multiplexer Y S I + S S I + S S I 2 + S S I 3 S Y ( S ) I + ( S S ) I + ( S S ) I 2 + ( S S ) I 3 S Έξοδος αποκωδικοποιητή Y S I + S S I + S S I 2 + S S I 3 S Chapter 4 27 Chapter 4 28 Παράδειγµα: 4-to--line Multiplexer 2-to--Line Αποπλέκτης Y ( S ) I + ( S S ) I + ( S S ) I 2 + ( S S ) I 3 S Chapter 4 29 Παρατηρήστε τη δοµήτουαποπλέκτη: -to-2-line Αποκωδικοπιητή 2 κυκλώµατα ενεργοποίησης (Enabling) 2-input πύλη OR Γιαναεπεκτείνουµε τοναποπλέκτη συνδυάζουµετοκύκλωµα ενεργοποίησης και OR πύλη σε ένα 2 2 AND-OR κύκλωµα: -to-2-line αποκωδικοποιητή 2 2 AND-OR Γενικά, για ένα 2 n -to--line αποπλέκτη: n-to-2 n -line αποκωδικοποιητή 2 n 2 AND-OR Chapter 4 3 5
64-to--Line Αποπλέκτης ιανυσµατικός Αποπλέκτης (Multiplexer Width Expansion) Επιλέγει ένα bit διάνυσµααντί bits Χρήση αντιγράφων 2 n 2 AND-OR µε παράλληλη σύνδεση I, Y Παράδειγµα: 4-to--line τέτρα αποπλέκτης A A 2-to-4-Line decoder D I 3, I, I 3, I,2 Y I 3,2 I,3 Y 2 Y 3 I 3,3 Chapter 4 3 Chapter 4 32 Υλοποίηση Συνδυαστικών Συναρτήσεων Εναλλακτικές τεχνικές υλοποίησης : Αποκωδικοποιητές (Decoders) και OR πύλες Αποπλέκτες (Multiplexers) (και inverter) ROMs PLAs PALs Lookup Tables Αναφέρεται και ως «δοµηµένη µεθοδολογία υλοποίησης» (structured implementation methods) επειδή βασίζεται στις συναρτησιακές µονάδεςγιαναχτίζειέναπολύπλοκοκύκλωµα Chapter 4 33 Αποκωδικοποιητές (Decoders) και OR πύλες Υλοποιεί m συναρτήσεις των n µεταβλητών ως: Άθροισµα ελαχιστώρων (Sum-of-minterms expressions) Ένας n-to-2 n -line αποκωδικοποιητή (decoder) m OR πύλες, µία για κάθε έξοδο Τεχνική : Βρες τον πίνακα αλήθειας των συναρτήσεων Σύνδεσε την έξοδο του αποπλέκτη (όπου έχει τιµή στον πίνακα αλήθειας) µε τη αντίστοιχη πύλη OR Τεχνική 2 Βρες τους ελαχιστόρους για κάθε συνάρτηση εξόδου Σύνδεσε τους ελαχιστόρους µεπύληor Chapter 4 34 Αποκωδικοποιητές (Decoders) και OR πύλες Chapter 4 35 Τεχνική µε Αποπλέκτη Υλοποιεί m συναρτήσεις των n µεταβλητών ως : Άθροισµα ελαχιστώρων Ένα m-εισόδων 2 n -to--line αποπλέκτη Σχεδίαση: Βρες τον πίνακα αλήθειας των συναρτήσεων Με τη σειρά που εµφανίζονται στον πίνακα αλήθειας: Σύνδεσε τις µεταβλητές εισόδου της συνάρτησης στις εισόδους του αποπλέκτη S n,, S Ονόµασε τις εξόδους του αποπλέκτη µε τις µεταβλητές εξόδου της συνάρτησης Βάλε τις σταθερές τιµές από τον πίνακα αλήθειας στις εισόδους του αποπλέκτη Για τιµές αδιαφορίας βάλε ή ) Chapter 4 36 6
Τεχνική µε Αποπλέκτη Chapter 4 37 7