You are on page 1of 5

Fast illgorithms for Multiple Errors

Detection and Correction in Redundant


Residue Number Systems

Jenn-Dong Sun Hari Krishna

Department of Electrical and Computer Engineering


Syracuse University
Syracuse, N.Y ., 13244- 1240

Abstract
I n this work, we s t u d y and e x t e n d t h e coding t h e o r y
approach to error control in r e d u n d a n t residue n u m b e r
systems (RRNS). We derive new c o m p u t a t i o n a l l y emcient
algorithms for correcting a n d detecting multiple errors.
T h e s e algorithms reduce t h e c o m p u t a t i o n a l complexity and the integers T, are predetermined using the congruences
of t h e previously known a l g o r i t h m by a n o r d e r of magni- T,M, 1 (mod m , ) (0)
tude. Also, i t is worthwhile t o mention here t h a t all t h e
literature published t h u s far deals almost exclusively with From the coding theory poirit of view [9], al! the n-tuple residue repre-
single error correction. sentations form an n-dimensional vector space, and the vectors correspond-
ing to the numbers in legitimate range constitute the k-dimensional code
space called RRNS ( n ,k) code space 0. Every n-tuple residue representa-
tion in the code space is a codevector which can be divided into two p a t s ;
the first k residue digits correspoding to the k nonredundant moduli ,&re
1 Introduction called the information digits, and the remaining r residue digits correspond-
ing to the r redundant moduli are called the parily digits. Some coding
During the last few years there has been much investigation concerning the
use of redundant residue number systems (RRNS) for residue-error correc- definitions in RRNS [9] will now be given, sufficient to make this paper
tion. However, most of the previous works focus on single-residue error self-contained.
correction because of the considerations of large memory space requirement Definition 1. T h e Woniming weight of a codevector 2,wt(g), in a RRRJS
[2,8] or computational inefficiency [1,3-71. In our previous paper[9], we de- i s defined as the number of non-zero components of g.
veloped a coding thoery approach t o error control in RRNS. The concepts Definition 2. The Hamming distance between two codevecto:s 3.and
of Hamming weight, minimum distance, weight distribution, and error de- zI,d&, 3)
- is the number of places in which z, and z3 differ.
tection and correction capabilities in RRNS have been introduced. T h e nec- Definition 3. The minrmum dtstance d of 5, R R m is defined as
essary and sufficient conditions for the desired error control capability are
derived from the minimum distance point of view. A special case generates d=min{d&,;) :r..3€EI2,%#%} i4)
the maximum distance separable (MDS) RRNS. Computationally efficient For the RRNS code, the minimum distance d is the same as the IIamming
procedures are described for correcting single error. In this paper, we will weight of the codevector in 0 having the smallest positive Hamming weight,
extend the above procedures for simultaneously correcting single error and
detecting multiple errors and correcting double errors. d = min [ w t ( x ): 1 E 0 ,# ~
0) 15)
This paper consists of seven sections. In section 2, we cover the defi-
nitions and basic coding theory for RRNS. In section 3, we generalize the 'Theorem 1. T h e minimum distance of a BRNS code is d if arid only if
property of consistency checking for RRNS. Two computationally efficient the product of redundant moduli satisfies the foilowing relation,
procedures, one for simutaneously correcting single error and detecting mnl- d d--1
tiple errors and the other for correcting double errors, are presented in sec-
tion 4 and 5 , respectively. In section 6, we extend the previous algorithms [7]
for multiple-error correction and detection. Finally, we discuss and compare
the various results in section 7. For maximum-distance-separable RRNS (MDS-RRNS), i . c ? if - 1 = n -- k ,
the moduli satisfies that M R = maz[fl;:; m3,}, where 1 5 j , 5 n .
Theorem 2. T h e error drtecting capability, I , of a RRNS f2 is d - 1 .
2 Definitions and Basic Coding Theory Theorem 3 . The error correcting capability, t. of a RRNS R is I&$-],
where 1. denote the largest integer less than or equal t o a.
for RRNS Theorem 4. A RRNS is capable of correcting X or fewer errors and
A residue number system (RNS) is defined by a set of k relatively prime simutaneously detecting 0 (a
> X) or fewer ermrs if, d 2 X /3 I . + +
integers, m-1, mz, . . ., mk, called nonredundant moduli. A positive integer
X in the range [0, M ) , called legitimate range, where M = nf,, m , , can be
3 Consistency
uniquely represented by the k-tuple [XI,zz, , . . ,211 of its residues modulo
m , (2, X mod m,). RRNS is defined by adjoining r ( T = n - k) addi- For MDS-RRNS (n, k) code, assume that there are c and g errors (c+g 5 U)
tional moduli, m k + l , m*+2, . . ., m,, called redundant moduli, to form n
in the information and parity digits, respectively, then the received residue
relatively prime moduli. The integer X in the range [O, M ) is represented as
vector can be represented as
. . . , x k , zk+l, . . . ,zn].T h e range [ M , M M R ) is called
the n-tuple [z1.z2,
illegitimate range, where M n = m; and [ O , M A ~ Ris) the total range
of RRNS. According t o Chinese remainder theory (CRT), given a residue
y - g = [ Y l , 122.. . , Y k , Y k + l , . " .
1 ?/nl

vector = [z,, z Z , .. . , zn], the corrcsponding iuteger X , 0 5 X < M M R , y.=z,, 1 5 i 5 n , i # a o , j u . a = 1 , 2 , _ _ .c,, v = 1 , 2 , . _ _g,
can be computed using

83 1
24ACSSC-1219010831 $1.00 G 1990 M A P L E PRESS
information digits is in error.
If the case 2 of theorem 5 happens, the new parity digil y:+, is the cor-
If case 4 of theorem 5 happens,
rect d n c of the eIroneous parity digit ?/it-..
a procedure t o determine error location and error value for singlefdouble er-
,Y, = ~ , ~ + - t ~ , (modm,,),O<e,u<mm,v. ror is described in lhe following sections.
k + 1 5j , 5 n, v = 1 , 2, . . . , g (7)
A Procedure for Single-Error Correc-
4
where 1 1 , i z , . . . , t c are the positions of the errors in t h e information digi!s,
the corresponding error values being e., , e.>, . . . , e , c ; and 11 , J Z , . . , l 4 are tion and Multiple-Error Detection
the positions of errors in the parity, the corresponding error values being
By theorcm 1, the RRKS with d = X + 0 + I . X = 1, and > X can
e,, , e , 2 , . . . , e J 9 . T h e altered information number 7
can b e represented a
-
y - =
[Yl,YZ,
. . ,Zk]
[Zi,ZZ,.
..., y t l
simultaneously correct single residue error and detect $ errors. Assume
t h a t only !he pth information digit is in error, then cq. (15-20) become
+
(i) for S E < .if, and r = 1 , 2 , . . . , n - k ,
.tf
+ [ O , . . . , O,e,,, 0 , . . . , O,e,,, 0 , . . . ,0,e b c ,0 , . . . , a ] (8)
-
Y=X+e-
mP
(19)

whcre and
M
X - [ZI,ZZ,. . . , zk]
A, 3 e- (mod mt+,) (20)
mP
E --+ [O ,..., O , e , , , O , . . . , O,e,,,O , . . . ,O , e , , , O , . . . , 01 (ii). for d.1 5 S + E < ?.If, and T = 1.2,. ., n- k ,

Since E 0 (mod m,) for all I # i,, where a = 1 , 2 , . . . , c, and E #


0 mod m, for t = i,, a = 1,2 , . , , , c, i.e., the number E is a multiple of all
information moduli except m l , , m G 2 ., .. , and m , = ,then and
1w (22)
A, (e - m p ) - (mod m r + r )
mP
where 0 < e < m p . Given A I , A,, . . . A n - k , b a e d on eq (19-22) a proce-
where 0 < e < m,,m., . . . m,c. Therefore, dure t o determine p (error location) and e p (error value) can be outlined a s
- follows:
Y E X +E (mod M ) (10) For J = 1.?, , , , , k , solve the congruences
Based on [ y ~y,z , . , , , yk], and by base extension (BEX) operation [ 2 ] which
avoids processing large valued integers, the parity digits are recomputed t o
get
and
yktT L
(mod m t t P ) ,r = 1 , 2 . . . . , n - k (11) Jl
(mod m i + v ) , 7 = 1 . 2 . . . . , n
We dcfine the test quantities A, called syndromes a
Ar = - VI>)- m ,
~ k 124)

A, E (y;+r - yktr) (mod mk+r), T = I,'.?,. . . , n -k (12) to obtain the values e:' aiid e/2'", whrre r = 1, 2 , . . . , I L - k . Compare
to check if the solutions to eq. (23) or eq. (24) are consistent, i.e., e:'"' =
Since both X aiid E in eq. (12) are less than M ,we consider the following
two cases
e i l . z ) = ., , e;l,n-k)
~ or e ( z 2 1 ) = .. = ~

