ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και...

35
1 ΚΕΦΑΛΑΙΟ 3 ΘΕΜΑΤΑ ΨΗΦΙΑΚΗΣ ΣΧΕΔΙΑΣΗΣ

Transcript of ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και...

Page 1: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

1

ΚΕΦΑΛΑΙΟ 3

ΘΕΜΑΤΑ ΨΗΦΙΑΚΗΣ ΣΧΕΔΙΑΣΗΣ

Page 2: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

2

Στόχος αυτού του Κεφαλαίου είναι η γνωριμία με τον τρόπο με τον οποίο ε-κτελούνται οι πράξεις στο εσωτερικό του Υπολογιστή. Όπως ήδη έχει αναφερθεί, ηΚεντρική Μονάδα Επεξεργασίας του Υπολογιστή είναι ένα ολοκληρωμένο κύκλωμαπου περιλαμβάνει (εκτός των άλλων υποσυστημάτων) και μία αριθμητική και λογικήμονάδα, η οποία είναι υπεύθυνη για την εκτέλεση των αντίστοιχων πράξεων. Οι πρά-ξεις αυτές εκτελούνται με τη βοήθεια ψηφιακών κυκλωμάτων. Τα κυκλώματα αυτάπεριλαμβάνουν στοιχεία τα οποία ονομάζονται λογικές πύλες, οι οποίες διασυνδέο-νται μεταξύ τους με τη βοήθεια αγωγών, σχηματίζονται έτσι κυκλώματα.

Θα πρέπει να αναφερθεί ότι οι πύλες αυτές κατασκευάζονται με τη βοήθειαημιαγωγών στοιχείων (transistors). Ωστόσο, η μελέτη αυτών των στοιχείων ανήκειπερισσότερο στην επιστήμη της Ηλεκτρονικής και λιγότερο της Πληροφορικής, κατάσυνέπεια δεν θα μας απασχολήσουν σε αυτό το βιβλίο.

Έτσι, αρχικά θα παρουσιαστούν οι βασικές θεωρητικές έννοιες της ψηφιακήςλογικής, της άλγεβρας Boole και των λογικών πυλών. Στη συνέχεια θα παρουσιαστείο τρόπος ανάλυσης ενός ψηφιακού κυκλώματος με τη δημιουργία του πίνακα αλήθει-ας του, καθώς και η εύρεση της λογικής συνάρτησης που υλοποιείται από αυτό τοκύκλωμα. Κάποια ζητήματα απλοποίησης των συναρτήσεων αυτών θα συζητηθούνσε αλγεβρικό επίπεδο. Στη συνέχεια θα αναφερθεί η αντίστροφη διαδικασία, η εξαρ-χής δημιουργία δηλαδή ενός ψηφιακού κυκλώματος που εκτελεί μια συγκεκριμένηεργασία.

Τέλος, θα αναφερθεί ο τρόπος με τον οποίο από ένα απλό ψηφιακό συνδυα-στικό κύκλωμα, μπορούμε να περάσουμε σε ένα περισσότερο περίπλοκο ακολουθια-κό ψηφιακό κύκλωμα. Μια σημαντική εφαρμογή των ακολουθιακών κυκλωμάτωνείναι τα στοιχεία μνήμης (registers, RAM) κλπ., τα οποία θα αναφερθούν στο τέλος.

Page 3: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

3

3.1 Ψηφιακή Λογική και Λογικές ΠύλεςΗ Ψηφιακή Λογική (binary logic) ασχολείται με μεταβλητές που μπορούν να

λάβουν μόνο δύο διαφορετικές τιμές και με λειτουργίες που έχουν λογικό νόημα. Οιτιμές των μεταβλητών μπορούν να έχουν οποιοδήποτε νόημα (αληθής – ψευδής, μαύ-ρο – άσπρο κλπ), ωστόσο συνηθίζουμε να χρησιμοποιούμε τις τιμές 0 και 1 τις οποίεςαντιστοιχίζουμε στα παραπάνω ονόματα. Κάθε λογική μεταβλητή λοιπόν έχει μια τι-μη (0 ή 1) και μπορεί να έχει ένα όνομα, όπως A, B, C, Χ, Υ, Ζ, F, κλπ

Υπάρχουν τρεις βασικές λογικές πράξεις που μπορούν να εφαρμοστούν σελογικές μεταβλητές: η σύζευξη (ΚΑΙ), η διάζευξη (Ή) και η άρνηση (ΟΧΙ). Για λό-γους ευκολίας, για τις πράξεις αυτές χρησιμοποιούμε συνήθως τον αντίστοιχο αγγλι-κό όρο (AND, OR και ΝΟΤ). Για κάθε μία από αυτές τις πράξεις, υπάρχει και ένααντίστοιχο στοιχειώδες ηλεκτρονικό κύκλωμα που τις υλοποιεί. Τα κυκλώματα αυτάλέγονται λογικές (ή ψηφιακές) πύλες. Κάθε πύλη υλοποιείται με τα κατάλληλα tran-sistors, ενώ έχει ένα μοναδικό γραφικό σύμβολο. Έτσι λοιπόν, έχουμε:

Πράξη AND: Η πράξη αυτή απαιτεί δύο τελεσταίους, έστω Α και Β, και δίνει ένααποτέλεσμα, έστω Ζ. Τα Α, Β και Ζ είναι φυσικά λογικές μεταβλητές, μπορούν δηλα-δή να λάβουν τις τιμές 0 ή 1. Για να αναπαραστήσουμε την πράξη γράφουμε Ζ = ΑAND B, ή Ζ = Α·Β είτε ακόμη Ζ = ΑΒ. Το αποτέλεσμα της πράξης ισούται με 1 αν καιμόνον αν Α=1 και Β=1, διαφορετικά είναι 0.Το γραφικό σύμβολο της αντίστοιχης πύλης AND φαίνεται στη συνέχεια. Δίπλα στηνπύλη αναγράφεται και ο πίνακας αλήθειας (truth table), ο οποίος περιλαμβάνει όλεςτους πιθανούς συνδυασμούς τιμών που μπορούν να λάβουν οι είσοδοι Α και Β καιτην αντίστοιχη έξοδο Ζ.

A

B Z = A AND Bή Ζ = Α·Β ή

Ζ=ΑΒ

Α Β Ζ=Α·Β0 0 00 1 01 0 01 1 1

Πράξη OR: Η πράξη αυτή απαιτεί επίσης δύο τελεσταίους, έστω Α και Β, και δίνειένα αποτέλεσμα, έστω Ζ. Για να αναπαραστήσουμε την πράξη γράφουμε Ζ = Α OR B,ή Ζ = Α + B. Το αποτέλεσμα της πράξης ισούται με 1 αν τουλάχιστον ένα από τα Α ήΒ είναι 1.Το γραφικό σύμβολο της αντίστοιχης πύλης OR καθώς και ο πίνακας αλήθειας της,φαίνονται στη συνέχεια.

A

B Z = A OR B ήΖ = Α+Β

Α Β Ζ=Α+Β0 0 00 1 11 0 11 1 1

Page 4: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

4

Πράξη ΝΟΤ: Η πράξη αυτή απαιτεί έναν τελεσταίο, έστω Α, και δίνει ένα αποτέλε-σμα, έστω Ζ. Για να αναπαραστήσουμε την πράξη γράφουμε Ζ = ΝΟΤ(Α) ή Ζ = Α’(ήκαι A ). Το αποτέλεσμα της πράξης ισούται με 1 αν τουλάχιστον ένα από τα Α είναι 0και 0 αν το Α είναι 1. Η πράξη αυτή λειτουργεί δηλαδή ως αντιστροφέας της τιμήςεισόδου.Το γραφικό σύμβολο της αντίστοιχης πύλης ΝΟΤ, καθώς και ο πίνακας αλήθειας της,φαίνονται στη συνέχεια.

AZ = NOT(A) ή

Ζ = Α’

Α Ζ=Α’0 11 0

Όταν ασχολούμαστε με πύλες θα πρέπει να έχουμε πάντα υπόψη ότι αυτές υ-λοποιούν λογικές πράξεις σε λογικές μεταβλητές. Μπορεί κανείς να θεωρήσει ότι κά-θε είσοδος ή έξοδος (κάθε γραμμή στα παραπάνω σχήματα) μεταφέρει ένα ηλεκτρικόσήμα που αντιστοιχεί στο λογικό 0 και το λογικό 1. Το σήμα αυτό φυσικά αντιστοιχείσε κάποια φυσική ποσότητα, όπως την τάση που εφαρμόζεται στα άκρα του, ωστόσοαυτή η τάση δεν είναι απαραίτητο να είναι ακριβώς 0 ή 1 volts. Στην πραγματικότη-τα, τα κυκλώματα αυτά χρησιμοποιούν ένα αποδεκτό εύρος τάσης για κάθε λογικήτιμή, όπως φαίνεται στο Σχήμα 1.

Σχήμα 3.1

Επιπλέον, θα πρέπει να είναι ξεκάθαρο ότι οι λογικές πράξεις δεν είναι αριθ-μητικές πράξεις. Έτσι, δεν θα πρέπει να συγχέεται το σύμβολο ‘+’, το οποίο σημαίνειλογικό «OR» με το σύμβολο της πρόσθεσης δύο δυαδικών ψηφίων. Ωστόσο, δεν υ-πάρχει περίπτωση αμφισημίας, καθώς δεν είναι δυνατόν σε μια έκφραση να υπάρχουνλογικές και αριθμητικές πράξεις μαζί.

Ας αναφερθεί επίσης ότι οι πύλες AND και OR μπορούν να έχουν περισσότε-ρες από δύο εισόδους (πάντα όμως θα έχουν μία έξοδο). Έτσι, σε περίπτωση μίαςAND με τρεις εισόδους, η έξοδος της πύλης θα είναι 1 όταν και οι τρεις είσοδοι είναι1 και 0 σε κάθε άλλη περίπτωση. Αντίστοιχα, σε μια OR με τέσσερις εισόδους, η έξο-δος θα είναι 1 εάν τουλάχιστον μία είσοδος είναι 1. Σε μία τέτοια OR, η έξοδος θαείναι 0 αν και μόνο αν όλες οι είσοδοι είναι 0.

Ένα ψηφιακό κύκλωμα (digital circuit) αποτελείται από μια συλλογή λογι-κών πυλών οι οποίες είναι συνδεδεμένες μεταξύ τους έτσι ώστε οι έξοδοι κάποιωνπυλών να είναι είσοδοι σε άλλες πύλες. Ο τρόπος διασύνδεσης εξυπηρετεί πάντα ένα

Volts

012345

Λογικό 1

Λογικό 0

Page 5: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

5

συγκεκριμένο στόχο, ο οποίος συσχετίζει τις εισόδους στο κύκλωμα με την/τις εξό-δους του κυκλώματος. Η πλήρης περιγραφή των ψηφιακών κυκλωμάτων γίνεται μετη βοήθεια της άλγεβρας boole (Boolean algebra), οι βασικές αρχές της οποίας περι-γράφονται στην επόμενη παράγραφο.

3.2 Άλγεβρα BOOLE

3.2.1 Εισαγωγικά – πίνακες αλήθειαςΗ άλγεβρα boole περιλαμβάνει ψηφιακές μεταβλητές και λογικές πράξεις. Για

να αναπαραστήσουμε τις μεταβλητές χρησιμοποιούμε κεφαλαία γράμματα και για νααναπαραστήσουμε τις λογικές πράξεις χρησιμοποιούμε τα σύμβολά τους, όπως είδα-με στην προηγούμενη παράγραφο. Μία συνάρτηση boole είναι μια ακολουθία απόψηφιακές μεταβλητές, σύμβολα ψηφιακών πράξεων, τις τιμές 0 ή 1 και ένα σύμβολο‘=’ (ίσον). Για κάθε συνδυασμό τιμών των λογικών μεταβλητών, η συνάρτηση έχειμία τιμή, η οποία είναι επίσης ψηφιακή (0 ή 1). Στη συζήτηση που ακολουθεί, θεω-ρούμε ότι η προτεραιότητα των λογικών πράξεων υπακούει στους ακόλουθους κανό-νες, εκτός εάν υπάρχουν παρενθέσεις οι οποίες προηγούνται:

1. Πρώτα γίνονται οι αντιστροφές2. Ακολουθούν οι πράξεις AND3. Ακολουθούν οι πράξεις OR4. Εάν υπάρχουν πράξεις ίδιας προτεραιότητας, ο υπολογισμός τους γίνεται από

αριστερά προς τα δεξιά.

Έστω, για παράδειγμα η συνάρτηση:F = A’ + BC

