Results of a deterministic analysis of FFT coefficient errors

Results of a deterministic analysis of FFT coefficient errors

Signal Processing 3 (1981) 321-331 North-Holland Publishing Company RESULTS OF FFT OF A 321 DETERMINISTIC COEFFICIENT Ulrich HEUTE, ANALYSIS ...

613KB Sizes 0 Downloads 31 Views

Signal Processing 3 (1981) 321-331 North-Holland Publishing Company

RESULTS OF

FFT

OF

A

321

DETERMINISTIC

COEFFICIENT

Ulrich HEUTE,

ANALYSIS

ERRORS

member EURASIP

Lehrstuhl fiir Nachrichtentechnik, Universitdt Erlangen-Niirnberg, Cauerstr. 7, D-8520 Erlangen, W.-Germany Received 15 December 1980 Revised 24 March 1981 and 21 April 1981

Abstract.A novel, deterministic approach towards the analysis of coefficient errors in DFT and FFT was proposed, recently [9]. In this paper, its application is described: After a short introduction into the basic idea, the "modulation plus smoothing-filter" description of the transforms, the impulse responses, signal-flow graphs, and transfer functions for the erroneous low-pass filters are exposed which fully describe the coefficient error effects. General insights into the behaviours of the direct DFT as well as four F F r versions are provided. For the case of a fixed-point data and coefficient representation, detailed results are presented in a compact "necessary wordlength for prescribed criteria and output accuracy" form. Finally, some general conclusions are derived from these results.

Zusammenfassung.Kiirzlich wurde ein neuartiger Ansatz zur deterministischen Analyse von Koeffizientenfehlern in der DFT und der FFI" vorgeschlagen [9]. Seine Anwendung wird in folgendem Berieht dargelegt: Nach kurzer Einfiihrung in die Grundidee, die Beschreibung der Transformationen als Modulation mit anschliel3ender Gl~ittung, werden die Impulsantworten, SignalfluJlgraphen und Ubertragungsfunktionen der fehlerbehafteten Gl~ittungsfilter angegeben, welche die Auswirkungen der Koeffiziententehler voUstiindig beschreiben. Allgemeine Einblicke in das Verhaiten von unmittelbar berechneter DFT wie yon vier FFT-Methoden werden gegeben. Fiir den Fall einer Festkomma-Darstellung von Daten und Koeffizienten werden Detailergebnisse in der Form vorgelegt, daJ] fiir vorgegebene Fehlerkriterien und vorgeschriebene Ergebnisgenauigkeit die ben6tigten Koeffizientenwortliingen angegeben werden. Schlief31ich werden aus den Ergebnissen einige allgemeine Schliisse gezogen. R6sum6. R6cemment, une m6thode nouvelle pour l'analyse d6terministique des erreurs des coefficients dans les transformations de Fourier discrete (TFD) et rapide (TFR) a 6t6 propos6e [9]. Son application sera d6crite dans cet article. Aprbs une br6ve introduction a l'id6e principale - la description des transformations par une modulation et un filtre de lissage - les r6ponses impulsionnelles, les graphes des fluse des signaux et les r6ponses en fr6quence seront expos6es pour les filtres passes-bas d6fectueux qui d6crivent compl6tement les effets des coefficients quantifi6s. Des connaissances gdnerales seront donn6es concernant les comportements de la TFD et de quatre variantes de la TFR. Pour le cas d'une repr6sentation des donn6es et des coefficients en virgule fixe des r6sultats detaill6s seront pr6sent6s, qui donnent les hombres de bits n6cessaires pour obtenir une pr6eision requise des 6chantillons de sortie. Finalement, quelques conclusions seront d6rivdes de des rdsultats.

Keywords. FFT, D F r , coefficient errors, coefficient quantization.

1. Introduction: background, approach, and paper organization

of all k i n d s of e r r o r s

with the assumption

of

i n d e p e n d e n c y of all e r r o r s o u r c e s , i n c l u d i n g i n a c curacies of the sine-cosine coefficients.

The

e f f e c t s o f e r r o r s in t h e c a l c u l a t i o n o f a

Discrete Fourier Transform

T h e n a t u r e of t h e c o e f f i c i e n t e r r o r s , h o w e v e r , is

(DFT) by means of

a b s o l u t e l y n o n - s t a t i s t i c a l , o n c e a r e a l i z a t i o n has

fast a l g o r i t h m s ( F F T ) h a v e b e e n i n v e s t i g a t e d b y

been chosen, and they cause strong correlations

s e v e r a l a u t h o r s (e.g., [ 1 - 8 ] ) ; m a i n l y , b u t n o t o n l y ,

between the transformed signal and the transform

s t a t i s t i c a l a p p r o a c h e s w e r e a p p l i e d to t h e a n a l y s i s

e r r o r s ; in s o m e cases, this m a y e v e n r e s u l t in

0165-1684/81/0000-0000/$02.50

