21.04.2013 Views

ETTC'2003 - SEE

ETTC'2003 - SEE

ETTC'2003 - SEE

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Currently various avenues are explored in order to develop a high bandwidth special<br />

numerical processor for applications such as<br />

High bandwidth digital down converter<br />

Neural network<br />

Adaptive signal processing<br />

OFDM<br />

High speed imaging<br />

Cryptography<br />

for reconfigurable computing platforms.<br />

1.1. RNS background<br />

The RNS [1] is a non-positional number systems. Due to this feature, one can<br />

implement fast additions and multiplications. The theoretical basis for the<br />

representation comes from the CRT (Chinese Remainder Theorem).<br />

The RNS arithmetic [1] is defined in terms of a basis set { }<br />

m1, m2,... m L of relatively<br />

prime integers. The dynamic range of an RNS system is given by M ,<br />

L<br />

where: M = ∏ m ; if M is odd, the dynamic range of an RNS becomes [-(M-1)/2,<br />

i=<br />

1<br />

i<br />

(M-1)/2); if it is even, it is [-M/2, (M/2-1)]. Each natural integer X in the dynamic<br />

range is mapped onto the legitimate range and represented as an L-tuple of residue<br />

digits.<br />

The residue arithmetic is defined by ( x1, x2,..., xL) ( yi, y2,..., yL) = ( z1, z2,..., zL)<br />

,<br />

where zi = xi yi<br />

, I=1,…L and denotes one of addition, subtraction or<br />

mi<br />

( x , x ,..., x ) .<br />

multiplication. 1 2<br />

n<br />

The residues of a positive number and a negative number are evaluated as follows:<br />

1.1.1. Choosing the RNS moduli<br />

xi = X modmixi<br />

X ≥ 0<br />

x = ( m − X mod m ) X < 0.<br />

i i i<br />

The set of moduli controls the dynamic range of the application. In a set, the largest<br />

modulus controls the speed of arithmetic operations. One tries to select all the moduli<br />

comparable [2] in magnitude to the largest one. This strategy allows to select the RNS<br />

moduli with the smallest number of bits for the largest modulus, thus maximizing the<br />

speed of the RNS arithmetic. In here, there is a trade-off to do the speed and the cost<br />

does not just depend on the width of the residues but also on the moduli chosen.<br />

n− 1 n n+<br />

1<br />

Selecting the moduli in the form of ( 2 ,2 ,2 ) offers considerable ease in forward<br />

and reverse conversion, scaling and other operations [3].

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!