1fFitiier of ,lie t,vo ej2,rL-k).


[i). for X +
fi < M , T = 1 , 2, . . . , n - k , and U = 1 , 2, . . . , g. conditions is satisfied, for J = I , then the Ith information digit is declared
t o be i n error, the value of the error e , E e ' x mod m i . whrre e' = e:'
nit

if 1) -
~ ejl.2) = , , . and c l = e(2.11
n-k); I
if e I( z =
I
= ... =
e12.n--*) T h e correct value of the l t h r e s d u e digit is ( y i - e i ) mod mi,and
-y'is decoded to the codevector 2,where

Z;=y,, j=1,', . . . ,n , j # f (25)


G s (yr
(mod mi) -er) (26)
It is clear from eq. (19-20) a n d ( 2 3 ) t h a t if one error takes place in t h e
(ii). for M 5 X + E < 212.1, r = 1 , 2 , .. . , n - k , and Y = l,?. .g. pth information digit such t h a t X +
E < M , then for J = p . e = e' =
- e:'"' = e:' = . . . = e:',"-*) and 1 = p . Similarly, if one error takes place
Y = X+E-M=X+e&-iii
n,=, mr,
in the pth information digit such t h a t df 5 A' E < 2.V. t h m for J = p , +
e = e' = e ( ' " ) = e(*"' = - e? "-')
. - and I = p from eq (21-22) and
( 2 4 ) . However. it remains t o be shown t h a t if the following two cases occur:
I ) only one error takes place in t h e pth information digit and I # J J : and

