ΗΥ-120: Ψηφιακή Σχεδίαση
Φθινόπωρο 2012 |
Τμ. Επ. Υπολογιστών © Πανεπιστήμιο Κρήτης |
[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)].
Πριν το εργαστήριο, δηλαδή περίπου από 10 έως 16 Οκτωβρίου, πρέπει να περάσετε από το γραφείο του κ. Κρασσά, Β-220 στο προκατασκευασμένο κτήριο, ώρες 8:30 - 15:00, ή κατά τις πρωινές Ελεύθερες Ώρες Εργαστηρίου, γιά να παραλάβετε τα chips του εργαστηρίου --βλ. §3.3. Τα chips αυτά πρέπει να τα επιστρέψετε στο ίδιο μέρος μέχρι τις 15 Ιανουαρίου 2013, αλλοιώς θα θεωρηθεί ότι αποτύχατε στο μάθημα.
Τα σύμβολα αυτά υποδεικνύουν πάντα κυκλώματα με
μονόδρομη ροή της πληροφορίας
(δηλαδή της αιτίας αλλαγών κατάστασης)
από τις εισόδους τους (αριστερά στο σχήμα)
προς τις εξόδους τους (δεξιά στο σχήμα),
και ποτέ αντίστροφα.
Με άλλα λόγια, στα κυκλώματα αυτά,
η τιμή της εξόδου τους καθορίζεται
από τις τιμές των εισόδων τους (και μόνο),
ενώ οι τιμές των εισόδων τους ουδόλως επηρρεάζονται
από το τι συμβαίνει στις άλλες εισόδους ή στις εξόδους τους.
Αυτό μας προφυλάσσει από τους κινδύνους γιά τους οποίους
--όποιος ενδιαφέρεται-- μπορεί να διαβάσει στο προαιρετικό φυλλάδιο
extra03_relayLogic.html,
έστω και εάν, μερικές φορές, μας κοστίζει περισσότερο απ' όσο άλλα,
πιό "επικίνδυνα" κυκλώματα που θα βρεί ο ενδιαφερόμενος αναγνώστης εκεί.
Οι παραπάνω λογικές πύλες μπορούν να υλοποιηθούν με ηλεκτρονόμους (§ 2.7), όπως φαίνεται δίπλα, αν και σήμερα σπανιότατα χρησιμοποιούνται τέτοιες υλοποιήσεις. Εδώ, η αναπαράσταση των ψηφιακών τιμών είναι: "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.1.
Στο τρίτο σχήμα, στα αριστερά, φαίνεται η κατασκευή των πυλών "ΟΧΙ-ΚΑΙ" (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.2, τα περισσότερα σημερινά chips είναι τεχνολογιάς CMOS, και περιέχουν εκατομμύρια (ή τουλάχιστο πολλές χιλιάδες) transistors το καθένα. Όμως, τα chips του εργαστηρίου μας δεν είναι σημερινά --είναι κλασσικά ("παλαιοντολογικά") chips της δεκαετίας του '60, με λίγες μόνο πύλες μέσα το καθένα, ή τουλάχιστο νεότερες, συμβατές παραλλαγές τους. Τα κλασσικά chips της δεκαετίας του '60 δεν ήταν κατασκευασμένα σε τεχνολογία CMOS --η CMOS είναι μεταγενέστερη τεχνολογία-- αλλά με "διπολικά" transistors, σε μιά παλιά τεχνολογία ονόματι "TTL"· τα chips "LS" και "ALS" είναι τέτοια, ενώ τα "HC" είναι νεότερες, συμβατές παραλλαγές των chips εκείνων σε τεχνολογία CMOS.
Σε μιά μεγάλη μνήμη, με N ας πούμε λέξεις, η επιλογή της λέξης που θέλουμε να διαβάσουμε μέσω του "ανάματος" του αντίστοιχου ενός από τα N σύρματα γραμμής δεν βολεύει, διότι (α) το N είναι μεγάλος αριθμός, άρα πρέπει να έχουμε και να ελέγχουμε πολλά σύρματα εισόδου (ελέγχου), και (β) διότι πρέπει όποιος τροφοδοτεί (ελέγχει) αυτά τα σύρματα να είναι προσεκτικός ώστε πάντοτε ένα και μόνον ένα από αυτά να είναι "αναμένο".
Τη λύση έρχονται να δώσουν οι αποκωδικοποιητές, που τους είδαμε στις § 2.2 και § 2.9. Όπως σχολιάσαμε στην § 2.10, μπορούμε να φτιάξουμε έναν πολυπλέκτη που να περιέχει έναν ενσωματωμένο αποκωδικοποιητή, ούτως ώστε η επιλογή της επιθυμητής εισόδου δεδομένων του πολυπλέκτη να γίνεται μέσω "κωδικοποιημένης" εισόδου επιλογής, με λιγότερα bits, από την οποά ο αποκωδικοποιητής "βρίσκει" ποιάν (μία και μόνο μία) από τις (περισσότερες) εισόδους δεδομένων να επιλέξει --εκείνην που αντιστοιχεί στο συγκεκριμένο συνδυασμό των bits επιλογής. Έτσι, με n = log2(N) bits επιλογής (log2() εννοούμε τον δυαδικό λογάριθμο - το λογάριθμο με βάση 2) μπορούμε να επιλέγουμε μεταξύ N = 2n γραμμών δεδομένων εισόδου. Παραδείγματος χάριν, στο πείραμα § 2.10 είχαμε χρησιμοποιήσει έναν αποκωδικοποιητή 3-σε-8 γιά να φτιάξουμε έναν πολυπλέκτη 8-σε-1: n=3 bits επιλογής αποκωδικοποιούνται στους N=8 συνδυασμούς τους, κι έτσι επιλέγουν την επιθυμητή είσοδο δεδομένων μεταξύ των N=8 υπαρχουσών τέτοιων.
Αυτός ακριβώς είναι ο τρόπος με τον οποίο οργανώνονται οι μνήμες των υπολογιστών και γενικότερα των ψηφιακών συστημάτων, όπως φαίνεται και στο σχήμα. Τα τρία bits επιλογής, A2, A1, A0, αποκωδικοποιούνται στο αριστερό μέρος του κυκλώματος στους οκτώ συνδυασμούς τους, 000, 001, 010,... έως 111. Ο ένας και μόνον ένας συνδυασμός που ισχύει ανά πάσα στιγμή (ο επιλεγμένος συνδυασμός) τροφοδοτεί με ρεύμα (επιλέγει) το αντίστοιχο οριζόντιο σύρμα (γραμμή) και την αντίστοιχη λέξη της μνήμης, και προκαλεί την ανάγνωση της λέξης αυτής, δηλαδή την εμφάνιση των bits της στα (εδώ τρία) κατακόρυφα σύρματα (εξόδους) ανάγνωσης δεδομένων.
Τα bits επιλογής της επιθυμητής λέξης, εδώ τα A2, A1, A0,
λέγονται Διεύθυνση Μνήμης (memory address),
και γι' αυτό το αριστερό μέρος του κυκλώματος το λέμε
αποκωδικοποιητή διευθύνσεων (address decoder).
Πρέπει να φανταζόμαστε τη μνήμη σαν ένα μακρύ δρόμο με N σπιτάκια,
ένα γιά κάθε λέξη
(εμείς τον δρόμο τον σχεδιάζουμε κατακόρυφα,
με τα σπιτάκια το ένα κάτω από το άλλο,
ίσως σαν ορόφους μιάς μεγάλης πολυκατοικίας ή ενός ουρανοξύστη),
και τη Διεύθυνση Μνήμης να την φανταζόμαστε
σαν την ταχυδρομική διεύθυνση του κάθε σπιτιού (της κάθε λέξης)
--βασικά, οαριθμός του κάθε σπιτιού πάνω σε αυτό το δρόμο.
Στο δεκαδικό σύστημα αρίθμησης ταχυδρομικών διευθύνσεων,
με τριψήφιους (n=3) αριθμούς σπιτιών
μπορούμε να έχουμε N = 103 = 1000 σπιτάκια
σε αυτό το δρόμο, με αριθμούς από το 000 μέχρι το 999.
Στις ψηφιακές μνήμες, που λειτουργούν με δυαδικά bits,
με διευθύνσεις των n=3 bits
μπορούμε να έχουμε N = 23 = 8 λέξεις-σπιτάκια
σε αυτή τη μνήμη-δρόμο.
Στο Εργαστήριο κατασκευάστε αυτόν τον αποκωδικοποιητή 3-σε-8 με ηλεκτρονόμους, ο οποίος είναι σχεδόν ίδιος με εκείνον του πειράματος § 2.9, με μιά κρίσιμη εξαίρεση στις τάσεις τροφοδοσίας, όπως λέμε παρακάτω. Τις οκτώ εξόδους αυτού του αποκωδικοποιητή θα τις συνδέσετε στις άκρες μιάς καλωδιοταινίας, όπως φαίνεται στη μεγάλη φωτογραφία παραπάνω και στη λεπτομέρεια της στην παρακάτω φωτογραφία. Η καλωδιοταινία αυτή τροφοδοτεί, όπως δείχνει η φωτογραφία, τις γραμμές (λέξεις) της μνήμης ROM 8x8 του πειράματος 1.8. Έτσι θα έχετε κατασκευάσει το ισοδύναμο του κυκλώματος που περιγράψαμε στην αρχή αυτής της ενότητας, με μόνη τη διαφορά ότι η μνήμη θα είναι πλάτους 8 bits/λέξη, αντί 3 bits/λέξη στο παραπάνω σχήμα. Στην άκρη της καλωδιοταινίας σημειώνονται οι αριθμοί 0 έως 7 (σε δύο θέσεις καθένας): ο αριθμός 0 δείχνει το σύρμα που επιλέγει την πάνω-πάνω λέξη της μνήμης, ο αριθμός 7 το σύρμα που επιλέγει την κάτω-κάτω λέξη, και οι άλλοι τις ενδιάμεσες· και τα δύο σύρματα με τον ίδιο αριθμό επιλέγουν (τροφοδοτούν) την ίδια λέξη (είναι βραχυκυκλωμένα μεταξύ τους, εσωτερικά). Ο ακροδέκτης "NC" (no connection) είναι ασύνδετος.
Ένα πράγμα που πρέπει να προσέξετε είναι ότι
οι μεν ηλεκτρονόμοι του αποκωδικοποιητή
λειτουργούν με τάση τροφοδοσίας 5 Volt,
η δε μνήμη ROM και ο ενδείκτης 7-τμημάτων που οδηγεί
χρειάζονται τροφοδοσία 12 Volt γιά να ανάβουν καλά.
Θυμηθείτε ότι στη μνήμη αυτή και τον ενδείκτη 7-τμημάτων,
η τροφοδοσία έρχεται ολόκληρη
μόνον από το σύρμα (γραμμή) της επιλεγμένης λέξης·
άρα, η επιλεγμένη λέξη πρέπει να φέρνει 12 Volt, και όχι 5.
Αυτό επιτυγχάνεται, όπως έδειχνε το σχήμα παραπάνω,
τροφοδοτώντας το "δένδρο" αποκωδικοποίησης
--από τη ρίζα του!-- με 12 Volt.
Χάρις στην απομόνωση που προσφέρουν οι ηλεκτρονόμοι,
μεταξύ πηνίου τους και διακοπτών τους,
αυτό είναι απόλυτα εφικτό:
τα μέν πηνία των ηλεκτρονόμων τροφοδοτούνται με 5 Volt,
οι δε διακόπτες τους που ελέγχονται από αυτά
"οδηγούν" μέσα από το δένδρο αποκωδικοποίησης
μιά τροφοδοσία 12 Volt στην εκάστοτε επιλεγόμενη έξοδο - σύρμα γραμμής.
Στις φωτογραφίες φαίνεται καθαρά το κόκκινο σύρμα τροφοδοσίας των 12 Volt
και πώς αυτό συνδέεται στον πόλο του διακόπτη
του αριστερού bit διεύθυνσης, A2
(οι φωτογραφίες δείχνουν μόνο το διακόπτη A2
--χωρίς τον υπόλοιπο αποκωδικοποιητή).
Πειραματιστείτε γράφοντας (χειροκίνητα) στη μνήμη διάφορα περιεχόμενα, γιά να εμφανίζονται στον ενδείκτη 7-τμημάτων άλλοτε τα ψηφία 0 έως 7, και άλλοτε άλλα γράμματα, σύμβολα, ή αριθμοί. Μετά από κάθε σύνολο τέτοιων εγγραφών, "διαβάστε" τα περιεχόμενα της μνήμης, με τη σειρά ή ανακατωμένα, εμφανίζοντάς τα στον ενδείκτη 7-τμημάτων. Συσχετίστε το τι κάνετε εδώ με το τι θα κάνουμε παρακάτω.
Αυτό μπορούμε να το εκφράσουμε και "επίσημα", με συναρτήσεις AND και OR. Ας πάρουμε σαν παράδειγμα την (αριστερή) έξοδο L2 στο σχήμα της προηγούμενης ενότητας. Αυτή "ανάβει" (χάρις στα πριζάκια W2, C2, F2, H2) στις περιπτώσεις: 000, 010, 101, και 111, δηλαδή στις περιπτώσεις: "000": (NOT A2) AND (NOT A1) AND (NOT A0), "010": (NOT A2) AND (A1) AND (NOT A0), "101": (A2) AND (NOT A1) AND (A0), και "111": (A2) AND (A1) AND (A0). Οι τέσσερεις έξοδοι του αποκωδικοποιητή που τροφοδοτούν αυτές τις τέσσερεις γραμμές υπολογίζουν ακριβώς αυτές τις τέσσερεις συναρτήσεις AND. Ο πολυπλέκτης L2 της μνήμης, από την άλλη, υπολογίζει το OR αυτών των τεσσάρων περιπτώσεων, αφού ανάβει όποτε ανάβει οιαδήποτε από αυτές τις γραμμές. Άρα, συνολικά, η L2 ισούται με το OR των παραπάνω τεσσάρων συναρτήσεων AND. Στην επόμενη ενότητα, άσκηση, και πείραμα, θα κάνουμε την ίδια δουλειά με άλλον τρόπο, και στο επόμενο Εργαστήριο θα δούμε έναν μεθοδικό τρόπο να εξάγουμε και να απλοποιούμε τέτοιες συναρτήσεις.
Θα χρησιμοποιήσουμε, αρχικά, το παράδειγμα
συνδυαστικού κυκλώματος δύο εισόδων και επτά εξόδων
που φαίνεται εδώ.
Οι έξοδοι οδηγούν τις 7 φωτοεκπομπούς διόδους της ένδειξης 7 τμημάτων
(§ 2.5),
σε τρόπον ώστε να εμφανίζονται σε αυτήν τα "γράμματα" 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.1) 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: 10 Oct. 2012, by M. Katevenis. |