# Kogge Stone Adder : Circuit, Working, Advantages, Disadvantages & Its Applications

An adder is a type of digital circuit in digital electronics that is used to perform addition operations. Even the operation of multiplication mainly depends on the sequence of this operation. So, these can be implemented simply in different ways with different technologies at different ranges of architectures. High-speed & reliable adder design is the main objective in embedded applications & filtering operations. There are different types of adders available like ripple carry adder, Kogge-stone adder, Spanning Tree adder, Brent kung adder, Parallel prefix adder, Carry look ahead adder, Sparse kogge-stone adder, etc. This article discusses an overview of **Kogge Stone Adde**r or KSA.

## What is Kogge Stone Adder?

The Kogge–Stone adder or KSA is a parallel prefix form of CLA (carry-lookahead adder). This adder uses more area to implement as compared to the Brent–Kung adder, although it has a low fan-out at every stage, which enhances the performance of typical CMOS process nodes. But, wiring congestion is frequently an issue for KSAs.

Kogge Stone adder or KSA is a very fast adder utilized in various signal processing processors (SPP) to perform the best arithmetic function. So the operation speed of this adder can be restricted by carrying propagation from input to output. Generally, KSA is a parallel prefix adder that has the specialty of best addition depending on design time which is used for high-performance based arithmetic circuits within the industry.

### Kogge Stone Adder Circuit Diagram

The Kogge-Stone Adder diagram is shown below. This type of adder is considered simply the fastest and most common architecture adder design mainly for high-performance adders within the industry. In this type of adder, carriers are very quickly generated by computing them in parallel at the increased area cost.

The Tree structures of carry propagate & generate signals are shown in the below diagram. In this adder, the Carry generation network is a very significant block that includes three blocks; Black cell, Grey cell, and buffer. So black color cells are used mainly in the calculation of both generate & propagate signals, Grey cells are mainly used in the calculation of generate signals which are required within the calculation of sum within the post-processing stage and Buffers are mainly used for balancing the loading effect.

### How Kogge Stone Adder Works?

The Kogge-Stone adder tracks “generate” & “propagate” bits internally for spans of bits similar to all carry-lookahead adders. We begin with 1-bit spans, wherever a single column within the addition produces a carry bit when both inputs are 1 (logical AND) & a carry bit will propagate if precisely one input is 1 (logical XOR). Thus, Kogge-Stone Adder includes mainly three processing stages for calculating the sum bits; the Pre-processing stage, the Carry generation network, and the Post-processing stage. So these three steps are mainly involved in this adder operation. These three stages are discussed below.

**Preprocessing Stage**

This preprocessing stage involves the computation of both generated & propagated signals equivalent to every pair of bits within A and B.

Pi = Ai xor Bi

Gi = Ai and Bi

**Carry Generation Network**

In the carry generation stage, we calculate carries equivalent to every bit. So these operations execution can be carried out in parallel. After the carries computation in parallel, these are segmented into minor pieces. As intermediate signals, it utilizes carry propagate & generate signals which are specified by the below logic equations.

CPi:j = Pi:k + 1 and Pk:j

CGi:j = Gi:k + 1 or (Pi:k + 1 and Gk:j)

**Post Processing**

This post-processing stage is very common to all carry look-ahead family adders and it involves calculation of sum bits.

Ci – 1 = (Pi and Cin) or Gi

Si = Pi = x or Ci – 1

### 4-bit Kogge-Stone Adder

In the 4-bit Kogge-Stone adder, every vertical stage generates a “propagate” & a “generate” bit. The carries are generated in the final stage where these bits are XOR through the first propagate after the input within the square boxes to generate the sum bits.

For instance; if the propagate is calculated by XOR when the A=1 & B=0 then it generates the propagate o/p as 1. Here, the generate value can be calculated with AND when the A = 1, B = 0, and the generate o/p value is 0. Similarly, all the sum bits are calculated for Inputs: A = 1011 & B = 1100 Outputs then sum = 0111 and carry Cout = 1. In this adder proceed with the five outputs in the below expansion.

S0 = (A0 ^ B0) ^ 𝐶𝐼𝑁.

S1 = (A1 ^ B1) ^ (A0 & B0).

S2 = (A2 ^B2) ^ (((A1 ^ B1) & (A0 & B0)) | (A1 & B1)).

S3 = (A3 ^ B3) ^ ((((A2 ^ B2) & (A1 ^ B1)) & (A0 & B0)) | (((A2 ^ B2) & (A1 & B1)) | (A2 &

B2))).

S4 = (A4 ^ B4) ^ ((((A3 ^ B3) & (A2 ^ B2)) & (A1 & B1)) | (((A3 ^ B3) & (A2 & B2)) | (A3 & B3))).

### Advantages and Disadvantages

The **advantages of Kogge Stone adder** include the following.

- Kogge stone adder is very faster adder
- This is an advanced version for parallel prefix adders
- This adder helps in reducing power consumption as well as delay as compared to other conventional type logic.
- It focuses on design time & is best for high-performance applications.
- This adder is made very efficient on FIR filter as compared to other kinds of adders by a huge reduction in computation power, area, and time.

The **disadvantages of Kogge-stone adder** include the following.

- This adder uses more area to implement as compared to the Brent–Kung adder, although it has less fan-out at every stage, which enhances the typical CMOS process node performance.
- For Kogge–Stone adders, wiring congestion is frequently a problem.

### Applications

The applications of the Kogge–Stone adder include the following.

- Kogge Stone adder is used in various signal processing processors for performing very fast arithmetic functions.
- This is an extension for the carry look-ahead adder, used to perform very fast addition within high-performance computing systems.
- This type of adder is used in signal-processing applications.
- This adder is used widely in the industry mainly for high-performance-based arithmetic circuits.
- This kind of adder is used normally for wide adders because it demonstrates the lowest delay in between other structures.
- KSA helps in adding larger numbers by using less area, power, and time.
- It is used broadly in various VLSI systems like microprocessor architecture & application-specific DSP architecture.

### What is a Parallel Prefix Adder?

Parallel prefix adder is a type of adder that uses prefix operation to perform efficient addition. These adders are derived from the carry look-ahead adder and are suitable for binary addition through wide word.

### Which adder is apt for fast addition?

A carry-lookahead adder is suitable for fast addition in digital logic because this adder simply enhances the speed by decreasing the amount of necessary time to decide to carry bits.

### What is the Kogge-Stone adder algorithm?

The Kogge-Stone adder algorithm is a structure of a parallel prefix CLA that has a low fan-out at every stage to make it more effective in normal CMOS process nodes.

Thus, this is an overview of the Kogge-Stone adder which is the most well-known carry look-ahead adder version. This adder simply produces the carry signals within O (log2N) time & is broadly considered the best adder design. So this adder has the most frequent architecture mainly for high-performance adders within the industry. Thus, this KSA includes a regular layout and is the special adder due to its least fan-out or smallest logic depth. So this adder becomes a very fast adder with a large area. Here is a question for you, what is a carry look-ahead adder?