• Nie Znaleziono Wyników

SCALED RESIDUE REVERSE CONVERTER FOR SIGNED NUMBERS WITH LOW COST MODULI BASE

N/A
N/A
Protected

Academic year: 2021

Share "SCALED RESIDUE REVERSE CONVERTER FOR SIGNED NUMBERS WITH LOW COST MODULI BASE"

Copied!
14
0
0

Pełen tekst

(1)

No 98 Electrical Engineering 2019 DOI 10.21008/j.1897-0737.2019.98.0009

___________________________________________________

* State University of Applied Sciences in Elbląg

** Gdańsk University of Technology Maciej CZYŻAK*, Robert SMYK**

SCALED RESIDUE REVERSE CONVERTER FOR SIGNED NUMBERS WITH LOW COST MODULI BASE

The paper presents a realization of the scaled residue reverse converter for the low cost moduli base {2n−1, 2 , 2n n+1}. The moduli of this type allow for the memoryless reverse conversion using the Chinese Remainder Theorem because the orthogonal pro- jections can be obtained by shifts and additions. Moreover, the modulo reduction of the sum of projections and sign detection algorithms are shown. Also the converter architec- ture is presented.

KEYWORDS: residue number system, residue reverse conversion, scaling, low-cost moduli.

1.INTRODUCTION

The new generation of portable electronic devices, such as cell phones, cam- corders, digital cameras call for the real-time realization of many complex digi- tal signal processing (DSP) algorithms. The other examples can be radar signal processors. Fast processing may be required as well for cryptographic algorithms when they have to be performed in real-time. The second issue can be the de- mand of the low-power operation. The high-speed DSP and low-power budget are mutually contradictory, because high-speed DSP requires high-clock fre- quencies that increases the needed power consumption. One of the remedies can be the reduction of the IC supply voltage. The tool that could make it possible is the residue number system (RNS) [1-4]. RNS has been of interest as the tool for fast or high-speed implementation of digital signal processing algorithms or cryptographic algorithms. The RNS is a non-positional system that decomposes certain arithmetic operations on long integers into equivalent independent opera- tions on small integers. Residue addition, subtraction and multiplication are rela- tively easy because they are performed independently on the individual digits of residue representations of arguments. Hence the RNS is advantageous for reali- zation of algorithms where these operations dominate. However, because the

(2)

RNS is an integer system with the limited number range, usually after one multi- plication, scaling i.e. division by a constant is needed which was used for trans- formation of algorithm coefficients to integers. The example can be FIR filters or FFT algorithms. Scaling as well as general division and sign detection belong to difficult RNS operations. The RNS implementation of an algorithm gives an architecture with parallel computational channels that allows for the segmenta- tion of the datapath so that the individual channels operate on subwords. Such a structure can tolerate voltage reduction in individual channels that results in quadratic power reduction. The usefulness of the RNS-based architectures has been demonstrated in several works [31-34]. However, RNS-based architectures may have the bottleneck mainly due to each multiplication and the reverse con- version, i.e. conversion from the RNS to the weighed system such as the natural binary system or the two's complement system. Scaling and residue reverse con- version seem to be the most important problems in RNS. Residue reverse con- version has been considered by many authors. The main approaches are based on the mixed-radix number system (MRS) [1], [5-8], CRT [9-17] or CRT II [19], and core function [21, 22]. For general moduli with the small binary size, i.e.

5–6 bit moduli any approach can be taken. For CRT-based methods the algo- rithm requires the computation of orthogonal projections and their addition modulo M, where M is the RNS dynamic range (DR). In this approach orthogo- nal projections are obtained by memory look-up using the individual residues of the converted number as the memory addresses. In the next step modulo M re- duction has to be performed. In this work we consider the scaled conversion.

