ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Διάλεξη 8: Ολοκληρωμένα κυκλώματα – Συνδυαστική λογική – Πολυπλέκτες – Κωδικοποιητές - Αποκωδικοποιητές Δρ Κώστας Χαϊκάλης ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Ολοκληρωμένα κυκλώματα Τα ηλεκτρονικά κυκλώματα μπορούν να κατασκευασθούν σε ολοκληρωμένη μορφή (integrated circuits – ICs). Στο εσωτερικό των ψηφιακών ICs βρίσκονται πολλές λογικές πύλες ενωμένες μεταξύ τους ώστε να σχηματιστεί το απαιτούμενο ψηφιακό κύκλωμα. Τα chips έχουνε έναν αριθμό από «ποδαράκια» (pins) τα οποία χρησιμοποιούνται με σκοπό την επικοινωνία του ψηφιακού κυκλώματος με τον έξω κόσμο. Τα ICs επινοήθηκαν για πρώτη φορά από τον Geoffrey William Arnold Dummer, o οποίος κατάφερε να κατασκευάσει ένα ολοκληρωμένο κύκλωμα για πρώτη φορά το 1952. ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Επίπεδα Ολοκλήρωσης Ανάλογα με το επίπεδο ολοκλήρωσης (δηλαδή πόσα τρανζίστορ χωράνε σε ένα chip) υπάρχουν τέσσερις κατηγορίες ολοκληρωμένων κυκλωμάτων: SSI (Small Scale of Integration) MSI (Medium Scale of Integration) LSI (Large Scale of Integration) VLSI (Very Large Scale of Integration) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Οικογένειες Ψηφιακής Λογικής Ανάλογα με το πως υλοποιούνται οι διάφορες πύλες (συνήθως μας ενδιαφέρουν οι NAND και NOR) τα ψηφιακά ολοκληρωμένα κυκλώματα χωρίζονται σε οικογένειες ψηφιακής λογικής: TTL: Transistor – Transistor Logic ECL: Emitter Coupled Logic MOS: Metal Oxide Semiconductor CMOS: Complementary MOS ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Οικογένειες ψηφιακής λογικής Κάθε οικογένεια χαρακτηρίζεται ως προς τις επιδόσεις της στα εξής: Ικανότητα οδήγησης (Fan Out): Πόσα φορτία μπορεί να οδηγήσει η έξοδος μιας πύλης χωρίς να κινδυνέψει η κανονική της λειτουργία (ως φορτίο συνήθως ορίζουμε το ρεύμα που χρειάζεται η είσοδος μιας πύλης της ιδίας οικογένειας). Κατανάλωση Ισχύος (power dissipation): Πόση ισχύ τροφοδοσίας χρειάζεται η κάθε πύλη. Καθυστέρηση Διάδοσης (propagation delay): Ο μέσος χρόνος που χρειάζεται για να διαδοθεί η αλλαγή του σήματος από την είσοδο στην έξοδο. Περιθώριο Θορύβου (Noise Margin): Ελάχιστη τάση εξωτερικού θορύβου που προκαλεί ανεπιθύμητη αλλαγή στην έξοδο ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Ολοκληρωμένα Κυκλώματα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Ολοκληρωμένα Κυκλώματα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Ολοκληρωμένα Κυκλώματα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Λογικά κυκλώματα Τα λογικά κυκλώματα διακρίνονται σε συνδυαστικά (combinational) και ακολουθιακά (sequential) Τα συνδυαστικά περιέχουν μόνο λογικές πύλες, ενώ τα ακολουθιακά περιέχουν επιπλέον και στοιχεία μνήμης Συνδυαστικά κυκλώματα: Οι έξοδοι σε κάθε χρονική στιγμή είναι συνάρτηση των εισόδων εκείνης της χρονικής στιγμής και μόνο Ακολουθιακά κυκλώματα: Οι έξοδοι είναι συνάρτηση των εισόδων εκείνης της χρονικής στιγμής, όπως επίσης και της κατάστασης των στοιχείων μνήμης, η οποία είναι συνάρτηση των προηγούμενων εισόδων ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Συνδυαστικά κυκλώματα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Σχεδιασμός συνδυαστικών κυκλωμάτων ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Ανάλυση συνδυαστικού κυκλώματος Έχουμε ένα κύκλωμα και θέλουμε να εξάγουμε την λογική συνάρτηση που υλοποιεί καθώς και τον πίνακα αλήθειας του Διαδικασία ανάλυσης Ονομάζουμε τις εξόδους των πυλών του κυκλώματος Βρίσκουμε τις συναρτήσεις σε κάθε επίπεδο ξεκινώντας από το πρώτο και φτάνοντας μέχρι το τελευταίο ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Ανάλυση Συνδυαστικού Κυκλώματος – Παράδειγμα 1 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πίνακας αλήθειας ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 2 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Ημι-Aθροιστής (Half Adder) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Ημι-Aθροιστής (Half Adder) Σχεδιασμός λογικού κυκλώματος ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πλήρης Aθροιστής (Full Adder) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πλήρης Aθροιστής (Full Adder) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πλήρης Aθροιστής (Full Adder) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πλήρης Aθροιστής (Full Adder) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Ημι-Aφαιρέτης (Half Subtractor) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πλήρης Aφαιρέτης (Full-Subtractor) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πληρης Aφαιρέτης (Full-Subtractor) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Σύμβολα Ημι και Πλήρους Αθροιστή ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Δυαδική πρόσθεση 4 bits ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Δυαδική πρόσθεση 4 bits Αν k=4 τότε ένας δυαδικός αθροιστής είναι ένα κύκλωμα με 9 εισόδους: 4 εισόδους για τον πρώτο προσθετέο, 4 εισόδους για το δεύτερο και 1 κρατούμενο εισόδου και 5 εξόδους: 4 εξόδους για το άθροισμα και το κρατούμενο εξόδου ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Υλοποίηση με πλήρεις αθροιστές Δυαδικός αθροιστής (ριπής κρατουμένου – ripple carry) των 4 bit ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Μετατροπή κωδίκων Εξαιτίας της πληθώρας των κωδικών που υπάρχουν, συχνά χρειαζόμαστε κυκλώματα μετατροπής από τον ένα κώδικα στον άλλο. Ο παρακάτω πίνακας αληθείας χρησιμοποιείται για την υλοποίηση ενός κώδικα BCD σε έναν κώδικα excess-3. ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 4: Μετατροπή κώδικα BCD σε κώδικα υπερβολής κατά 3 - Πίνακας αλήθειας ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Απλοποίηση μεταβλητών εξόδου με χάρτη Karnaugh ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 5 Άρα, οι μεταβλητές εξόδου θα είναι: w = A + BC + BD = A + B(C + D) x = B’C + B’D + BC’D’=B’(C+D)+B(C+D)’ y = CD + C’D’ = CD + (C+D)’ z = D’ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Υλοποίηση λογικού κυκλώματος ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πολυπλέκτες Στους πολυπλέκτες γενικά έχουμε 2^n εισόδους σε 1 έξοδο 1 έξοδος δεδομένων n είσοδοι επιλογής ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πολυπλέκτης 2Χ1 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πολυπλεκτης 4Χ1 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Υλοποίηση λογικών συναρτήσεων με πολυπλεκτες Χρησιμοποιώντας έναν πολυπλέκτη 2^n X 1 μπορούμε να υλοποιήσουμε οποιαδήποτε συνάρτηση (n+1) μεταβλητών. Παράδειγμα 1: Εάν F(A,B,C) =Σ(1,3,5,6), τότε στις εισόδους επιλογής του πολυπλέκτη s1 και s0 βάζουμε δυο μεταβλητές, π.χ. B και C. Οι γραμμές επιλογής (ή επίτρεψης) του πολυπλέκτη παίρνουν τιμές 0, 1, Α και Α’ ανάλογα με τον πίνακα αλήθειας της συνάρτησης. ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 1 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 2 Συνάρτηση 3 μεταβλητών F(x,y,z) = Σ(1,2,6,7) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 3 Συνάρτηση 4 μεταβλητών F(x,y,z,w) = Σ(1,3,4,11,12,13,14,15) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 4 Να υλοποιηθεί η λογική συνάρτηση 3 μεταβλητών F(A, B, C)=Σ(1, 2, 4, 5) με πολυπλέκτη 4Χ1 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 4 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 5 Να υλοποιηθεί η λογική συνάρτηση 4 μεταβλητών F(A, B, C, D)=Σ(0, 1, 3, 4, 8, 9, 15) με πολυπλεκτη 8Χ1 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 5 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Αποκωδικοποιητές Ένας αποκωδικοποιητής από n σε 2^n γραμμές σχηματίζει τους ελαχιστόρους που παράγονται από το συνδυασμό των n μεταβλητών. Πρόκειται για ένα κύκλωμα που μπορεί να χρησιμοποιηθεί για την υλοποίηση συνδυαστικών κυκλωμάτων. ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 1: Αποκωδικοποιητής 3 σε 8 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πίνακας αλήθειας ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 2: Αποκωδικοποιητής 2 σε 4 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Πίνακας αλήθειας ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παράδειγμα 3 Εάν S(x,y,z)=Σ(1,2,4,7) και C(x,y,z)=Σ(3,5,6,7), να γίνει υλοποίηση με αποκωδικοποιητή: ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