# Hardware Questions

Adders are generally of five types:

**1.Ripple Carry Adder**:

The Ripple carry adder(RCA) consists of a building block named Half Adder(HA) which is cascaded to form a Full Adder(FA). These buildingblocks HAs and FAs are also the building blocks of all types of adders.The n full adders are cascaded to form n bit RCA.

The full adder has three input pins(input Ai,input Bi,carryin Ci) and two output pins(Sum and Ci+1).Its equations are:

Sum=Ai^Bi^Ci

Ci+1=Ai.Bi+Bi.Ci+Ai.Ci

**2. Carry Lookahead Adder**:

The Carry Lookahead Adder(CLA) reduces the delay as that in RCA. Let Gi=Ai.Bi, and Pi=Ai^Bi, then Ci+1=Gi+Pi.Ci.

The expressions for Sum and Ci+1 is then defined completely in terms of input pins rather wait for input carry to appear.

**3. Carry Select Adder**:

The carry select adder uses duplicate modules for each combination of input carry(i.e. 1 and 0).The multiplexers then select the appropriate sum and carry output according to the carry output of the preceding stages.

**4. Carry Skip Adder**:

The carry skip adder are as fast as carry lookahead adders which are the fastest adders but its spped decreases to about 20-30% if input operands are 64-bit or more. In these adders we divide the input bit stream into various blocks and make use of two observations:

-if each element of the two bit streams are unequal,i.e. Ai!=Bi than the carry input of the block is equal to the carry input.

-if each element of the two bit streams are equal,i.e. Ai=Bi than the carry input of the block is opposite of the carry input.

**5. Carry Save Adder:**

The carry save adder reduces the addition of three elements into addition of two elements,i.e. if you want sum of nine numbers it reduces it into sum of six numbers. In first step the sum of three numbers is calculated without bothering for the carry.During the second step only carry is calculated which is then added to the generated sum to give the required sum.

Object Repository means not a collection of objects

it's a common repository for all the people (testing, developers) for seeing all the data in single login.

for example QA wants to see 5 testers works then he goes to each person login and see the data. It's very difficult job. for this we can use Object Repository.