The aim of scaled reverse conversion is to obtain scaled representation of the residue number in the weighted number system. Scaled residue conversion in comparison with the ordinary residue conversion allows to reduce the width of the data-path by the binary length of the scaling factor. In Section 2 we review the state-of-the-art, and in Section 3 the residue number system and scaling fun- damentals are described. In Section 4 scaled conversion is derived and in Section 5 sign detection problem is analyzed and finally in Section 6 the converter archi- tecture is presented.

2.LITERATUREREVIEW

The RNS-based architecture usually requires output processing, which usual- ly encompasses the conversion from the residue number system to a weighted system. The scaled RNS/B conversion can be treated in one aspect as the special case of RNS/B conversion, on the other hand as a form of residue scaling without computing the residue representation of the scaled number. We first review un- scaled RNS/B conversion methods. The conversion based on the MRS is a rela- tively slow serial process in which first the RNS/MRS conversion is performed and then subsequently the MRS/B conversion. For the moduli with the binary

(3)

length not exceeding the acceptable memory address length, the arithmetic oper- ations can be performed by look-up of precomputed values. Such conversion can be accelerated by the concurrent use of the CRT and MRS. In such an algorithm the CRT orthogonal projections are represented in the MRS [20] with a succes- sive parallel modular additions for the individual moduli that allows to avoid the complex modulo M reduction. The CRT-based conversion is currently the most frequent approach. There are two main drawbacks of using the CRT. The first is the necessity of performing the modulo M operation with M being a large num- ber where the value to be reduced is the sum of orthogonal projections of the RNS number. The second is the computation of orthogonal projections. For rela- tively small moduli it can be done by memory look-up. The modulo M reduction can be performed in various ways. The most direct approach can be a series of comparisons with n−1 multiplicities of M. Fraser and Bryg [9] limited the number of comparisons to one for a certain example and Cheng and Huang [10]

proved for this technique that as the number of moduli increases, M should ap- proach the power of 2. For n operands the sum can be received using a tree of two-operand modulo M adders, but these devices are, in general, much more expensive than binary adders. Elleithy and Bayoumi [16] proposed an effective structure using a range determinator, so that the appropriate value can be sub- tracted using the binary adder. Piestrak [17] suggested an efficient reduction of the sum of orthogonal projections to the interval [0, 2M) using the carry-save representation and a modulo M generator for the number represented by the most significant bits of carry and save vectors. This allows for the final modulo M generation based on two binary adders working in parallel. This conversion technique uses only one log2M -bit addition in series. However, for the great- er number of moduli this approach becomes less effective due to the growth of the ROM used in the structure. This approach can be extended by using a small binary adder to add high-order bits of carry-save adder output sum that permits to use the shorter ROM address. The new conversion technique named the CRT II was proposed by Wang [19], but this approach can be effective if the use of the multipliers with the maximum size of 0.5 log⋅ 2M -bits is allowable.

Along with the CRT techniques based on integer arithmetic, the techniques using the real arithmetic have been developed. First of them is the technique called the Approximate Chinese Remainder Theorem (ACRT) introduced by Soderstrand and Vernia [13], where the modulo M operation is avoided by using a sum of fractions that represents the orthogonal projections scaled by M. The conversion result is obtained as X/M. This technique was further developed and analyzed in [6],[15],[18]. The technique based on fractions for residue conver- sion and sign detection was introduced by Vu [14]. The similar approach was taken in [23] for computation of the excess factor in the CRT formula, i.e. the number of times the number to be reduced overflows M. The modulo M reduc- tion requires in this case one binary adder operating in parallel with the calcula-

(4)

tion of the sum of projections and a multiplier of a small number by M, imple- mented as the look-up table.

The second group are moduli akin to the powers of 2, eg. {2n −1, 2 , 2n n+1}

Several solutions of such converters are known [26,27]. The scaled conversion can be simplified as it can be seen for this base in the case of the residue scalers shown in [24,25]. Such moduli simplify the conversion because after transfor- mation of the CRT formula, it turns out that the CRT projections can be comput- ed by simple shifts and additions. Also the modulo M reduction can be more simple than for the general moduli. Moreover, for scaled conversion with the scaling factor equal to 2n, we can perform instead of the modulo M reduction, the reduction moduloM/ 2n =

