Σχεδίαση και υλοποίηση αθροιστή διψήφιων δυαδικών

ΑΣΚΗΣΗ 6η
ΣΧΕΔΙΑΣΗ ΚΑΙ ΥΛΟΠΟΙΗΣΗ ΑΘΡΟΙΣΤΗ
ΔΙΨΗΦΙΩΝ ΔΥΑΔΙΚΩΝ ΑΡΙΘΜΩΝ
Στην άσκηση αυτή γίνεται η υλοποίηση ενός αθροιστή ο οποίος έχει ως εισόδους δύο
διψήφιους δυαδικούς αριθμούς και παράγει στην έξοδο το άθροισμά τους και το
κρατούμενο αν υπάρχει.
ΘΕΩΡΙΑ
• «Ψηφιακή Σχεδίαση», Μ. Mano, M.D. Ciletti, (4η εκδ.), Κεφ. 4.5, σελ. 130 – 136.
•
«Σχεδίαση Ψηφιακών Συστημάτων με τη γλώσσα VHDL», S. Brown & Z. Vranesic
(3η εκδ.), Παρ. 5.2.
•
Εγχειρίδια χρήσης (Data Sheets) των Ο.Κ. 74LS08 (AND), 74LS32 (OR), 74LS86
(XOR).
ΕΡΓΑΣΤΗΡΙΑΚΟ ΜΕΡΟΣ
1. Γράψτε τον πίνακα αλήθειας και τις εξισώσεις του ημιαθροιστή (half-adder) με
εισόδους a,b, και εξόδους άθροισμα s και κρατούμενο cout.
2. Σχεδιάστε κύκλωμα για την υλοποίηση του ημιαθροιστή.
3. Συμπληρώστε τον πίνακα αληθείας του πλήρους αθροιστή ενός ψηφίου (είσοδοι: a,b,
cin και έξοδοι: άθροισμα s, κρατούμενο cout), που δίνεται παρακάτω και απλοποιήστε τις
συναρτήσεις του αθροίσματος και του κρατουμένου εξόδου με τη βοήθεια των πινάκων
Karnaugh.
28
ΠΙΝΑΚΑΣ ΑΛΗΘΕΙΑΣ
ΠΛΗΡΟΥΣ ΑΘΡΟΙΣΤΗ
a b cin s cout
ab
ab
cin
cin
s=
cout =
4. Σχεδιάστε έναν πλήρη αθροιστή του ενός ψηφίου με πύλες AND, OR και XOR δύο
εισόδων.
5. Υλοποιήστε τον πλήρη αθροιστή του προηγούμενου βήματος με Ο.Κ. της οικογένειας
74LS.
6. Επαληθεύστε τη λειτουργία του για όλους τους δυνατούς συνδυασμούς των εισόδων του
συνδέοντας κατάλληλα διακόπτες και LEDs του αναπτυξιακού συστήματος.
Συμπληρώστε τον Πίνακα 6.1
a
b cin
s
Πίνακας 6.1
29
cout
7. Σχεδιάστε έναν αθροιστή διάδοσης κρατουμένου δύο διψήφιων δυαδικών αριθμών
Α=a1a0 και B=b1b0 χρησιμοποιώντας τα κυκλώματα του ημιαθροιστή και του πλήρους
αθροιστή που έχετε σχεδιάσει στα προηγούμενα βήματα της άσκησης.
8. Συμπληρώστε τον πίνακα 6.2 με τις δεκαδικές και δυαδικές τιμές των εισόδων Α και Β
και το άθροισμά τους στο δεκαδικό σύστημα.
9. Υλοποιήστε τον αθροιστή του βήματος 7 με Ο.Κ. της οικογένειας 74LS συνδέοντας
κατάλληλα διακόπτες και LEDs του αναπτυξιακού συστήματος στις εισόδους και τις
εξόδους του. Συμπληρώστε στις τρεις τελευταίες στήλες του πίνακα 6.2 τα
αποτελέσματα της υλοποίησης του αθροιστή στο δυαδικό σύστημα και επαληθεύστε τη
ορθή λειτουργία του συγκρίνοντας με το δεκαδικό άθροισμα του βήματος 8.
Α
Α
Β
Β
Άθροισμα Άθροισμα
Δεκαδικό Δυαδικό Δεκαδικό Δυαδικό Δεκαδικό
Δυαδικό
Βήμα 8
Βήμα 8
Βήμα 9
Βήμα
8
a1 a0
b1 b0
cout s1 s0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
0
2
0
3
1
0
1
1
1
2
1
3
2
0
2
1
2
2
2
3
3
0
3
1
3
2
3
3
Πίνακας 6.2
30