and
2 ) more t h a n one b u t less t h a n a+
1 errors take place, !hen at least two
,
of {e(l.r? 1 and a t least t w o of {ej2'r)l ale unequal, w ~ i e r e7 = I , . . . , n I;. ~

Under an additional constraint on the form of t h e moduli. t h e result is


established in the following theorem.
Theorem 6. If the moduli of RRNS ( T i , k ) cod?, are c n r h that there
donot exist integers n,, nc; 0 5 n, < ni,, 0 5 nc < .21c =
1 5 i o 5 k . 1 5 c 5 3; that satisfy
m,-, n:=,
A fundamental property of the syndrome digits is stated in the following
theorem
Theorem 5 . Under the assumption t h a t no more than 4 residues are in
7IJAfC + ncm, = nI--.
C t l

, I d r, < n, 1 < 3 < I.. (27)


+ +
error, for the RRNS with d = X 4 1 ( A < 4) one of the following four
I='

cases occurs: then for either of two cases, that is, 1). only the p t h information digit IS
Case 1: If all the syndromes A I , . . . , A,-k are zero, then no residue is received in error and J # p ; and 7). more than one (< B ) residue digit
in crror. are received in error. the solutions t o eithei of eq. ( 2 3 ) a n d (24) are not
Case 2: If only p ( l 5 p 5 A ) syndromes are non-zero, then exactly coiisis tent.
p corresponding parity digits are in error, and all other residue digits are Proof: Case 1): for X + E < AI, and J f p , if the solutions t o eq. (23)
correct. are consistent, e y l = &1,2) - . . . -
- e ( l , " - k ) - e ' , then comparing eq.
+
~

Case 3 : If X 1 t o p syndronies are iioii-zero, then more than X residue ( 2 3 ) t o (20) we o b t a n


digits are in crror.
+
Case 4: If /3 1 to all syndromes are non-zero. then a t least one of the

83 2
By theorem 3, the RRNS with d 5 5 can correct two errors. If case 4 of
theorem 5 happens, for exactly two residue digits are received in error, there
are two possible cases, that is, Case a): both errors in information part; case
that is, elmp - em, is a multiple of n:,;”?nktr.This is not possible as b): one error in information part and the other in parity part.