(

22n1

)

, that makes that we can use the segmen- tation of the word to be reduced modulo M using the method given by Avizienis [29] and later generalized by Piestrak [30].

3.RESIDUENUMBERSYSTEMANDSCALING FUNDAMENTALS

The residue number system is determined by its base, B={m m1, 2,...,mn} where m , i i=1, 2,3,...,n, are nonnegative integers termed the moduli. The num- ber range M of the system is M =

ni=1mi. If the moduli are pairwise relatively prime, i.e. if gcd(m mj, k) 1,= jk, j k, =1, 2,.., n, then every integer X from [0,M−1], is represented by the n-tuple

(

x x0, ,...,1 xl1

)

, where i m

x = X i, in one-to-one correspondence manner. The residue operations can be defined as

(

x x1, 2,...,xn

) (

y y1, 2,...,yn

) (

= z z1, 2,...,zn

)

, where

i i i mi

z = xy , i=1,2,..., n, and ⊗ may denote addition, subtraction or multiplication. As it can be seen from the above formula the operations are per- formed in small integer rings R m , i=1,2,..., n. The condition of mutual

( )

i

primality assures that the mapping between the ring modulo M and the direct sum of small rings R m , i=1,2,...,n. is isomorphic. This mapping can be per-

( )

i

formed using the CRT or the MRS.

The value of an integer X, with the use of the CRT [1], is given by the formula

1 1

n n

j j M j j

X = Σ = X = Σ =X − ⋅r M , (1)

(5)

where X are termed orthogonal projections equal to j 1

j j

j j j m

m

X =MMX , where j

j

M =Mm , and 1 1

j

j j

MM m = . Mj1 is called the multiplicative inverse of M modulo j m , and exists if j gcd

(

Mj,mj

)

=1 .

Scaling is defined as the division of X by an arbitrarily chosen but fixed scal- ing factor, K and rounding the result to the smaller,

