[IEEE Comput. Soc. Press Conference Record of The Thirtieth Asilomar Conference on Signals, Systems...

4
On Fault-tolerant Polynomial Residue Number Systems H.K. Garg and F.V.C. Mendis Department of Electrical Engineering National University of Singapore 10 Kent Ridge Crescent, Singapore 119260 Email: [email protected] Abstract Recently, fault-tolerant convolution techniques have been described for polynomials defined over the fields of complex and real numbers. In this paper, fault-tolerant convolution schemes are derived for polynomials defined over finite integer rings. A new algorithm for simultaneous single fault correction and multiple fault detection is derived that is valid for all cases. Abbreviations CRT: Chinese remainder theorem DSP: Digital signal processing. SFC-MFD: Single fault correction and multiple fault detection I. Introduction It is well-known in coding theory literature that if redundancy is applied, then errors can be corrected in a communication system. This idea has been used in digital signal processing (DSP) systems to detect and correct faulty processors in a multi-processor computational environment [l], [2], [3]. In a recent paper, a fault-tolerant convolution algorithm has been described [4]. However, it only considers data sequences that are defined over rational, real and complex numbers. These results extend to sequences defined over finite fields such as GF(p) in a natural manner. The objective of this paper is to propose a fault-tolerant convolution algorithm for processing data sequences defined over finite integer rings and an algorithm for simultaneous single fault correction and multiple fault detection (SFC-MFD) valid for all number systems. The finite integer rings studied are: (1) Z(M), the ring of integers (0, 1, ..., M - l}, and (2) CZ(M), the ring of complex integers {a + jb, a, b E " . The arithmetic operations of multiplication (MULT) and addition (ADD) in these number systems are defined mod M and mod (M, j2 + l), respectively. The Chinese remainder theorem (CRT) plays the central role in the design of the fault tolerant system. The SFC- MFD algorithm is valid for data sequences defined over fields as well as rings. This paper is organized as follows. In Section 11, polynomial residue number systems over integer rings and an algorithm for computing convolution is presented. In Section 1058-6393197$10.00 0 1997 IEEE 206

Transcript of [IEEE Comput. Soc. Press Conference Record of The Thirtieth Asilomar Conference on Signals, Systems...

Page 1: [IEEE Comput. Soc. Press Conference Record of The Thirtieth Asilomar Conference on Signals, Systems and Computers - Pacific Grove, CA, USA (3-6 Nov. 1996)] Conference Record of The

On Fault-tolerant Polynomial Residue Number Systems

H.K. Garg and F.V.C. Mendis

Department of Electrical Engineering National University of Singapore

10 Kent Ridge Crescent, Singapore 119260 Email: [email protected]

Abstract

Recently, fault-tolerant convolution techniques have been described for polynomials defined over the fields of complex and real numbers. In this paper, fault-tolerant convolution schemes are derived for polynomials defined over finite integer rings. A new algorithm for simultaneous single fault correction and multiple fault detection is derived that is valid for all cases.

Abbreviations

CRT: Chinese remainder theorem DSP: Digital signal processing. SFC-MFD: Single fault correction and

multiple fault detection

I. Introduction

It is well-known in coding theory literature that if redundancy is applied, then errors can be corrected in a communication system. This idea has been used in digital signal processing (DSP) systems to detect and correct faulty processors in a multi-processor computational environment [l], [2], [3]. In a recent paper, a fault-tolerant convolution algorithm has been described [4]. However, it only considers data sequences that are defined over rational, real and complex numbers. These results extend to sequences

defined over finite fields such as GF(p) in a natural manner.

The objective of this paper is to propose a fault-tolerant convolution algorithm for processing data sequences defined over finite integer rings and an algorithm for simultaneous single fault correction and multiple fault detection (SFC-MFD) valid for all number systems.

The finite integer rings studied are:

(1) Z(M), the ring of integers (0, 1, ..., M - l}, and (2) CZ(M), the ring of complex integers { a + jb, a, b E ".

The arithmetic operations of multiplication (MULT) and addition (ADD) in these number systems are defined mod M and mod (M, j 2 + l) , respectively. The Chinese remainder theorem (CRT) plays the central role in the design of the fault tolerant system. The SFC- MFD algorithm is valid for data sequences defined over fields as well as rings.

This paper is organized as follows. In Section 11, polynomial residue number systems over integer rings and an algorithm for computing convolution is presented. In Section

1058-6393197 $10.00 0 1997 IEEE 206

Page 2: [IEEE Comput. Soc. Press Conference Record of The Thirtieth Asilomar Conference on Signals, Systems and Computers - Pacific Grove, CA, USA (3-6 Nov. 1996)] Conference Record of The

111, a fault tolerant scheme is described for convolution computation. An example is also presented to illustrate the ideas. In Section IV, an algorithm is presented for single fault correction and multiple fault detection (SFC- MFD). This algorithm is valid for all number systems.

II. Polynomial Residue Number Systems over Integer Rings

The approach to computing convolutions in finite integer rings is as follows. Consider two polynomials X(u) and Y(u) with coefficients in Z(M) or CZ(M), of degrees a - 1 and b - 1, respectively. The product

where

In other words, they are relatively prime in each of the underlying finite fields GFbi) [5 ] . Ih CZ(M), two cases follow. If pi = 2 or pj s 1 mod 4, then processing sequences defined over CZ(q;) is equivalent to processing sequences over Z(qj). I f p ; E 3 mod 4, then the condition of relative primeness of modulo polynomials over CZ(M) is given by

where deg(V(u)) = N - 1 = a + b - 2, can be computed by first computing the small degree polynomial products,

where the modulo polynomials monic, and (ii) relatively prime.

m&) are (i) The degree of

the overall modulo polynomial M(u) ,

is N . This approach was valid only for polynomials defined in fields until very recently. In [5 ] , It was shown to be valid for polynomials defined in finite integer rings and their extensions. Given the unique factorisation of M as

the condition of relative primeness of modulo polynomials over Z(M) is given by

mk,i,o(u) E mk(u) mod @i,j2 + l), i = 1, 2, ..., r.

Thus, they are relatively prime in each of the underlying finite fields GF(pZ) defined mod ( p i ,

j 2 + 1) [5 ] .

HI. A Fault-tolerant System over Integer Rings

The extension of the CRT as described in [SI can be used to describe a fault tolerant convolution algorithm as follows. A fault tolerant convolution algorithm for data sequences defined in Z(M) or CZ(M) consists ixl extending the computation to R + Q relatively prime modulo polynomials as

The modulo polynomial now becomes,

M'(u)= R i f ? n k ( U ) . k=l

(3)

207

Page 3: [IEEE Comput. Soc. Press Conference Record of The Thirtieth Asilomar Conference on Signals, Systems and Computers - Pacific Grove, CA, USA (3-6 Nov. 1996)] Conference Record of The

The additional Q moduli appended to the original R moduli are called the redundant moduli. They are used to provide for fault tolerance in the multiprocessor system which employs R + Q processors, one for each of the R + Q modulo polynomials in (2).

Let us assume that the modulo polynomials are arranged in the ascending order of degrees. The minimum distance of the code, d, is defined as

d = R + Q - K + 1,

where K satisfies the inequalities

When the last Q polynomials are redundant, then K = R and d = Q + 1. This is the case of maximum-distance-separable systems. All the fault correcting and detecting properties can now be expressed in terms of d. For example, if the system is used for simultaneous correction of h faults and detection of p faults (p > h), t h e n d = h + P + 1.

Example. Let M = 2", N = 8 , R = 3 , Q = 2, m&l) = U 2 + U + 3, m2(u) = U3 + 3u2 + 1, m3(u) = U3 + 2 U + U + 1, m4(u) = U3 + u2 f U + 1, ms(u) = U 9

2

3

where the last two polynomials constitute the redundant moduli. The chosen polynomials are relatively prime over GF(2) and hence over Z(2"). This gives rise to a minimum distance 3 fault tolerant system for computing convolution

of length 8 data sequences defined in the finite integer ring Z(2").

IV. Syndrome Computation and an SFC- MFD Algorithm

In the following, we assume that the last Q moduli are redundant (maximum-distance- separable case). Let the faulty residues be given by

vk(u) + e&), i = 1 ,2 , ..., R + Q.

An estimate of V(U) is obtained using CRT as

k=l '

The Q syndromes associated correction process are given by

I I

i = 1,2, ..., Q.

with the fault

(4)

A necessary and sufficient condition for no error to have occurred during the computation is that

S ~ ( U ) = 0, i = 1,2 , ..., Q.

This is established by noting that if all the syndromes are zero, then G(u) is a degree N - 1

208

Page 4: [IEEE Comput. Soc. Press Conference Record of The Thirtieth Asilomar Conference on Signals, Systems and Computers - Pacific Grove, CA, USA (3-6 Nov. 1996)] Conference Record of The

polynomial having residues vk(u), i = 1, 2, ..., R + Q.

Now a fault correction procedure can be described as follows: For all the possible combinations of fault locations (for a h fault correcting system, there are R’QCk such combinations), compute the associated error polynomials, ek(u), that satisfy the syndrome relations in (4). Once the errors are known, the correct residues are obtained by subtracting the error values.

An SFC-MFD Algorithm. Now, we let h = 1, p = Q - 1. In this case, if there is one error in the kth place, k 5 R, then

and if there is one error in the (k + R)th place, then

Based on these expressions, an SFC-MFD algorithm can be described as follows: Step 1. If all syndromes are zero, then declare the residues error-free and STOP. Step 2. If exactly one syndrome is non-zero, say the kth one, then declare the (R + k)th residue in error, the error value being eR+k(u) = &(U); correct it and STOP. Step 3. If all the syndromes are non-zero, use ( 5 ) to compute ef’(u) as

mod w~~+~(u), i = 1,2, ..., Q.

There is an error in the kth residue having value ek(u) provided that

correct it and STOP. Step 4. In all other cases, declare more than one error detected and STOP.

V. Conclusions

In this work, we have examined the problem of computing convolution in a fault tolerant manner for data sequences defined over finite integer rings Z(M) and CZ(M). The case of single fault correction and multiple fault detection is analyzed and a new algorithm is presented that is valid over all fields and rings. We feel that it may be the case of most interest in digital signal processing systems.

REFERENCES

[l] V.S.S. Nair and J.A. Abraham, “Real-number codes for fault-tolerant matrix operations on processor arrays”, IEEE Trans. on Computers, vol. 39, no. 4, pp. 426-435, April 1990.

[2] K.H. Huang and J.A. Abraham, “Algorithm-based fault detection for matrix operations”, ZEEE Trans. on Comp., vol. C-33, no. 6, pp. 518-528, June 1984.

[3] C.J. Anfinson and J.A. Abraham, “A linear algebraic model of algorithm based fault tolerance,” IEEE Trans. on Comp., vol. 37, no. 12, pp. 1599-1604, 1988.

141 P.E. Beckmann and B.R. Musicus, “Fast Fault- Tolerant Digital Convolution Using a Polynomial Residue Number System,” ZEEE Trans. on Signal Processing, vol. 41, no. 7, pp. 2300-2313, 1993.

[5] H. Krishna, B. Krishna, K.-Y. Lin, and J.-D. Sun, Computational Number theory and Digital Signal Processing, Fast Algorithms and Error Control techniques, CRC Press, 1995.

209