le’mp - em,^ < nrzf ?nk+?. Similarly, for x+


E < M , and 3 # p , if
Consider case a): if the pth and qth information digits are received in
error, eq. (13-18) become
e(2.1!
>
-
- e(2,2)
I
-
- , . . = J%n--k)
3
= e’, then comparing eq. (24) to ( 2 0 ) we +
(i). for S E < M ,
obtain

and
This is not possihlc as M (mod m-k+,) r = I , 2 , 3 . 4 (30)
A, z e-
mPmq
(ii). for M 5X + E < 2M
,-=I

. The case for M < X + E < 2 M , can he analyzed in an analogous manner.


Case 2): for + E < M , if el1,’) = = . . . = e(””--*) = e ’ , then
comparing cq. (23) to (14) we obtain A, I (. - v ~ , mmpmy
, ) L (mod m*+,) r = I . ? , ,3.4 (32)

where 0 < e < mpmq.Similar to the analysis in section 4 . given A I . A > ,


(13.
and A,,based on eq. (29-32) a procednre t o determine rrror locations and
error values can be outlined as follows:
where k < r, 5 n, r , # j V , U = 1 , 2 , , , , , g , This congruence can not hold For i = 1 , 2 , . , , ,k, j = 1 , 2 , , . , , k, and i # j 3 solve the congruences
due to /e’ re=,
m m- e m , \ < m, nz=,
mm< nf:;‘=:‘-’m,.. For example,
asslime that the pth information digit and the first g parity digits are in
+
error, and 4 = c g, where c = 1 , thrn the above congruence is

L ( e ’ m , - em,) E 0 (mod m,-,m,)


mP
This is not possible as / e l m p - em,l c m,-im,. In other words, at least
two of r = I , . . . , n - k) are unequal. Similarly, for x E < M, +
if 3 = e(2.2) - . . . = = e ’ , then comparing eq. (24) to (14) we
3
obtain
e(’,‘) = ( A P ( K ) - ’
m,m,
+ m,m,) mod mttr (36)

where r = 1 , 2 , 3 , 4 . Based on the combination of any two digits of ( e ‘ ’ , ‘ ) ; r =


1 , 2 , 3 , 4 ) and the combination of any two digits of { e ( ’ , ‘ ) ; r = 1.2, 3 . i ] , say
where I; < r , 5 n, rt # j,, U = 1 , 2 , . . . , g. The above congriience can not {e(r,’),e(1,2)] and {e(2,’),e(*,2)) , and by CRT, we get
hold due to (em, + (m, - e ’ ) n:=,
m,*) < ~ V Z , n:=,
m., < n:,:’-‘mm,,,
for c + g < p; and eq. (27) for c + g = 8. The case for M 5 X E < 2 M , +
can also he analyzed in an analogous manner. This pIOVC5 the theorern.
Lenirna 1. If the moduli of RRNS satisfy the condition