( (

, greater,

( (

, or the near- est,

[ ]

integer.

In the RNS the sign is determined in the following way. If we denote the un- signed number from

[

0,M as N , then for signed numbers denoted as X , we

]

have, if M is even, X =N for N<M/ 2, and X = −N M for NM/ 2. If M is odd, X =N for N<(M−1) / 2, and X = −N Mfor N≥(M −1) / 2.

In contrary to ⊗ operations, residue scaling is relatively complex .The scal- ing result, Y is determined as follows

X X K

Y X

K K

 

= = . (2) Then the residues of Y for j=1,...,n, are obtained as

1

j j

j j

j m m

m m

y =Y = XX KK , (3)

where

( (

1K mj is multiplication inverse of K modulo m . j Provided that 1

mi

K exists, the corresponding residue yj of Y is given by 1

j j

j j

j m j m

m m

y = Y = xX KK j=1,2,..,n. (4) For X <0 we have

M X M X K

Y X M

K K

− − −

 

= = − (5) and

1

j j

j j

j

j m m K

m m

m

y Y M X M X

= = − − − K j=1,2,..,n. (6)

The formula (6) can be also written as

(6)

1

j j

j j

j

j m j m j K

m m

m

y Y m X m X

= = − − − K j=1,2,..,n (7)

In the case of scaled residue conversion of X ={ ,x x1 2,...,xn} we have to perform (2) for X ≥ 0 or (5) for X < 0. The calculation of | |

mi

Y is not needed.

We can also perform the scaled conversion using the following formula

1 1

/

j j

n n

j j

M K

X X

X M

Y r

K = K = K K

 

= = Σ = Σ − (8)

The direct usage of (8) for scaled conversion is difficult for several reasons.

First Xj /K have to be rounded to integers, that introduces certain error.

Moreover, K must be the divisor of M and the excess factor r has to be calcu- lated. Below we shall show that for the base {2n−1, 2 , 2n n +1} the calculation of (8) using K=2n can be greatly simplified because of the form of K and of

/ 22n 1

M K= − .

4. SCALED CONVERSION

In this algorithm we assume the three moduli RNS base B={m m m1, 2, 3} with

1 2n 1

m = − , m2=2n, m3 =2n+1. In this case for n=3 the CRT in (1) assumes the following form

1 2 3

1 2 3

1 1 1

1 1 1 2 2 2 3 3 3

1 1 1

2 3 1 1 1 3 2 2 1 2 3 3

m m m M

m m m M

X M M x M M x M M x

m m M x m m M x m m M x

= + +

= + +

. (9)

The multiplicative inverses Mj1 fulfill the equations

1 1, 1, 2,3

j

j j m

MM = j= . (10) We shall prove that

1

1 1

1 2n

M m = ,

2

1

2 2n 1

M m = − ,

3

1 1

3 2n 1

M m = + .

Theorem 1. For the base B={2n −1, 2 , 2n n+1} the multiplicative inverses have the values

1

1 1

1 2n

M m = , (11a)

2

1

2 2n 1

M m = − , (11b)

3

1 1

3 2n 1

M m = + . (11c)

(7)

For simplification we assume the denotations as follows

1

1

1 1

i = M m ,

2

1

2 2 m

i = M ,

3

1

3 3 m

i = M . Proof for (11a)

We have

2

1 1 1 1 1

2 1 2 1 2 1 2 1 2 1

1 1 2 1

2 (2 1) 2 2 2 2 2

1 1 1.

n n n n n

n

n n n n n n n

i i i i i

i i

+ = + = ⋅ ⋅ + ⋅

= ⋅ ⋅ + = (12)

Hence we must have 2i1−2n+ =1 1, thus i1=2n1. Proof for (11b)

We have

2

22 22 2 2

(2 1)(2 1) n (2 1) n n 1

n n n

i i i

− + = − = − = . (13)

Inserting 2n we obtain 2

2ni 2n =1. If 2n− =i2 1 then i2 =2n −1. Proof for (11c)

We have

2

32 3 32 3 32

(2n −1)2ni n = 2 ni −2ni n = 2 2n ni −2ni n =1.

In order to obtain the terms which are multiplicities of 2n+1, we replace 2 2n n by (2n+1)(2n+ −1) 2n+1−1. This form results from the fact that

2 1

(2n +1)(2n+ =1) 2 n+2n+ +1. We obtain

1

3 3 3 32 1

1 1

3 3 2 1 3 2 1

(2 1)(2 1) 2 2

2 (2 1) 2 .

n

n n

n n n n

n n n

i i i i

i i i

+

+

+ +

+ +

+ + − − −

= − − + = − (14)

We can introduce the additional factor equal to 2(2n +1)i3=0

1 1 1 3

3 3 2 1 3 3 2 1 3 2 1

2(2 1) 2 n 2 2 2 n 2 n 1.

n n n n

i +i + i i + i i +

+ +

+ − = + − = = (15)

If i is the multiplicative inverse, it has to be the solution of the equation 3 2i3−2n− =1 1. Hence i3=2n1−1.

Inserting the values of moduli into (9) and multiplicative inverses we obtain

2

1 1

2

1

3 (2 1)2

2 (2 1)2

(2 1)(2 1)(2 1) .

2 (2 1)(2 1) n n

n n n

n n n

n n n

x

X x

x

+ +

= + − + − +

+ − +

(16)

After reduction we have

(8)

2

2

3 1 2 1 3 2 1 2 1

1 1 2

3 1 2 2 1

3 (2 1)2

3 1 2 1 3 2 3 1 2 1

1 2 3 (2 1)2

2 2 (2 2 2 2 2 1)

(2 2 2 2 )

(2 2 ) (2 2 2 1) (2 2 2 ) .

n n

n n

n n n n n n n

n n n n

n n n n n n n n

x x x

X

x

x x x

+ + + +

+ +

+ + − + + − +

= + + − −

= + + + − + + − −

(17)

Using the RNS property |PX |PQ=P X| |Q, and assuming P=m2=2n,

1 3 (2n 1)(2n 1)

Q=m m = − + , after grouping the individual terms and scaling by 2n, we receive

2

2 1 1

1 2 3 1 2 3 2 3 3 (2 1)

( 2 )2 ( 2 )2 ( ) / 2 .

2 n

n n n

n

Y x x x x x x x x x

= + + + − + − + + (18)

The calculation of the scaled conversion using the CRT requires the addition of terms and final reduction modulo 22n −1. Such reduction is relatively simple and can be performed by segmentation and addition of segments of the reduced word modulo [17].

Example 1. Computation of (18) for n=5 and n=18.

For n=5 we have

For X =1142 andM = 32736, the residues have the values:x1= 26 ,

2 22

x = ,x3 =20, respectively. We obtain the scaled value equal to Y = 35. The exact value is 35.625.

For n=18 we have 9007199254609923

X = , M = 18014398509219840, and residues x1=3,

2 131075

x = ,x3=3. We obtain the scaled value equal to Y=34359738367. The exact value is 34359738367.50001.

The RNS/B conversion [17] requires multi-operand addition, modulo reduc- tion to 2M range and final modulo M reduction. In the general case modulo

2M reduction requires binary adders, one carry-save adder and two-input mul- tiplexer, all of log M2 -bit length. Denote word to be reduced as S . In our

case M =(2n+1)(2n−1) We have S≤2M and

max( )S =(2n+1)(2n− − =1) 1 22n−2. In this case we can detect the overflow of M using the value of the MSB bit b of S with the weight 2n n or all remaining bits. The overflow of M takes place, when bn=1 or bp = Πni=01bi =1, in the former case the modulo reduction can be performed by setting b to 0 and add-n ing 1 to LSB. In the letter case if bp =1 then |S|M=0.

(9)

5. SIGN DETECTION

In the case of M =2n −1, M is odd and the positive numbers belong to [0, 2n −1] and negative numbers belong to [2 , 2n 2n −2]. In such a case the bit

1

bn determines the sign. For bn1=0 the number is nonnegative and for bn1=1 the number is negative.

Below we shall propose a procedure that performs jointly modulo M reduc- tion and sign detection. This will be based on the values of bn1 and b . n

Case 1. bn =0 and bn1=0

The reduced word has the form 00xx…x. This means that there is no overflow and the number is non-negative and equal to Y = Σni=02bi.

Case 2. bn =0and bn1=1

The reduced word has the form 01xx…x. This means that there is no overflow and the number is negative or zero.

a) If bp = Πin=02bi =1the Y=|S|M=0

b) If bp = Πin=02bi =0 then Y<0 and 1xx…x represents Y<0 in two’s- complement diminished by 1, Y = −(2n− − Σ1 in=02bi).

Case 3. bn =1and bn1=0

The reduced word has the form 10xx…x. This means that there is M overflow and the modulo reduction can be performed by zeroing the MSB and adding 1 to the LSB.

a) If bp = Πni=02bi =1then Y<0 (negative) and Y =2n−1 b) If bp = Πni=02bi =0 then Y= Σni=02bi+1

Case 4. bn =1and bn1=1

The reduced word has the form 11xx…x. This means that there is M overflow and the number is reduced as in Case 3.

a) If bp =b0(1− Πb1) ni=22bi =1 then Y =|S|M=0

b) If bp =b0(1− Πb1) ni=22bi <>1 then Y = −(2n− − Σ1 in=01bi) 6. CONVERTER ARCHITECTURE