Οι μεταβλητές A, B και C ονομάζονται και είσοδοι (inputs) στη συνάρτηση, ενώ ητιμή της F είναι η έξοδος (output) της συνάρτησης. Ο υπολογισμός της εξόδου τηςσυνάρτησης γίνεται λαμβάνοντας όλους τους διαφορετικούς συνδυασμούς τιμών τωνμεταβλητών Α, Β και C και εφαρμόζοντας σε κάθε συνδυασμό τις λογικές πράξειςπου συμπεριλαμβάνονται στη συνάρτηση. Η καταγραφή αυτών των συνδυασμών συ-μπληρώνεται σε έναν πίνακα, τον πίνακα αλήθειας (truth table) της συνάρτησης.Έτσι, για τη συνάρτηση F που μελετάμε, ο πίνακας τιμών φαίνεται αμέσως παρακά-τω:

Είσοδοι Ενδιάμεσα αποτελέσματα ΈξοδοςA B C A’ (not A) BC (B and C) F = A’+BC0 0 0 1 0 10 0 1 1 0 10 1 0 1 0 10 1 1 1 1 11 0 0 0 0 01 0 1 0 0 0

Page 6: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

6

1 1 0 0 0 01 1 1 0 1 1

Πίνακας 3.1

Ο πίνακας αλήθειας της F αποτελείται από τρεις περιοχές: την περιοχή των εισόδων(οι τρεις πρώτες στήλες) την περιοχή των ενδιάμεσων αποτελεσμάτων (οι δύο επόμε-νες στήλες) και την έξοδο (η τελευταία στήλη). Η συμπλήρωση ενός τέτοιου πίνακαδεν γίνεται κατά γραμμή, αλλά κατά περιοχή, ξεκινώντας από τις εισόδους και κατα-λήγοντας στην έξοδο. Έτσι:

Είσοδοι: Εφόσον οι ψηφιακές είσοδοι είναι τρεις, οι πιθανοί συνδυασμοί τουςείναι 23=8, οπότε συμπληρώνονται οι τρεις πρώτες στήλες σύμφωνα με όσαέχουν ήδη αναλυθεί σε προηγούμενο κεφάλαιο.

Ενδιάμεσα αποτελέσματα: Εφόσον για να υπολογιστεί η F απαιτείται το Α’καταγράφουμε μία στήλη με αυτές τις τιμές αλλάζοντας κάθε 0 σε 1 και αντί-στροφα κάθε τιμή της στήλης Α. Επιπλέον απαιτείται και ο υπολογισμός τηςBC, οπότε καταγράφουμε ακόμη μία στήλη συμπληρώνοντας σε κάθε γραμμήτο αποτέλεσμα του and ανάμεσα στα B και C.

Έξοδος: Σε αυτή την περίπτωση, συμπληρώνουμε κάθε γραμμή της εξόδουεφαρμόζοντας το λογικό or ανάμεσα στις δύο των ενδιάμεσων αποτελεσμά-των.

Σε έναν πίνακα αλήθειας, το πλήθος των εισόδων είναι συγκεκριμένο, καθώς είναιτο πλήθος των διαφορετικών λογικών μεταβλητών που χρησιμοποιούνται στη συνάρ-τηση. Έτσι, μια συνάρτηση με (έστω) 4 μεταβλητές, απαιτεί 4 στήλες, μία για κάθεμεταβλητή, και 24=16 γραμμές στον πίνακα αλήθειας.

Το πλήθος των στηλών των ενδιάμεσων αποτελεσμάτων δεν είναι συγκεκριμένο,αλλά εξαρτάται από τις ενδιάμεσες πράξεις που πρέπει να υπολογιστούν πριν μπορέ-σουμε να υπολογίσουμε την έξοδο. Για παράδειγμα, μια συνάρτηση G=A+B+C,πρακτικά δεν χρειάζεται κανέναν ενδιάμεσο υπολογισμό, ενώ μια συνάρτησηH=A’+AB+AB’, παρότι έχει μόνο δύο εισόδους, απαιτεί 4 ενδιάμεσες στήλες (απόμία για το Α’, το Β’, το ΑΒ και το ΑΒ’). Πάντως, με την απόκτηση εμπειρίας, μπορείκανείς να παραβλέπει κάποια ενδιάμεσα αποτελέσματα.

Παρατηρώντας τον πίνακα αλήθειας προκύπτει πως η F ισούται με 1 όταν το Αείναι 0 (οπότε το Α’ θα είναι 1), κάτι που συμβαίνει στις τέσσερις πρώτες γραμμές ήόταν το Β και το C είναι ταυτόχρονα 1 (η τελευταία γραμμή) ή όταν ισχύουν και οιδύο περιπτώσεις (η τέταρτη γραμμή).

Σε περίπλοκες συναρτήσεις, είναι απαραίτητη η δημιουργία του πίνακα αλήθειας,καθώς είναι ο μοναδικός τρόπος να βρούμε πως συμπεριφέρεται η συγκεκριμένη συ-νάρτηση. Ωστόσο, σε απλές συναρτήσεις όπως αυτή του παραδείγματός μας, θα αρ-κούσε κανείς να μελετήσει προσεκτικά την ίδια τη συνάρτηση και να καταλήξει στοίδιο συμπέρασμα χωρίς την κατασκευή του πίνακα. Είναι φανερό ότι στην F=A’+BC,το αποτέλεσμα προκύπτει από ένα λογικό or ανάμεσα στο Α’ και στο BC. Άρα η F θαέχει έξοδο 1 είτε όταν το Α’ είναι 1 είτε όταν το BC είναι 1 (είτε όταν και τα δύο είναι1). Ωστόσο, για περισσότερη ασφάλεια, η κατασκευή του πίνακα αλήθειας είναι χρή-σιμη.

Page 7: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

7

3.3.2 Λογικά κυκλώματαΚάθε συνάρτηση boole αντιστοιχεί σε έναν και μοναδικό πίνακα αλήθειας.

Εάν όμως χρησιμοποιήσουμε τα γραφικά σύμβολα των πράξεων, μπορούμε για κάθεσυνάρτηση που είναι σε αλγεβρική μορφή να δημιουργήσουμε ένα λογικό κύκλωμα(logic circuit) το οποίο να αποτελείται από λογικές πύλες και συνδέσεις μεταξύ τους.Τα λογικά κυκλώματα έχουν μεγάλη πρακτική αξία, καθώς είναι ο τρόπος με τον ο-ποίο υλοποιούνται σε πραγματικά κυκλώματα οι συναρτήσεις. Στα κυκλώματα αυτάυπάρχουν γεννήτριες ψηφιακών σημάτων και γραμμές μεταφοράς (που μπορούμε νατα φανταζόμαστε ως σύρματα ή καλώδια) αυτών των σημάτων από τις εισόδους στιςπύλες και από εκεί στην έξοδο.

Η κατασκευή του κυκλώματος θα ακολουθήσει τη λογική που υπάρχει στησυνάρτηση. Έτσι, πρώτα θα πρέπει να υλοποιηθούν οι πράξεις με τη μεγαλύτερηπροτεραιότητα και στη συνέχεια τα αποτελέσματά τους θα πρέπει να διασυνδεθούνκατάλληλα. Η διαδικασία αυτή προχωρά «από τα αριστερά προς τα δεξιά» έως ότουπαραχθεί η έξοδος.

Παράδειγμα 3.1Για να κατασκευάσουμε ένα λογικό κύκλωμα για τη συνάρτηση F=A’+BC, ξεκινού-με σχεδιάζοντας τόσες γραμμές εισόδου όσες και οι διαφορετικές μεταβλητές εισόδουκαι μία γραμμή για την έξοδο, όπως στο Σχήμα 3.2. Στο Σχήμα αυτό υποθέτουμε ότιαριστερά από κάθε είσοδο υπάρχει ένας μηχανισμός που παράγει ψηφιακά σήματα,ενώ η περιοχή ανάμεσα στις εισόδους και την έξοδο περιλαμβάνει την παραγωγή τωνενδιάμεσων αποτελεσμάτων.

Σχήμα 3.2

Όπως είναι φανερό, αμέσως μετά τον καθορισμό των εισόδων, το επόμενοβήμα είναι η διασύνδεση των πυλών που θα υλοποιήσουν τις λογικές πράξεις που έ-χουν τη μεγαλύτερη προτεραιότητα. Για την F=A’+BC, φαίνεται ότι θα πρέπει πρώτανα αντιστραφεί η είσοδος Α. Επίσης, μπορεί να υλοποιηθεί και το λογικό AND ανά-μεσα στις Β και C. Αφού ολοκληρωθούν αυτές οι τοποθετήσεις και οι διασυνδέσεις,το λογικό κύκλωμα που υλοποιεί την F είναι αυτό που φαίνεται στο Σχήμα 3.2.

Παράδειγμα 3.2Έστω η συνάρτηση F = A’B+AB+AB’. Θα κατασκευάσουμε το λογικό κύκλωμα πουτην υλοποιεί.Στη συνάρτηση αυτή υπάρχουν δύο διαφορετικές είσοδοι. Και οι δύο είσοδοι χρειά-ζεται να αντιστραφούν αφού σε διαφορετικούς όρους χρειάζονται τα συμπληρώματατου Α και του Β. Ωστόσο, θα χρειαστούμε και τις αρχικές τιμές των Α και Β. Αφού

Page 8: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

8

λοιπόν υλοποιηθούν τα Α’Β, ΑΒ και ΑΒ’, και τα τρία θα μπουν σε μία πύλη OR τρι-ών εισόδων, όπως στο Σχήμα 3.3

Σχήμα 3.3

Στο Σχήμα 3.3 χρησιμοποιούμε επιπλέον κάποιες διακλαδώσεις (οι έντονες τελείες),οι οποίες μεταφέρουν το ίδιο σήμα εισόδου. Στην είσοδο Α υπάρχουν δύο τέτοιες δι-ακλαδώσεις, μία για να μεταφέρει το Α στον αντιστροφέα και μία για να το μεταφέρειστην πύλη ΑΒ’. Επιπλέον, στα σημεία όπου οι γραμμές που μεταφέρουν διαφορετικάσήματα διασταυρώνονται, σχεδιάζεται μια μικρή καμπύλη που έχει το ρόλο της γέ-φυρας.

Παράδειγμα 3.3Σε αυτό το παράδειγμα θα ξεκινήσουμε από μία συνάρτηση, για την οποία θα κατα-σκευάσουμε και τον πίνακα αλήθειας αλλά και το λογικό κύκλωμα, κάνοντας έτσι μιαολοκληρωμένη μελέτη. Έστω λοιπόν η συνάρτηση F=(AB+AC)’.(A’C+ΑΒ). Μιαπρώτη παρατήρηση είναι ότι ενώ στα δύο προηγούμενα παραδείγματα η συνάρτησηήταν ένα «άθροισμα γινομένων», εδώ είναι ένα «γινόμενο αθροισμάτων». Η κατα-σκευή του πίνακα αλήθεια θα πρέπει να περιλαμβάνει τρεις εισόδους, επτά ενδιάμεσααποτελέσματα και την έξοδο. Για λόγους ευκολίας στο λογικό κύκλωμα, θα αντιστοι-χίσουμε ένα σύμβολο (K, L, M, N, P και Q) σε κάθε ενδιάμεσο αποτέλεσμα, όπωςφαίνεται στον ακόλουθο πίνακα αλήθειας:

Είσοδοι Ενδιάμεσα αποτελέσματα ΈξοδοςΑ Β C K=AB L=AC M=K+L N=M’ A’ P=A’C Q=P+K F=NQ0 0 0 0 0 0 1 1 0 0 00 0 1 0 0 0 1 1 1 1 10 1 0 0 0 0 1 1 0 0 00 1 1 0 0 0 1 1 1 1 11 0 0 0 0 0 1 0 0 0 01 0 1 0 1 1 0 0 0 0 01 1 0 1 0 1 0 0 0 1 01 1 1 1 1 1 0 0 0 1 0

Πίνακας 3.2

Το λογικό κύκλωμα για την F φαίνεται στο Σχήμα 3.4 που ακολουθεί:

Page 9: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

9

A

B

C

K

L

M N

A’

P

QF

Σχήμα 3.4

Κάθε λογική συνάρτηση αντιστοιχίζεται σε ένα και μοναδικό πίνακα αλήθει-ας. Ωστόσο δε συμβαίνει το ίδιο και με τα λογικά κυκλώματα. Πράγματι, το λογικόκύκλωμα του Σχήματος 3.4 προέκυψε από τη συνάρτηση F=(AB+AC)’.(A’C+ΑΒ).Ωστόσο, για την ίδια συνάρτηση μπορούμε να κατασκευάσουμε ένα πολύ απλούστε-ρο λογικό κύκλωμα, λαμβάνοντας υπόψη μόνο τις εισόδους και την έξοδο του πίνακααλήθειας και συνθέτοντας το κύκλωμα με τη λογική που υπάρχει μέσα στον πίνακα.Έτσι, ο ακόλουθος Πίνακας 3.3 περιλαμβάνει μόνο τις στήλες των εισόδων και τηςεξόδου της F:

