ΗΥ-120: Ψηφιακή Σχεδίαση
Φθινόπωρο 2013 |
Τμ. Επ. Υπολογιστών © Πανεπιστήμιο Κρήτης |
[Up - Table of Contents] [Prev - 2. Relays] |
[printer version - PDF] [4. Karnaugh, RAM - Next] |
[Βιβλία: προαιρετικά μπορείτε να διαβάσετε τις σελίδες: Wakerly: 93-117 (§3.1-3.4) (και γιά μελέτη πέραν της ύλης του μαθήματος: §3.5 (σελ. 117-134))· Mano: 57-64, 495-501 (§2.8-2.9, 10.7-10.8)].
Πριν το εργαστήριο, δηλαδή περίπου από 24 έως 29 Οκτωβρίου, πρέπει να περάσετε από το γραφείο του κ. Κρασσά, στην πτέρυγα Β200, ώρες 8:30 - 15:00, ή κατά τις πρωινές Ελεύθερες Ώρες Εργαστηρίου, γιά να παραλάβετε τα chips του εργαστηρίου --βλ. §3.7. Τα chips αυτά πρέπει να τα επιστρέψετε στο ίδιο μέρος μέχρι τις 31 Ιανουαρίου 2014, αλλοιώς θα θεωρηθεί ότι αποτύχατε στο μάθημα.
Άλλες φορές, όμως, την επιλογή εισόδου προτιμάμε να την κάνουμε με διαφορετικό τρόπο: χρησιμοποιούμε λιγότερους διακόπτες επιλογής (λιγότερες εισόδους επιλογής), και αποκωδικοποιούμε αυτές τις λιγότερες εισόδους στους (πολύ περισσότερους) συνδυασμούς που αυτές παράγουν, και ο κάθε ένας από αυτούς τους συνδυασμούς επιλέγει μιάν αντίστοιχη είσοδο δεδομένων. Με τον τρόπο αυτό υπάρχει διπλό κέρδος: (i) χρειαζόμαστε πολύ λιγότερες εισόδους επιλογής (ελέγχου), και (ii) το κύκλωμα αποκωδικοποίησης μας εξασφαλίζει αυτό που είχαμε (άτυπα) συμφωνήσει ότι θέλουμε: κάθε φορά, επιλέγεται αυτομάτως μία και μόνο μία είσοδος δεδομένων.
Όταν η επιλογή της επιθυμητής εισόδου δεδομένων του πολυπλέκτη
γίνεται με τέτοιον "κωδικοποιημένο" τρόπο,
τότε προκύπτει στενή συγγένεια
ανάμεσα στα κυκλώματα αποκωδικοποιητή και πολυπλέκτη:
μέσα σε κάθε πολυπλέκτη πρέπει να υπάρχει ένας αποκωδικοποιητής
που να βρίσκει πότε εμφανίζεται ο κάθε ένας συνδυασμός των bits επιλογής
και να επιλέγει την αντίστοιχη είσοδο.
Ειδικά όταν τα κυκλώματα αυτά υλοποιούνται με ένα δέντρο από διακόπτες,
τότε το ένα είναι το κατοπτρικό του άλλου!
Ο λόγος έχει να κάνει με την αμφίδρομη συμπεριφορά του διακόπτη:
ηλεκτρικό ρεύμα (και κατά συνέπεια εξίσωση τάσεων)
μπορεί να περάσει μεσα από τον διακόπτη
τόσο προς τη μία φορά όσο και προς την άλλη.
(Πάντως, όταν, σε λίγο,
θα αρχίσουμε να χρησιμοποιούμε ηλεκτρονικές "πύλες" σε chips,
οι οποίες (επίτηδες) λειτουργούν με μονόδρομη ροή της πληροφορίας
από συγκεκριμένες εισόδους προς εξόδους,
τότε ο πολυπλέκτης και ο αποκωδικοποιητής θα μοιάζουν
λίγο λιγότερο μεταξύ τους).
Το δεύτερο σχήμα δείχνει το κύκλωμα του αποκωδικοποιητή 3-σε-8 της §2.1 "γυρισμένο τα δεξιά-αριστερά" (κατοπτρισμένο), με αλλαγμένες τις εξόδους σε εισόδους δεδομένων, και με αλλαγμένον τον πόλο του διακόπτη A από τροφοδοσία σε έξοδο δεδομένων. Το νέο κύκλωμα είναι απλούστατα ένας πολυπλέκτης 8-σε-1! Οι τρείς είσοδοι επιλογής, A, B, C, των οποίων ο ρόλος έμεινε αναλλοίωτος, επιλέγουν και αποκαθιστούν, όπως και πριν, έναν από τους οκτώ δυνατούς δρόμους μεταξύ της αριστερής και της δεξιάς πλευράς του "δένδρου". Μέσα από τον επιλεγμένο δρόμο, προηγουμένως περνούσε η θετική τάση της τροφοδοσίας προς μία από τις οκτώ εξόδους· τώρα περνάει, με αντίθετη φορά, οιαδήποτε πληροφορία υπάρχει στη επιλεγμένη είσοδο δεδομένων, Data0, Data1, ..., Data7, προς την (μοναδική τώρα) έξοδο δεδομένων, DataOut.
Πριν φτάσετε στο εργαστήριο,
σχεδιάστε έναν πολυπλέκτη 16-σε-1 κατ' ανάλογο τρόπο.
Πόσες εισόδους (bits) επιλογής χρειάζεστε;
Ονομάστε τις εισόδους δεδομένων Data0 έως Data15 με τη σειρά,
και δείξτε τη θέση των διακοπτών και τις τιμές των bits επιλογής
προκειμένου να επιλεγεί η είσοδος Data13.
Στο εργαστήριο χρησιμοποιήστε την πλακέτα αποκωδικοποιητή δένδρου του πειράματος §2.2, αλλά αυτή τη φορά δίνοντας τη θετική τροφοδοσία στα φύλλα του δένδρου αντί στη ρίζα, όπως δείχνει η φωτογραφία: το κίτρινο σύρμα τώρα φέρνει την θετική τάση στην δεξιά πλευρά της πλακέτας, σε μία από τις οκτώ επαφές 000, 001, ..., 111 που τώρα παίζουν το ρόλο των εισόδων δεδομένων του πολυπλέκτη. Οι κίτρινες LED σας δείχνουν και πάλι τη θέση των τριών διακοπτών, A, B, και C. Μπορείτε να ακουμπάτε το καλώδιο τροφοδοσίας σε ένα φύλλο του δένδρου γιά λίγο, μετά να το απομακρύνετε, και μετά να το ξανακουμπάτε, σαν να στέλνετε "σήματα Μόρς". Θα βλέπετε τότε μερικές από τις κόκκινες LED να "ακούνε" τα σήματα που στέλνετε, ενώ άλλες όχι: το ποιές ακούνε και ποιές όχι το καθορίζουν τα 3 bits επιλογής, A, B, C, μέσω των διακοπτών όπως δείχνουν οι κίτρινες LED.
Με τους διακόπτες A, B, C, σε σταθερή θέση, δώστε "σήματα Μορς" σε κάθε είσοδο δεδομένων, δηλαδή σε κάθε φύλλο του δένδρου, και διαπιστώστε ότι μόνο από μία από τις 8 εισόδους καταφέρνουν να φτάσουν τα σήματά σας στη ρίζα του δένδρου, δηλαδή στην έξοδο δεδομένων. Δοκιμάστε μαζί με ένα συνάδελφό σας να δίνετε "σήματα Μορς" σε δύο διαφορετικές εισόδους δεδομένων, ταυτόχρονα, καθένας σας με ένα δικό του καλώδιο --ο ένας στην "επιλεγμένη" είσοδο, και ο άλλος σε μιάν άλλη: Τίνος από τους δύο φτάνουν τα σήματα στην έξοδο δεδομένων (στη ρίζα του δένδρου); Ποιός διακόπτης "μπλοκάρει" τα σήματα του άλλου; Μετά, αλλάξτε τους διακόπτες επιλογής, A, B, C, και ξαναδοκιμάστε τα ίδια....
Αρνητική λέμε την ανάδραση όταν η πολικότητά της είναι αντίθετη σε σχέση με το τι έκανε το σύστημα, δηλαδή όταν ή έξοδος αλλάζει προς μιά κατεύθυνση Α, η ανάδραση είναι τέτοια ώστε να το κάνει να κινηθεί στην αντίθετη κατεύθυνση, Β. Όταν η αρνητική ανάδραση είναι ήπια και η επίδρασή της μέσω της εισόδου του συστήματος επανεμφανίζεται στην έξοδο αρκούντως γρήγορα, τότε αυτή προκαλεί σταθεροποίηση του συστήματος και έλεγχο της συμπεριφοράς του, οπότε και μιλάμε γιά ευσταθές σύστημα. Ένα τέτοιο παράδειγμα από την καθημερινή ζωή είναι όταν είμαι κάτω από το ντους και ρυθμίζω τη θερμοκρασία του ανοιγοκλείνοντας με ήπιο και αργό τρόπο τις βρύσες του ζεστού και του κρύου. Όταν όμως η αρνητική ανάδραση είναι απότομη ή η επίδρασή της αργεί να επανεμφανιστεί στην έξοδο, τότε προκύπτει ασταθές σύστημα, το οποίο ταλαντούνται συνεχώς μεταξύ ακραίων καταστάσεων. Γιά παράδειγμα, πάλι στο ντούς, αν η αντίδραση στο ελαφρώς ζεστό νερό είναι να ανοίξω απότομα και εντελώς το κρύο, και αντίστροφα γιά το ελαφρώς κρύο νερό, τότε μάλλον θα υποφέρω συνεχώς από εναλλάξ κρύο και καυτό νερό.
Θετική λέμε την ανάδραση όταν η πολικότητά της είναι ίδια με το τι έκανε το σύστημα, δηλαδή αν ή έξοδος άλλαξε προς μία κατεύθυνση Α, η ανάδραση είναι τέτοια ώστε να το κάνει να κινηθεί ακόμα περισσότερο στην ίδια κατεύθυνση Α. Η θετική ανάδραση έχει αποκλίνοντα αποτελέσματα στο σύστημα: το πηγαίνει στα άκρα, και το αφήνει εκεί. Δεδομένου ότι πολλά συστήματα έχουν δύο ακραίες καταστάσεις, η θετική ανάδραση συνήθως τα πηγαίνει και τα αφήνει στη μία ή στην άλλη από αυτές, και τότε μιλάμε γιά δισταθή συστήματα, δηλαδή συτήματα με δύο, διαφορετικές, ευσταθείς καταστάσεις ισορροπίας (συχνά υπάρχει και μία μεσαία κατάσταση ασταθούς ισορροπίας). Τα δισταθή συστήματα μπορούμε να τα χρησιμοποιήσουμε γιά αποθήκευση πληροφορίας: έχουν μνήμη και "θυμούνται" σε ποιάν από τις καταστάσεις ευσταθούς ισορροπίας τους τα αφήσαμε. Τα ασταθή συστήματα μπορούμε να τα χρησιμοποιήσουμε γιά τη δημιουργία "ρολογιών" μέτρησης του χρόνου (όταν η περίοδος ταλάντωσής τους είναι αρκούντως προβλέψιμη ή ελέγξιμη).
Πριν το εργαστήριο, κάντε μιά γραφική αναπαράσταση της συμπεριφοράς του ηλεκτρονόμου. Βάλτε στον οριζόντιο άξονα τον χρόνο, και στον κατακόρυφο άξονα το ρεύμα του πηνίου. Το ρεύμα του πηνίου είναι 100 mA όταν ο διακόπτης του ηλεκτρονόμου κάνει επαφή επάνω, και 0 όταν αυτός δεν κάνει επαφή επάνω. Όταν ανάβει το πηνίο (περνάει ρεύμα μέσα από αυτό), η επαφή διακόπτεται μετά από καθυστέρηση 5 ms. Όταν σβήνει το πηνίο (δεν περνάει ρεύμα), η επαφή αποκαθίσταται μετά από καθυστέρηση 3 ms. Οι καθυστερήσεις αυτές οφείλονται στην αδράνεια των κινουμένων μερών του ηλεκτρονόμου (οι αριθμητικές τιμές είναι πλασματικές, αλλά της ίδιας τάξης μεγέθους με τις αληθινές). Θεωρήστε ότι ο διακόπτης GO πατιέται τη χρονική στιγμή t=0, και δείξτε τη συμπεριφορά του ηλεκτρονόμου σαν συνάρτηση του χρόνου, από το χρόνο 0 μέχρι το χρόνο t = 25 ms. Ποιά είναι η περίοδος και ποιά η συχνότητα ταλάντωσης του ηλεκτρονόμου;
Εάν ο ηλεκτρονόμος είναι αδρανής και πατηθεί το κουμπί SET, τότε παρακάμπτεται ο διακόπτης του ηλεκτρονόμου, και τροφοδοτείται με ρεύμα το πηνίο, με συνέπεια να ενεργοποιηθεί ο ηλεκτρονόμος. Μόλις ενεργοποιηθεί, ο διακόπτης του ηλεκτρονόμου αρχίζει να παρέχει και αυτός ρεύμα στο πηνίο, οπότε πλέον δεν είναι ανάγκη να παραμένει πατημένο το SET προκειμένου να παραμείνει ενεργός ο ηλεκτρονόμος. Άρα, το κουμπί SET "θέτει" (set) το στοιχείο μνήμης στην ενεργή κατάσταση, δηλαδή γράφει στο στοιχείο αυτό τη μία από τις τιμές που αυτό μπορεί να κρατήσει --ας πούμε την τιμή "1".
Εάν ο ηλεκτρονόμος είναι ενεργός και πατηθεί το κουμπί RESET, τότε διακόπτεται η τροφοδοσία ρεύματος στον ηλεκτρονόμο, και επομένως αυτός πηγαίνει στην αδρανή κατάσταση, και παραμένει εκεί ακόμα κι αν αφεθεί το κουμπί RESET (αρκεί να μην είναι πατημένο ταυτόχρονα και το SET). Άρα, το κουμπί RESET "επαναφέρει" (reset) το στοιχείο μνήμης στην αδρανή κατάσταση, δηλαδή γράφει στο στοιχείο αυτό την άλλη από τις τιμές που αυτό μπορεί να κρατήσει --ας πούμε την τιμή "0". Από τα αρχικά των λέξεων RESET και SET, το flip-flop αυτό λέγεται τύπου "RS".
Πριν το εργαστήριο, εξηγήστε γραπτά τι θα συμβεί εάν πατηθούν ταυτόχρονα τα SET και RESET: ποιό υπερισχύει; γιατί; Εάν αφεθεί πρώτο το SET και μετά το RESET, σε ποιά κατάστση θα μείνει το στοιχείο μνήμης; Εάν αφεθούν με αντίστροφη σειρά, τι θα γίνει; Στο εργαστήριο, κατασκευάστε το κύκλωμα και ελέγξτε τη λειτουργία του. Μετά, πατήστε και το SET και το RESET, και προσπαθήστε να τα αφήσετε και τα δύο "ταυτόχρονα": τι θα συμβεί; μπορείτε να πετύχετε πραγματικά απόλυτο "ταυτοχρονισμό";
Τα σύμβολα αυτά υποδεικνύουν πάντα κυκλώματα με
μονόδρομη ροή της πληροφορίας
(δηλαδή της αιτίας αλλαγών κατάστασης)
από τις εισόδους τους (αριστερά στο σχήμα)
προς τις εξόδους τους (δεξιά στο σχήμα),
και ποτέ αντίστροφα.
Με άλλα λόγια, στα κυκλώματα αυτά,
η τιμή της εξόδου τους καθορίζεται
από τις τιμές των εισόδων τους (και μόνο),
ενώ οι τιμές των εισόδων τους ουδόλως επηρρεάζονται
από το τι συμβαίνει στις άλλες εισόδους ή στις εξόδους τους.
Αυτό μας προφυλάσσει από τους κινδύνους γιά τους οποίους
--όποιος ενδιαφέρεται-- μπορεί να διαβάσει στο προαιρετικό φυλλάδιο
extra03_relayLogic.html,
έστω και εάν, μερικές φορές, μας κοστίζει περισσότερο απ' όσο άλλα,
πιό "επικίνδυνα" κυκλώματα που θα βρεί ο ενδιαφερόμενος αναγνώστης εκεί.
Οι παραπάνω λογικές πύλες μπορούν να υλοποιηθούν με ηλεκτρονόμους (§ 2.12), όπως φαίνεται δίπλα, αν και σήμερα σπανιότατα χρησιμοποιούνται τέτοιες υλοποιήσεις. Εδώ, η αναπαράσταση των ψηφιακών τιμών είναι: "0" = ανοικτό κύκλωμα (μηδέν ρεύμα), και "1" = ψηλή τάση με δυνατότητα παροχής επαρκούς ρεύματος. Όπως πάντα, η βασική ιδέα της πράξης ΚΑΙ είναι η σύνδεση διακοπτών εν σειρά, ενώ γιά την πράξη Ή θέλουμε διακόπτες εν παραλλήλω. Παρατηρήστε ότι και τα τρία αυτά κυκλώματα εγγυώνται τη μονόδρομη ροή της πληροφορίας που προδιαγράψαμε παραπάνω, αφού το κύκλωμα των διακοπτών των ηλεκτρονόμων (έξοδος πύλης) είναι αδύνατον να επηρρεάσει την τάση ή το ρεύμα του πηνίου τους (είσοδοι πύλης).
Όταν γράφουμε τις λογικές πράξεις σε μορφή κειμένου ή εξισώσεων, επειδή οι λέξεις και, ή, όχι πιάνουν πολύ χώρο, έχουν υιοθετηθεί στη διεθνή βιβλιογραφία άλλα, συντομότερα σύμβολα, όπως φαίνονταν στο αρχικό σχήμα της παραγράφου αυτής, δεξιά από τα σύμβολα των πυλών. Στη γλώσσα προγραμματισμού C, καθώς και στη γλώσσα περιγραφής υλικού Verilog, η πράξη (bitwise) AND συμβολίζεται με "&", η πράξη (bitwise) OR συμβολίζεται με "|", και η πράξη (bitwise) ΝΟΤ συμβολίζεται με "~". Σε βιβλία και κείμενα θεωρίας ψηφιακής σχεδίασης, η πράξη AND συμβολίζεται με μία τελεία --ή και χωρίς αυτήν-- όπως ο πολλαπλασιασμός, η δε πράξη OR συμβολίζεται με ένα σταυρό, όπως και η πρόσθεση. Τη συνήθεια αυτή πρέπει να τη δεί κανείς σαν απλό συμβολισμό, χωρίς κανένα περαιτέρω νόημα ότι δήθεν υπάρχει ομοιότητα ή ταύτιση των λογικών πράξεων AND/OR με τις αριθμητικές πράξεις πολλαπλασιασμού/πρόσθεσης --πρόκειται γιά εντελώς διαφορετικά πράγματα, και απλώς υιοθετούμε το ίδιο σύμβολο γιά λόγους τυπογραφίας και μόνο. Η πράξη ΝΟΤ συμβολίζεται με μία μπάρα πάνω από το όρισμά της· όταν τυπογραφικοί λόγοι καθιστούν δύσκολη τη χρήση μπάρας, χρησιμοποιείται εναλλακτικά ο συμβολισμός "τονούμενο" (prime).
Η τεχνολογία CMOS έχει δύο "συμπληρωματικά" είδη transistors:
τα τύπου NMOS (negative-channel MOS) με "αρνητικό" κανάλι,
και τα τύπου PMOS (positive-channel MOS) με "θετικό" κανάλι.
Στα NMOS, το κανάλι δημιουργείται
από ελεύθερα ηλεκτρόνια (αρνητικούς φορείς)
τα οποία προσελκύει εκεί η τάση της πύλης·
επειδή τα ηλεκτρόνια έλκονται από θετικές τάσεις,
οι ψηλές τάσεις πύλης αυξάνουν την αγωγιμότητα των καναλιών NMOS.
Στα PMOS, το κανάλι δημιουργείται
από ελεύθερες "οπές" (έλλειψη ηλεκτρονίων - θετικοί φορείς)·
επειδή οι οπές έλκονται από αρνητικές τάσεις,
η αγωγιμότητα των καναλιών PMOS
αυξάνει με χαμηλές τάσεις πύλης, ενώ μειώνεται με τις ψηλές.
Στα ψηφιακά κυκλώματα, τα transistors χρησιμοποιούνται σαν διακόπτες, όπως φαίνεται στο σχήμα. Τα NMOS συμπεριφέρονται σαν "θετικοί" διακόπτες: με ψηλές τάσεις πύλης το κανάλι τους άγει, ενώ με χαμηλές τάσεις πύλης το κανάλι τους γίνεται σαν ανοικτό κύκλωμα. Αντίθετα, τα PMOS συμπεριφέρονται σαν "αρνητικοί" διακόπτες: το κανάλι τους άγει με χαμηλές τάσεις πύλης, και δεν άγει με ψηλές τάσεις. Το σύμβολο του PMOS, όπως φαίνεται στο σχήμα, έχει έναν μικρό κύκλο γιά να μας θυμίζει αυτή την "αρνητική" συμπεριφορά. Επομένως, τα transistors μπορούν να χρησιμοποιηθούν όπως και οι ηλεκτρονόμοι. Κάθε διακόπτης του ηλεκτρονόμου έχει δύο επαφές· το transistor NMOS παίζει το ρόλο της "κάτω" (θετικής) επαφής, και το PMOS της "επάνω" (αρνητικής) επαφής. Η διαφορά με τους ηλεκτρονόμους είναι στη σύμβαση αναπαράστασης των ψηφιακών τιμών: οι είσοδοι (πύλες) των transistors είναι ευαίσθητες στην τάση και όχι στο ρεύμα· έτσι, το μεν 1 παραμένει σαν "υψηλή τάση", αλλά το 0 πρέπει να γίνει "χαμηλή τάση", αντί "ανοικτό κύκλωμα" που ήταν. Κατά συνέπεια, κάθε λογική πύλη πρέπει να περιλαμβάνει όχι μόνο τα κυκλώματα που τροφοδοτούν την έξοδο με ψηλή τάση στις επιθυμητές προς τούτο περιπτώσεις --τα οποία ήδη υπήρχαν-- αλλά και κυκλώματα που να τροφοδοτούν την έξοδο με χαμηλή τάση στις υπόλοιπες περιπτώσεις.
Στο επόμενο σχήμα φαίνεται η κατασκευή ενός αντιστροφέα σε CMOS·
αποτελείται από ένα transistor NMOS κι ένα PMOS,
ελεγχόμενα και τα δύο από την τάση εισόδου.
Χαμηλή τάση εισόδου προκαλεί άναμα του PMOS και σβήσιμο του NMOS,
οπότε η έξοδος συνδέεται αγώγιμα με τη θετική τροφοδοσία
και παίρνει ψηλή τάση.
Αντίθετα, ψηλή είσοδος προκαλεί άναμα του NMOS και σβήσιμο του PMOS,
οπότε η έξοδος συνδέεται αγώγιμα με τη γείωση και παίρνει χαμηλή τάση.
Παρατηρήστε ότι η είσοδος δεν συνδέεται αγώγιμα με κανέναν άλλο κόμβο,
αφού τροφοδοτεί αποκλειστικά και μόνο πύλες από transistors,
και αφού αυτές, όπως είδαμε, είναι ηλεκτρικά μονωμένες
από όλους τους γύρω τους ημιαγωγούς.
Έτσι εξασφαλίζεται η μονόδρομη ροή πληροφορίας,
από την είσοδο προς την έξοδο και ποτέ αντίστροφα,
όπως προδιαγράψαμε στην παράγραφο 3.5.
Στο τρίτο σχήμα, στα αριστερά, φαίνεται η κατασκευή των πυλών "ΟΧΙ-ΚΑΙ" (NAND) και "ΟΥΤΕ" (NOR - ΟΧΙ-Ή) σε CMOS. Κάθε πύλη έχει ένα "δίκτυο καθέλκυσης" (pull-down net), αποτελούμενο από transistors τύπου NMOS, γιά να τροφοδοτεί την έξοδο με χαμηλή τάση, κι ένα δυϊκό "δίκτυο ανέλκυσης" (pull-up net), αποτελούμενο από transistors τύπου PMOS, γιά την τροφοδότηση με ψηλή τάση· ο δυϊσμός έγκειται στην ανταλλαγή μεταξύ συνδεσμολογίας σειράς (ΚΑΙ) και παράλληλης (Ή), καθώς και στην ανταλλαγή μεταξύ transistors τύπων NMOS και PMOS. Εάν χρησιμοποιούσαμε transistors NMOS γιά ανέλκυση και PMOS γιά καθέλκυση θα μπορούσαμε να φτιάξουμε πύλες AND και OR· όμως, δυστυχώς, τα NMOS λειτουργούν σαν καλοί διακόπτες μόνο όταν η τάση καναλιού τους είναι χαμηλή, δηλαδή μόνο στα δίκτυα καθέλκυσης, και τα PMOS μόνο με ψηλές τάσεις καναλιού, δηλαδή μόνο σε δίκτυα ανέλκυσης. Στο δεξί μέρος του σχήματος φαίνεται η συμπεριφορά των δύο κυκλωμάτων γιά τους 4 συνδυασμούς τιμών των δύο εισόδων, A και B, επιβεβαιώνοντας έτσι ότι αυτά υλοποιούν τις λογικές συναρτήσεις (AB)', δηλαδή NAND, και (A+B)', δηλαδή NOR. Όπως βλέπουμε, πάντα, ένα και μόνον ένα από τα δίκτυα ανέλκυσης και καθέλκυσης είναι αγώγιμο, καθορίζοντας έτσι την τάση εξόδου, ενώ το άλλο δίκτυο είναι αποκομμένο (ανοικτό κύκλωμα), ούτως ώστε να μην επηρρεάζει την έξοδο και να μην καταναλώνει ενέργεια (ρεύμα τροφοδοσίας).
Τα chips αυτά είναι μακρόστενα. Τα μικρότερα από αυτά έχουν 14 ακροδέκτες ("ποδαράκια" - pins) το καθένα, μερικά έχουν 16 ακροδέκτες, και τα μεγαλύτερα έχουν 20. Οι ακροδέκτες βρίσκονται κατά μήκος των δύο μακρυών πλευρών τους --μισοί στη μία και μισοί στην άλλη ("περίβλημα δύο σειρών στη γραμμή" - dual in-line package - DIP). Τα chips αυτά μπαίνουν στην πλακέτα συνδέσεων (§ 0.5) κατά μήκος των κεντρικών αυλακιών της, όπως φαίνεται στο σχήμα δίπλα. Κάθε chip έχει, στη μία στενή πλευρά του, ένα χαρακτηριστικό σημαδάκι (εγκοπή, βαθούλωμα) το οποίο καθορίζει τον προσανατολισμό του chip και τη θέση του κάθε ακροδέκτη του. Όταν η εγκοπή αυτή τοποθετηθεί αριστερά (κοιτώντας το chip από επάνω), τότε η αρίθμηση των pins γίνεται όπως στο σχήμα. Γιά να λειτουργήσουν τα chips χρειάζονται ηλεκτρική τροφοδοσία --θετικό και αρνητικό πόλο. Τα chips αυτού του εργαστηρίου, και τα περισσότερα από τα chips στο σακκουλάκι (αλλά όχι όλα!), παίρνουν τον αρνητικό πόλο της τροφοδοσίας (τη "γείωση") στον κάτω δεξιό ακροδέκτη και τον θετικό πόλο της τροφοδοσίας στον πάνω αριστερό ακροδέκτη, όταν η χαρακτηριστική εγκοπή είναι αριστερά. Τις συνδέσεις αυτές πρέπει να τις κάνετε εσείς, γιά καθένα από τα chips. Η τάση τροφοδοσίας τους είναι 5 Volt (σε αντίθεση με τα περισσότερα σύγχρονα chips που χρειάζονται χαμηλότερες τάσεις τροφοδοσίας --3.3, ή 2.5, ή 1.8 Volt ή άλλες).
Κάθε chip γράφει επάνω τον τύπο του, καθώς και άλλες πληροφορίες. Η επιγραφή είναι δυσαναγνωστη σε μερικά chips, αλλά διαβάζεται ευκολότερα υπό ορισμένες γωνίες, ειδικά αν η επιφάνεια του chip δεν ανακλά το φωτισμό κατ' ευθείαν στα μάτια σας (δηλ. όταν δεν γυαλίζει). Στα περισσότερα chips που θα πάρετε, μπροστά από τον χαρακτηριστικό κωδικό 74 υπάρχουν ένα ή δύο γράμματα, συνήθως "SN" που υποδεικνύει ώς κατασκευάστρια εταιρεία την Texas Instruments, ή "M" που υποδεικνύει την εταιρεία ST Microelectronics. Μετά τον χαρακτηριστικό κωδικό 74 και πριν τον κωδικό του τύπου του chip αυτόν καθεαυτόν (π.χ. "02" γιά NOR, "04" γιά NOT, "08" γιά AND, κ.ο.κ.), υπάρχουν δύο ή τρία γράμματα που υποδεικνύουν την τεχνολογία κατασκευής και το είδος κυκλώματος της πύλης: συνήθως αυτά είναι "LS" (διπολικά transistors, κύκλωμα τύπου "Low-Power Shottky"), "ALS" (Advanced LS), ή "HC" (transistors MOS, κύκλωμα τύπου High-speed CMOS). Όπως είπαμε στην προηγούμενη παράγραφο 3.6, τα περισσότερα σημερινά chips είναι τεχνολογιάς CMOS, και περιέχουν εκατομμύρια (ή τουλάχιστο πολλές χιλιάδες) transistors το καθένα. Όμως, τα chips του εργαστηρίου μας δεν είναι σημερινά --είναι κλασσικά ("παλαιοντολογικά") chips της δεκαετίας του '60, με λίγες μόνο πύλες μέσα το καθένα, ή τουλάχιστο νεότερες, συμβατές παραλλαγές τους. Τα κλασσικά chips της δεκαετίας του '60 δεν ήταν κατασκευασμένα σε τεχνολογία CMOS --η CMOS είναι μεταγενέστερη τεχνολογία-- αλλά με "διπολικά" transistors, σε μιά παλιά τεχνολογία ονόματι "TTL"· τα chips "LS" και "ALS" είναι τέτοια, ενώ τα "HC" είναι νεότερες, συμβατές παραλλαγές των chips εκείνων σε τεχνολογία CMOS.
Θα χρησιμοποιήσουμε, αρχικά, το παράδειγμα
συνδυαστικού κυκλώματος δύο εισόδων και επτά εξόδων
που φαίνεται εδώ.
Οι έξοδοι οδηγούν τις 7 φωτοεκπομπούς διόδους της ένδειξης 7 τμημάτων
(§ 2.10),
σε τρόπον ώστε να εμφανίζονται σε αυτήν τα "γράμματα" A, b, c, και d,
όταν οι είσοδοι είναι 00, 01, 10, και 11, αντίστοιχα.
Γιά να επιτευχθούν τα σχήματα αυτά της οθόνης,
πρέπει η κάθε έξοδος να έχει τις τιμές που δείχνει ο παρακάτω πίνακας
στον καθένα από τους 4 συνδυασμούς τιμών των εισόδων·
τιμή 1 προκαλεί άναμα της αντίστοιχης LED,
ενώ τιμή 0 σημαίνει LED σβηστή:
A B a b c d e f g 0 0 1 1 1 0 1 1 1 0 1 0 0 1 1 1 1 1 1 0 0 0 0 1 1 0 1 1 1 0 1 1 1 1 0 1Αυτό που φτιάξαμε είναι οι 7 πίνακες αληθείας των 7 συνδυαστικών κυκλωμάτων που θα παράγουν τις 7 εξόδους a, b, ..., g, σαν ψηφιακές δυαδικές συναρτήσεις των 2 εισόδων A και B. Η επόμενη δουλειά μας είναι, με βάση αυτούς τους πίνακες, να φτιάξουμε τα αντίστοιχα κυκλώματα, χρησιμοποιώντας τις λογικές πράξεις (§ 3.5) AND, OR, NOT, και τις υλοποιήσεις τους με ηλεκτρονόμους ή chips. Αυτό θα το κάνουμε εδώ αναγνωρίζοντας, από τον κάθε πίνακα αληθείας, τη λογική συνάρτηση που αυτός αναπαριστά· Προς στιγμήν θα κάνουμε την αναγνώριση αυτή "πρόχειρα", χωρίς συγκεκριμένη μέθοδο, και στο επόμενο εργαστήριο θα αναπτύξουμε μιά μέθοδο που μας επιτρέπει ευκολότερη αναγνώριση "με το μάτι", γράφοντας τις τιμές της συνάρτησης σ' ένα διδιάστατο πίνακα, αντί σε μία κατακόρυφη στήλη. Η πρόχειρη αναγνώριση μας οδηγεί, στο παράδειγμα εδώ, στις λογικές συναρτήσεις:
[Up - Table of Contents] [Prev - 2. Relays] |
[printer version - PDF] [4. Karnaugh, RAM - Next] |
Up to the Home Page of CS-120
|
© copyright
University of Crete, Greece.
last updated: 22 Oct. 2013, by M. Katevenis. |