The converter design requires the evaluation of the number range of the ex- pression in (18). For convenience we cite this expression

2

2 1 1

1 2 3 1 2 3 2 3 (2 1)

( 2 )2 ( 2 )2 ( )

2 n

n n

n

X x x x x x x x x

 

= + + + − + − +

 

  (18)

(10)

In order to compute the maximum value of the internal expression in (18) we shall substitute the maximum values of the individual moduli, for m1=2n −1, max( )x1 =2n −2, for m2=2n, max(x2)=2n−1, for m3 =2n +1, max( )x3 =2n.

2

2

2 1

1

3 (2 1)(2 1)

1 2 1 2 1 1

3 2 1

3 2 1 2

2 1

(2 2 2(2 1) 2 )2

(2 2 2(2 1) 2 )2

(2 1 2 ) / 2

(2 4)2 (2 4)2 2 2 / 2

| 2 2 2 2 1|

n n

n

n

n n n n

n n n n

n n n

n n n n n n

n n n

x

x

+

+ + +

+ +

− + − + +

+ − + − + + =

+ − + +

= − + − − + + =

= + − + +

(19)

For the modulus with a binary length n=18 we obtain

36

54 27 20 55

2 1

| 2 +2 −2 +3 | <2 (20) So we see that the word to be reduced has the binary length of 55 bits. The length of the reduction modulus is equal to 2n=36 bits. In this way we can divide the output word in two segments, first of 36 bits and the second of 19 bits.

