From abe976d22d1073be215d61c3967bc03ee875205f Mon Sep 17 00:00:00 2001 From: shockrahwow Date: Wed, 3 Oct 2018 00:29:53 -0700 Subject: [PATCH] asm: lec10 ready for master --- cst337/img/fig2lec10.png | Bin 0 -> 11012 bytes cst337/lec/lec10.md | 17 +++++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 cst337/img/fig2lec10.png diff --git a/cst337/img/fig2lec10.png b/cst337/img/fig2lec10.png new file mode 100644 index 0000000000000000000000000000000000000000..ed0fc0019ed167bfb7ec87895f5329ee3a2c3713 GIT binary patch literal 11012 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 literal 0 HcmV?d00001 diff --git a/cst337/lec/lec10.md b/cst337/lec/lec10.md index 3c59b3d..ddcefca 100644 --- a/cst337/lec/lec10.md +++ b/cst337/lec/lec10.md @@ -30,3 +30,20 @@ The carry bit will propagate along the operation now if we chain these together, ![fig1](../img/fig1lec10.png) +With this we can start chaining together multiple Full-adders we can start adding multiple bits at the same time since the carry now propagates along the chain. + +## Ripple Adders + +An N-bit adder is really just made up of Full adders chained together. +Each adder is chained to the next by the carry-out line which then acts as the next adder's carry-in line. +If we have say a 4-bit ripple adder, then each bit in the bit strings will go to a different adder. +For now the initial carry in bit will be fed a 0 everytime. + +![fig2](../img/fig2lec10.png) + +Here we see that our 4-bit input A & B have the values `1111` & `0000` respectively. +The 0th bit goes to Adder0, the 1th goes to Adder1, and so on. +You should have also noticed that each one also takes a carry-in, which for now is 0 but it does mean we have to let the comutation happen one adder at a time. +None of the sequential adders can do anything if the previous have done anything yet either. +At the end of it all we get some bit results, and a carry-out. +We can then simply reassemble the results back into one bit-string to assemble our final result.