mrn{m,,ni,,] > m a ~ { 2 m , , m-
, ~m,, - mt21 (28)
where k < j 1 , j 2_< n and 1 _< I ] , k2 5 k , then for either of two cases, that
is, 1). only the pth information digit is received in error and 3 # y ; and 2 ) .
more than one residue digit are received in error, the solutions t o either of
eq. (23) and (24) are not consistent.
- Proof The condition is sufficient since, if the moduli satisfy eq. (28), .(2,‘lm*tlmL-t2
mk+r
e(2.r) mktr), ~ ,, 2 (la)
then eq. (27) must he satisfied. This completes the proof.
Now, we check if the following two conditions are satisfied: ( I ) . c!,!’ < i n m,
Based on the concept developed above and under the assumption that
the moduli m. i = 1 , 2 , . . . ,n , satisfy the condition in theorem 6 or lemma and eq. (33) holds by substituting e ! : ) for e ( ’ , ‘ ! , i.e., the 1;oIiitions to RI.
1, the algorithm to correct a single error and simultaneously detect multiple (33) are consistent, and the consistent solution is e!:’. (ii). c!:’ < m,,,~,
errors in RRNS can be described as follows: and eq. (34) holds by substituting el:’ for e ( ’ , ‘ ) , i.e.. the solutions to c g .
Step 1: According to the received vector, we compute the syndromes.
(34) are consistent, and the consistent solution is e!:’ Let us sa? elther of
Step 2: Check how many syndromes are zeros:
I_
the two conditions is satisfied for I = f and j = h. Then the f t h and hth
(1). If all the syndromes are zero, then no error occurs. Stop.
information digits are declared to he in error, the value of errors
(2). If only one syndrome is non-sero, then only one error in parity. Correct
it and stop.
(3). If d - 3 t o 1 syndromes are zero, then go to step 6 .
(4). If all the syndromes are non-zero, then go to step 3 .
-
Step 3: Let 3 = 1 .
Step 4: Perform single-error consistency-checking for t h e nonredundant
moduli m,. Check the consistency of the solutions. If it is consistent, where e’ = e:;’, if er:’ is the consistent solntion to eq. (33): e’ = e ! : ) , if
+
then go to step 5; if it is not consistent, then 3 = 3 1 . Go to step 4 for
e ( 2 ) is the consistent solution to eq. (34). Note t h a t i f e’ F 0 (mod m,) or
j 5 k. For 3 = k +
1, go to step 6. e“= 0 (mod mh), then only the hth or f t h information digit is in error.
Step 5: Only one error in the j t h posil,ion. Correct i t and stop, The correct values of the f t h and hth residue digits +re (y, - e J ) mod m ,
Step 6: Declare more than one error detected and stop. and (yh - e h ) mod mh. respectively, and 2 is decoded to the codevector 2,
where
z;=y,, j = 1 , 2 , . . . ,1
5 A Procedure for Double-Error Correc- I , ] # f , h (43)

tion ( d = 5) A
= (y, -E,) (mod m,) (44)
Zh P (yh - e h ) (mod m h ) (45)

