O'Reilly logo

VLSI Digital Signal Processing Systems: Design and Implementation by Keshab K. Parhi

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

15.5    ADDITIVE AND MULTIPLICATIVE NUMBER SPLITTING

Number splitting [2], which can be additive or multiplicative, is a numerical transformation that can be used to reduce the hardware complexity or power consumption of linear circuits. Additive number splitting is another form of subexpression elimination in multiple constant multiplication. Typically number splitting is performed on the infinite precision version of the constant coefficients before they are reduced to binary representation. This leads to strength reduction at a higher level. Additive number splitting can be either row based or column based.

Number splitting is an iterative technique used within the framework of an optimization algorithm. The optimization algorithm guides the number splitting algorithm through the use of a cost function. At each iteration, the number splitting that leads to the largest reduction in the cost function is chosen. The process is repeated until no further optimizations can be achieved through the use of number splitting. This section describes the basic principles of number splitting. The process of generating optimal solutions is not discussed (see [2],[5],[6]).

Before we examine how number splitting is performed, the notion of a linear circuit must be defined. The linear circuit is defined as

image

where

It should be noted that M = J + K. Notice that this definition of a linear circuit ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required