Είσοδοι ΈξοδοςΑ Β C F0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 01 0 1 01 1 0 01 1 1 0

Πίνακας 3.3

Πότε ακριβώς η έξοδος είναι 1; Είτε στη γραμμή 2 είτε στη γραμμή 4 του πίνακα αυτού. Προσέξτε ότι η φρά-

ση αυτή εμπεριέχει το λογικό OR, θα μπορούσαμε δηλαδή να πούμε ότιF=(γραμμή2 + γραμμη4).

Στη γραμμή 2 οι είσοδοι Α και Β είναι 0 ενώ η C είναι 1 την ίδια στιγμή. Εδώεμπεριέχεται το λογικό AND ανάμεσα στις τρεις εισόδους. Μπορούμε δηλαδήνα πούμε ότι γραμμή2 = Α’Β’C

Στη γραμμή 4 το Α είναι 0 ενώ τα B και C είναι 1, έχουμε λοιπόν γραμ-μή4=Α’BC.

Συνθέτοντας τα παραπάνω, προκύπτει ότι F=Α’Β’C+A’BC. Κατά συνέπεια, μπορού-με να κατασκευάσουμε ένα πολύ απλούστερο λογικό κύκλωμα, όπως στο Σχήμα 3.5

Page 10: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

10

που θα συμπεριφέρεται ακριβώς όπως το κύκλωμα του Σχήματος 3.4 για κάθε συνδυ-ασμό εισόδων!

Σχήμα 3.5

Τα κυκλώματα των Σχημάτων 3.4 και 3.5, υλοποιούν ακριβώς την ίδια λει-τουργία, είναι δηλαδή ισοδύναμα. Είναι προφανές ότι θα πρέπει να επιζητούμε πάντατην ελαχιστοποίηση των πυλών που χρησιμοποιούνται σε ένα οποιοδήποτε κύκλωμα.Ο τρόπος που περιγράφηκε είναι ο απλούστερος, ωστόσο θα μπορούσαμε να οδηγη-θούμε σε παρόμοια απλούστευση χωρίς την κατασκευή του πίνακα αλήθειας αλλά μετη χρήση αλγεβρικών απλουστεύσεων. Για το λόγο αυτό θα πρέπει να αναφερθούνκαι οι βασικές ταυτότητες της άλγεβρας boole.

3.3.3 Βασικές ταυτότητες άλγεβρας booleΣτην παράγραφο αυτή θα αναφερθούμε στις ταυτότητες της άλγεβρας boole

και στον τρόπο χρήσης τους έτσι ώστε να απλοποιούνται οι λογικές συναρτήσεις.Όπως ήδη αναφέρθηκε, η απλοποίηση των συναρτήσεων οδηγεί σε απλούστερα κυ-κλώματα, κάτι που σημαίνει μικρότερο κόστος κατασκευής ψηφιακών κυκλωμάτων.

Πολλές από τις ταυτότητες μοιάζουν με αυτές που γνωρίζουμε από την κανο-νική άλγεβρα, ωστόσο άλλες όχι. Δεν πρέπει να συγχέουμε τις δύο άλγεβρες παρά τιςοποιεσδήποτε ομοιότητες. Για παράδειγμα, όπως φαίνεται από τον Πίνακα 3.4 πουακολουθεί, μόνο οι ταυτότητες 10 έως 15 μοιάζουν με αυτές της γνωστής άλγεβραςενώ οι υπόλοιπες όχι.

1 Χ+0=Χ 2 Χ.1=Χ3 Χ+1=1 4 Χ.0=05 Χ+Χ=Χ 6 Χ.Χ=Χ7 Χ+Χ’=1 8 Χ.Χ’=09 (Χ’)’=Χ (δεν υπάρχει δυική)10 Χ+Υ=Υ+Χ 11 Χ.Υ=Υ.Χ Μεταθετική12 Χ+(Υ+Ζ)=(Χ+Υ)+Ζ 13 Χ.(Υ.Ζ)=(Χ.Υ).Ζ Προσεταιριστική14 Χ.(Υ+Ζ)=Χ.Υ+Χ.Ζ 15 Χ+Υ.Ζ=(Χ+Υ).(Χ+Ζ) Επιμεριστική16 (Χ+Υ)’=Χ’.Υ’ 17 (Χ.Υ)’=Χ’+Υ’ De Morgan

Πίνακας 3.4

Page 11: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

11

Θα πρέπει επίσης να πούμε ότι στην άλγεβρα boole ισχύει ένα είδος δυισμού(duality). Για κάθε συνάρτηση boole η δυική της προκύπτει αλλάζοντας τα AND σεOR και τα 0 σε 1 και αντίστροφα. Στον Πίνακα 3.4, οι ταυτότητες τοποθετούνται σεδύο στήλες, έτσι ώστε κάθε ταυτότητα να εμφανίζεται δίπλα στη δυική της.

Όλες οι ταυτότητες μπορούν με ευκολία να επαληθευθούν, κατασκευάζονταςτους πίνακες αλήθειας τους. Για παράδειγμα, ο Πίνακας 3.5.α περιλαμβάνει τον πίνα-κα αλήθειας για την ταυτότητα 12, ο πίνακας 3.5.β για την ταυτότητα 15 και ο πίνα-κας 3.γ για την ταυτότητα 17.

Χ Υ Ζ Χ+Υ Υ+Ζ (Χ+Υ)+Ζ Χ+(Υ+Ζ)0 0 0 0 0 0 00 0 1 0 1 1 10 1 0 1 1 1 10 1 1 1 1 1 11 0 0 1 0 1 11 0 1 1 1 1 11 1 0 1 1 1 11 1 1 1 1 1 1

Πίνακας 3.5.α

Χ Υ Ζ Υ.Ζ Χ+Υ Χ+Ζ Χ+Υ.Ζ (Χ+Υ).(Χ+Ζ)0 0 0 0 0 0 0 00 0 1 0 0 1 0 00 1 0 0 1 0 0 00 1 1 1 1 1 1 11 0 0 0 1 1 1 11 0 1 0 1 1 1 11 1 0 0 1 1 1 11 1 1 1 1 1 1 1

Πίνακας 3.5.β

Χ Υ Χ.Υ Χ’ Υ’ (Χ.Υ)’ Χ’+Υ’0 0 0 1 1 1 10 1 0 1 0 1 11 0 0 0 1 1 11 1 1 0 0 0 0

Πίνακας 3.5.γ

Page 12: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

12

3.3.4 Αλγεβρικοί μετασχηματισμοίΣτην παράγραφο αυτή θα δούμε πώς μπορούμε να απλοποιήσουμε λογικές

συναρτήσεις με τη βοήθεια των ταυτοτήτων της άλγεβρας boole. Για το σκοπό αυτόθα χρησιμοποιήσουμε τη συνάρτηση F=(AB+AC)’.(A’C+ΑΒ) του Παραδείγματος3.3.

Για λόγους ευκολίας μπορούμε να αντικαθιστούμε έναν οποιονδήποτε όρο μεμία μεταβλητή. Για παράδειγμα, αντικαθιστώντας το ΑΒ με Χ το ΑC με Υ και τοΑ’C με Ζ, η συνάρτηση γίνεται

F= (X+Y)’(Z+X)= (X+Y)’(X+Z) (μεταθετική)= Χ’Υ’(Χ+Ζ) (de morgan)= Χ’ΧΥ’ +Χ’Υ’Ζ (επιμεριστική και μεταθετική)= 0Υ’+Χ’Υ’Ζ (ταυτότητα 8)= 0+Χ’Υ’Ζ (ταυτότητα 4)= Χ’Υ’Ζ (ταυτότητα 1)= (AB)’(AC)’(A’C) (αντικατάσταση)=(Α’+Β’)(Α’+C’)(A’C) (de morgan)= (A’+B’)(A’A’C+C’A’C) (επιμεριστική)=(Α’+Β’)(Α’C+0A’) (ταυτότητες 6 και 8)=(A’+B’)(A’C) (ταυτότητες 4 και 1)=Α’Α’C+B’A’C (επιμεριστική)=Α’C+A’B’C (ταυτότητα 6 και μεταθετική)=A’C(1+C) (επιμεριστική)=Α΄C (ταυτότητα 3 και μετά ταυτότητα 2)

Στο παράδειγμα αυτό, η αρχική συνάρτηση απλοποιήθηκε σε μια πολύ α-πλούστερη, κάνοντας εκτεταμένη χρήση των ταυτοτήτων. Φυσικά θα μπορούσαμε ναοδηγηθούμε στο ίδιο αποτέλεσμα ακολουθώντας διαφορετικό (και ενδεχομένως πολύαπλούστερο) δρόμο εφαρμογής των ταυτοτήτων, ωστόσο το παράδειγμα είναι χρήσι-μο ακριβώς για διδακτικούς λόγους.

Ενδιαφέρον είναι να παρατηρηθεί ότι η είσοδος Β έχει απλοποιηθεί εντελώς,καθώς δεν εμφανίζεται πουθενά στην F=A’C. Θα πρέπει επίσης να σημειωθεί ότι ημορφή αυτή της συνάρτησης δεν είναι διαφορετική από αυτή που προέκυψε από τηναπευθείας παρατήρηση του πίνακα αλήθειας στο Παράδειγμα 3.3 (Σχήμα 3.4). Πράγ-ματι, αν απλοποιήσουμε την F=A’B’C+A’BC θα οδηγηθούμε στο ίδιο αποτέλεσμα:F = A’B’C+A’BC

= A’(B’+B)C= A’1C= A’C

Στο ίδιο συμπέρασμα θα μπορούσαμε να οδηγηθούμε και με μια περισσότερο προσε-κτική μελέτη του Πίνακα αλήθειας 3.3 της F, ο οποίος επαναλαμβάνεται παρακάτω:

Page 13: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

13

Είσοδοι ΈξοδοςΑ Β C F0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 01 0 1 01 1 0 01 1 1 0

Πίνακας 3.3 (επαναληπτικά)

Όπως είναι πλέον φανερό από αυτό τον πίνακα, η F είναι 1 όταν το Α είναι 0και το C είναι 1, οποιαδήποτε τιμή και αν έχει το Β !

Ολοκληρώνοντας τη συζήτηση αυτή, σημειώνεται ότι οι αλγεβρικοί μετασχη-ματισμοί μπορούν να χρησιμοποιούνται για την απλοποίηση σχετικά μικρών λογικώνσυναρτήσεων. Στη βιβλιογραφία περιγράφονται και άλλοι, πιο τυπικοί τρόποι, όπωςοι χάρτες Καρνώ (karnaugh), που χρησιμοποιούνται για το σκοπό αυτό. Η περιγρα-φή τους ξεφεύγει ωστόσο από τους σκοπούς αυτού του βιβλίου.

3.4 Πύλες NAND, NOR, XOR και XNORΟι πύλες AND, OR και ΝΟΤ, μπορούν να υλοποιήσουν οποιαδήποτε λογικό

κύκλωμα, εφόσον όλες οι λογικές συναρτήσεις κατασκευάζονται με τις αντίστοιχεςλογικές πράξεις. Ωστόσο, δεν είναι οι μοναδικές πύλες που υπάρχουν. Η κατασκευήνέων πυλών που υλοποιούν διαφορετική λογική, μπορεί να είναι ευκολότερο να κα-τασκευαστούν σε μεγάλη κλίμακα ή να βολεύουν στη δημιουργία λογικών κυκλωμά-των, περισσότερο από τις βασικές λογικές πύλες. Ένα τέτοιο παράδειγμα είναι οι πύ-λες ΝΑND, NOR, ΧΟR και ΧΝΟR, τις οποίες περιγράφουμε στη συνέχεια:

Πύλη NAND: Το όνομα της πύλης αυτής προκύπτει από τη σύντμηση του NOT καιτου AND. Πρόκειται για μία πύλη AND που υλοποιεί το λογικό ΚΑΙ ανάμεσα στιςεισόδους, ακολουθούμενη από έναν αντιστροφέα ο οποίος αντιστρέφει την έξοδο τηςAND. Εάν Α και Β είναι οι είσοδοι, τότε μια πύλη NAND υλοποιεί την πράξη Z = ANAND B = (A.B)’. Σχηματικά σχεδιάζεται όπως η AND με την προσθήκη ενός μι-κρού κύκλου στην έξοδό της, ενώ δεν έχει κάποιο ιδιαίτερο αλγεβρικό σύμβολο