These segments have to be added using 36-bit binary adder and the received sum

(

36

)

2 2 1

S< − has to be reduced modulo 236−1. In the next stage the obtained residue X has to be reduced modulo 2 and the sign of the number is to be de-36 tected.

The block scheme of the scaled converter architecture is shown in Fig. 1.

Firstly the binary adder BA1 computes the sum S1. Next S2= −S1 2x2 along with S3= +S1 2x2 are computed. BA4 calculates the shifted sum of S and 2 S . 3 The obtained sum S if divided into two segments to reduce it to the 2 2

(

2n1

)

number range with a first one of 36 bits and the second of 19 bits. Such segmen- tation of the word to be reduced is possible due to periodicity property of series

2k [30]. The final block realizes the modulo 22n−1 reduction and sign detec- tion as presented in Section 5.

(11)

In this bers for th of multipl tection. A

[1] Szabo nology [2] Soders Digita

Fig 1

work we ha he base {2n

licative inve Also schemati

N.S, Tanaka y, New York, strand M. et a l Signal Proc

1. Schematic bl

7.

ave presented 1,2 ,2n n 1}

 

erses are give ic architectur RE

R.J, Residue McGraw-Hill al., Residue N essing, IEEE

ock of scaled co

SUMMAR d the residue } with a scal en along wit re of the con EFERENC

Arithmetic an l, 1967.

Number System Press, NY, 19

onverter archite

RY

e scaled conv ling factor K th the detaile nverter has be CES

nd its Applica m Arithmetic:

986.

ecture

version of sig 2n

K  . The d ed analysis o een presented

ations to Comp Modern App

gned num- derivations of sign de-

d.

puter Tech- plications in

(12)

[3] Omondi A., Premkumar B., Residue Number Systems: Theory and Implementa- tion, London, Imperial College Press, 2007.

[4] Ananda Mohan P.V., Residue Number Systems, Springer 2016.

[5] Chacraborti N.B., Soundaranajan J.S., Reddy A.L.N., An implementation of mixed-radix conversion for residue number systems applications, IEEE Transac- tions on Computers, Volume 35, Number 8, 1986, pp. 762-764.

[6] Kim J.Y., Park K.H., Lee H.S., Efficient residue-to-binary conversion technique with rounding error compensation, IEEE Transactions on Circuits and Systems, Volume 38, Number 3, 1991, pp. 315-317.

[7] Barsi F., Pinotti M.C., Time-optimal mixed-radix conversion for residue number applications, Computer Journal, Volume 37, Number 10, 1994, pp. 907-916.

