Λύσεις — Μάθημα 3.7 · Κυκλώματα αποκωδικοποίησης (Έλεγχος Γνώσεων, σελ. 119-120)
Λύσεις των ασκήσεων του βιβλίου (ορισμοί, πίνακες αληθείας decoder, κύκλωμα επιλογής μνήμης).
Χαμηλά ενεργό σήμα
Ερώτηση: Τι ονομάζουμε χαμηλά ενεργό σήμα;
Απάντηση:
- Ένα σήμα που ενεργοποιεί το κύκλωμα όταν είναι στο λογικό 0 (χαμηλή τάση) και το απενεργοποιεί όταν είναι 1 (υψηλή τάση).
- Π.χ. το CS (Chip Select) είναι ενεργό χαμηλά.
Σύνοψη: (ενδεικτική) Σήμα που ενεργοποιεί όταν είναι 0 (και απενεργοποιεί όταν είναι 1).
Κριτήρια αξιολόγησης:
- Κριτήριο: ενεργό στο λογικό 0.
Απομονωτής τριών καταστάσεων
Ερώτηση: Τι είναι ένας απομονωτής τριών καταστάσεων;
Απάντηση:
- Κύκλωμα με τρεις δυνατές καταστάσεις εξόδου: 0, 1 και υψηλή αντίσταση.
- Όταν το σήμα ελέγχου είναι ανενεργό, η έξοδος αποσυνδέεται από τον διάδρομο (υψηλή αντίσταση) → δεν επηρεάζει τα δεδομένα.
Σύνοψη: (ενδεικτική) Απομονωτής με εξόδους 0/1/υψηλή αντίσταση· όταν είναι ανενεργός, αποσυνδέει την έξοδο από τον διάδρομο.
Κριτήρια αξιολόγησης:
- Κριτήριο: οι τρεις καταστάσεις + ρόλος αποσύνδεσης.
Πίνακας αληθείας
Ερώτηση: Τι είναι ο πίνακας αληθείας;
Απάντηση:
- Πίνακας που δείχνει τις λογικές τιμές των εξόδων ενός κυκλώματος για όλους τους δυνατούς συνδυασμούς των εισόδων.
Σύνοψη: (ενδεικτική) Πίνακας με τις τιμές εξόδου για κάθε συνδυασμό εισόδων ενός λογικού κυκλώματος.
Κριτήρια αξιολόγησης:
- Κριτήριο: όλοι οι συνδυασμοί εισόδων → τιμές εξόδων.
Άσκηση 4 — decoder 2→4 ΚΑΙ 4→16
Ερώτηση: Δώστε τον πίνακα αληθείας ενός αποκωδικοποιητή 2 σε 4 και ενός 4 σε 16.
Λύση:
- Decoder 2→4 (ενεργή έξοδος = δυαδικός αριθμός εισόδου):
i1 i0 | d0 d1 d2 d3 → 00|1000, 01|0100, 10|0010, 11|0001.
- Decoder 4→16: 4 είσοδοι (i3i2i1i0) → 16 έξοδοι (d0…d15). Για κάθε συνδυασμό ενεργοποιείται μόνο η έξοδος d_k με k = δεκαδική τιμή της εισόδου.
- Π.χ.
0000→d0, 0001→d1, 0101→d5, 1010→d10, 1111→d15 (οι υπόλοιπες 15 έξοδοι = 0).
Απάντηση: 2→4: 00→d0, 01→d1, 10→d2, 11→d3 (μία έξοδος '1'). 4→16: κάθε από τους 16 συνδυασμούς ενεργοποιεί ακριβώς μία από τις d0…d15 (d_k, k=τιμή εισόδου).
Πρόσεξε:
- Σε κάθε γραμμή του πίνακα μόνο μία έξοδος είναι 1.
- Ο decoder n→2ⁿ: 2→4 (4 έξοδοι), 4→16 (16 έξοδοι).
Άσκηση 5 — κύκλωμα ROM/RAM
Ερώτηση: Σχεδιάστε κύκλωμα με μνήμες ROM & RAM για τις περιοχές 0000–7FFF (ROM) και 8000–FFFF (RAM).
Λύση:
- Οι περιοχές 0000–7FFF και 8000–FFFF (δεκαεξαδικά) καλύπτουν χώρο 64 KB (16-bit διευθύνσεις A0–A15). Κάθε περιοχή είναι 32 KB = 2¹⁵, άρα κάθε μνήμη χρειάζεται A0–A14 (15 γραμμές).
- Το A15 διακρίνει τις δύο περιοχές: 0000–7FFF → A15=0 (ROM), 8000–FFFF → A15=1 (RAM).
- Κύκλωμα: A0–A14 κοινά στις δύο μνήμες· A15 → CS της ROM και A15 μέσω αντιστροφέα (NOT) → CS της RAM (CS ενεργά χαμηλά). Δεδομένα μέσω απομονωτών τριών καταστάσεων.
- Σημείωση: η εκφώνηση αναφέρει «8 Kbytes», αλλά οι δοσμένες περιοχές 0000–7FFF & 8000–FFFF αντιστοιχούν σε 32 KB η καθεμία (ασυνέπεια βιβλίου)· η λύση δίνεται για τις περιοχές όπως ορίζονται (32 KB, επιλογή με A15).
Απάντηση: Δύο μνήμες 32 KB· A0–A14 κοινά· A15 στο CS της ROM & A15 μέσω αντιστροφέα στο CS της RAM (ενεργά χαμηλά) → A15=0 ROM, A15=1 RAM.
Πρόσεξε:
- 0000–7FFF = 0…32767 (A15=0), 8000–FFFF = 32768…65535 (A15=1).
- Η ένδειξη «8 KB» της εκφώνησης δεν συμφωνεί με τα εύρη (32 KB) — λύνουμε βάσει των περιοχών.
Άσκηση 6 — decoder 3→8 ΚΑΙ έξι μνήμες (σελ. 119)
(Πρόσθετη άσκηση — καλύπτει τη γενική περίπτωση περισσότερων από δύο μνημών, ενότητα 3.7.3 του βιβλίου.)
Ερώτηση: Ένα υπολογιστικό σύστημα έχει διάδρομο διευθύνσεων 16 bit και χρησιμοποιεί ολοκληρωμένα μνήμης των 8 KB το καθένα. Πόσα bits διεύθυνσης οδηγούνται κοινά σε κάθε ολοκληρωμένο, πόσα bits οδηγούν τον αποκωδικοποιητή και τι μέγεθος decoder χρειάζεται;
Λύση:
- Κάθε ολοκληρωμένο 8 KB = 2¹³ bytes, άρα χρειάζεται 13 κοινά bits (A0–A12) που οδηγούνται με τον ίδιο τρόπο σε όλα τα ολοκληρωμένα — επιλέγουν τη θέση μέσα στο ολοκληρωμένο.
- Μένουν 16−13 = 3 bits υψηλής αξίας (A13–A15), τα οποία οδηγούν τον αποκωδικοποιητή.
- Ένας decoder 3→8 δίνει 8 εξόδους — μία για κάθε πιθανό τμήμα των 8 KB μέσα στα συνολικά 64 KB. Κάθε έξοδος οδηγεί το CS ενός ολοκληρωμένου· όσες έξοδοι δεν αντιστοιχούν σε πραγματικό ολοκληρωμένο μένουν απλά αχρησιμοποίητες.
Απάντηση: 13 κοινά bits (A0–A12) στα ολοκληρωμένα ΚΑΙ 3 bits (A13–A15) στον αποκωδικοποιητή → χρειάζεται decoder 3→8.
Πρόσεξε:
- Το πλήθος εισόδων του decoder προκύπτει από τα bits που ΔΕΝ χρειάζονται για να διευθυνσιοδοτηθεί ένα ολοκληρωμένο (16 − 13 = 3), όχι από το πλήθος των ολοκληρωμένων που όντως χρησιμοποιούνται.