Σε ψηφιακά ηλεκτρονικά Η προσθήκη δυαδικών αριθμών δυαδικών ψηφίων μπορεί να είναι δυνατή χρησιμοποιώντας ημιαθροϊστής . Και εάν η ακολουθία εισόδου έχει μια ακολουθία τριών bit, τότε η διαδικασία προσθήκης μπορεί να ολοκληρωθεί χρησιμοποιώντας έναν πλήρη αθροιστή. Αλλά εάν οι αριθμοί των bit είναι περισσότεροι στην ακολουθία εισόδου, τότε η διαδικασία μπορεί να ολοκληρωθεί με τη χρήση μισού αθροιστή. Επειδή ο πλήρης αθροιστής δεν μπορεί να ολοκληρώσει τη λειτουργία προσθήκης. Έτσι αυτά τα μειονεκτήματα μπορούν να ξεπεραστούν χρησιμοποιώντας το 'Ripple Carry Adder'. Είναι ένας μοναδικός τύπος λογικό κύκλωμα χρησιμοποιείται για την προσθήκη αριθμών N-bit σε ψηφιακές λειτουργίες. Αυτό το άρθρο περιγράφει μια επισκόπηση του τι είναι ο κυματισμός-μεταφορά-αθροιστής και η λειτουργία του.
Τι είναι το Ripple Carry Adder;
Μια δομή πολλαπλών πλήρων προσθηκών διαδοχικά με τρόπο που δίνει τα αποτελέσματα της προσθήκης μιας δυαδικής ακολουθίας n bit. Αυτός ο αθροιστής περιλαμβάνει πλήρεις προσθήκες στη δομή του έτσι, η μεταφορά θα δημιουργείται σε κάθε πλήρες στάδιο αθροιστή σε ένα κύκλωμα προσθήκης κυματισμού. Αυτές οι έξοδοι μεταφοράς σε κάθε στάδιο πλήρους αθροιστή προωθούνται στον επόμενο πλήρη αθροιστή και εφαρμόζονται ως είσοδο μεταφοράς σε αυτήν. Αυτή η διαδικασία συνεχίζεται μέχρι το τελευταίο πλήρες στάδιο της προσθήκης. Έτσι, κάθε bit εξόδου μεταφοράς κυμαίνεται στο επόμενο στάδιο ενός πλήρους αθροιστή. Με αυτόν τον λόγο, ονομάζεται 'RIPPLE CARRY ADDER'. Το πιο σημαντικό χαρακτηριστικό του είναι να προσθέσετε τις ακολουθίες bit εισαγωγής είτε η ακολουθία είναι 4 bit ή 5 bit ή οποιαδήποτε άλλη.
«Ένα από τα πιο σημαντικά σημεία που πρέπει να ληφθούν υπόψη σε αυτόν τον αθροιστή μεταφοράς είναι ότι η τελική έξοδος είναι γνωστή μόνο αφού οι έξοδοι μεταφοράς παράγονται από κάθε πλήρες στάδιο αθροιστή και προωθούνται στο επόμενο στάδιο. Επομένως, θα υπάρξει καθυστέρηση στο αποτέλεσμα με τη χρήση αυτού του αθροιστή μεταφοράς ».
Υπάρχουν διάφοροι τύποι σε προσθήκες κυματισμού. Αυτοί είναι:
- 4-bit αθροιστής μεταφοράς κυμάτων
- 8-bit αθροιστής μεταφοράς κυματισμού
- 16-bit αθροιστής μεταφοράς κυμάτων
Αρχικά, θα ξεκινήσουμε με 4-bit ripple-carry-adder και στη συνέχεια 8 bit και 16-bit ripple-carry adders.
4-bit Ripple Carry Adder
Το παρακάτω διάγραμμα αντιπροσωπεύει τον αθροιστή 4-bit κυματισμού. Σε αυτόν τον αθροιστή, τέσσερις πλήρεις πρόσθετες συνδέονται σε καταρράκτη. Το Co είναι το bit εισαγωγής μεταφοράς και είναι πάντα μηδέν. Όταν αυτή η μεταφορά εισόδου «Co» εφαρμόζεται στις δύο ακολουθίες εισόδου A1 A2 A3 A4 και B1 B2 B3 B4, τότε η έξοδος αντιπροσωπεύεται με S1 S2 S3 S4 και η έξοδος C4.
Διάγραμμα 4-bit RCA
Εργασία του 4-bit Ripple Carry Adder
- Ας πάρουμε ένα παράδειγμα δύο ακολουθιών εισόδου 0101 και 1010. Αυτές αντιπροσωπεύουν τα A4 A3 A2 A1 και B4 B3 B2 B1.
- Σύμφωνα με αυτήν την έννοια του αθροιστή, η μεταφορά εισόδου είναι 0.
- Όταν τα Ao & Bo εφαρμόζονται στον 1ο πλήρη αθροιστή μαζί με τη μεταφορά εισόδου 0.
- Εδώ A1 = 1 B1 = 0 Cin = 0
- Το άθροισμα (S1) και η μεταφορά (C1) θα δημιουργηθούν σύμφωνα με τις εξισώσεις Sum και Carry αυτού του αθροιστή. Σύμφωνα με τη θεωρία του, η εξίσωση εξόδου για το άθροισμα = A1⊕B1⊕Cin και Carry = A1B1⊕B1Cin⊕CinA1
- Σύμφωνα με αυτήν την εξίσωση, για τον 1ο πλήρη αθροιστή S1 = 1 και Carry έξοδο δηλαδή, C1 = 0.
- Το ίδιο ισχύει και για τα επόμενα bit εισαγωγής A2 και B2, έξοδος S2 = 1 και C2 = 0. Εδώ το σημαντικό σημείο είναι ότι το δεύτερο στάδιο πλήρης αθροιστής παίρνει μεταφορά εισόδου, δηλαδή, C1 που είναι η μεταφορά εξόδου του αρχικού σταδίου πλήρους αθροιστή.
- Έτσι θα πάρετε την τελική ακολουθία εξόδου (S4 S3 S2 S1) = (1 1 1 1) και Έξοδος μεταφορά C4 = 0
- Αυτή είναι η διαδικασία προσθήκης για ακολουθίες εισόδου 4-bit όταν εφαρμόζεται σε αυτόν τον αθροιστή μεταφοράς.
8-bit Ripple Carry Adder
- Αποτελείται από 8 πλήρεις πρόσθετες συσκευές που συνδέονται σε διαδοχική μορφή.
- Κάθε έξοδος μεταφοράς πλήρους αθροιστή συνδέεται ως μεταφορά εισόδου στο επόμενο στάδιο πλήρους αθροιστή.
- Οι ακολουθίες εισόδου υποδηλώνονται με (Α1 Α2 Α3 Α4 Α5 Α6 Α7 Α8) και (Β1 Β2 Β3 Β4 Β5 Β6 Β7 Β8) και η σχετική ακολουθία εξόδου δηλώνεται με (S1 S2 S3 S4 S5 S6 S7 S8).
- Η διαδικασία προσθήκης σε έναν 8-bit ripple-carry-adder είναι η ίδια αρχή που χρησιμοποιείται σε έναν 4-bit ripple-carry-adder, δηλαδή, κάθε bit από δύο ακολουθίες εισόδου πρόκειται να προστεθεί μαζί με τη μεταφορά εισόδου.
- Αυτό θα χρησιμοποιηθεί όταν η προσθήκη δύο ακολουθιών δυαδικών ψηφίων 8 bit.
8bit-ripple-carry-adder
16-bit Ripple Carry Adder
- Αποτελείται από 16 πλήρεις πρόσθετες συσκευές που συνδέονται σε διαδοχική μορφή.
- Κάθε έξοδος μεταφοράς πλήρους αθροιστή συνδέεται ως μεταφορά εισόδου στο επόμενο στάδιο πλήρους αθροιστή.
- Οι ακολουθίες εισόδου υποδηλώνονται με (A1… .. A16) και (B1 …… B16) και η σχετική ακολουθία εξόδου δηλώνεται με (S1 …… .. S16).
- Η διαδικασία προσθήκης σε έναν 16-bit ripple-carry-adder είναι η ίδια αρχή που χρησιμοποιείται σε έναν 4-bit ripple-carry adder, δηλαδή, κάθε bit από δύο ακολουθίες εισόδου πρόκειται να προστεθεί μαζί με τη μεταφορά εισόδου.
- Αυτό θα χρησιμοποιηθεί όταν η προσθήκη δύο ακολουθιών δυαδικών ψηφίων 16 bit.
16-bit-ripple-carry-adder
Πίνακας αλήθειας Ripple Carry Adder
Παρακάτω ο πίνακας αλήθειας δείχνει τις τιμές εξόδου για τους πιθανούς συνδυασμούς όλων των εισόδων για ripple-carry-adder.
Α'1 | Α2 | Α3 | Α4 | Β4 | Β3 | Β2 | Β1 | S4 | S3 | S2 | S1 | Μεταφέρω |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 |
1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 1 |
1 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 |
Κωδικός Ripple Carry Adder VHDL
Το VHDL (VHSIC HDL) είναι γλώσσα περιγραφής υλικού. Είναι μια ψηφιακή σχεδιαστική γλώσσα. Ο κωδικός VHDL για αυτόν τον αθροιστή μεταφοράς φαίνεται παρακάτω.
βιβλιοθήκη IEEE
χρησιμοποιήστε το IEEE.STD_LOGIC_1164.ALL
οντότητα Ripplecarryadder είναι
Θύρα (A: σε STD_LOGIC_VECTOR (3 έως 0)
B: σε STD_LOGIC_VECTOR (3 έως 0)
Cin: σε STD_LOGIC
S: out STD_LOGIC_VECTOR (3 έως 0)
Cout: έξω STD_LOGIC)
τέλος Ripplecarryadder
αρχιτεκτονική Behavioral of Ripplecarryadder is - Δήλωση συνιστωσών κώδικα Full Adder VHDL
full_adder_vhdl_code στοιχείο
Θύρα (A: σε STD_LOGIC
Β: στο STD_LOGIC
Cin: σε STD_LOGIC
S: έξω STD_LOGIC
Cout: έξω STD_LOGIC)
τελικό συστατικό
- Δήλωση ενδιάμεσης μεταφοράς
Σήμα c1, c2, c3: STD_LOGIC
να αρχίσει
- Port Mapping Full Adder 4 φορές
FA1: χάρτης θύρας full_adder_vhdl_code (A (0), B (0), Cin, S (0), c1)
FA2: χάρτης θύρας full_adder_vhdl_code (A (1), B (1), c1, S (1), c2)
FA3: full_adder_vhdl_code map map (A (2), B (2), c2, S (2), c3)
FA4: full_adder_vhdl_code map map (A (3), B (3), c3, S (3), Cout)
τέλος Συμπεριφορά
Κωδικός Ripple Carry Adder Verilog
Ο κωδικός Verilog είναι μια γλώσσα περιγραφής υλικού. Χρησιμοποιείται σε ψηφιακά κυκλώματα στο στάδιο RTL για σχεδιασμό και επαλήθευση. Ο κωδικός verilog για αυτόν τον αθροιστή μεταφοράς φαίνεται παρακάτω.
ενότητα ripple_carry_adder (a, b, cin, sum, cout)
είσοδος [03: 0] α
είσοδος [03: 0] β
είσοδος cin
έξοδος [03: 0] άθροισμα
έξοδο εξόδου
σύρμα [2: 0] γ
fulladd a1 (a [0], b [0], cin, άθροισμα [0], c [0])
fulladd a2 (a [1], b [1], c [0], άθροισμα [1], c [1])
fulladd a3 (a [2], b [2], c [1], άθροισμα [2], c [2])
fulladd a4 (a [3], b [3], c [2], άθροισμα [3], cout)
endmodule
fulladd δομοστοιχείο (α, b, CIN, άθροισμα, cout)
είσοδος a, b, cin
άθροισμα εξόδου, cout
εκχώρηση αθροίσματος = (a ^ b ^ cin)
εκχώρηση cout = ((a & b) | (b & cin) | (a & cin))
Εφαρμογές Ripple Carry Adder
Οι εφαρμογές κυματισμού-μεταφοράς-αθροιστών περιλαμβάνουν τα ακόλουθα.
- Αυτά τα πρόσθετα μεταφοράς χρησιμοποιούνται κυρίως εκτός από τις ακολουθίες εισόδου n-bit.
- Αυτά τα πρόσθετα μεταφοράς ισχύουν για την επεξεργασία ψηφιακού σήματος και μικροεπεξεργαστές .
Πλεονεκτήματα Ripple Carry Adder
Τα πλεονεκτήματα του κυματισμού-μεταφοράς-αθροιστών περιλαμβάνουν τα ακόλουθα.
- Αυτός ο αθροιστής μεταφοράς έχει ένα πλεονέκτημα όπως μπορούμε να εκτελέσουμε διαδικασία προσθήκης για ακολουθίες n-bit για να έχουμε ακριβή αποτελέσματα.
- Ο σχεδιασμός αυτού του αθροιστή δεν είναι μια περίπλοκη διαδικασία.
Ripple μεταφοράς αθροιστής είναι μια εναλλακτική λύση όταν οι μισοί αθροιστές και οι πλήρεις πρόσθετες δεν εκτελούν τη λειτουργία προσθήκης όταν οι ακολουθίες bit εισαγωγής είναι μεγάλες. Αλλά εδώ, θα δώσει την έξοδο για οποιεσδήποτε ακολουθίες bit εισαγωγής με κάποια καθυστέρηση. Σύμφωνα με τα ψηφιακά κυκλώματα, εάν το κύκλωμα δίνει έξοδο με καθυστέρηση δεν θα είναι προτιμότερο. Αυτό μπορεί να ξεπεραστεί με ένα κύκλωμα αθροιστή μεταφοράς.