[8] Henkelmann H., Drolshagen A., Bagherinia H., Ahrens H., Anheier W., Automat- ed implementation of RNS-to-binary converters, In: Proc. of International Sympo- sium on Circuits and Systems 1998, ISCAS 1998, Naval Postgraduate School, Monterrey, CA, June 3, 1998, Volume 2, pp. 137-140.

[9] Fraser D.F., Bryg, N.J., An adaptive digital signal processor based on the residue number system, In: Computers in Aerospace Conference, Los Angeles, CA, Oct.

22-24, 1979, Technical Papers. A79-54378 24-59 New York, American Institute of Aeronautics Inc., pp. 98-104.

[10] Cheng V.S., Huang, C.H., On the decoding of residue numbers, In: Proceedings of International Symposium Mini, Microcomputers, Control and Measurement, San Francisco, CA, May 20-22, 1981.

[11] Taylor F.J., Ramnarayanan A.S., An efficient residue-to-decimal converter, IEEE Transactions on Circuits and Systems, Volume 28, Number 12, 1981, pp. 1164- 1169.

[12] Zhang C.N., Shirazi B., Yun D.Y.Y., Parallel designs for chinese remainder con- version, In: Proceedings of the International Conference on Parallel Processing, August 17-21, 1987, pp. 555-557.

[13] Soderstrand M.A., Vernia C., Chang J–H., An improved residue number system digital-to-analog converter, IEEE Transactions on Circuits and Systems, Volume 30, Number 12, 1983, pp. 903-907.

[14] Van Vu T., Efficient implementations of the Chinese Remainder Theorem for sign detection and residue decoding, IEEE Transactions on Computers, Volume 34, Number 7, 1985, pp. 646-651.

[15] Meehan S.J., O’Neil S.D., Vaccaro J.J., An universal input and output RNS con- verter, IEEE Transactions on Circuits and Systems, Volume 37, Number 6, 1990, pp. 1158-1162.

[16] Elleithy K.M., Bayoumi M.A., Fast and flexible architectures for RNS arithmetic decoding, IEEE Transactions on Circuits and Systems II: Analog and Digital Sig- nal Processing, Volume 39, Number 4, Apr. 1992, pp. 226 – 235.

[17] Piestrak S.J., Design of high-speed residue-to-binary number system converter based on the Chinese Remainder Theorem, In: Proceedings of the International Conference on Computer Design ICCD’94, VLSI in Computers and Processors, Cambridge, MA, Oct. 10-12, 1994, pp. 508-511.

(13)

[18] Lee I., Jenkins W.K., The design of residue number system arithmetic units for VLSI adaptive equalizer. In: Proceedings of the Great Lakes Symposium on VLSI, Feb. 1998, pp. 179-184.

[19] Wang Y., Residue-to-binary converters based on the new Chinese Remainder Theorems, IEEE Transactions on Circuits and Systems II: Analog and Digital Sig- nal Processing, Volume 47, Number 3, 2000, pp.197-205.

[20] Huang C.H., A fully parallel mixed-radix conversion algorithm for the residue number system, IEEE Transactions on Computers, Volume 32, Number 4, 1983, pp. 398-402.

[21] Burgess N., Scaling an RNS number using core function, In: Proceedings of the 16th IEEE Symposium on Computer Arithmetic, Santiago de Compostela, Spain, 2003, pp. 262-269.

[22] Czyżak M., RNS reverse converter based on core function, In: Proceedings of 31st International Conference on Fundamentals of Electrotechnics and Circuit Theory IC-SPETO 2008, Gliwice – Ustroń, May 28-31, 2008.

[23] Ulman Z.D., Czyzak M., Highly parallel fast scaling of numbers in nonredundant residue arithmetic, IEEE Transactions on Signal Processing, Volume 46, Feb.

1998, pp. 487-496.