Page 14: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

14

A

B Z = A NAND Bή Ζ = (Α·Β)’

Α Β Ζ=Α NAND Β0 0 10 1 11 0 11 1 0

Πύλη NOR: Το όνομα της πύλης αυτής προκύπτει από τη σύντμηση του NOT καιτου OR. Πρόκειται για μία πύλη OR που υλοποιεί το λογικό H ανάμεσα στις εισό-δους, ακολουθούμενη από έναν αντιστροφέα ο οποίος αντιστρέφει την έξοδο της OR.Εάν Α και Β είναι οι είσοδοι, τότε μια πύλη NOR υλοποιεί την πράξη Z = A NOR B= (A+B)’. Σχηματικά σχεδιάζεται όπως η OR με την προσθήκη ενός μικρού κύκλουστην έξοδό της. Και η πύλη ΝΟR δεν έχει αλγεβρικό σύμβολο.

A

B Z = A NOR Bή Ζ = (Α+Β)’

Α Β Ζ=Α NOR Β0 0 10 1 01 0 01 1 0

Πύλη ΧOR: Το όνομα της πύλης αυτής προκύπτει από τη σύντμηση του Exclusive(αποκλειστικό) και του OR. Η λογική που υλοποιεί περιορίζει την OR αφού η έξοδόςτης είναι 1 ΜΟΝΟ εάν μία από τις εισόδους είναι 1 και η άλλη 0. Εναλλακτικά μπο-ρεί κανείς να θεωρεί ότι η XOR σηματοδοτεί την αλλαγή από 1 σε 0 και αντίστροφα.Εάν Α και Β είναι οι είσοδοι, τότε μια πύλη ΧOR υλοποιεί την πράξη Z = A XOR B= AB. Χρησιμοποιώντας τον πίνακα αλήθειας, μπορούμε να αναλύσουμε αλγεβρικάτην XOR ως: Ζ=ΑΒ=Α’Β+ΑΒ’. Σχηματικά σχεδιάζεται όπως η OR με την προσθή-κη ενός μικρού κυκλικού τόξου στην είσοδό της.

A

BZ = A XOR B

Α Β Ζ=Α Β0 0 00 1 11 0 11 1 0

Πύλη ΧNOR: Το όνομα της πύλης αυτής προκύπτει από τη σύντμηση του ΝΟΤ καιτου ΧOR. Πρόκειται δηλαδή για μια XOR με έναν αντιστροφέα στην έξοδο. Εάν Ακαι Β είναι οι είσοδοι, τότε μια πύλη ΧΝOR υλοποιεί την πράξη Z = A XOR B. ΗXNOR είναι 1 όταν και οι δύο είσοδοι είναι 1 ή και οι δύο είναι 0, όταν δηλαδή έχουντην ίδια τιμή. Η αλγεβρική πράξη που υλοποιεί, όπως φαίνεται από τον πίνακα αλή-θειας της είναι η Ζ=Ζ ΧΝΟR Β =(ΑΒ)’ = Α’Β’+ΑΒ. Σχηματικά σχεδιάζεται όπως ηXOR με την προσθήκη ενός μικρού κύκλου (αντιστροφέα) στην έξοδό της.

Page 15: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

15

A

BZ = A XNOR B

Α Β Ζ=Α ΧΝΟR Β0 0 10 1 01 0 01 1 1

Η κατασκευή κυκλωμάτων με τη χρήση των πυλών αυτών ακολουθεί τους ί-διους ακριβώς κανόνες που έχουν αναφερθεί σε προηγούμενη παράγραφο. Έτσι απόμια συνάρτηση που περιλαμβάνει πράξεις NAND, NOR, XOR ή XNOR, μπορούμεκάνοντας χρήση των κανόνων προτεραιότητας να σχεδιάσουμε ένα οποιοδήποτε ψη-φιακό κύκλωμα. Επιπλέον μπορούμε αναλύοντας τις λογικές πράξεις αλγεβρικά μπο-ρούμε να τις απλοποιήσουμε κατάλληλα έτσι ώστε να κατασκευαστούν απλούστερακυκλώματα. Ωστόσο, αυτές οι πύλες χρησιμοποιούνται περισσότερο για άλλους λό-γους, όπως θα δούμε στη συνέχεια.

3.5 Οικουμενικές πύλεςΚάθε μία από τις υπόλοιπες πύλες μπορεί να κατασκευαστεί με τη χρήση μόνο

NAND πυλών. Η ιδιότητα αυτή της οικουμενικότητας της πύλης NAND έχει ιδιαίτε-ρη πρακτική σημασία, αφού με αυτόν τον τρόπο η βιομηχανία ημιαγωγών μπορεί ναασχολείται με την κατασκευή και βελτίωση κυκλωμάτων που περιέχουν μόνο ένα εί-δος πυλών, κάτι που με τη σειρά του σημαίνει χαμηλό κόστος κατασκευής και μεγάληολοκλήρωση.

Στο Σχήμα 3.6 που ακολουθεί, φαίνεται ο τρόπος με τον οποίο κάθε μία απότις βασικές πύλες AND, OR και ΝΟΤ μπορεί να υλοποιηθεί αποκλειστικά με πύλεςΝΑΝD.

Σχήμα 3.6

Η απλή αντιστροφή (NOT) είναι προφανές ότι μπορεί να υλοποιηθεί με μία NAND.Η πύλη ΑND υλοποιείται με μία NAND την έξοδο της οποίας αντιστρέφουμε. Τέλοςη πύλη OR επιτυγχάνεται με την αντιστροφή των εισόδων και την είσοδο των συ-

Page 16: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

16

μπληρωμάτων σε μία NAND. Ειδικά για την OR προσέξτε ότι Α’ ΝΑΝD B’ =(A’.B’)’ = A+B (de morgan).

Έχοντας τα παραπάνω υπόψη μπορούμε να μετατρέψουμε κάθε ψηφιακό κύ-κλωμα που περιλαμβάνει τις βασικές πύλες σε κύκλωμα που περιέχει μόνο πύλεςNAND. Ο τρόπος αυτός είναι άμεσος, απλώς χρησιμοποιούμε τις αντιστοιχίσεις τουΣχήματος 3.6.

Ένας ακόμη ευκολότερος τρόπος για μια τέτοια μετατροπή, όταν η συνάρτησήμας είναι σε μορφή αθροίσματος γινομένων, περιγράφεται στη συνέχεια με τη βοή-θεια του παραδείγματος 3.5 που ακολουθεί:

Παράδειγμα 3.5:Έστω η συνάρτηση F=AB + CD. Το κύκλωμα που υλοποιεί τη συνάρτηση με πύλεςAND και OR φαίνεται στο Σχήμα 3.7.α. Στο Σχήμα 3.7.β ωστόσο, προσθέσαμε στηνέξοδο κάθε AND που οδηγεί στην είσοδο της OR από μια αντιστοφή (ο μικρός κύ-κλος). Είναι προφανές ότι επειδή σε κάθε γραμμή υπάρχουν δύο αντιστροφές, το σή-μα που μεταφέρεται είναι ακριβώς το ίδιο, καθώς (Χ’)’=Χ. Σε αυτό το σημείο όπωςφαίνεται, οι πύλες AND έχουν ήδη μετατραπεί σε NAND, ενώ η OR περιλαμβάνειδύο εισόδους με αντιστροφέα.

Σχήμα 3.7.α Σχήμα 3.7.β

Ωστόσο, η πράξη Χ’+Υ’ ισούται με (ΧΥ)’ (de morgan), οπότε η πύλη OR με τουςαντιστροφείς στην είσοδο μπορεί να μετατραπεί σε ΝΑΝD, όπως φαίνεται στο τελικόσχήμα 3.7.γ

Σχήμα 3.7.γ

Η διαδικασία μπορεί να τυποποιηθεί και να χρησιμοποιηθεί και σε περισσότε-ρο περίπλοκες συναρτήσεις, που συμπεριλαμβάνουν περισσότερα επίπεδα υλοποίη-σης.

Θα πρέπει να αναφερθεί ότι η πύλη NOR είναι η δυική της NAND. Κατά συ-νέπεια, η περιγραφή που κάναμε παραπάνω μπορεί να εφαρμοστεί και για τις πύλεςNOR. Στο Σχήμα 3.7, φαίνονται οι τρόποι με τους οποίους κάθε βασική πύλη μπορεί

Page 17: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

17

να μετατραπεί σε NOR (κατ’ αντιστοιχία με το Σχήμα 3.6). Έχοντας αυτό υπόψη ηπύλη NOR θεωρείται μαζί με την πύλη ΝΑΝD ως οικουμενικές (universal) πύλες:

Σχήμα 3.8

Το γεγονός ότι οι πύλες ΝΑND και NOR κατέχουν την ιδιότητα της οικουμε-νικότητας, είναι ιδιαίτερα σημαντικό για την κατασκευή περίπλοκων λογικών κυ-κλωμάτων. Έτσι, αντί να κατασκευάζονται κυκλώματα με διαφορετικά είδη πυλών, ηβιομηχανία κατασκευάζει κυκλώματα κάνοντας χρήση μόνο ενός είδους οικουμενι-κής πύλης, γεγονός που όπως είναι φυσικό απλοποιεί τη μαζική παραγωγή και ρίχνειδραματικά το κόστος της.

3.6 Πύλες με περιττή (odd) λειτουργίαΌπως έχει ήδη αναφερθεί, η πύλη XOR υλοποιεί την πράξηΑΒ = Α’Β+ΑΒ’.

Η έξοδός της είναι 1 όταν μόνο μία από τις εισόδους της είναι 1. Η ΧΝΟR υλοποιείτη συνάρτηση ΧΥ+(ΧΥ)’, κάτι που προκύπτει είτε από τον πίνακα αλήθειας της είτεαπό την αντιστροφή της αντίστοιχης XOR.

Για την XOR ισχύουν οι ταυτότητες του Πίνακα 3.7 που ακολουθεί:

1 Χ0=X 2 Χ1=X’3 XX=0 4 XX’=15 XY’=(XY)’ 6 X’Y=(XY)’7 ΧΥ=ΥΧ 8 Χ(ΥΖ)=(ΧΥ)Ζ=ΧΥΥ

Πίνακας 3.7

Όλες οι ταυτότητες αυτές μπορούν να επαληθευτούν με τη χρήση είτε πινά-κων αλήθειας είτε αλγεβρικών πράξεων. Ωστόσο, αν και η φυσική σημασία της XORείναι φανερή για δύο εισόδους, δεν συμβαίνει το ίδιο για μια XOR με τρεις εισόδους.Στην περίπτωση αυτή θα μετατρέψουμε τις XOR όπως ακολούθως:ΧΥΖ =(ΧΥ’+Χ’Υ)’Ζ+(ΧΥ’+Χ’Υ)Ζ’

=(ΧΥ+Χ’Υ’)Ζ+(ΧΥ’+Χ’Υ)Ζ’

Page 18: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

18

=ΧΥΖ+Χ’Υ’Ζ+ΧΥ’Ζ’+Χ’ΥΖ’Παρατηρώντας προσεκτικά την τελική συνάρτηση, προκύπτει ότι αυτή θα έχει έξοδο1 είτε όταν μία μόνο από τις εισόδους είναι 1 και οι άλλες 0, είτε όταν και οι τρεις εί-σοδοι είναι 1. Με άλλα λόγια, η έξοδός της είναι 1 όταν των πλήθος των 1 στην είσο-δο είναι περιττό (1 ή 3).

Η ίδια παρατήρηση θα προκύψει και στην περίπτωση περισσότερων (τεσσά-ρων ή και παραπάνω) εισόδων. Για αυτό το λόγο η πύλη XOR λέγεται ότι έχει περιτ-τη (odd) λειτουργία. Μια άμεση εφαρμογή αυτής της ιδιότητας ακολουθεί στο Παρά-δειγμα 3.6 που ακολουθεί:

Παράδειγμα 3.6Κατά την αποστολή ενός ψηφιακού μηνύματος, είναι πιθανόν κάποια δεδομέ-

να να χαθούν λόγω θορύβου. Για αυτό το λόγο συχνά χρησιμοποιούμε ένα επιπλέονσήμα για έλεγχο, το οποίο αποστέλλουμε μαζί με το αρχικό σήμα. Όταν το νέο σήμαφτάνει στον προορισμό, τότε ελέγχεται και πάλι με τη βοήθεια του σήματος ελέγχου,και εάν υπάρχει κάποιο πρόβλημα κάνουμε τις απαραίτητες ενέργειες για τη διόρθω-ση του σφάλματος.