O 1981 N o r t h - H o l l a n d

U. Heute / F F T coefficient errors

322

intellegible crosstalk, a far more severe effect than uncorrelated noise. In a recent paper [9], a novel, deterministic approach towards coefficient error analysis was laid out: The DFT {X(/~),/zE{0,1 . . . . . M - l } } of a length M signal sequence {x(k), k s { 0 , 1. . . . , M - 1}} is defined by M-1

x(.)= Y

x(k)w~

with the "coefficients" exponentials

the

complex

(2)

1 for k E{0, 1 . . . . . M - l } , 0 otherwise.

The corresponding identical low-pass transfer functions are given by -M

z --1 z_l_l '

(3a)

and the frequency responses by H(eJn) = e_i(M_l)S~/2 sin(~(M - I)/2) sin(½0)

(3b)

( w i t h / ' / = 2~f/fA being the frequency normalized to the sampling rate fA). A "distortion" of w ~ - by rw~kl using a quantized value L M io, for example - with a factor

[w~]o/W~

(4)

will yield a X ' ( t z ) # X(Iz), in general. This effect may now be described by a combination of the same, undistorted modulators and different erroneous smoothing filters having the complex Signal Processing

and the corresponding frequency responses n~,(e in) differing from eq. (3). Especially, the equi-spaced zeros ls{1,2,...,M-1}

(6)

and the value according to eq. (3) being

Eq. (1) can be interpreted as a combination of M complex modulators with frequencies ~(21r/M) and M identical, finite-impulse response smoothing filters with a sampling-rate reduction of 1/M and impulse response

A~,k - -

for k s { 0 , 1 . . . . . M - l } , otherwise. (5)

(1)

• 2~r w~ = exp(-j/zk-~).

H(z)=

/ A"k~ 1 h~,(k) = t0

zt=exp(jl2--~),

k=0

h(k)=

impulse responses

H(1) = M

(7)

of the original lowpasses will not be preserved any more, in general. The difference between the "distorted" and the original frequency responses, i.e.

An~,(ein) = H~,(ein) -

n(eia),

(8)

can then be used to explain, in detail, the effects of the coefficient errors. In the above mentioned paper [9] it was also stated that an equivalent description can be found for all kinds of FFT algorithms: In eq. (5), the A,k have to be replaced by products of Ai-values, the arrangement of which is typical for each FFT; they are to be found in a rather straightforward manner, e.g. from a signal-flow graph description of the algorithm. From the same analysis, appropriate filter structures for each case can be found, yielding direct insight into the error behaviour, as will be seen in the sequel. In Section 2 of the paper the describing formulae and signal-flow graphs of four FFT algorithms will be given and compared with the "direct" DFT; in Section 3, methods and criteria for the evaluation of the error frequency responses A n , ( e in) shall be explained; the 4th Section is to expose results of the investigations in a compact "necessary-wordlength/prescribedcriteria" form; in Section 5, expansions to other algorithms "and conclusions are addressed. No details of the derivations will be dealt with, here, nor will any intermediate results be shown; the underlying subtleties - with more insight into the internal behaviour of a finite coefficient-

323

U. Heute / F F T coefficient errors

the signal-flow graph structures, representing the /.tth erroneous filters, are depicted in Figs. 2-5. They should allow an easier understanding of the formulae from which they are actually derived: The corresponding impulse responses and transfer functions are compiled in Table 2. In Table 1 the auxiliary variables appearing in eqs. (14)-(17) are defined. In all cases

wordlength FFT as well as applications of the results reported here - will be described elsewhere [10].

2. Descriptions 2.1. Direct D F T calculation According to the D F T definition in eq. (1), the smoothing low-pass may naturally be described by a direct-form signal-flow graph with coefficients equal to the impulse response values h (k) - which are identical to 1 in an "accurate" DFT, complexvalued as in eq. (5) in a "distorted" one (see Fig. 1). Few general statements can be made about the behaviour of the erroneous DFT: Its transfer functions

M = 2 m, i.e. m = l o g 2 M

is assumed. Obviously, ~:i and rh are the bits in a binary, a~ and y~ the digits in a quaternary representation of k and/x, respectively.

2.2.2. Discussion As indicated above (see Section 1 and [9]), h~, (k) consists of products of error factors Ai, instead of being identical to just one factor, as in the simple D F T case. Both the indices and the actual effects of the individual A_values depend on the bits or digits of k or ~, in the four cases considered. This is not surprising if the well-known bit-reversed relation between input and output nodes of a radix-2 FFT is recalled, concerning k in the DIT-case,/~ in the DIF-case. Correspondingly, radix-4 algorithms need a reordering which follows a "digit-reversal" of k or p., respectively (e.g. [11]). The natural representation of H~,(z) for the DIT-cases, as to be concluded from eqs. (14) and (16), are cascades of blocks with exponentially increasing orders and with two paths in the

M-I

H~,(z)

E A~,kz-k k=O

do no more exhibit the linear phase as in eq. (3), they are complex-valued as it can be seen from eq. (5), and, consequently, t h e i r zeros may be found anywhere in the z-plane: close to the unit circle, hopefully, but not equi-spaced as in eq. (6) and not even in complex-conjugate pairs.

2.2. FFT-computation 2.2.1. Describing signal-flow graphs and [ormulae For radix-2 and radix-4, decimation in time (DIT) and decimation-in-frequency (DIF) FFT's

w~. x [k) c

1

Z"1

Z"1

h(O}=l

pk

w,. x (k)C

1

;

Z"~

Z"~

1

1 ~

Z "1

,

~

1

1

1

Z "1

Z "'~

Z "1

=

~

~

x(p)

(M)

h (M-l)

1

a)

hiM-l)=1