[24] Ye Y., Ma S., Hu J., An efficient 2n RNS scaler for moduli set {2n-1, 2n, 2n +1}, IEEE Symposium on Information and Science Engineering (ISISE), Dec. 2008, pp. 511-515.

[25] Chang C. H., Low J. Y. S., Simple, Fast, and Exact RNS Scaler for the Three- Moduli Set {2n-1, 2n, 2n+1}, IEEE Transactions on Circuits and Systems I: Regular Papers, Volume 58 , Number 11, Nov. 2011, pp. 2686 - 2697.

[26] Vinnakota B., Bapeswara Rao V.V., Fast conversion technique for binary-residue number system, IEEE Transactions on Circuits and Systems I: Fundamental Theo- ry and Applications, Volume 41, Number 12, Dec. 1994, pp. 927–929.

[27] Ibrahim K. M., Saloum S. N., An efficient residue-to-binary converter design, IEEE Transactions Circuits and Systems, Volume 35, Number 9, Sept. 1988, pp.

1156-1158.

[28] Dhurkadas A., Comment on an efficient residue-to-binary converter design, IEEE Transactions on Circuits and Systems, Volume 37, Number 6, June 1990, pp. 849- 850.

[29] Avizienis A., Arithmetic codes: cost and effectiveness studies for application in the digital system design, IEEE Transactions on Computers, Volume 20, Nov.

1971, pp. 1322-1331.

[30] Piestrak S.J., Design of residue generators and multioperand modulo adders using carry-save adders, IEEE Transactions on Computers, Volume 43, Number 1, Jan.

1994, pp.68-77.

[31] Mahesh M. N., Mehendale M., Low power realization of residue number system based FIR filters, In: Proceedings 13th International Conference VLSI Design, Jan.

2000, pp. 30–33.

[32] Cardarilli G. C., Del Re A., Nannarelli A., Re M., Low power and low leakage implementation of RNS FIR filters, In: Proceedings 39th Asilomar Conference on Signals, Systems and Computers, 2005, pp. 1620–1624.

(14)

[33] Conway R., Nelson J., Improved RNS FIR filter architectures, IEEE Transactions on Circuits and Systems II: Express Briefs, Volume 51, Number 1, Jan. 2004, pp.

26–28.

[34] Cardarilli G. C., Del Re A., Nannarelli A., Re M., Low-power implementation of polyphase filters in quadratic residue number system, In: Proceedings of IEEE In- ternational Symposium on Circuits and Systems, 2004, ISCAS 2004, 2:725–728, 2004.

(Received: 07.02.2019, revised: 15.03.2019)

Cytaty

Powiązane dokumenty

The main group of scaling techniques are the methods based on the Mixed-Radix System (MRS) or the CRT decomposition.There is also a method based on core

The approximate reciprocal of the divisor is computed by the look-up with the use of the algorithm from [14] based on segmentation of the divisor in the binary form in two segments

This results from the fact that the RNS is an integer number system but in the signal processing algorithms coefficients are fractional or real numbers, therefore the

The arithmetic operations based on residue number system can be performed on various moduli independently to avoid the carry in addition, subtraction and

Nie jest przypadkiem, że bohater Bashevisa twierdzi, iż pisze swoje wspomnienia w tym właśnie okresie; wtedy to bowiem w Warszawie obudziło się zainteresowanie frankistami i

Jaxa-Rozen, Bloemendal, Kwakkel, Rostampour, Hybrid modelling for ATES planning and operation in the Utrecht city centre, EGU 2016..

Snelheden worden gemeten bovenstrooms van de kade , waar de stroomlijnen nog recht zijn, op de kruin en op het boven- en benederistroomse talud.. De eerstgenoemde meetplaats

Specjalne podziękowanie należy się przy tym nestorowi współczesnej literatury polskiej, Jarosławowi Iwaszkiewiczowi, który mimo sędziwego wieku i chronicznego braku