Η πιο απλή μορφή ενός τέτοιου σήματος ελέγχου είναι με τη χρήση του bitισοτιμίας (parity bit), που μπορεί να είναι είτε άρτια είτε περιττή. Στην περίπτωση τηςάρτιας ισοτιμίας, το bit αυτό προστίθεται στο αρχικό σήμα και λαμβάνει την τιμή 1 ή0 έτσι ώστε ο συνολικός αριθμός των 1 στο νέο σήμα να είναι άρτιος αριθμός. Στονπροορισμό, εάν το πλήθος των 1 είναι άρτιο, τότε υποθέτουμε ότι η μετάδοση έγινεσωστά, ενώ εάν το πλήθος είναι περιττό, τότε η μετάδοση έχει σίγουρα κάποιο σφάλ-μα. Αντίστοιχα εργαζόμαστε και στην περιττή ισοτιμία. Σημειώνεται βέβαια ότι εάνσυμβούν λάθη σε δύο σημεία του μηνύματος, τότε ο έλεγχος της ισοτιμίας δεν θα λει-τουργήσει σωστά (η μέθοδος αυτή είναι αρκετά πρωτόγονη).

Στο παράδειγμα αυτό θα κατασκευάσουμε ένα κύκλωμα που να δημιουργείένα bit άρτιας ισοτιμίας για ένα ψηφιακό σήμα τριών bits. Για την κατασκευή του κυ-κλώματος θα ακολουθήσουμε πρώτα το κλασικό τρόπο κατασκευής, κάνοντας πρώτατον πίνακα αλήθειας και υλοποιώντας τον με τη χρήση πυλών ΑΝD, OR και ΝΟΤ.Στη συνέχεια, θα χρησιμοποιήσουμε την περιττή λογική της XOR για να παρουσιά-σουμε ένα πολύ απλούστερο κύκλωμα που επιτελεί την ίδια λειτουργία.

Ο πίνακας αλήθειας 3.8 της γεννήτριας άρτιας ισοτιμίας φαίνεται στη συνέχεια:

Μήνυμα Bit άρτιας ισοτιμίαςΧ Υ Ζ P0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 11 0 1 01 1 0 0

Page 19: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

19

1 1 1 1

Πίνακας 3.8

Από τον πίνακα αλήθειας, προκύπτει ότι:P=X’Y’Z+X’YZ’+XY’Z’+XYZ

Όπως είναι φανερό, η συνάρτηση βρίσκεται ήδη σε αρκετά απλοποιημένη μορφή, κα-τά συνέπεια οι επιπλέον αλγεβρικές πράξεις δεν θα προσφέρουν ιδιαίτερη βοήθεια.Το κύκλωμα του Σχήματος 3.9 υλοποιεί τη συνάρτηση Ρ με τις κλασικές πύλες:

Σχήμα 3.9.α

Μολονότι θα μπορούσαμε να τοποθετήσουμε διαφορετικά τις πύλες και τις συνδέ-σεις, το κύκλωμα που προκύπτει είναι αρκετά περίπλοκο, ιδιαίτερα στη συνδεσμολο-γία του.

Ωστόσο, μια δεύτερη ματιά στον Πίνακα 3.8, έχει ως αποτέλεσμα την παρα-τήρηση ότι η Ρ έχει ως αποτέλεσμα το 1 μόνο όταν το πλήθος των 1 των εισόδων εί-ναι περιττό. Αυτό σημαίνει βέβαια ότι η Ρ μπορεί να υλοποιηθεί ως Ρ=ΧΥΖ, όπωςστο Σχήμα 3.9.β

XY

Z P

Σχήμα 3.9.β

Όταν το σήμα φτάσει στον προορισμό του, αποτελείται από 4 bits (τρεις είσοδοι καιένα bit ισοτιμίας). Τώρα, ένα νέο κύκλωμα θα ελέγξει το πλήθος των 1. Η έξοδός τουPC θα είναι 1 εάν συμβεί λάθος, εάν δηλαδή το σήμα που λαμβάνεται έχει περιττόπλήθος bits. Και πάλι, έχοντας τον ίδιο τρόπο σκέψης, είναι προφανές ότι η συνάρτη-

Page 20: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

20

ση PC θα αναλύεται ως PC = XYZP, οπότε η κατασκευή του κυκλώματος ελέγ-χου θα είναι επίσης πολύ απλή.

Παράδειγμα 3.7Στο παράδειγμα αυτό, θα κατασκευάσουμε ένα κύκλωμα που θα προσθέτει δύο δυα-δικά ψηφία, θα είναι δηλαδή ένας ψηφιακός αθροιστής. Το πλήθος των εισόδων θαείναι φυσικά δύο (έστω Α και Β). Ωστόσο, όπως έχουμε ήδη μελετήσει σε προηγού-μενο κεφάλαιο, η πρόσθεση δύο bits έχει τα αποτελέσματα του Πίνακα 3.9 (όπου γιατην πρόσθεση χρησιμοποιούμε τη λέξη συν και όχι το σύμβολο):

Α Β F=A (συν) Β C (Κρατούμενο)0 0 0 00 1 1 01 0 1 01 1 0 1

Πίνακας 3.9

Το ενδιαφέρον σε αυτή την περίπτωση είναι ότι υπάρχουν περισσότερες από μία έξο-δοι. Έτσι, ενώ στις τρεις πρώτες γραμμές του Πίνακα 3.9 υπάρχει πλήρες αποτέλεσμαμε μία έξοδο, στην τελευταία γραμμή του πίνακα το άθροισμα των 1 και 1 θα δώσειως αποτέλεσμα 0 για την F και 1 για το κρατούμενο. Το κρατούμενο δεν μπορεί ναχαθεί, κατά συνέπεια του αντιστοιχίζουμε μία ακόμη έξοδο, τη C.Οι λογικές συναρτήσεις που προκύπτουν από τον πίνακα είναι αρκετά απλές. Πράγ-ματι:F = A’B+AB’ = A B καιC = ABΤο κύκλωμα που προκύπτει είναι εξίσου απλό και φαίνεται στο Σχήμα 3.10

A BF

C

Σχήμα 3.10

Το κύκλωμα αυτό είναι γνωστό και ως ημιαθροιστής (half adder).

3.7 Ανάλυση συνδυαστικών κυκλωμάτωνΈνα συνδυαστικό κύκλωμα αποτελείται από ένα σύνολο από ψηφιακές εισό-

δους, ένα σύνολο από διασυνδεδεμένες πύλες και ένα σύνολο ψηφιακών εξόδων.

Page 21: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

21

Όπως φαίνεται στο Σχήμα 3.11, το κύκλωμα δέχεται τα σήματα των εισόδων, οι πύ-λες τα συνδυάζουν και τα αποτελέσματα φαίνονται στις εξόδους, οι οποίες μπορούννα είναι περισσότερες από μία. Όπως γνωρίζουμε, οι Ν είσοδοι μπορούν να έχουν 2Ν

διαφορετικούς συνδυασμούς. Για κάθε έναν από τους συνδυασμούς εισόδων θα υ-πάρχει ένας και μόνο συνδυασμός των Μ εξόδων. Υπό την έννοια αυτή, κάθε έξοδοςμπορεί να θεωρηθεί ως διαφορετική συνάρτηση boole και όλο το κύκλωμα μπορεί ναθεωρηθεί ως ένα σύστημα συναρτήσεων boole.

N είσοδοι Μ έξοδοι

Σχήμα 3.11

Η ανάλυση του κυκλώματος συνίσταται στην εύρεση της εργασίας που επιτε-λεί. Σημαντικό βήμα προς το στόχο αυτό είναι ο υπολογισμός των συναρτήσεων πουυλοποιεί. Για το σκοπό αυτό μπορεί να χρησιμοποιηθεί ο πίνακας αλήθειας του κυ-κλώματος, ή (εφόσον το κύκλωμα είναι αρκετά απλό) η προσεκτική παρατήρηση καικαταγραφή των ενδιάμεσων εξόδων. Θα πρέπει βέβαια να σημειωθεί ότι το τελικόσυμπέρασμα του τι ακριβώς κάνει ένα κύκλωμα είναι μια αρκετά δύσκολη υπόθεση,όπως και κάθε πράξη αντίστροφης μηχανικής (reverse engineering). Στο παράδειγ-μα 3.8 που ακολουθεί, κατασκευάζουμε τις συναρτήσεις απευθείας από την παρατή-ρηση του λογικού κυκλώματος, ενώ στο παράδειγμα 3.9 κατασκευάζουμε τον πίνακααλήθειας ενός άλλου κυκλώματος.

Παράδειγμα 3.8Δίνεται το κύκλωμα του Σχήματος 3.12.α. Το κύκλωμα αυτό δεν επιτελεί κάποια ι-διαίτερη λειτουργία και σχεδιάζεται μόνο για λόγους διδακτικούς. Να καταγραφούνοι συναρτήσεις των εξόδων του.

Σχήμα 3.12.α

Το πρώτο βήμα είναι η αντιστοίχηση κάθε ενδιάμεσης εξόδου με ένα αυθαίρετο σύμ-βολο, όπως στο Σχήμα 3.11.β.

κύκλωμα........

....

....

Page 22: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

22

Σχήμα 3.12.β

Από την αντιστοίχηση αυτή προκύπτει ότι: K=A’ L=AB M=C+D N=LM F=(K+N)’ Z=MDΈχοντας τα παραπάνω υπόψη, ξεκινούμε από τις εξόδους προς τις εισόδους (από δε-ξιά προς τα αριστερά) αντικαθιστώντας κάθε φορά τα ενδιάμεσα σύμβολα. Έτσι:F = (Κ + N)’

= (A’ + (LM))’= (A’ +((AB)(C+D)))’

Στο σημείο αυτό, έχουμε εκφράσει την F ως συνάρτηση αποκλειστικά των εισόδων.Τώρα, μπορούμε να απλοποιήσουμε την F με αλγεβρικούς μετασχηματισμούς ή άλ-λες μεθόδους.Η έξοδος Ζ=MD μετασχηματίζεται γρηγορότερα ως εξής:Ζ = ΜD

= (C+D)D= CD+D= C

3.8 Μία εφαρμογή – ο Πλήρης ΑθροιστήςΣτην παράγραφο αυτή, εξετάζουμε ένα δημοφιλές κύκλωμα, το πλήρη αθροι-

στή. Θα ξεκινήσουμε αναλύοντας ένα έτοιμο κύκλωμα και στη συνέχεια θα προχω-ρήσουμε τη μελέτη σε αθροιστές πολλών δυαδικών ψηφίων.

Ξεκινώντας, ας θεωρήσουμε το κύκλωμα του Σχήματος 3.13. Θα κατασκευάσουμετον πίνακα αλήθεια του και θα προσπαθήσουμε να εξηγήσουμε τη λειτουργία του.

Page 23: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

23

Σχήμα 3.13

Στο κύκλωμα του Σχήματος 3.13 έχουμε ήδη σημειώσει τις επτά ενδιάμεσες εξόδουςτων πυλών με τα σύμβολα Κ, L, M, N, R, Q και R. Το κύκλωμα έχει τρεις εισόδους,άρα θα έχει 23=8 γραμμές, και δύο εξόδους. Κάθε είσοδος, κάθε ενδιάμεση έξοδοςκαι κάθε έξοδος θα έχει τη δική της στήλη στον πίνακα αλήθειας (Πίνακας 3.10).

A B C K L M N P G Q R F0 0 0 0 0 0 0 0 0 1 0 00 0 1 0 0 0 0 1 0 1 1 10 1 0 0 0 0 0 1 0 1 1 10 1 1 0 0 0 1 1 1 0 0 01 0 0 0 0 0 0 1 0 1 1 11 0 1 0 0 1 0 1 1 0 0 01 1 0 0 1 0 0 1 1 0 0 01 1 1 1 1 1 1 1 1 0 0 1

Πίνακας 3.10

Είναι προφανές ότι η σειρά με την οποία καταγράφονται οι στήλες εξαρτάται από τηλογική σειρά που ακολουθείται στο κύκλωμα. Έτσι, για παράδειγμα πρώτα θα κατα-γράψουμε και θα συμπληρώσουμε την Ρ και μετά την R. Όμοια, η μία από τις εξό-δους (G) θα καταγραφεί και θα συμπληρωθεί πριν την R, καθώς η R προκύπτει απόένα AND της P και του συμπληρώματος της G.

Η συζήτηση για το τι ακριβώς επιτελεί αυτό το κύκλωμα είναι περισσότεροπερίπλοκη και απαιτεί προσεκτική μελέτη των εξόδων σε συνδυασμό με τις εισόδουςτους. Η διαδικασία αυτή δεν είναι τυποποιημένη και έγκειται περισσότερο στην πα-ρατηρητικότητα και την εμπειρία του αναλυτή.