hl~lO)=Z~ o

1

(9)

=A

tM.1)

b)

(M)

Fig. 1. Direct form representation of the direct DFT calculation: (a) with exact coefficients w~; (b) with distorted coefficients

[w~]o =a,~ . w;~. Vol. 3, No. 4, October 1981

324

U. Heute / F F T coefficient errors #, 1 WM -x(k) c _-

Z

"'

1

M

z-'

1

-

M

-

Z ~

1

Al,,,,.noo

Ao,,i

Fig. 2. Cascade signal-flow graph representation for the #th smoothing filter in a radix-2, decimation-in-time FFT.

w.',k.'" x (k)o

1

Z2

-

1



1

1

z "~

z "~

1

(M)

Fig. 3. Signal-flow graph for the ~th smoothing filter of a radix-2, decimation-in-frequency FFT, for/~ = {0, 1. . . . . ¼M- 1}.

w:.x(klc

1

1 Z-h

1

Al3p)rood

,_.oxoS._ox'cp)

AI12P)rood 1

Z-4'

1

Z'~'~

1

Z "&~

Ao m 1

z "'~

1

z"~

IM) I

4

L~lllplmod~

Z-l~

Aot+)

(

Z-11

Aol~)

Fig. 4. Signal-flow graph of the ~th lowpass for a radix-4, decimation-in-time FFT.

::I, z~ I

z

-1

-1

z

1

Fig. 5. Signal-flow graph of the ~th smoothing filter (p e {0, 1. . . . . ~ M - 1}) for a radix-4, decimation-in-frequency algorithm.

radix-2, four paths in the radix-4 forms (see Figs. 2 and 4). The DIF-algorithms, in contrast, lead to a cascade of a "block-structure" and a direct-form part (see Figs. 3 and 5). For At ~ 1 Vi, all signalflow graphs yield equivalent representations for the exact direct form describing the exact D F T (see Fig. la). The blocks in Fig. 2 contain, for At = 1, an exponentially increasing number of the ( M - 1 ) Signal Processing

equi-spaced zeros zt defined in eq. (6): There is the zero at z = - 1 in the first block, those at z = +j in the second block, the four zeros at z = ½x/2(+ 1 + j) are caused by block no. 3, etc. Similarly, the subsystems in Fig. 4 contain groups of three zeros zt, twelve, etc., for A t - 1. Now, with A;~ 1, again, the zeros will be changed. However, in contrast to the direct DFT, some more general insight is available a priori:

325

U. Heute I F F T coefficient errors Table 1 Auxiliary variables for the description of the erroneous filters Algorithm

Auxiliary variables defined by

radix-2/DIT

k=

Eq. no,

m-1

Y~ ~i2 i

(10)

i=0 m-I

radix-2/DIF

/~= ~ rl~2i ~=0

radix-4/DIT

k=

radix-4/DIF

/~ =

(11)

~t2-1 Y ai 4~, i=o

Bi =

,./2-1 Y yi 4i, ~=o

8i =

jo

for a i = 0

/1

for

J0

for yi=O

/1

forv~¢0

Oti

(12)

~0

(13)

determined by the last two error factors

A (t~)roodM/4 controls just o n e zero (near z = - 1), in

Fig. 2, A(,,) rood MI4, A(2t~) rood MI4, and A(3t, ) mod MI4 control three zeros (near z = +j, z = - 1 ) , in Fig. 4, etc. Especially, in the r a d i x - 2 / D I T case of Fig. 2 and eq. (14), ~ M and ~ M of all ( M - 1) zeros are

A (M/4) ram M I 4 = A0 --' A0(2),

(18a)

A(M/2)

(18b)

mocl M I 4 "~ A O ~ A 0 ( 1 ) ;

equivalently, 3M of all zeros in the radix-4/DIT

Table 2 Impulse responses and transfer functions of the erroneous smoothing filters. The error factors A~ were defined in eq. (4) for i = p. • k ; here, the index i depends in a more general m a n n e r on/z, k and their bits and digits. Algorithm

