**
Nikhilam Sutra-Subtraction**

** **Here
we are going to discuss about the subtractor implementation using Vedic
mathematics. Vedic Mathematics is the name given to the ancient system of
Mathematics which was rediscovered from the Vedas between 1911 and 1918 by Sri
Bharati Krsna. Vedic Maths is considered to be the technology and science of
order and precision, which maintains the uprightness of unity and also spreads
variety with it. It is also said to be the Natural Law’s structuring dynamic;
it instinctively designs the source and goal of natural law, which is the
orderly theme of evolution.

Here we have used the proposed architecture for the implementation of subtractor. As we know that the various circuits used to execute data processing instructions are usually combined in a single circuit called an arithmetic-logic unit or ALU. The complexity of an ALU is determined by the way in which its arithmetic instructions are realized. So we have very much careful about the architecture that we are using.

Before going to the main portion we have to make a clear idea about the previous works that have been done in the past that leads to the “NIKHILAM SUTRA”.

** PREVIOUS WORKS**

Most of the known adder architectures can be represented as a parallel prefix adder structure which of consisting of three parts: pre processing, carry ahead network, post processing.

Assuming
two binary input vectors A and B, the preprocessing part extracts two signals
propagate (** p**) and generate (

* y _{0}=x_{0}*

* y _{i}=x_{i}.y_{i-1}*

* y _{i}=x_{i}.x_{i-1}.x_{i-2}……….x_{1}.x_{0} *
(3.3)

Since
the ** (.)** operator is associative it can be grouped into any order
and it can be computed in any number of levels. To express the subproduct let
us introduce the notation

* *

*(G,P) _{i:i}^{0}=(g_{i},p_{i})* (3.4)

*(G,P) _{ i: j}^{k}=(G,P).(G,P)* (3.5)

where
the desired __c__arry_{i}=G_{i:0}

Regardless the number of levels necessary to cover the range i:0.Depending on the algorithm the carry propagation structure has different shape. For this the following observations can be made.

The maximum level required to calculate the final carry signal is referred as the depth of the prefix graph and equals to the number of logic levels in the network. The depth of the carry propagate network is a function of bit-width of the input. This number relates roughly to the delay of the network. The total number of binary associative operations within the network determines the active area required to compute the result. Secondary effects like the number of times a sub range is used in subsequent condition.

Some of the previous known adder architectures are discussed in below.

** **