Στον Πίνακα 3.11 που ακολουθεί, επαναλαμβάνουμε τον Πίνακα 3.10, χωρίςτις ενδιάμεσες εξόδους:

A B C G F0 0 0 0 00 0 1 0 1

Page 24: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

24

0 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1

Πίνακας 3.11

Παρατηρώντας προσεκτικά κάθε γραμμή του πίνακα, μπορούμε να διακρίνουμε ότιεάν θεωρήσουμε οτι προσθέτουμε τις τιμές των εισόδων, τότε η έξοδος F θα είναι τοάθροισμα των A, B και C, ενώ η έξοδος G μπορεί να θεωρηθεί ως το κρατούμενο αυ-τής της πρόσθεσης. Για παράδειγμα, στην 6η γραμμή του πίνακα, το άθροισμα 1+0+1είναι 0 και 1 κρατούμενο, ενώ στην 8η γραμμή του πίνακα το άθροισμα 1+1+1 είναι 1και 1 κρατούμενο. Κατά συνέπεια, το κύκλωμα που αντιστοιχεί στον πίνακα αυτόνείναι και πάλι ένας αθροιστής.

Ο πλήρης αθροιστήςΟ αθροιστής που περιγράφουμε λέγεται πλήρης αθροιστής (full adder). Σε

έναν πλήρη αθροιστή, οι βασικές είσοδοι είναι δύο και αντιστοιχίζονται στα δύο ση-μαντικά bits που προστίθενται, ενώ η τρίτη είσοδος αφορά σε ένα κρατούμενο απόμία προηγούμενη πράξη. Οι έξοδοι είναι φυσικά δύο, καθώς το μεγαλύτερο άθροισμααντιστοιχεί στον αριθμό 310 = 112.

Έχοντας υπόψη τον πίνακα αλήθειας 3.11, μπορούμε να βρούμε τις αντίστοι-χες αλγεβρικές αναπαραστάσεις για τις δύο εξόδους, που είναι οι εξής:F = A’B’C+A’BC’+AB’C’+ABC καιG = A’BC+AB’C+ABC’+ABC, το οποίο αλγεβρικά μπορεί να μετατραπεί σεG=AB+AC+BC.Η κατασκευή του κυκλώματος, θα οδηγήσει σε ένα κύκλωμα παρόμοιο (αλλά όχι ίδι-ο) με το κύκλωμα του Σχήματος 3.13.Ωστόσο, ο πλήρης αθροιστής μπορεί να κατασκευαστεί και με απλούστερο τρόπο.Όπως φαίνεται στο Σχήμα 3.14, μπορεί να κατασκευαστεί με το συνδυασμό δύο ημι-αθροιστών και μιας πύλης OR.

Σχήμα 3.14

Page 25: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

25

Από το Σχήμα 3.14, προκύπτουν και οι τελικές συναρτήσεις για τον πλήρη αθροιστή:F = ABC καιG = AB+C(AB)

Επέκταση σε μεγαλύτερους αριθμούςΣτο παράδειγμα αυτό θα κατασκευάσουμε έναν αθροιστή για δύο δυαδικούς

αριθμούς των 4 bits. Ο αθροιστής θα χρησιμοποιεί το κύκλωμα του πλήρη αθροιστήπου ήδη περιγράψαμε στο Σχήμα 3.14, με τη διαφορά ότι θα θεωρήσουμε τον πλήρηαθροιστή ως ένα κλειστό, ολοκληρωμένο κύκλωμα. Αυτό σημαίνει ότι δε μας απα-σχολεί πλέον η διάταξη των πυλών στο εσωτερικό του πλήρη αθροιστή, αλλά η γενι-κή λειτουργία που επιτελεί, εξετάζοντάς την ένα επίπεδο πιο πάνω από το επίπεδοτων πυλών.

Στο Σχήμα 3.15, φαίνεται ο πλήρης αθροιστής (FA) ως «κλειστό» κουτί, τοοποίο έχει τρεις εισόδους και δύο εξόδους. Για λόγους ομοιομορφίας, θα ονομάσουμετις δύο εισόδους των δεδομένων ως Χ και Υ και την είσοδο που αφορά στο προηγού-μενο κρατούμενο ως Cin (carry in). Οι έξοδοι θα ονομαστούν S (sum) για το άθροι-σμα και Cout (carry out) για το κρατούμενο εξόδου.

Σχήμα 3.15

Θα αναπαραστήσουμε τους δύο αριθμούς των 4 bits ως Χ3Χ2Χ1Χ0 και Υ3Υ2Υ1Υ0. Τοάθροισμά τους θα είναι ο αριθμός S3S2S1S0. Το ψηφίο με δείκτη 0 είναι το λιγότεροσημαντικό ψηφίο των αριθμών ενώ το ψηφίο με δείκτη 3 είναι το περισσότερο σημα-ντικό ψηφίο τους. Κατά την πρόσθεση δύο δυαδικών αριθμών, όπως έχουμε περι-γράψει και σε προηγούμενο κεφάλαιο, ξεκινούμε προσθέτοντας τα λιγότερο σημαντι-κά ψηφία και, εφόσον προκύψει κρατούμενο, το προσθέτουμε και αυτό στα ψηφίατης αμέσως μεγαλύτερης σημαντικής θέσης. Κατά συνέπεια, αρχικά θα πρέπει ναπροσθέσουμε τα ψηφία Χ0 και Υ0, από τα οποία θα προκύψει το S0. Από την πρόσθε-ση αυτή θα προκύψει το κρατούμενο Cout0, (η τιμή του οποίου θα είναι είτε 0 είτε 1),το οποίο θα εισαχθεί ως κρατούμενο εισόδου στην επόμενη πρόσθεση που θα αφοράστα ψηφία Χ1 και Υ1. Η διαδικασία θα συνεχίσει έως ότου προστεθούν τα ψηφία Χ3και Υ3 μαζί με το κρατούμενο Cout2. Προσέξτε ότι εάν υπάρχει υπερχείλιση κατά τηνπρόσθεση, θα μεταφέρεται από το τελικό κρατούμενο Cout3.

Η συνολική διαδικασία φαίνεται στο Σχήμα 3.16. Το σχήμα αυτό μελετάταιαπό δεξιά προς τα αριστερά, αν και μπορεί να τοποθετηθεί με οποιονδήποτε τρόπο. Οκάθε αθροιστής ονομάζεται σύμφωνα με τα ψηφία που προσθέτει, ενώ κατά την πρό-σθεση των ψηφίων X0 και Υ0, το κρατούμενο εισόδου Cin0 είναι προφανώς σταθερά0.

FA

Χ Υ

CinCout

S

Page 26: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

26

Σχήμα 3.16

Είναι προφανές ότι ο αθροιστής αυτός μπορεί να μεγαλώσει όσο χρειάζεταιγια να προσθέτει αριθμούς οσοδήποτε μεγάλους. Η λογική που χρησιμοποιήσαμε,μπορεί να χρησιμοποιηθεί και σε κυκλώματα που κάνουν διαφορετικές λειτουργίες.Έτσι, θα μπορούσαμε να κατασκευάσουμε έναν αφαιρέτη αριθμών με περισσότερααπό 2 bits, ένα κύκλωμα σύγκρισης αριθμών κ.ο.κ., χρησιμοποιώντας πάντα απλού-στερα κυκλώματα και όχι σχεδιάζοντας από την αρχή το κατάλληλο κύκλωμα. Άλλαπολύ σημαντικά τέτοια κυκλώματα είναι οι πολυπλέκτες και αποκωδικοποιητές, ηπεριγραφή των οποίων εύκολα βρίσκεται στη βιβλιογραφία.

3.9 Ακολουθιακά κυκλώματαΤα ψηφιακά κυκλώματα ανήκουν σε δύο μεγάλες κατηγορίες: τα συνδυαστι-

κά (combinatorial) και τα ακολουθιακά (sequential). Και τα δύο είδη κυκλωμάτωναποτελούνται από πύλες και συνδέσεις, ωστόσο η διαφορά μεταξύ τους σχετίζεται μετη συμπεριφορά τους κατά τη διάρκεια του χρόνου. Έτσι: Στα συνδυαστικά κυκλώματα οι έξοδοι των πυλών εξαρτώνται αποκλειστικά από

τις παρούσες εισόδους τους στη δεδομένη χρονική στιγμή. Στα ακολουθιακά κυκλώματα εμπεριέχονται και στοιχεία μνήμης. Αυτό σημαίνει

ότι οι έξοδοι δεν εξαρτώνται μόνο από τις εισόδους σε μια δεδομένη χρονικήστιγμή, αλλά και από τις προηγούμενες τιμές που έχουν ήδη αποθηκευτεί σε αυτάτα στοιχεία μνήμης.

Δεδομένου ενός ψηφιακού κυκλώματος, είναι εύκολο να διακρίνουμε σε ποιααπό τις δύο κατηγορίες ανήκει: τα συνδυαστικά κυκλώματα δεν περιέχουν στοιχείαανάδρασης (επανατροφοδότησης ενός σήματος εξόδου μίας πύλης προς την είσοδοτης ίδιας της πύλης) ούτε στοιχεία μνήμης. Η μορφή ενός ακολουθιακού κυκλώμα-τος φαίνεται στο Σχήμα 3.16 που ακολουθεί.

Σχήμα 3.17

FA0

Χ0 Υ0

Cin0=0S0FA1

Χ1 Υ1

Cin1=Cout0

S1FA2

Χ2 Υ2

S2FA3

Χ3 Υ3

Cin3=Cout2

S3

Cin2=Cout1Cout3

Συνδυαστικόκύκλωμα

Στοιχείο μνήμης

Page 27: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

27

Μολονότι η σχεδίαση και ανάλυση των ακολουθιακών κυκλωμάτων έχει ι-διαίτερο ενδιαφέρον, η πλήρης και αναλυτική περιγραφή τους ξεφεύγει κατά πολύαπό τους σκοπούς μας. Ωστόσο, στην παράγραφο αυτή θα περιγράψουμε τη λειτουρ-γία ενός πολύ σημαντικού τέτοιου, του μανδαλωτή, καθώς χρησιμοποιείται στην κα-τασκευή άλλων ακολουθιακών κυκλωμάτων.

3.9.1 Ο Μανδαλωτής (SR-latch)Το βασικό κύκλωμα μανδαλωτή (SR-latch), αποτελείται από δύο πύλες

NAND ή δύο πύλες NOR, δύο εισόδους και δύο εξόδους. Οι δύο είσοδοι ονομάζονταιS και R (set-θέση και reset-) αντίστοιχα. Οι δύο έξοδοι ονομάζονται Q και Q’, πρό-κειται δηλαδή ουσιαστικά για ένα σήμα και το συμπλήρωμά του. Η πλήρης περιγρα-φή του μανδαλωτή φαίνεται στη συνέχεια στο κύκλωμα του Σχήματος 3.18.

(α) Υλοποίηση με NOR (β) Υλοποίηση με NAND

Σχήμα 3.18

Όπως φαίνεται στο Σχήμα 3.18, και στις δύο περιπτώσεις της υλοποίησης τουμανδαλωτή, είναι φανερή η ανατροφοδότηση των σημάτων. Έτσι, στην περίπτωσητου αριστερού σχήματος (α), το σήμα από την έξοδο Q οδηγείται στην είσοδο όπουεισάγεται και η S, ενώ το σήμα από την έξοδο της Q’ οδηγείται ξανά μαζί με την εί-σοδο R. Κάτι ανάλογο συμβαίνει και στο Σχήμα (β). Όπως είναι φανερό η μελέτη τηςλειτουργία αυτού του κυκλώματος δεν μπορεί να μελετηθεί όπως στην περίπτωσητων συνδυαστικών κυκλωμάτων. Στην περίπτωση του μανδαλωτή σημασία έχει ησειρά με την οποία αλλάζουν οι είσοδοι. Για την περιγραφή της λειτουργίας αυτήςχρησιμοποιείται ένας πίνακας λειτουργίας (function table), και όχι πίνακας αλήθει-ας. Στον Πίνακα 3.12.α φαίνεται η λειτουργία του κυκλώματος υλοποίησης με NOR,ενώ στον Πίνακα 3.12.β φαίνεται η λειτουργία με πύλες NAND.

S R Q Q’ Κατάσταση1 0 1 00 0 1 0

Θέση (set)

0 1 0 10 0 0 1

Επαναφορά(reset)

1 1 0 0 ΑπροσδιόριστηΠίνακας 3.12.α

S R Q Q’ κατάσταση0 1 1 01 1 1 0

Θέση (set)

1 0 0 11 1 0 1

Επαναφορά(reset)

