Ενότητα 9 ΑΡΙΘΜΗΤΙΚΑ & ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
Γενικές Γραμμές Προσημασμένοι Ακέραιοι Δυαδικοί Αριθμοί Ημιαθροιστής - Ημιαφαιρέτης Πλήρης Αθροιστής - Πλήρης Αφαιρέτης Αθροιστής Διάδοσης Κρατούμενου Επαναληπτικές Διατάξεις Λογικής Αθροιστής Πρόβλεψης Κρατούμενου Αριθμητική και Λογική Μονάδα Πολλαπλασιαστής Μετρητής Πλήθους στην Είσοδό του Βλέπε: Βιβλίο Wakerly Παράγραφοι 2., 2.2, 2.3, 2.4, 2.5., 2.5.2, 2.5.3, 2.5.4, 2.6., 2.6.3, 2.6.4, 2.6.5, 2.8, 5.9.2, 5.0., 5.0.2, 5.0.3, 5.0.4, 5.0.5, 5.. Βιβλίο Mano Παράγραφοι.4,.5,.6, 4.5, 4.7
Μη Προσημασμένοι Ακέραιοι Αριθμοί Β=0 Β=2 Β=6 Β=0 Β=2 Β=6 0 0000 0 8 000 8 000 9 00 9 2 000 2 0 00 Α 3 00 3 0 Β 4 000 4 2 00 C 5 00 5 3 0 D 6 00 6 4 0 E 7 0 7 5 F 8 4 2 βάρη 8 4 2
Προσημασμένοι Ακέραιοι Δυαδικοί Αριθμοί σε Απεικόνιση Συμπληρώματος ως προς 2 δεκαδικός χωρίς πρόσημο δυαδικός συμπλήρωμα ως προς 2 δεκαδικός με πρόσημο 0 0000 0 000 2 000 2 3 00 3 4 000 4 5 00 5 6 00 6 7 0 7 Απεικόνιση σε 4 ψηφία δεκαδικός χωρίς πρόσημο δυαδικός συμπλήρωμα ως προς 2 δεκαδικός με πρόσημο 8 000-8 9 00-7 0 00-6 0-5 2 00-4 3 0-3 4 0-2 5-8 4 2 βάρη -8 4 2 8 4 2 βάρη -8 4 2 Το MSB έχει αρνητικό βάρος και δηλώνει το πρόσημο (0=θετικός, =αρνητικός)
Προσημασμένοι Ακέραιοι Δυαδικοί Αριθμοί σε Απεικόνιση Συμπληρώματος ως προς 2 Γενική περίπτωση απεικόνισης σε n ψηφία Το ψηφίο του πρόσημου έχει αρνητικό βάρος απεικονίζονται το πολύ 2 n ακέραιοι (integer) αριθμοί υπάρχει μία μόνο απεικόνιση του 0 υπάρχουν 2 n- - δυνατοί συνδυασμοί 0 και, που έχουν το MSB μηδέν και απεικονίζουν τους θετικούς ακέραιους αριθμούς από το μέχρι το 2 n- - υπάρχουν 2 n- δυνατοί συνδυασμοί 0 και, που έχουν το MSB ένα και απεικονίζουν τους αρνητικούς ακέραιους αριθμούς από το - μέχρι το -2 n- υπάρχει ένας παραπάνω αρνητικός αριθμός, ο -2 n-, που δεν έχει θετικό συμπλήρωμα (τον 2 n- )
Προσημασμένοι Ακέραιοι Δυαδικοί Αριθμοί σε Απεικόνιση Συμπληρώματος ως προς 2 Πώς προκύπτει το συμπλήρωμα ως προς 2 ; 0 = 000 παίρνουμε τα συμπληρωματικά ψηφία (απεικόνιση συμπληρώματος ως προς ) προσθέτουμε το αγνοούμε το κρατούμενο, εάν υπάρχει 0 0 = 0000-8 0 = 000 συμπληρωματικά ψηφία 0 0 + 000 + 000 + 000 + = - 0 0000 = 0 0 000 = -8 0 το κρατούμενο αγνοείται Υπερχείλιση: δεν υπάρχει +8
Προσημασμένοι Ακέραιοι Δυαδικοί Αριθμοί σε Απεικόνιση Συμπληρώματος ως προς 2 Επέκταση πρόσημου (sign extension) από n ψηφία σε m ψηφία (m>n) : εάν ο αριθμός είναι θετικός (το MSB είναι μηδέν), βάζουμε m-n μηδέν αριστερά του αριθμού π.χ. 00 σε 000 (= ) εάν ο αριθμός είναι αρνητικός (το MSB είναι ένα), βάζουμε m-n ένααριστεράτουαριθμού π.χ. σε (= -), 00 σε 00 (= -4)
Προσημασμένοι Ακέραιοι Δυαδικοί Αριθμοί σε Απεικόνιση Συμπληρώματος ως προς 2 Πώς γίνεται η πρόσθεση ; για κάθε βάρος προσθέτουμε τα ψηφία του ιδίου βάρους μαζί με το κρατούμενο του προηγούμενου βάρους, εάν υπάρχει, ξεκινώντας με κρατούμενο μηδέν (0) αγνοούμε το κρατούμενο που παράγεται από τα MSB, εάν υπάρχει ενδιάμεσα κρατούμενα 0000 0 + 000 (-2) + (+) (-) 00 0 + 000 0000 (-2) + (+2) 0 το κρατούμενο αγνοείται
Προσημασμένοι Ακέραιοι Δυαδικοί Αριθμοί σε Απεικόνιση Συμπληρώματος ως προς 2 Πώς γίνεται η αφαίρεση ; παίρνουμε το συμπλήρωμα του αφαιρετέου και το προσθέτουμε στο μειωτέο, ή παίρνουμε τα συμπληρωματικά ψηφία του αφαιρετέου για κάθε βάρος προσθέτουμε τα ψηφία του ιδίου βάρους μαζί με το κρατούμενο του προηγούμενου βάρους, εάν υπάρχει, ξεκινώντας με κρατούμενο ένα () αγνοούμε το κρατούμενο που παράγεται από τα MSB, εάν υπάρχει (-2) - (-) (-) 0-000 0 + 0000 (-2) - (-2) 0 0-0 0 + 000 0000
Προσημασμένοι Ακέραιοι Δυαδικοί Αριθμοί σε Απεικόνιση Συμπληρώματος ως προς 2 Υπερχείλιση (overflow) συμβαίνει όταν το αποτέλεσμα της πρόσθεσης είναι ένας αριθμός μεγαλύτερος από 2 n- - ή μικρότερος από -2 n- συμβαίνει όταν η πρόσθεση γίνεται σε δύο αριθμούς που έχουν το ίδιο πρόσημο (η αφαίρεση ανάγεται σε πρόσθεση) το πρόσημο του αποτελέσματος είναι διαφορετικό από το πρόσημο των αριθμών που προσθέτουμε (+3) + (+6) (+9) 00 00 + 00 00 00 (-3) -(+6) 0-00 0 + 00 = (-7) (-9) 0 = (+7)
Άσκηση 9.. Να δώσετε την απεικόνιση σε 6 δυαδικά ψηφία του συμπληρώματος ως προς 2 των προσημασμένων δεκαδικών αριθμών +32, +3, +, 0, -, -3, -32, όπου είναι δυνατή αυτή η απεικόνιση. 2. Να εκτελέσετε τις πράξεις: 00000 00000 και 000 + 000. 3. Σε ποιους δεκαδικούς αριθμούς αντιστοιχούν οι δυαδικοί ακέραιοι αριθμοί σε απεικόνιση συμπληρώματος ως προς 2 που μετέχουν στις πιο πάνω πράξεις.
Άσκηση 9.2. Ένας 8-ψήφιος επεξεργαστής ποιους ακέραιους δυαδικούς αριθμούς: (α) προσημασμένους σε απεικόνιση συμπληρώματος ως προς 2, και (β) μη προσημασμένους επεξεργάζεται χωρίς να παρουσιαστεί το φαινόμενο της υπερχείλισης; 2. Να κάνετε την αντίστοιχη πρόσθεση και αφαίρεση μεταξύ των προσημασμένων δεκαδικών αριθμών +20 και -8 λαμβάνοντας υπόψη ότι αυτοί αποθηκεύονται σε έναν 8-ψήφιο καταχωρητή σε απεικόνιση συμπληρώματος ως προς 2. Τί παρατηρείτε;
X Υ Ημιαθροιστής, Half-Adder (HA) S=Χ Υ C out =ΧΥ AND-OR X Y S C out 0 0 0 0 0 0 0 0 0 Χ Υ 0 0 0 S C out C out S = Χ Υ = Χ Υ+ ΧΥ C out = ΧΥ X HA S Y S=sum C=carry
Χ Υ 0 C in Χ Υ Χ 0 C in Y 0 C in Πλήρης Aθροιστής, Full-Adder (FA) 0 0 S S = Χ Υ C in = Χ Υ C in + Χ ΥC in +ΧΥ C in +ΧΥC in C out = Χ ΥC in + ΧΥ C in + ΧΥC in +ΧΥC in = ΧΥ + ΧC in + ΥC in 0 0 C out C out X Y C in C out S 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Το αποτέλεσμα (C out,s) είναι ο αντίστοιχος μη προσημασμένος ακέραιος διψήφιος αριθμός X FA S Y C in S=sum C=carry
C in Πλήρης Αθροιστής από Ημιαθροιστές 0 Χ Υ 0 0 S ΗΑ ΗΑ 0 C out S = Χ Υ C in C out = ΧΥ+(Χ Υ)C in = ΧΥ+(Χ Y+XY )C in = ΧΥ+Χ YC in +XY C in = Υ(X+Χ C in )+X(Y+Y C in ) = Υ(X+C in )+X(Y+C in ) = XY+YC in +XC in
X Υ Ημιαφαιρέτης, Half-Subtracter (HS) D=Χ Υ B out =Χ Υ AND-OR X Y D B out 0 0 0 0 0 0 0 0 0 Χ Υ 0 0 D B out B out D = Χ Υ = Χ Υ+ ΧΥ B out = Χ Υ X HS D Y D=difference B=borrow
Πλήρης Aφαιρέτης, Full-Subtracter (FS) Χ Υ B in 0 Χ Υ 0 Χ B in Y B in 0 0 D = Χ Υ B in = Χ Υ B in +Χ ΥB in +ΧΥ B in +ΧΥB in B out = Χ Υ B in +Χ ΥB in +Χ ΥB in +ΧΥB in = Χ Υ+Χ B in +ΥB in 0 D B out B out X Y B in B out D 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Το αποτέλεσμα (B out,d) είναι ο αντίστοιχος προσημασμένος ακέραιος διψήφιος αριθμός X FS D Y B in D=difference B=borrow
Πλήρης Αθροιστής/Aφαιρέτης με Επιλογή (πρώτη προσέγγιση) Πλήρης Αθροιστής Πλήρης Αφαιρέτης με βάση τον Πλήρη Αθροιστή Πλήρης Αθροιστής/Αφαιρέτης S = Χ Υ C in C out = ΧΥ+ΧC in +ΥC in D = Χ Υ B in B out = Χ Υ+Χ B in +ΥB in E X Y C out X FΑ S Y C in D = Χ Υ B in B out = Χ Υ+Χ B in +ΥB in B out X FΑ Y Β in C out E FΑ S C in D Αθροιστής (Ε=0) Αφαιρέτης (Ε=)
Πλήρης Αθροιστής/Aφαιρέτης με Επιλογή Πλήρης Αθροιστής (δεύτερη προσέγγιση) Πλήρης Αφαιρέτης με βάση τον Πλήρη Αθροιστή Πλήρης Αθροιστής/Αφαιρέτης S = Χ Υ C in C out = ΧΥ+ΧC in +ΥC in D = Χ Υ B in B out = Χ Υ+Χ B in +ΥB in X Y E C out X FΑ S Y C in D = Χ Υ B in B out = ΧΥ +ΧB in +Υ B in B out X Y FΑ Β in C out FΑ S C in D Αθροιστής (Ε=0) Αφαιρέτης (Ε=) Συμπληρωματική είσοδος και έξοδος κρατούμενου κατά την αφαίρεση Επομένως, αρχικό κρατούμενο C 0 =
Aθροιστής Διάδοσης Κρατούμενου Ripple-Carry Adder (RCA) X 3 Y 3 X 2 Y 2 X Y X 0 Y 0 C 4 FA C 3 FA C 2 FA C FA C 0 0 S 3 S 2 S S 0 4 ψηφία το κρατούμενο αγνοείται σε απεικόνιση συμπληρώματος ως προς 2 C 3 C 2 C 0 X 3 X 2 X X 0 + Y 3 Y 2 Y Y 0 C 4 S 3 S 2 S S 0 αντικαθίσταται με ΗΑ
ΑφαιρέτηςΔιάδοσηςΚρατούμενου Ripple-Carry Subtracter (RCS) X 3 Y 3 X 2 Y 2 X Y X 0 Y 0 B 4 FS B 3 FS B 2 FS B FS B 0 0 D 3 D 2 D D 0 4 ψηφία B 3 B 2 B 0 X 3 X 2 X X 0 -Y 3 Y 2 Y Y 0 αντικαθίσταται με ΗS B 4 D 3 D 2 D D 0
ΑφαιρέτηςΔιάδοσηςΚρατούμενου Ripple-Carry Subtracter (RCS) C 4 X 3 Y 3 FA C 3 X 2 Y 2 FA C 2 X Y FA C X 0 Y 0 FA C 0 S 3 S 2 S S 0 4 ψηφία το κρατούμενο αγνοείται X-Y = X+Y + B 3 B 2 B 0 X 3 X 2 X X 0 -Y 3 Y 2 Y Y 0 B 4 D 3 D 2 D D 0 C C 3 2 C X X 3 2 X X 0 + Y 3 Y 2 Y Y 0 C 4 S S 3 2 S S 0 Χρησιμοποιείται σε πράξεις μεταξύ προσημασμένων ακέραιων δυαδικών αριθμών σε απεικόνιση συμπληρώματος ως προς 2 καθώς, και σε πράξεις μη προσημασμένων ακέραιων δυαδικών αριθμών, όπως προκύπτει από τη δεύτερη προσέγγιση του πλήρη αφαιρέτη που βασίζεται σε πλήρη αθροιστή
Αθροιστής/Αφαιρέτης Διάδοσης Κρατούμενου με Επιλογή και Υπερχείλιση Αθροιστής (Ε=0) και Αφαιρέτης (Ε=) Χ 3 Υ 3 Χ 2 Υ 2 Χ Υ Χ 0 Υ 0 E Υ 3 * Υ 2 * Υ * Υ 0 * C 4 FΑ C 3 FΑ C 2 FΑ C FΑ C 0 OV S 3 S 2 S S 0 Overflow (X 3 = Y 3 * = S 3 C 3 C 4 ) να γίνει επαλήθευση 4 ψηφία Η υπερχείλιση λαμβάνεται υπόψη μόνο στις πράξεις μεταξύ προσημασμένων ακέραιων δυαδικών αριθμών σε απεικόνιση συμπληρώματος ως προς 2
Aθροιστής Διάδοσης Κρατούμενου Ripple-Carry Adder (RC Adder) X 3 Y 3 X 2 Y 2 X Y X 0 Y 0 C 4 FA C 3 FA C 2 FA C FA C 0 0 S 3 S 2 S S 0 4 ψηφία C 3 C 2 C 0 X 3 X 2 X X 0 + Y 3 Y 2 Y Y 0 C 4 S 3 S 2 S S 0 καθυστέρηση διάδοσης : t RCA = t XYCout + 2 x t CinCout + t CinS το κρατούμενο πρέπει να διαδοθεί μέσα από όλους τους πλήρεις αθροιστές
κύριες είσοδοι κύριες έξοδοι Eπαναληπτικές Διατάξεις Λογικής PI n- PO n- (Iterative Logic Arrays) PI n-2 C n PI C n- PI C n-2 C C CO CI CO CI.. PI 0 CO CI PO PO PO PO n-2 PI 0 PO 0 Αποτελούνται από n ίδιες βασικές μονάδες, που τοποθετούνται η μία δίπλα στην άλλη. Οι οριζόντιες έξοδοι CO της μίας μονάδας συνδέονται με τις αντίστοιχες οριζόντιες εισόδους CI της επόμενης μονάδας. Στις οριζόντιες εισόδους της πρώτης μονάδας βάζουμε μία αρχική τιμή C 0. Οι κάθετοι είσοδοι PI είναιοικύριεςείσοδοιτου κυκλώματος, το οποίο μπορεί να έχει και κάθετες εξόδους PO, εκτός από την οριζόντια έξοδο C n, (βλέπε αθροιστής ριπής κρατούμενου)
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Χ i Υ i HS i S i Χ i- X 0 Y i- Y 0.. κύκλωμα πρόβλεψης κρατουμένου C i C i S i = HS i C i C i = F(X 0 -X i-, Y 0 -Y i-, C 0 ) C 0 Η βαθμίδα i που παράγει το άθροισμα βάρους 2 i
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Κύκλωμα πρόβλεψης κρατούμενου C i (i>0) το κρατούμενο C i είναι, εάν Χ i- = Υ i- = (ανεξάρτητα από τις τιμές των Χ 0 -Χ i-2, Υ 0 -Υ i-2 και C 0 ) X i Y i X i- = AND Y i- = carry C i- = 0/ Ορίζεται η συνάρτηση γέννησης κρατούμενου (carry generate) HS i C i = G i- = Χ i- Υ i- Εάν G i- =, τότε C i = S i Η βαθμίδα i που παράγει το άθροισμα βάρους 2 i
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Κύκλωμα πρόβλεψης κρατούμενου C i (i>0) το κρατούμενο C i είναι, εάν C i- = και Χ i- = ήυ i- = X i Y i (X i- = OR Y i- =) AND C i- = carry Ορίζεται η συνάρτηση διάδοσης κρατούμενου (carry propagate) HS i C i = P i- = Χ i- + Υ i- Εάν C i- P i- =, τότε C i = S i Η βαθμίδα i που παράγει το άθροισμα βάρους 2 i
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Για κάθε βάρος 2 i-, oρίζονται οι συναρτήσεις : η συνάρτηση γέννησης κρατούμενου - G i- = Χ i- Υ i- (carry generate) η συνάρτηση διάδοσης κρατούμενου - P i- = Χ i- +Υ i- (carry propagate) από τις οποίες προσδιορίζεται το κρατούμενο C i βάρους 2 i, σύμφωνα με τις σχέσεις: C i = G i- + C i- P i- ή C i = P i- (G i- + C i- ) Ισχύει γιατί εάν G i- = τότε P i- =
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Κύκλωμα πρόβλεψης κρατούμενου C i σε 3 επίπεδα G i- = Χ i- Υ i- P i- = Χ i- +Υ i- C i = G i- + C i- P i- C = G 0 + C 0 P 0 C 2 = G + C P = G + (G 0 + C 0 P 0 ) P = G + G 0 P + C 0 P 0 P
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Κύκλωμα πρόβλεψης κρατούμενου C i σε 3 επίπεδα G i- = Χ i- Υ i- P i- = Χ i- +Υ i- C i = G i- + C i- P i- C 3 = G 2 + C 2 P 2 = G 2 + (G + G 0 P + C 0 P 0 P ) P 2 = G 2 + G P 2 + G 0 P P 2 + C 0 P 0 P P 2 C 4 = G 3 + C 3 P 3 = G 3 + (G 2 + G P 2 + G 0 P P 2 + C 0 P 0 P P 2 ) P 3 = G 3 + G 2 P 3 + G P 2 P 3 + G 0 P P 2 P 3 + C 0 P 0 P P 2 P 3
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Κύκλωμα πρόβλεψης κρατούμενου C i σε 3 επίπεδα G i- = Χ i- Υ i- C i = P i- (G i- + C i- ) P i- = Χ i- +Υ i- C = P 0 (G 0 + C 0 ) C 2 = P (G + C ) = P (G + P 0 (G 0 + C 0 )) = P (G + P 0 ) (G + G 0 + C 0 )
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Κύκλωμα πρόβλεψης κρατούμενου C i σε 3 επίπεδα G i- = Χ i- Υ i- P i- = Χ i- +Υ i- C i = P i- (G i- + C i- ) C 3 = P 2 (G 2 +C 2 ) = P 2 (G 2 +P (G +P 0 ) (G +G 0 +C 0 )) = P 2 (G 2 +P ) (G 2 +G +P 0 ) (G 2 +G +G 0 +C 0 ) C 4 = P 3 (G 3 +C 3 ) = P 3 (G 3 +P 2 (G 2 +P ) (G 2 +G +P 0 ) (G 2 +G +G 0 +C 0 )) = P 3 (G 3 +P 2 ) (G 3 +G 2 +P ) (G 3 +G 2 +G +P 0 ) (G 3 +G 2 +G +G 0 +C 0 ))
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Παραγωγή ημιαθροίσματος HS i από G i και P i HS i = G i P i Απόδειξη: HS i = Χ i Υ i = Χ i Υ i +Χ i Υ i = Χ i Υ i +Y i Υ i +Χ i Υ i +Χ i X i = (Χ i +Y i )Υ i +(Υ i +X i )Χ i = (Χ i +Y i ) (Χ i +Y i ) = (Χ i Y i ) (Χ i +Y i ) = G i P i
Aθροιστής Πρόβλεψης Κρατούμενου Carry Look-Ahead Adder (CLA Adder) Προς κύκλωμα πρόβλεψης κρατούμενου C k, k > i Χ i G i HS i S i Υ i P i H βαθμίδα i που παράγει το άθροισμα βάρους 2 i G i- G 0 P i- P 0 C 0.. κύκλωμα πρόβλεψης κρατουμένου C i C i HS i = G i P i C i = F(G 0 -G i-, P 0 -P i-, C 0 )
MSI κύκλωμα : 74x283 Aθροιστής Πρόβλεψης Κρατούμενου 4 Ψηφίων A 0 A A 2 A 3 Β 0 B Β 2 Β 3 5 3 4 2 6 2 5 C 7 9 0 C 4 74x283 4 3 0 S 0 S S 2 S 3 8 GND 6 V cc
MSI κύκλωμα : 74x283 Aθροιστής Πρόβλεψης Κρατούμενου 4 Ψηφίων C 4 C 4 Β 3 G 3 HS 3 A 3 P 3 S 3 Β 2 A 2 B A Β 0 A 0 C 3 G 2 HS 2 P 2 G P G 0 C 2 HS C HS 0 P C 0 0 C 0 S 2 S S 0 υλοποιήσεις AND-OR-INV
MSI κύκλωμα : 74x283 Aθροιστής Ομαδικής Διάδοσης Κρατούμενου 6 Ψηφίων A 5 -Α 2 B 5 -B 2 A -Α 8 B -B 8 A 7 -Α 4 B 7 -B 4 A 3 -Α 0 B 3 -B 0 C 5 C 2 C 8 74x283 74x283 74x283 74x283 C 4 C 0 S 5 -S 2 S -S 8 S 7 -S 4 S 3 -S 0 Επαναληπτική Διάταξη Λογικής
Αριθμητική και Λογική Μονάδα A B Invert_A πύλες XOR πύλες XOR Invert_B S0, S λογική μονάδα αθροιστής C in C out Overflow L/Α Επεξεργαστής ARM6 πολυπλέκτης 2 σε F δένδρο OR Negative (MSB) Zero (active low)
Αριθμητική και Λογική Μονάδα Μπορεί να χρησιμοποιηθεί οποιαδήποτε υλοποίηση αθροιστή Το σήμα ελέγχου L/A επιλέγει μεταξύ αριθμητικών πράξεων (για L/A =0) και λογικών πράξεων (για L/A =) Τα σήματα ελέγχου S, S0, Invert_B, Invert_A επιλέγουν μία από 2 λογικές πράξεις Τα σήματα ελέγχου Invert_B, Invert_A επιλέγουν μία από τις 3 πρακτικές αριθμητικές πράξεις Το κρατούμενο εξόδου C out χρησιμοποιείται σε εντολές αριθμητικών πράξεων με κρατούμενο Τα σήματα C out, Overflow, Negative, Zero χρησιμοποιούνται σε εντολές διακλάδωσης με συνθήκη
Αριθμητική και Λογική Μονάδα Λογική Μονάδα Invert_A (ia) A i B i Invert_B (ib) S0 S 0 0 MUX MUX 0 MUX Ηβαθμίδαi της Λογικής Μονάδας
Αριθμητική και Λογική Μονάδα Λογικές Πράξεις ib ia s s0 2 Λογικές Πράξεις (L/A =) 0 0 0 0 (AB) 0 0 0 (A+B) 0 0 0 A + B 0 0 A 0 0 0 A+B 0 0 AB 0 0 (A + B) 0 A 0 0 0 A +B 0 0 A B 0 0 (A + B) 0 A 0 0 A+B 0 AB 0 A + B A Οι υπόλοιπες λογικές πράξεις F = B, F = B, F = 0 και F = υλοποιούνται έμμεσα με κατάλληλες τιμές στις εισόδους Α και Β
Αριθμητική και Λογική Μονάδα Αριθμητικές Πράξεις ib ia s s0 0 0 x x 0 x x 0 x x A plus B plus C in not A plus B plus C in A plus not B plus C in 3 Αριθμητικές Πράξεις (L/A =0) Εάν C in =, τότε Β minus A Εάν C in =, τότε A minus B Οι 3 πρακτικές αριθμητικές πράξεις μεταξύ ακεραίων για απεικόνιση συμπληρώματος ως προς 2
Πολλαπλασιασμός x0 y0 p00 4 x 4 y3 y2 y y0 x3 x2 x x0 p03 p02 p0 p00 p3 p2 p p0 p23 p22 p2 p20 p33 p32 p3 p30 z7 z6 z5 z4 z3 z2 z z0
Πολλαπλασιαστής Διάσωσης Κρατούμενου (Carry-Save Array Multiplier) p2 p2 p03 p20 p p02 p0 p0 p00 FA FA HA p22 p3 p30 FA FA HA p32 p23 p3 FA FA HA p33 FA FA HA z7 z6 z5 z4 z3 z2 z z0
Άσκηση 9.3 Να σχεδιάσετε το λογικό κύκλωμα που μετρά το πλήθος των στην είσοδό του και παράγει τον αντίστοιχο δυαδικό αριθμό στην έξοδό του, για την περίπτωση που ο αριθμός των εισόδων είναι 7, χρησιμοποιώντας μόνο πλήρεις αθροιστές FAs x 6 x 5 x 4 x 3 x 2 x x 0 Παράδειγμα: Εάν Χ=0000 τότε Υ=0? y 2 y y 0
Άσκηση 9.3 Χρήσιμες παρατηρήσεις:. Οι FAs και HAs μετρούντοπλήθοςτων στην είσοδό τους και παράγουν τον αντίστοιχο δυαδικό αριθμό στην έξοδό τους. 2. Εάν όλες οι είσοδοι των FAs και HAs έχουν το ίδιο βάρος 2 w, τότε η έξοδος S έχει το ίδιο βάρος 2 w, ενώ οι έξοδος C έχει βάρος 2 w+. Βάρος εισόδων 2 0 = x 6 x 5 x 4 x 3 x 2 x x 0? Βάρος εξόδων 2 2 =4, 2 =2, 2 0 =, αντίστοιχα y 2 y y 0