833
It is clear from eq. (29-30) and (33) t h a t if two errors take place in the pth Based on the concept developed above and under t h e assumption t h a t
and qth information digits such t h a t X + E < M , then for z = p and j = q . the moduli of MDS-RRNS satisfy the condition in theorem 7, t h e algorithm
t = e' = e ! : ) , f = p , and h = q . Similarly, if two errors take place in the pth to correct double errors can be described as follows:
and yth information digits such that M 5 X + E < 2hl, then for z = p and -
Step 1: According to the received vector, we compute the syndromes.
J = q , e = e' z e(2i, f = p , and h = q from eq. (31-32) and (34). However. -
Step 2: Check how many syndromes are zero:
it remains to be ihown t h a t if any one of the following cases occurs: 1) (1). If all the syndromes are zero, then no error occurs. Stop.
only one error takes place in the pth ( p # i , j ) information digit, 2 ) . exactly ( 2 ) . If only one syndrome is non-zero, then only one error in parity. Correct
two errors take place in t h e pth and qth information digits, where p # < , I i t and stop.
and/or q # i , j , 3). exactly two errors occur: one in the information part ( 3 ) . If two syndromes are non-zero, then two errors in parity. Correct them
and the other in the parity part, the solutions to either of eq. (33) and (34) and stop.
can not be consistent. Under an additional constraint on the form of the ( 4 ) . If none or one syndrome is zero, then go t o step 3 .
moduli, the result is established in the following theorem and lemma. Step 3: i = 1.
-
Theorem 7 . If the moduli of RRNS ( n , k ) code, are such t h a t there Step 4: j = i 1
__ +
donot exist integers n,,, nc; 0 5 n,, < m,m,, 0 5 nc < Mc = U:=,
m,*, -
Sten 5 : Perform double-error consistency-checking for all t h e possible com-
bination of the nonredundant moduli m, and m,. Check the consistency of
1 5 r a 5 k , 1 5 c 5 2; t h a t satisfy
the solutions. If it is consistent, then go to step 6; if it is not consistent,

n,,Mc + ncm.m, = nm,,


4 2

*=1
, k < T~ 5 n, 1 5 t,1 5 k, (46)
then go to step 7 .
-
Step 6: If the consistent solution e' 0 mod m, (or e' G 0 mod m , ) , then
only one error in the 3th (or i t h ) position; otherwise exactly two errors in
the zth and j t h positions. Correct them and stop.
then for either one of the following two cases: 1 ) . only one error takes place
Step 7 : if exactly 3 solutions are consistent and the consistent solution
in the pth ( p # i , 3 ) information digit, 2 ) . exactly two errors take place in
(mod m.) (or e' E 0 (mod m 3 ) ) then
, exactly two errors: one in
the pth and qth digits, where p # i, j and/or q # i,i,the solutions to either
the j t h (or ath) position and t h e other in the parity for which the solution
of eq. (33) and (34) are not consistent.
is not consistent. Correct them and stop. Otherwise, go t o s t e p 8 .
Lemma 2 . If the moduli of RRNS satisfy the condition
Step 8: j = 3
__ +
1, go to step 5 for j 5 k. For j > k , i = i +
1 go t o step 4
min{m,,m,,} > max{2m,,m,, -mal - m,>} (47) for z 5 k - 1. For i = k , go to step 9.
-
Step 9: Declare more than two errors detected and stop.
where k < j l , j ? 5 n and 1 5 i l , i2 5 k , then for either one of the following
two cases: 1 ) . only one error takes place in the pth ( p # i , j ) information
digit, 2). exactly two errors take place in t h e pth and qth digits, where 6 Extensions of Previous Algorithms
p # e, j and/or q # i , 3 , the solutions to either of eq. (33) and (34) are not
consistent. In [i,i],the algorithms for locating single residue digit error is fully based
Consider case b): assume that one error takes place in the pth informa- on the properties of modulus projection and MRC. MRC is an operation t o
tion digit and the other takes place in the ( k +zc)th digit (uth parity digit), represent the integer X in the form
the procedure to determine error locations and error values is the same as
t h a t for case a ) , except t h a t when no consistent solution is found i n caSe
( a ) , then we check if any 3 congruences in either eq. ( 3 3 ) or eq. (34) have a
1=1 r=i
consistent solution, say e', which satisfies e' < m,m, and e' =
0 (mod m , )
or (mod m,). Note that this consistent solution may be obtained from
the combination or since one error may occur
where 0 5 a ( < mi, 2 = 1 , 2 , . . . , n ,and n;=,m , = 1. In an RRNS ( n ,k)
code, the first k mixed radix digits a l , a 2 , . . . , a h are called the nonredun-
in the ( k + I ) t h or ( k t 2 ) t h digit Let us say the above condition is satisfied dant mixed radix digits, and the rest a k + l , ak+2,. . . , a, will be called the
for a = f and i = h , and the only inconsistent congruence is correspond- redundant mixed radix digits. It is obvious t h a t if t h e redundant mixed
+
ing to the ( k s ) t h residue digit, then the f t h (if e' =0 (mod m h ) )and radix digits are all zero, the number X is a legitimate number; Otherwise,
+
( k s ) t h residue digits are declared to be in error. T h e correct value of the S 1s an illegitimate number. T h e modulus m,-projection of X in RRNS
f t h and hth residue digit can be obtained from eq. (41-42). and the correct ( n . k ) code, denoted by X , , is defined as
+
value of the ( k s ) t h residue digit is as follows:
X,= X mod -,M M R (53)
m,
t h a t is, X,can be represented as [ z i , 22,. . . , z.-l, Z , + I , . . . , zn]which is the
if 3 congruences in eq. (33) have a consistent solution e'; and residue representation of X in a reduced RRNS with the ith residue digit
x i deleted. T h e mixed radix representation of X, is

(54)
if 3 congruences in eq. (34) have a consistent solution e'. It is clear t h a t
when f or h = p and s = U , we have the above result. Under the same
constraint on the form of the moduli as stated in theorem 7, the above result
where the new first k mixed radix digits are still called the nonredundant
is established in the following theorem and lemma. mixed radix digits and the rest are called the redundant mixed radix digits,
Theorem 8. If the moduli of RRNS ( n , k ) code, are such t h a t there
e.g., if a 5 k, U I , a ? , . . ., a,-i, a , + l ,... , u ~ , a k +are
~ the nonredundant
donot exist integers n,,, nc; 0 5 n,, < m,m,, 0 5 n C < Mc = mle, U:=, mixed radix digits, and ak+?, a k + 3 , . . . , a, are the redundant mixed radix
1 5 z, 5 k , 1 5 c 5 2; t h a t satisfy
digits. It is obvious t h a t if X,is a legitimate number, the redundant mixed
radix digits are all zero. However, if the redundant mixed radix digits are
m,Mc + ncmm, = nm.,
I= 1
, k < T, 5 n, 15 Z,J 5 k, (50) all zero, mathematically X , could still be an illegitimate number. In [7] has
shown t h a t an illegitimate projection resulting from a single error can not be
smaller Than the smallest non-zero number represented by eq. (54) with all
thcn w h c n c q . ( 3 3 ) o r e q . ( 3 4 ) has exactly 3 Conbiatent solutions whirh are the nonredundant mixed radix digits zero. Therefore, Jenkins' algorithm [7]
equivalent t o zero (mod m,) or (mod m , ) , the ith 01 j t h information for locating single residue digit error is by checking if the redundant mixed
digit and the parity digit corresponding t o the only inconsistent solution are radix digits are all zero for each modulus m,-projection, 1 = 1 , 2 , . . . , n.
received in error. In the following analysis will show, from the coding theory point of view,
Lemma 3. If the moduli of RRNS satisfy the condition t h a t their algorithm can be extended for detecting and correcting multiple
residue digit errors. T h e MA-projection of X ,denoted by XA,is defined by
mzn{m,,m,,} > mae{zm,,m,, -mc1 - m e a } (51)
where k < j 1 , j 25 n and 1 5 z l , i 2 5 k , then when eq. (33) or eq. (34) XA= X mod -
MMR
MA (55)
has exactly 3 consistent solutions which are equivalent to zero modm, or
m o d m , , the rth or j t h information digit and the parity digit corresponding wliere MA = n ; = , m,,, A = { a , , iz,, , , , z c , . . . , i A ; i, < a2 < . . . < zc <
t o the only inconsistent solution are received in error. '.. < ah), and X 5 n - k = d - 1 . XA can also be represented as a reduced

834
residue representation of X with the residue digits z , ~z, , ~. ., . , x , deleted.
~
Then, the mixed radix representation of XAis References
[I] N. S. Szabo and R. I. Tanaka, Residue Arithmetic and i t s application
to Computer Technolagy. New York: McGraw-Bill, 1967.
[2] R. W.Watson and 6.W. Hastings, “Self-Checked Computation Using
Residue Arithmetic,” Proceeding of the IEEE, no.12, pp 1920-1931,
The legitimate and illegitimate range of the reduced RRNS are [O,M ’ ) and
[M’, w), respectively, where M’ is the product of the first 5 moduli of
the reduhced RRNS, i.e.,
Dec. 1966.
[3] U. Mandelbaum, “hrror Correction in Residue Arithmetic,” IEEE
Trans. on Computers, no.6, pp 538-545, June 1972.
M‘= M = n:=,m, il >k
[4] F. Barsi and P. Maestrini, “Error Correcting Properties of Redundant
r=l m, i, -< k + c , i,+l > k +c, 5E (57)
Residue Number Systems,” IEEE Trans. on Computers, 110.3,pp 3C7-
315, Mar. 1973.
It is obvious t h a t M ’ 2 M. M’ is also the smallest nonzero number r e p
resented by eq. (56) with all the nonredundant mixed radix digits zero. I t [5] S.S-S Yau and Y-C Liu,”Error Correction in Redundant Residue Num-
follows from eq. (55) that the MA-projection of any legitimate number X ber Systems,” IEEE Trans. on Computers, Vo1.C-22, pp. 5-11, Jan.
in RRNS is still a legitimate number in [0, M), t h a t is, X A = X. The proof 1973.
of the following theorem has been given by [4], therefore, is omitted here. [6] Vijaya Ramachandran, “Single Residue Error Correction in Residue
Theorem 9. Let 55 be a number in RRNS and X A be MA-projection Number Systema,” IEEE Trans. on Computers, no.5, pp 504-507 May
of 7 ,where M A = n:=, m, . If XA# 55,the residue representation of x 1983.
and FA uniquely differ in one or more of residue digits corresponding t o the [7] W. K. Jenkins and E. J. Altman, “Self-Checking Properties of Residue
moduli m,, ,m,, , . . . , m,, . Number Error Checkers Based o n Mized Radiz Conuersion,” IEEE
Before considering the range of MA-projection TAof any illegitimate Trans. on Circuits and Systems, pp, 159-167, Feb. 1988.
number x in RRNS, we give the following theorem.
H-Y Lo, “An Algorithm for Scaling and Stnyle Residue
Theorem 10. In an RRNS with minimum distance d = X P 1, then + + [8] C-C Su and
Error Correction in Residue Number Systems,” [EEETrans. on Com-
an illegitimate number is originated from a legitimate number X affected
by X errors corresponding to the moduli m,,, m l Z ,. . ., m,,, if and only if
the MA-projection TAis a legitimate number and Mp-projection X p is an
- puters, no. 8, pp. 1053-1064, Aug. 1990.
[9] Hari Krishna and KuoYu Lin, “A Coding Theory Approach to Error
illegitimate number, where MA = n:=,
m,,, M p = nE=,
m l a , 1 5 p 5 p, Control in Redundant Residue Number Systems, Part I: Theory and
and g c d ( M p , MA)f n:=, m, = MA.
The range of the illegitimate projection of any illegitimate number
Single Error Correction” submitted to IEEE Trans. on Circuit and
Syst..
I

X is given in the following theorem. [IO] Jenn-Dong Sun and Hari Krishna, “A Coding Theory Apprwch to Er-
. Unden the w u m p t i o n t h a t no more than ,9 residue errors ror Control in Bedundant Residue Number Systems, Port II: Multiple
occnr, for an RRNS with d = A 9
- + +
, 1 and p > A , if the MA-projection Eraaures and Single Error Correction and Multiple Errors Detection”
t o be submitted t o IEEE T r a m . on Circuit and Syst..
XA of any illegitimate number is illegitimate, XAwill be in the range
[M’, w), where MA = E:=, m,,
of the ilfegitimate range of the reduced RRNS.
1 5 i, 5 n, and M‘ is the lower bound

Therefore, by checking only the redundant mixed radix digits, i t can be


determined whether or not the projection is legitimate. If all the redundant
mixed radix digits are zero, the projection is legitimate; otherwise, it is il-
Table 1: The Requirement of MULT or ADD
legitimate. A procedure for correcting double errors and detecting multiple I t Error \ J e n k i n s 171 I New I
errors can be outlined as follows:
-
Step 1: Rased on the received residue vector, compute the mixed radix dig-
its and check if all the redundant mixed radix digits are zero. If yes, then
declare no error and stop. Otherwise, go t o next step.
Step 2: Compute the mixed radix digits of m,m,-projection for i = 1,2,. . . , n ,
j = 1 , 2 , . . . , n , and i # j. Check if all the redundant mixed radix digits are
zero. If yes, then declare the i t h and j t h residue digits are received in error,
correct them by base extension operation, and stop. Otherwise, go t o next
step.
Step 3: Declare moze than two errors detected. Stop.
_I

7 E x ~ e ~ and
§ ~ Discussion
o ~
The present-day practical algorithms for residueerror correction and d-
tection mostly focus on singleerror correction because of the considerations
of large memory space requirement or computational inefficiency for multi-
ple error correction. Our algorithms developed above is in no need of large
memory space required for table lookup, also seems t o be much superior to
t h a t in [7] from computational efficiency point of view, i.e., the requirement
of multiplications (MULT) and additions (ADD). The comparison of our
algolithm with t h a t in [7] in terms of the requirement of ADD and MULT
is shown in Table 1. We should point out that for doublp-error correction
the expression in colomn 2 of Table 1 is obtained by extending Jenkins’
algorithm [7] in which double-rror correction is not considered.
A natural question arised a t this stage, “Can the coding theory approach
to RRNS be extened for detecting multiple errors and correcting multiple
errors/erasures ?” The answer t o this question is yes. To be specific, we
have derived computationally efficient algorii,hms for (i) simultaneously cor-
recting multiple (I) erasures and detecting multiple (p) errors, for an RRNS
+ +
having d = I P 1, and (ii) simultaneously correcting single ( A = 1 ) error
and multiple erasures and detecting multiple (fl > A) errors, for an RRNS
having d = I( + X t p t 1 . The details of these algorithms are included in
[lo].

835

You might also like