0 0 1 1 ΑπροσδιόριστηΠίνακας 3.12.β

Page 28: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

28

Ο μανδαλωτής (υλοποίηση με NOR) έχει δύο εισόδους, την S (set – θέση) καιτην R (reset – επαναφορά). Επιπλέον, λέμε ότι το κύκλωμα βρίσκεται σε δύο πιθανέςκαταστάσεις, την κατάσταση Θέσης και την κατάσταση Επαναφοράς. Όταν οι έξο-δοι Q και Q’ έχουν τις τιμές 1 και 0 αντίστοιχα, τότε ο μανδαλωτής βρίσκεται σε κα-τάσταση Θέσης. Όταν οι Q και Q’ έχουν τις τιμές 0 και 1 αντίστοιχα, τότε το κύκλω-μα βρίσκεται σε κατάσταση επαναφοράς. Όπως είναι φανερό, οι έξοδοι Q και Q’ εί-ναι συνήθως διαφορετικές (η μία είναι το συμπλήρωμα της άλλης). Όταν συμβεί οιδύο έξοδοι να έχουν την ίδια τιμή (1 και 1 στον Πίνακα 3.12.α), τότε το κύκλωμαβρίσκεται σε απροσδιόριστη κατάσταση.

Υπό κανονικές συνθήκες λειτουργίας, οι δύο είσοδοι παραμένουν ίσες με το 0.Τα σήματα των εισόδων μπορούν να αλλάξουν όταν θέλουμε ο μανδαλωτής να αλλά-ξει κατάσταση. Για παράδειγμα, μία στιγμιαία εφαρμογή ενός 1 στην είσοδο S θα έχειως αποτέλεσμα το κύκλωμα να έρθει σε κατάσταση θέσης. Το σήμα στην S θα επι-στρέψει στο 0 σχεδόν αμέσως και οπωσδήποτε πριν συμβεί οποιαδήποτε άλλη αλλα-γή. Κάθε εφαρμογή μιας τιμής 1 σε οποιαδήποτε από τις εισόδους θα πρέπει να είναιστιγμιαία και αμέσως μετά η τιμή εισόδου θα πρέπει να επιστρέφει στο 0.

Όπως φαίνεται από τον πίνακα λειτουργίας 3.12.α, ο μανδαλωτής μπορεί ναβρίσκεται είτε σε κατάσταση θέσης είτε σε κατάσταση επαναφοράς. Για να προκύψειη κατάσταση θέσης, θα πρέπει να ισχύουν και οι δύο παρακάτω προϋποθέσεις:

1. Να εφαρμοστεί ένα στιγμιαίο 1 στην είσοδο S. Αυτή η εφαρμογή θα έχει ωςαποτέλεσμα το κύκλωμα να έρθει σε κατάσταση θέσης.

2. Να αφαιρεθεί το 1 από την είσοδο S. Εφόσον το κύκλωμα είναι σε κατάστασηθέσης, αυτή η κατάσταση θα εξακολουθήσει να ισχύει μέχρι την επόμενη αλ-λαγή.

Με παρόμοιο τρόπο, για να φέρουμε το κύκλωμα σε κατάσταση επαναφοράς, θα πρέ-πει να εφαρμόσουμε ένα στιγμιαίο 1 στην είσοδο R. Αφαιρώντας το 1 από την R τοκύκλωμα θα παραμείνει σε κατάσταση επαναφοράς.

Έχοντας υπόψη την ανάλυση που προηγήθηκε, προκύπτει ότι εάν οι δύο είσο-δοι έχουν την τιμή 0, τότε για να γνωρίζουμε την κατάσταση του μανδαλωτή θα πρέ-πει οπωσδήποτε να γνωρίζουμε σε ποια είσοδο εφαρμόστηκε 1 στην προηγούμενηχρονική περίοδο. Διαφορετικά είναι αδύνατον να αντιληφθούμε εάν οι μανδαλωτήςείναι σε κατάστασης θέσης ή σε κατάσταση επαναφοράς.

Εάν και στις δύο εισόδους εφαρμοστεί 1, τότε και οι δύο έξοδοι θα γίνουν 0.Το φαινόμενο αυτό έρχεται σε αντίθεση με την προϋπόθεση οι δύο έξοδοι να είναισυμπληρωματικές. Επιπλέον, δεν είναι ξεκάθαρο το σε ποια κατάσταση θα έρθει τοκύκλωμα όταν και οι δύο είσοδοι θα επιστρέψουν στο 0. Κατά συνέπεια, η περίπτωσηαυτή θα πρέπει να αποφεύγεται ή και να απαγορεύεται εντελώς, κάτι που μπορεί ναγίνει με την προσθήκη κάποιου επιπλέον κυκλώματος πριν την είσοδο.

Στην υλοποίηση με πύλες NAND η λειτουργία είναι παρόμοια, με τη διαφοράότι η αλλαγή κατάστασης υλοποιείται με την εφαρμογή ενός στιγμιαίου 0 σε μια απότις εισόδους.

Page 29: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

29

3.9.2 Ελεγχόμενος μανδαλωτής – D-latchΗ λειτουργία του απλού μανδαλωτή μπορεί να βελτιωθεί με την προσθήκη

μιας επιπλέον εισόδου η οποία θα καθορίζει το πότε είναι εφικτή η αλλαγή κατάστα-σης. Στο Σχήμα 3.19 και στον Πίνακα 3.13 φαίνεται το βελτιωμένο κύκλωμα, μαζί μετον πίνακα λειτουργίας του.

Σχήμα 3.19

C S R Επόμενη κατάσταση του Q0 -- -- Καμία αλλαγή1 0 0 Καμία αλλαγή1 0 1 Q=0, κατάσταση επαναφοράς1 1 0 Q=1, κατάσταση θέσης1 1 1 Απροσδιόριστο

Πίνακας 3.13

Όταν η είσοδος C είναι 0, τότε οι δύο αρχικές NAND δίνουν οπωσδήποτε 1.Αυτό σημαίνει ότι οποιοδήποτε και να είναι το σήμα των S και R, δεν πρόκειται ναφτάσει στο δεύτερο επίπεδο των πυλών. Κατά συνέπεια, σε αυτή την περίπτωση ηείσοδος C λειτουργεί ως διακόπτης που απαγορεύει τη λειτουργία του μανδαλωτή.Όταν όμως το C γίνει 1, τότε ο μανδαλωτής θα λειτουργήσει κανονικά σύμφωνα μετον πίνακα λειτουργίας του. Η κατάσταση θέσης θα συμβεί όταν C=1, S=1 και R=0.Η κατάσταση επαναφοράς θα συμβεί όταν C=1, S=0 και R=1. Σε κάθε περίπτωση,όταν το C επιστρέψει στο 0 δεν θα συμβεί καμία αλλαγή στις εξόδους. Επιπρόσθετα,όταν C=1, S=0 και R=0 οι έξοδοι δεν θα αλλάξουν. Ωστόσο, η περίπτωση C=1, S=1,R=1 και πάλι οδηγεί σε απροσδιόριστη κατάσταση, καθώς οι δύο πρώτες NAND θαδώσουν 0 στην έξοδό τους. Τότε, σύμφωνα με τον Πίνακα 3.12.β, δεν μπορούμε ναγνωρίζουμε την επόμενη κατάσταση, καθώς αυτό θα εξαρτηθεί από το ποια από τιςεισόδους θα επανέλθει από το 1 στο 0 γρηγορότερα.

Ένας τρόπος για να αποφύγουμε αυτή την περίπτωση, περιγράφεται στο Σχή-μα 3.20 και τον Πίνακα 3.14. Σε αυτόν τον μανδαλωτή, ουσιαστικά απαγορεύουμεστις εισόδους να έχουν την ίδια τιμή, με την προσθήκη μιας επιπλέον NAND πουπαίζει το ρόλο του αντιστροφέα.

Page 30: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

30

Σχήμα 3.20

C D Επόμενη κατάσταση του Q0 -- Καμία αλλαγή1 0 Q=0, επαναφορά1 1 Q=1, θέση

Πίνακας 3.14

Σημειώνεται ότι σε αυτόν τον μανδαλωτή υπάρχει μόνο μία είσοδος, η είσο-δος D και μία είσοδος ελέγχου. Ο μανδαλωτής αυτός λειτουργεί όταν C=1 και τίθεταισε κατάσταση θέσης όταν D=1, ενώ τίθεται σε κατάσταση επαναφοράς όταν D=0. Ομανδαλωτής αυτός ονομάζεται D-latch, όπου το D προέρχεται από τη λέξη DATA(δεδομένα). Αυτό το κύκλωμα έχει την ιδιότητα να κρατά ένα δεδομένο, οπότε μπορείνα λειτουργήσει ως στοιχείο μνήμης, το οποίο αποθηκεύει ακριβώς 1 bit πληροφορί-ας. Το κύκλωμα αλλάζει κατάσταση όταν C=1, ωστόσο όταν το C γίνει 0, η προη-γούμενη κατάσταση θα διατηρηθεί.

Έχοντας υπόψη την παραπάνω ανάλυση, θα μπορούσαμε να δημιουργήσουμεμία συστοιχία από τέτοιους μανδαλωτές και να κατασκευάσουμε έτσι ένα καταχωρη-τή, μία λέξη στη μνήμη τυχαίας προσπέλασης κ.ο.κ. Σε μια τέτοια συστοιχία, η είσο-δος C σε όλους τους μανδαλωτές μπορεί να πυροδοτείται από ένα κύκλωμα χρονι-σμού (ρολόι) το οποίο δημιουργεί παλμούς. Ωστόσο, κάποια προβλήματα στο χρονι-σμό τέτοιων συστοιχιών δεν επιτρέπουν τη χρήση των D-μανδαλωτών για τη δημι-ουργία ακολουθιακών κυκλωμάτων. Τα προβλήματα αυτά λύνονται με τη χρήση άλ-λων κυκλωμάτων, των flip-flops, στα οποία ειδικές διατάξεις επιλύουν το πρόβληματου κοινού χρονισμού. Η μελέτη ωστόσο των flip-flops, ξεφεύγει από τους στόχουςαυτού του κεφαλαίου και μπορεί εύκολα να αναζητηθεί στη βιβλιογραφία.

3.10 Ολοκλήρωση ψηφιακών κυκλωμάτωνΗ φιλοσοφία της δημιουργίας περίπλοκων κυκλωμάτων με τη χρήση απλού-

στερων, που περιγράφηκε στις προηγούμενες παραγράφους, ή με τη χρήση μόνο οι-κουμενικών πυλών, είναι εξαιρετικά σημαντική, καθώς επιταχύνει ιδιαίτερα και τονσχεδιασμό αλλά και την κατασκευή τους. Επιπλέον, το κόστος κατασκευής είναι πο-

Page 31: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

31

λύ συχνά μικρότερο καθώς η βιομηχανία μπορεί να κατασκευάζει μεγάλους αριθμούςαπό απλά κυκλώματα φθηνά και γρήγορα. Η ιδέα αυτή, συνδυασμένη με τις κατάλ-ληλες τεχνολογίες οι οποίες μειώνουν συνεχώς το μέγεθος των κυκλωμάτων και τηνισχύ που καταναλώνουν, ονομάζεται ολοκλήρωση (integration).

Ο σκοπός της διαδικασίας της ολοκλήρωσης είναι η δημιουργία ολοκληρω-μένων κυκλωμάτων ή μικροτσιπ (integrated circuits - microchips). Ένα τέτοιο κύ-κλωμα είναι ένα ηλεκτρονικό κύκλωμα που έχει σμικρυνθεί και έχει κατασκευαστείπάνω σε ένα λεπτό στρώμα ημιαγωγού υλικού πάνω σε μια επιφάνεια πυριτίου. Απο-τελείται από ημιαγωγούς αλλά και άλλα, παθητικά στοιχεία. Το ολοκληρωμένο κύ-κλωμα περικλείεται από σκληρό πλαστικό κάλυμμα και φέρει ακροδέκτες με τουςοποίους επιτυγχάνεται η τροφοδοσία, η γείωση αλλά και η μεταφορά ψηφιακών ση-μάτων προς και από το κύκλωμα (Εικόνα 3.1).

Εικόνα 3.1: Μία EPROM

Η κατασκευή ολοκληρωμένων κυκλωμάτων έγινε δυνατή ύστερα από κάποιεςσημαντικές τεχνολογικές ανακαλύψεις, στα μέσα της δεκαετίας του 1950. Η θεωρητι-κή σύλληψη ανήκει στon G. Dummer, ο οποίος εργαζόταν στο Βρετανικό ΥπουργείοΆμνυνας , ενώ οι πρώτες κατασκευές έγιναν από τους J. Kilby και R. Noyce, ο πρώ-τος από τους οποίους έλαβε το βραβείο Nobel φυσικής για το έτος 2000 για τη συμ-βολή του σε αυτή την ανακάλυψη.

