This repository contains a 5-bit Carry Save Adder (CSA) implemented using Verilog HDL.
The design efficiently adds three 5-bit binary numbers using a carry-save technique and produces a 6-bit final sum.
Carry Save Adders are commonly used in high-speed arithmetic circuits, especially in multipliers, DSP systems, and FPGA-based designs, because they reduce carry propagation delay.
Instead of propagating carry bits immediately, the Carry Save Adder:
- Adds three input bits at each position using Full Adders
- Produces Sum and Carry separately
- Shifts carry bits left by one position
- Uses a Ripple Carry Adder (RCA) in the final stage to compute the result
This approach improves speed compared to conventional ripple carry addition.
Inputs
A[4:0]– First 5-bit operandB[4:0]– Second 5-bit operandC[4:0]– Third 5-bit operand
Output
Final_Sum[5:0]– 6-bit sum output (includes carry)
- Stage 1: Five Full Adders (Carry Save Stage)
- Stage 2: Carry bits shifted left by one bit
- Stage 3: Ripple Carry Adder for final addition
Used in the carry-save stage to add three bits simultaneously.
Logic
Sum = A ⊕ B ⊕ CinCarry = (A & B) | (B & Cin) | (Cin & A)
Used in the final stage to add the partial sum and shifted carry.
| Signal | Width | Description |
|---|---|---|
| A, B, C | 5-bit | Input operands |
| S | 5-bit | Partial sum |
| Carry | 5-bit | Carry outputs |
| Final_Sum | 6-bit | Final result |
- FPGA arithmetic units
- Digital signal processing (DSP)
- Multipliers and accumulators
- VLSI and computer architecture projects
- HDL Language: Verilog
- Simulation: ModelSim / Vivado Simulator
- Synthesis: Xilinx Vivado / Intel Quartus
- Target: FPGA / RTL verification
- Reduced carry propagation delay
- Modular and reusable design
- Simple and readable RTL code
- Parameterized N-bit CSA
- Pipelined CSA architecture
- Testbench with random vectors
Developed for Bhavin umatiya.