Impulse response h,(M-1-k) m

radix-2/DIT

Transfer function z (~-1). H~,(z)

( ~ 1 2 ) rood M/4

[1 + A o I I ) Z MI2] [1

+

AOI2iZMI4]

m-3

[[ [1 + a(.2,)modM/4z

(2i)

i=0

m -3

[(I + zMI2][ l + zM/a]

M- 1

(14)

0.

M ---l 4

(15a)

M

M

M 2

3M --4- - 1

~,

AO(m-I)H(u~-M/4)

Ao(m)h(~t-MI2)

AO(m)H(~-M/2)

Ao(m)Ao(m-1)h(~-3M/4)

A0t~)Ao(,--~)H(,~ sM/'*)

11

]

h,(M-l-k)z

k

k =0

Ao(m-1)h(t~M/4)

i~O

B A (~ai4') rood M/4

1 +do(~)

K=I

z K(M/4)

. . . . . 4 2

3M ..... 4 1+ Z

[I AcG,4')8,nodM/4 i=o

,

~'

M/4-- 1

[I + zM/a + ZM/2 + ZS~/4]

AOIml2)H(*,) rood

MI4

M- 1

0...M-1

~ h,,(M- l-k)z k k :o

(15b)

(15c)

(15d) (16)

M

0 ..... M

A o ( m t 2 ) h ( ~ ) rood MI4

1

i=0

m/2--2

radix-4/DIF

0"

M/4-1

[I A(~n,2')modMl4 i=0

radix-4/DIT

Eq. no.

1

Vl II

J=O

radix-2/DIF

Validity range for tz

....

4

4

1

M - 1

(17a)

(17b)

Vol. 3, No. 4, October 1981

326

U. Heute / F F T coefficient errors

case of Fig. 4 and eq. (16) are fixed by A(K .M/4) modM/4 = AO "--Ao(1),

K = 1, 2, 3. (19)

According to eq. (4), these factors describe the accuracy of multiplications with ±~.(M/4)

wM

= (~j)",

w ~ M/2) ( - l y ' , =

of error terms is introduced by changing the radix from two to four, thereby replacing m by ½m. So, after all, DIF algorithms should be expected to exhibit slight advantages over DIT forms, especially concerning the dependence upon realization details, and radix-4 FFT's should be superior to radix-2 realizations.

(20a) (20b) 3. E v a l u a t i o n - m e t h o d s a n d criteria

i.e. the multiplications with factors "1", since signinversions and real-to-imaginary conversions are realized without any error. Specifically, do¢l), Aot2), as defined in eqs. (18), (19), represent the stages no. i and no. 2 in a radix-2, no. I in a radix-4/DITFF'F. Thus, an implementation of these stages with exact multiplications by " 1 " would keep 25, 50 or 75%, respectively, of all zeros at their original places. This holds for all output channels, i.e. independently of/~. A realization with all factors " 1 " being exact (possibly meaning an additional bit or some more logic in a hardware design) may retain some more equispaced zeros, but only for certain/.t-values. The comparison with the DIF-structures, described by Figs. 2, 4, and by eqs. (15), (17), reveals that these algorithms always leave 75% of the zeros at their proper places. The realization of the factors +j and - 1 in the ( m - 1)th and ruth stages, respectively, i.e. the values Ao¢,,_l), A0¢m), to be defined equivalently to eqs. (18), (19), do not affect the terms (1 + z~/4), (1 +z~/2), (1 + z ~ / 4 + z ~/2 + z 3M/4)in eqs. (15) and (17) - t h e y only cause a common factor in front of H~,(z) for higher tz-values (see eqs. (15b--d), (17b)!). For examples illustrating the effects of A0 on the frequency response, the reader is referred to [10]. From the above equations, it might be assumed that a reduced number of error terms contribute to h,,(k) - there is a product of at most (m - 2) factors in eq. (15a), ( ½ m - l ) in eq. (17a), while h~,(k) contains m factors in eq. (14), ½m in eq. (16). However, this is true only for /z {0, 1 . . . . . ~ M - 1 } , due to the common factor Ao addressed above. A real reduction of the number Signal Processing

3.1. Error measures The transfer functions H~, (z) clearly are a tool to precisely analyze all effects of the erroneous coefficients, for all kinds of signals. Due to the specific form of H(z), however, the class of input signals can be restricted to sequences with an integer number of periods within M samples: Replacing H(z) by H,(z) means, in general, the loss of the two typical features of the smoothing lowpass, namely the amplification of the/zo-th line by a factor M in the /zo-th channel and the suppression of all other lines by the equi-spaced zeros. Thus, the typical errors, as caused by inaccurate FFT coefficients, can be described completely by considering signals like the harmonic sequence

x(k ) = exp( jkl~o 2¢r) or mixtures of such components: While an exact inversion of an accurate DFT of x(k) would yield the same sequence with the same amplitude and phase, the accurate inversion of an erroneous DFT would result in a different amplitude due to H~o(1) # M ("linear distortion"), and in spurious harmonic components at all other frequencies/.t #/~0 due to H,,(zt) ~ 0 ("nonlinear distortion"; see Section 1). Consequently, for a global and general evaluation, the following error measures (for a given

U. Heute / F F T coefficient errors

algorithm and D F T length M ) may be proposed, among others [10]: (1) The maximum "linear distortion" of all filters; i.e. E1

--

max I H . ( 1 ) - M I = max IAH.(1)I; (21a) /.t

t~

(2) The maximum "non-linear" distortion, i.e. the highest possible influence from a neighbouring component v to the measurement of the ~th component: E2

=

max

]dH,(z,)[;

(21b)

g~tz

(3) The maximum total power of all "non-linear distortions", i.e. M-1

E32-max E /x

IAH,,(z~)I%

(21c)

v=l

I'

- F o r a given application, let E~ be the most applicable error measure. - Let the output data of the D F T be required to have a certain absolute accuracy. - L e t the signal contain all frequency "lines" with identical, maximum intensity and arbitrary phase. Now: What is the necessary coefficient accuracy, which causes E~ to be smaller than the allowable output error? A more concrete case will be regarded in the following. Planning a hardware FFT implementation with fixed-point, fractional data representation with, at the output, a sign and ( w s - 1) bits at the right of the binary point, one needs to know the minimum coefficient wordlength wc~, yielding E--~ < 1 . 2 -~ws-ll. M

(22)

From eqs. (10), (22), and with E . normalized by the coefficient quantization stepsize Oc. = 2-~wo~ 1), the condition

( 4 ) The maximum total error power, i.e. 2

327

M-1

E , -- max/ lAH, (1)12 + E__' IAH,(z,)I 2} (21d) with AH,,(z) as defined in eq. (8). All these error measures are functions of the coefficient wordlength, of course. At a first glance, the necessary calculation of AH,(zt) with /x,l~{0, 1. . . . . M - I } (with M = 256 or 1024!) seems to restrict all hitherto existing considerations to be of theoretical value, only. However, an FFT (being the subject of these investigations!), realized with relatively high accuracy, also yields an obvious way to efficiently evaluate eqs. (21). In all cases {H~(1), H,~(zt), I e {1, 2 . . . . . M - 1}} is the D F T of {h, (M - 1 - k), k~{O, 1 . . . . . M - 1}}.

3.2. Required wordlengths In previous FFT error analyses, error powers were usually considered and related to the signal power. Instead of the signal-to-noise-ratio pointof-view, a more implementation-oriented standpoint will be taken in the sequel:

wc~/> w , - m + 1 + Id \ Oc

(23)

is found.

4. Results

In the sequel, the necessary wordlengths wcv, as defined in eq. (23) and for the measures Ev, v {1, 2, 3, 4}, proposed in eqs. (21), are given for data wordlengths w , e { 5 , 6 . . . . ,23} and transform lengths M = 256 and M = 1024 (see Table 3).

5. Conclusions and extensions

The results depicted above have clearly demonstrated the advantage of a deterministic analysis of FFT coefficient errors: In contrast to closed solutions based on statistical or general worst-case approaches, no "straight lines" wc (ws) result, inspite of the smoothing inherent in restricVol. 3, NO. 4, October 1981

U. Heute / FFTcoefficient errors

328 Table 3a

Minimum coefficient wordlength wc~ for a prescribed output wordlength ws: FFT's with radix 2, decimation-in-time and decimationin-frequency algorithms, lengths M = 256 and M = 1024, realizations of w° by 1.0 and 1 - Qc; wc~ according to error measures E~, v=l ..... 4 r

alg.

M

1.0 1-Q~ 1.0 2 DIT

1.0 1 - Q~

1 1 2 2 3 3 4 4

1.0 1-0~ 1.0

1 1 2

1-Oc 1.0

2 3

256 1 - Q ~ 1.0 1 - Q~

2 DIT

2

DIF

2 DIF

1024

256

1024

5



1 -O~

3

1.0

4

1 - Q~

4

1.0 1-O~ 1.0

1 1 2

1-Q~ 1.0 1-Qc 1.0 1-Q~

2 3 3 4 4

1.0 1-Oc 1.0

1 1 2

1 - 0¢

2

1.0

3

1 - Oc 1.0 1-Oc

3 4 4

6 8 5 5 6 7 6 8 6 9 5 5 6 7 7 9

6

7

8

9

10

11

12

13

14

15

16

17

18

19 20 21

22

23

9 11 8 8 9 10 10 12

10 10 12 13 9 10 9 10 9 11 11 12 10 11 13 14

12 14 11 11 11 13 12 15

13 15 15 16 12 13 12 13 13 14 14 15 13 15 16 17

15 17 14 14 15 16 15 18

16 19 15 16 16 17 16 19

17 18 20 21 16 17 17 18 17 18 18 19 17 18 20 21

19 22 18 19 19 20 19 22

20 23 19 20 20 21 20 23

22 24 20 21 21 22 22 24

23 26 22 23 23 24 23 26

24 27 23 24 24 25 24 27

8 9 10 10 11 12 6 7 8 6 7 8 7 8 9 8 9 10 8 9 10 10 11 12

11 11 13 14 9 10 9 10 10 11 11 12 11 11 13 14

12 15 11 11 12 13 12 15

13 15 16 16 16 17 18 19 12 13 14 15 12 13 14 15 13 14 15 16 14 15 16 17 14 15 16 17 16 17 18 19

17 18 20 21 16 17 17 18 17 18 18 19 18 19 20 21

20 22 18 19 19 20 20 22

20 23 19 20 20 21 21 23

22 23 23 25 24 25 26 27 20 21 22 24 21 22 23 24 21 22 23 24 22 23 24 25 22 23 24 25 24 25 26 27

15 16 16 18 19 20 15 16 17 17 18 18 16 17 18 17 18 19 16 17 18 18 19 20

18 21 18 20 19 20 19 21

20 22 19 20 20 21 20 22

21 23 20 22 21 22 21 23

21 24 22 23 22 23 22 24

22 23 25 26 22 23 24 25 23 24 24 25 23 24 25 26

9 11 11 14 14 15 16 16 13 14 15 16 17 18 19 20 10 11 12 13 14 15 16 17 12 13 14 15 16 17 18 19 11 12 14 15 16 16 17 18 12 13 14 15 16 17 18 19 11 12 14 15 16 17 17 18 13 14 15 17 17 18 19 20

18 21 18 20 19 20 19 21

20 22 19 21 21 21 21 22

21 23 20 22 22 22 22 23

22 24 22 23 23 23 23 24

22 25 22 24 23 24 24 25

8 9 9 10 6 7 6 7 7 8 8 9 8 9 9 11

5 8 5 6 6 7 6 8

7 9 6 8 7 8 8 9

8 9 10 11 8 8 9 10 9 9 9 10 9 9 11 11

• 5

7

8

8 5 6 6 7 6 8

9 6 8 7 8 8 9

10 8 9 9 9 9 11

9

9 8 11 12 13 14 8 10 11 11 12 12 10 11 12 11 12 13 10 11 12 12 13 14 1"0

11 12 9 9 10 11 9 10 10 11 10 10 11 12

11 15 12 14 13 14 13 15

14 16 13 15 14 15 15 17

14 17 14 16 15 16 15 17

However,

realizing one

22 25 21 22 22 23 22 25

or

two

24 26 23 25 24 25 25 26

t i n g wc t o i n t e g e r n u m b e r s . E v e n f o r t h e e r r o r -

whole.

power criterion, with an additional smoothing due

exactly may alleviate the problem

stages

to the summation involved, there are "good" and

[ 1 0 ] ; as m e n t i o n e d in S e c t i o n 2 . 2 , t h e s e c a s e s will

considerably

"bad" wordlengths; this becomes even more clear

not differ too much from the one shown here, with

if t h e v a l u e s E v t h e m s e l v e s a r e d i s p l a y e d [ 1 0 ] ; a n

all multiplications by "1" being exact. T h e r e is a n o t h e r s i m p l e w a y t o a c h i e v e a n a m e l -

e x a m p l e is s h o w n in F i g . 6. R e a l i z i n g all f a c t o r s " 1 " b y " 1 - Q ¢ " ( w h i c h m a y be appropriate

for a hardware

implementation)

o b v i o u s l y c a u s e s all e r r o r s t o b e i n c r e a s e d as a SignalProcessing

ioration: A closer examination [10] reveals that o f t e n n 0 ( e i ° ) , i.e. X ' (0) is a f f e c t e d m o s t s t r o n g l y in cases

with

A0~l.0.

This,

however,

may

be

U. Heute / F F T coefficien t errors

329

Table 3b Minimum coefficient wordlength wc~ for a prescribed output wordlength ws: FFT's with radix 4, decimation-in-time and decimationin-frequency algorithms, lengths M = 256 and M = 1024, realizations of w ° by 1.0 and 1 - Q¢; wc~ according to error measures E,, v=l ..... 4 r

alg.

M

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

1-Q~ 1.0 1-Qc 1.0 1-Q~

1 1 2 2 3 3 4 4

5 8 5 5 6 6 6 8

7 9 6 6 7 7 7 9

8 10 7 7 8 8 8 10

8 11 8 9 9 10 9 11

10 12 9 9 10 10 10 12

10 13 10 10 11 11 11 13

11 14 11 11 12 12 12 14

12 15 12 12 13 13 13 15

14 16 13 13 14 14 14 16

14 17 14 15 15 15 15 17

15 18 15 15 16 16 16 18

16 19 16 16 17 17 17 19

17 18 20 21 17 18 17 18 18 19 18 19 18 19 20 21

20 22 19 19 20 20 20 22

21 23 20 21 21 21 21 23

21 24 21 21 22 22 22 24

22 24 25 26 22 23 23 23 23 24 24 24 23 24 25 26

1.0

1

1 - Q~

1

1.0 1-Q~ 1.0

2 2 3

5 8 5 5 6 6 6 8

7 9 6 6 7 8 8 9

8 10 7 7 8 8 9 10

9 11 8 9 9 10 9 11

10 12 9 9 10 10 11 12

10 13 10 10 11 11 11 13

12 14 11 11 12 12 12 14

13 15 12 12 13 13 13 15

14 16 13 13 14 14 14 16

15 17 14 15 15 16 15 17

16 18 15 15 16 16 16 18

16 18 19 20 19 20 21 22 16 17 18 19 16 17 18 19 17 18 19 20 17 18 19 21 17 18 19 20 19 20 21 22

21 23 20 21 21 22 21 23

22 23 24 24 25 26 21 22 23 21 23 23 22 23 24 22 24 24 22 23 24 24 25 26

7 9 8 8 8 9 9 10

8 10 8 10 9 10 9 10

9 11 9 10 10 11 10 11

8 12 10 11 11 11 11 12

10 13 11 12 12 12 12 14

11 14 12 13 13 14 13 14

13 16 13 14 14 14 14 16

14 16 14 16 15 16 15 16

14 17 15 16 16 16 16 18

16 18 16 17 17 18 17 19

16 18 19 20 18 18 18 19 18 19 19 20 18 19 19 20

7 8 10 10 8 9 8 10 8 9 9 10 9 10 10 10

9 11 9 10 10 11 10 11

9 12 10 11 11 12 11 12

11 13 11 12 12 13 12 14

11 14 12 13 13 14 13 14

13 16 13 14 14 15 14 15

14 16 14 16 15 16 15 16

14 17 15 16 16 17 16 18

16 18 16 17 17 18 17 19

16 18 19 20 21 22 23 19 20 21 22 23 24 25 18 18 19 20 22 23 23 18 19 20 22 22 24 24 19 19 20 21 22 23 24 19 20 21 22 23 24 25 19 19 20 21 23 23 24 20 20 22 22 23 24 25



1.0 1 - Oc

1.0 4

4

4

4

DIT

DIT

DIF

DIF

256

1024

1 - Q~

3

1.0

4

1 - Qc

4

1.0 1-Q~ 1.0

1

5

6

1 2

7 5

8 6

1 - Oc

2

6

7

1.0

3

6

7

1 - O¢

3

7

8

1.0

4

6

7

1 - Q~

4

7

8

1.0 1 - Qc 1.0 1 - Qc 1024 1.0 1-O~ 1.0

1

5

6

1 2 2 3 3 4

7 5 6 6 7 6

8 6 7 7 8 7

1 - Q¢

4

7

8

256

circumvented (especially in some FFT hardware) by a separate implementation of M-1

X(O)= ~, x(k); k=O

this will allow to reduce the necessary wordlength, t o o . Which p o s s i b i l i t y w i l l b e t h e m o s t f a v o u r a b l e one depends on the required output accuracy and,

in c o n t r a s t to g l o b a l statistical e r r o r e s t i m a -

19 20 21 21 22 23 19 20 21 20 22 22 20 21 22 21 22 23 20 21 22 22 22 23

22 24 22 23 23 24 23 24

23

22 25 23 24 24 25 24 25

tions, the detailed analysis given here reveals those wordlengths for which additional efforts are of any v a l u e a t all: A s c a n b e s e e n i n T a b l e 3, t h e r e a r e wordlengths

without

any

differences

between

•--cases w i t h e x a c t a n d n o n - e x a c t m u l t i p l i c a t i o n s b y " 1 " , a n d o t h e r s w i t h d i f f e r e n c e s of five bits! As far as coefficient errors are concerned, a few g e n e r a l s t a t e m e n t s , t o b e d r a w n f r o m T a b l e 3, m a y be of interest: Vol. 3, No. 4, October 1981

U. Heute / FFT coefficient errors

330

T h e last s t a t e m e n t nicely fits o t h e r c o m p u t a t i o n a l a s p e c t s of r a d i x - 4 F F T ' s [12, 13]. But, of c o u r s e , a final d e c i s i o n on a p o s s i b l y " b e s t a l g o r i t h m " will l a r g e l y d e p e n d o n o t h e r e r r o r sources, too, w h i c h w e r e b e y o n d the s c o p e of this

9000,

8000

/

7000

6000

report. T h e y will b e t a k e n into a c c o u n t e l s e w h e r e [10], a f t e r c o n c l u s i o n of p r e s e n t r e s e a r c h , which also i n c l u d e s t h e t r e a t m e n t of o t h e r r a d i c e s [14] a n d applications.

Acknowledgements Prof. D r . - I n g . H . W . Schii~ler c o n s t a n t l y e n c o u r a g e d the a u t h o r to c a r r y o u t this w o r k . H e as well as the c o l l e a g u e s at t h e L e h r s t u h l fiir N a c h r i c h t e n t e c h n i k p r o v i d e d b o t h s t i m u l a t i n g discussions a n d p r a c t i c a l help. T h e a u t h o r wishes to e x p r e s s his s i n c e r e g r a t i t u d e to all of t h e m .

5OO0

4000 oT.

o

I

I

,

;2 16 2'o w c-1

Fig. 6. Maximum total power of non-linear distortions over the number (we- 1) of bits behind the binary point (radix-2/DIF algorithm, Ao-~1 - Qc).

- T h e hardest requirements h a v e to b e e x p e c t e d if E1 a n d E4 a r e t h e critical e r r o r limits a n d A0 ~ 1 is r e a l i z e d ; for 4 0 - - 1 , E4 is t h e s e v e r e s t e r r o r m e a s u r e . This m e a n s , of course, t h a t for t h e s e cases t h e usual s i g n a l - t o - n o i s e r a t i o a p p r o a c h is n o t wrong. H o w e v e r , E2, d e s c r i b i n g intelligible c r o s s - t a l k , for e x a m p l e , m a y ask for t h e s a m e w o r d l e n g t h if o n l y an i d e n t i c a l e r r o r b o u n d is p r e s c r i b e d - a n d it m a y c a u s e a w o r d l e n g t h i n c r e a s e if this e r r o r is felt to b e m o r e i m p o r t a n t . - T h e best a l g o r i t h m s t u r n o u t to b e b o t h r a d i x - 4 F F T ' s : W i t h t h e o n e e x c e p t i o n of a p p l y i n g E3 a n d exact f a c t o r - 1 m u l t i p l i c a t i o n for a l e n g t h - 2 5 6 D F T , w h e r e a r a d i x - 2 , d e c i m a t i o n - i n - t i m e F F T is s u p e r i o r , a r a d i x - 4 s o l u t i o n is always at least a m o n g two e q u i v a l e n t b e s t solutions. Signal Processing

References [1] P.D. Welch, "A fixed-point fast Fourier transform error analysis", Trans. IEEE, Vol. AU-17, 1969, pp. 151-157. [2] C.J. Weinstein, "Roundoff noise in floating point fast Fourier transform computations", Trans. IEEE, Vol. AU-17, 1969, pp. 209-215. [3] A.V. Oppenheim and C.J. Weinstein, "Effects of finite register length in digital filtering and the fast Fourier transforms", Proc. IEEE, Vol. 60, 1972, pp. 957-976. [4] D.V. James, "Quantization errors in the fast Fourier transform", Trans. IEEE, Voi. ASSP-23, 1975, pp. 277283. [5] B. Liu and Tran-Thong, "Fixed-point fast Fourier transform error analysis", Trans. IEEE, Vol. ASSP-24, 1976, pp. 563-573. [6] B. Liu and Tran-Thong, "Accumulation of roundoff errors in floating point FFT", Trans. IEEE, Vol. CA8-24, 1977, pp. 132-143. [7] D.W. Tufts, H.J. Hersey and W.E. Mosier, "Effects of FFT coefficient quantization on bin frequency response", Proc. IEEE, Vol. 60, 1972, pp. 146-147. [8] W.R. Knight and R. Kaiser, "A simple fixed-point error bound for the fast Fourier transformation", I E E E ASSP, Vol. 27, 1979, pp. 615-620. [9] U. Heute, "A novel approach to DFT and FFT coefficient error analysis", Arch. El. ()bertragg. (AEU'), Vol. 33, 1979, pp. 20-22.

U. Heute / FFT coeOicient errors [10] U. Heute, "Fehler in DFT and FFT - neue Aspekte in Theorie und Anwendungen", to be published in the series Ausgewiihlte Arbeiten iiber Nachrichtensysteme, ed. H.W. Schii~ler, Universit~it Erlangen-Niirnberg, 1982. [11] A.V. Oppenheim and R.W. Schafer, Digital Signal Processing, Prentice-Hall, Englewood Cliffs, N J, 1975. [12] C.S. Burrus and P.W. Eschenbacher, "An in-place, in-

331

order prime factor FFT algorithm", to be published in I E E E Trans. ASSP. [13] U. Heute, "FFT processor for real-time applications within the audio frequency range", Frequenz, Vol. 33, 1979, pp. 310-316. [14] S. Zanke, "Deterministische Betrachtung von FFF-Koeffizientenfehlern', Stud.-Thesis, Inst.f.Nachr.,Techn., Universit~it Erlangen, 1979.

Vol. 3, No. 4, October 1981