Η αυτοματοποιημένη τοποθέτηση μεγάλων αριθμών από μικρά τρανσίστορςπάνω σε μια λεπτή επιφάνεια ήταν μια τεράστια εξέλιξη σε σύγκριση με την τοποθέ-τηση «με το χέρι» διαφόρων κυκλωμάτων πάνω σε πλακέτες. Οι παλιές μέθοδοι κα-τασκευής ηλεκτρονικών κυκλωμάτων πέρασαν γρήγορα σε αχρηστία, λόγω της πολύμεγαλύτερης ταχύτητας κατασκευής, της μαζικής παρασκευής, της αξιοπιστίας, κα-θώς και της δυνατότητας χρήσης των ολοκληρωμένων κυκλωμάτων ως κομματιώνενός μεγαλύτερου συστήματος.

Τα δυο μεγαλύτερα όμως πλεονεκτήματα των ολοκληρωμένων κυκλωμάτωνείναι το πολύ μικρό κόστος και η πολύ καλή απόδοση. Το κόστος είναι τόσο μικρό,διότι ένα ολοκληρωμένο κύκλωμα με όλα τα υποσυστήματά του δεν κατασκευάζεταιμε κλασικούς τρόπους αλλά εκτυπώνεται με τη χρήση της φωτολιθογραφίας. Επι-πλέον, το υλικό που χρησιμοποιείται είναι πολύ μικρού πραγματικού κόστους, καθώς

Page 32: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

32

πρόκειται για κατασκευές ελάχιστης μάζας. Η καλή απόδοση των ολοκληρωμένωνκυκλωμάτων, οφείλεται στην πολύ μεγάλη ταχύτητα λειτουργίας τους και στις χαμη-λές ανάγκες τροφοδοσίας, καθώς όλα τα υποσυστήματα είναι πολύ μικρά και πολύκοντά μεταξύ τους. Από το 2006 και μετά σε ένα τετραγωνικό χιλιοστό επιφάνειαςμπορούσαν να κατασκευαστούν πάνω από 106 transistors, ενώ η συνολική επιφάνειαπου καλύπτει ένα ολοκληρωμένο κύκλωμα κυμαίνεται από μερικά τετραγωνικά χιλι-οστά έως περίπου 3,5 εκατοστά.

3.10.1 Γενιές Ολοκληρωμένων κυκλωμάτωνΤα πρώτα ολοκληρωμένα κυκλώματα περιείχαν μόνο μερικά τρανσίστορς, το

πλήθος των οποίων ήταν μερικές δεκάδες. Ανήκουν στη γενιά SSI (small scale inte-gration) – πολύ μικρής ολοκλήρωσης. Παρά τις μικρές δυνατότητές τους, χρησιμο-ποιήθηκαν κατά κόρον σε πολύ σημαντικές εφαρμογές, όπως στα διαστημόπλοια τουπρογράμματος Apollo ή στους πυραύλους minuteman. Η ευρεία χρήση τους σε τέ-τοιες εφαρμογές είχε και το αντίστροφο αποτέλεσμα, έδωσε δηλαδή την ευκαιρία γιατη μαζικοποίηση της παραγωγής τους. Φυσικά, προς το τέλος της δεκαετίας του 1960,εφαρμόστηκαν και σε άλλες συσκευές μαζικής χρήσης, όπως σε τηλεοράσεις και στε-ρεοφωνικά υψηλής πιστότητας.

Η επόμενη γενιά αποκαλείται ΜSI (medium scale integration) – μέσης κλίμα-κας ολοκλήρωση και εμφανίζεται στο τέλος της δεκαετίας του 1960. Αυτά τα ολο-κληρωμένα κυκλώματα αποτελούνται πλέον από μερικές εκατοντάδες ή λίγες χιλιά-δες τρανσίστορς, ενώ η εμφάνισή τους συνοδεύτηκε από μεγάλη εμπορική επιτυχία,καθώς με πολύ λίγο επιπλέον κόστος από τα MSI μπορούσαν να επιτελούν πολύ πιοπερίπλοκες εργασίες.

Στα μέσα της δεκαετίας του 1970, εμφανίστηκε η γενικά LSI (large scale in-tegration) – μεγάλης κλίμακας ολοκλήρωση, όπου το πλήθος των τρανσίστορς σε έναολοκληρωμένο κύκλωμα μετράται σε κάποιες δεκάδες χιλιάδων. Έτσι, το 1974, οιμικροεπεξεργαστές αποτελούνταν από περίπου 10000 τρανσίστορς.

Η επόμενη μεγάλη τεχνολογική πρόοδος ξεκίνησε από το 1980 και ουσιαστι-κά συνεχίζεται έως σήμερα. Πρόκειται για τα VLSI (very large scale integration) –πολύ μεγάλης κλίμακας ολοκλήρωση. Οι αριθμοί πλέον είναι πολύ μεγαλύτεροι απότις προηγούμενες γενιές, καθώς ξεκινούν από μερικές εκατοντάδες χιλιάδων στις αρ-χές της δεκαετίας του 1980 και φτάνουν σήμερα σε αρκετά δισεκατομμύρια τρανσί-στορς ανά ολοκληρωμένο κύκλωμα. Τέλος, έχει προταθεί και ο όρος ULSI (ultralarge scale integration) για ολοκληρωμένα με πλήθος μεγαλύτερο του ενός δισεκα-τομμυρίου τρανσίστορς.

Επιπλέον προς τις παραπάνω κατηγορίες, υπάρχουν και άλλες κατηγορίες ο-λοκληρωμένων κυκλωμάτων, όπως τα WSI (wafer scale integration), SOC (systemon a chip - Εικόνα 3.2) και τα 3D-IC (3 dimensional integrated circuits). Τα WSIαναπτύσσονται σε ένα ολόκληρο λεπτό τεμάχιο (wafer) πυριτίου, ενώ τα SOC είναιολοκληρωμένα κυκλώματα που περιλαμβάνουν όλα τα υποσυστήματα ενός Υπολογι-στή σε ένα ολοκληρωμένο κύκλωμα. Τέλος ένα τρισδιάστατο ολοκληρωμένο κύκλω-μα αποτελείται όχι από ένα αλλά από περισσότερα επίπεδα από τρανσιστορς, τα ο-

Page 33: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

33

ποία ολοκληρώνονται και διασυνδέονται όχι μόνο οριζόντια αλλά και κατακόρυφα.Σε κάθε περίπτωση, σε τέτοιες υλοποιήσεις το κόστος σχεδιασμού αυξάνεται, ενώμπορεί να μειωθεί και η απόδοση κάποιων από τα επιμέρους τμήματα, ωστόσο βελ-τιώνεται κατά πολύ η συνολική ισχύς που απαιτεί το κύκλωμα, καθώς οι αποστάσειςανάμεσα στα ενεργά στοιχεία είναι εξαιρετικά μικρές.

Εικόνα 3.2: Το ολοκληρωμένο κύκλωμα στο εσωτερικό ενός Intel 8742, ένας 8-bitmicrocontroller που περιλαμβάνει μία CPU στα 12 MHz, 128 bytes RAM, 2048 bytes

EPROM, και I/O στο ίδιο chip.

Θα πρέπει να σημειωθεί ότι η πρόοδος που περιγράφεται πιο πάνω, δεν οφεί-λεται σε κάποια εξαιρετικά μεγάλη και επαναστατική εφεύρεση. Πρόκειται για μιαδιαδικασία συνεχούς βελτίωσης στο σχεδιασμό (με τη χρήση λογισμικού που σχεδιά-ζει, τοποθετεί στο χώρο και ελέγχει την καλή λειτουργία ενός ολοκληρωμένου) αλλάκαι στην παραγωγή, με τη βελτίωση των συνθηκών καθαριότητας και την ελαχιστο-ποίηση των αιωρούμενων σωματιδίων μέσα στις γραμμές παραγωγής. Επιπλέον, κά-ποιες σημαντικές επιλογές στην τεχνολογία κατασκευής ημιαγωγών (όπως η προτί-μηση της τεχνολογίας CMOS έναντι των τεχνολογιών PMOS και NMOS), βοήθησανστην μείωση της κατανάλωσης ενέργειας.

Όπως προαναφέρθηκε, το κόστος αρχικού σχεδιασμού ενός ολοκληρωμένουκυκλώματος μπορεί να είναι αρκετά μεγάλο, ενώ η μαζική κατασκευή του είναι αρκε-τά φθηνή. Ωστόσο, το γεγονός ότι ένα τέτοιο ολοκληρωμένο μπορεί να χρησιμοποιη-θεί σε εκατοντάδες χιλιάδων διαφορετικές συσκευές (από ηλεκτρονικούς υπολογιστέςέως κινητά τηλέφωνα), επιμερίζουν αυτό το κόστος σχεδιασμού σε πολλά μικρά τμή-ματα.

Η τάση της σμίκρυνσης των ολοκληρωμένων κυκλωμάτων, μαζί με την τοπο-θέτηση όλο και περισσότερων ενεργών στοιχείων μέσα σε ένα ολοκληρωμένο κύ-κλωμα έχει αποδειχθεί ότι είναι ιδιαίτερα σταθερή και συνεχής. Έχει δε κωδικοποιη-θεί και με το γνωστό νόμο του Moore, σύμφωνα με τον οποίο το πλήθος των τρανσί-στορς σε ένα ολοκληρωμένο κύκλωμα διπλασιάζεται κάθε δύο χρόνια. Στην πραγμα-τικότητα, όταν το μέγεθος μικραίνει, όλες οι άλλες παράμετροι βελτιώνονται: το κό-στος κατασκευής πέφτει, η κατανάλωση ενέργειας μειώνεται και η ταχύτητα αυξάνε-ται.

Page 34: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

34

Είναι βέβαια άγνωστο το κατά πόσον ο νόμος αυτός θα συνεχίσει να ισχύειγια πολύ καιρό. Πράγματι, τα τελευταία χρόνια όπου η τεχνολογία κατασκευής ολο-κληρωμένων κυκλωμάτων βρίσκεται στην κλίμακα των νανομέτρων, εμφανίζονταιδύσκολα προβλήματα όπως η διαρροή ηλεκτρονίων σε γειτονικούς αγωγούς. Φαίνε-ται ότι αυτά τα προβλήματα θα διορθωθούν (με τη χρήση καλύτερων υλικών) και κα-λύτερων τεχνικών κατασκευής. Ωστόσο, η βελτίωση των χαρακτηριστικών των ολο-κληρωμένων κυκλωμάτων είναι τόσο εμφανής (ακόμη και στους τελικούς χρήστεςκαι όχι μόνο στους μηχανικούς), ο ανταγωνισμός ανάμεσα στις βιομηχανίες παραγω-γής ολοκληρωμένων είναι τόσο ισχυρός ώστε θεωρείται σχεδόν βέβαιο ότι ο νόμοςτου Moore θα συνεχίσει να ισχύει, έστω και αν αλλάξει κατά ένα ποσοστό το χρονικόδιάστημα των δύο ετών.

Page 35: ΚΕΦΑΛΑΙΟ 3 - dkydros.files.wordpress.com · 3 3.1 Ψηφιακή Λογική και Λογικές Πύλες Η Ψηφιακή Λογική (binary logic) ασχολείται

35

Ξένη ΒιβλιογραφίαΜano, M. (1988). Computer engineering, hardware design, Prentice-Hall Intnl.Editions

Franklin P. Prosser (Author), David E. Winkel, (1987). The Art of Digital Design: AnIntroduction to Top-Down Design, Prentice-Hall

Mike Wharton, (1994). Logic Design: An Introduction to Digital Logic (Maplin),Butterworth-Heinemann

John P. Hayes, (1993), Introduction to Digital Logic Design, Prentice-Hall

Ελληνική ΒιβλιογραφίαΜano, Μ. (1987), Ψηφιακή Σχεδίαση, Παπασωτηρίου

Βαφειάδης, Λογική σχεδίαση των ψηφιακών συστημάτων, (1985), Ιδιωτική Έκδοση

Rabaey, Chandrsakasan, Nikolic, (2006). Ψηφιακά Ολοκληρωμένα Κυκλώματα,Κλειδάριθμος

Δικτυακοί τόποιhttp://en.wikipedia.org/wiki/Logic_gates

http://en.wikipedia.org/wiki/Boolean_logic

http://www.kpsec.freeuk.com/gates.htm

http://www.ee.surrey.ac.uk/Projects/Labview/gatesfunc/index.html

http://www.asic-world.com/digital/gates.html

http://www.williamson-labs.com/480_logic.htm