Post on 21-Jun-2016
Signal Processing 33 (1993) 197-207 197 Elsevier
Numerical behaviour of a fixed-point implementation of the splitted generalized LeRoux-Gueguen algorithm
Alexander Fischer Universitiit-Gesamthochschule Duisburg, Fachgebiet Nachrichtentechnik, Bismarckstrafle 90, W-4100 Duisburg, Germany
Received 19 September 1991 Revised 24 January 1992
Abstract. The splitted generalized LeRoux-Gueguen algorithm performs a least-squares estimate of autoregressive parameters. Due to its lattice structure and finite memory length it seems to be well suited to fixed-point arithmetic implementation. In the present paper the effect of round-offerrors caused by such implementation is studied. This is done by computer simulation of the fixed-point implementation with varying wordlengths for characteristic quantities and comparison with a floating-point implementation as a reference. Input signals are determined by pole trajectories of the transfer functions of their autoregressive model filters. Comparison between the two imple- mentations is carried out by a likelihood ratio. The simulation results lead to empirical guidelines for the choice of wordlengths.
Zusammenfassung . Der geteilte verallgemeinerte LeRoux-Gueguen Algorithmus ftihrt eine Kleinste-Quadrate Sch~itzung autoregres- siver Parameter durch. Aufgrund seiner Leiterstruktur und des endlichen Ged~ichtnisses ist er ffir eine Festkomma-Implementierung gut geeignet. In diesem Aufsatz werden die Auswirkungen der Rundungsfehler einer solchen Implementierung untersucht. Dies erfolgt durch eine Rechnersimulation der Festkomma-Implementierung mit unterschiedlichen Wortl~ingen fiir charakteristische Gr613en und den Vergleich mit einer Fliel3komma-Implementierung als Referenz. Die Eingangssignale werden durch die Poltrajektorien der autoregres- siven Modellfilter bestimmt. Der Vergleich der beiden lmplementierungen erfolgt mit einem Likelihood-Verh~iltnis. Die Simulations- ergebnisse fiihren zu empirischen Richtlinien fur die Wahl der Wortl~ingen.
R~sum4. L'algorithme partag6 de Leroux-Gueguen g6n4ralis~ effectu6 une estimation aux moindres carr6s des param6tres de l'auto- r6gression. Du fait de sa structure en treillis et de la longueur de m6moire finie il semble ~tre bien adapt6 ~ une implantation en arithm&ique finie. Dans le present article l'effet des erreurs de troncation caus6es par une telle implantation est 6tudi& Ceci est fait par une simulation sur ordinateur de l'implantation en pr6cision finie avec des longueurs de repr6sentation variables de valeurs caract6ristiques et une implantation en arithm6tique r6elle comme r6ference. Les signaux d'entr6e sont d6termin6s par les trajectoires des p61es des fonctions de transfert des filtres de leur module autor6gressif. La comparaison entre les deux implantations est op6r6e ~ l'aide d 'un rapport de vraisemblance. Lcs r6sultats de simulation conduisent ~ des lignes de conduite empiriques pour le choix des longueurs de repr6sentation.
Keywords. Fixed-point implementation; numerical effects; least-squares algorithm.
I. Introduction
Estimation of autoregressive parameters is a com-
mon task in adaptive signal processing. Application fields are spectrum estimation and speech processing.
Correspondence to: Dipl. Ing. Alexander Fischer, Universit~it Duisburg, FB 9/NT, BismarckstraBe 90, W-4100 Duisburg, Ger- many. Phone: +49-203-379-3197; Fax: +49-203-379-2902.
A wide class of algorithms has been developed to per- form this task [ 3 ]. According to the underlying struc-
ture of the prediction error filter (Figs. 1 and 2) they
are called transversal or lattice algorithms. The splitted generalized LeRoux-Gueguen algorithm belongs to the lattice class of algorithms. It performs a least- squares estimate of the time-varying parameters of an auto-regressive model based on a finite set of inner products of vectors chosen to represent the process to
0165 - 1684 / 93 / $06.00 © 1993 Elsevier Science Publishers B.V, All rights reserved
198 A. Fischer~Numerical behaviour of a fixed-point implementation
• . . . . .
Fig. 1. Transversal structure of prediction error filter.
eo(t) : e .t) ~ e,,,(t)
To(O:--~ ~'~Tl(t) ~
Fig. 2. Lattice structure of prediction error filter.
analyze. Usually these vectors will contain the time- shifted signal samples of one process realization, but it
is also possible to construct the vectors of signal sam- ples of different process realizations, if available.
Online estimation of the autoregressive parameters
requires numerical calculation power, which mainly is
only offered by signal processors. These usually oper- ate with fixed-point arithmetic. So it is necessary to
study the behaviour of algorithms under these condi- tions. In the present paper we will study the behaviour of the splitted generalized LeRoux-Gueguen algorithm
with regard to this aspect. The paper is organized as follows. We start in Section 2 with a brief derivation
of the algorithm. Section 3 deals with the normalization
problems and Section 4 states the performance meas- ures. Then we present the simulation results in Section 5 and finish with a discussion and summary.
2. Derivation of the algorithm
In this section we will briefly outline the derivation of the splitted generalized LeRoux-Gueguen algo-
rithm. The detailed derivation with pseudo-listings and
implementations in the programming language C is
contained in [ 2]. Here we follow Sokat's derivation in a shortened manner.
The derivation of the algorithm can be done by min- imizing the prediction error energies of a forward and
backward prediction error filter of order m. This mini-
mization may be performed by successive orthogon-
alization of the input signal vector x( t )= [x(t),
x ( t - 1) . . . . . x ( t - L + 1)] T on the subspace spanned
by the past observations x ( t - 1 ) , x ( t - 2 ) . . . . .
x ( t - m ) ,
eo(t) =x( t ) ,
el(t) = x ( t ) ( X ( t - 1 ) ) , (1)
ei(t) = x ( t ) ( x ( t - 1 ) >, x ( t - 2) . . . . . x ( t - i) >.
x(y~ . . . . . yi> denotes the orthogonalization of vector x
on the subspace spanned byy~ toyi. e~(t) is the forward
prediction error vector at stage i of the orthogonaliza-
tion process. Its energy results from the inner product
(e~(t), e~(t)). The backward prediction error vectors r~(t) result as follows:
ro(t) = x ( t ) ,
rl(t) = x ( t - 1) (x ( t ) ) , (2)
ri(t) = x ( t - i) (x( t ) , x ( t - 1 ) . . . . . x ( t - i+ 1 ) > .
The theorem of Schmidt leads to an order recursion for
the forward and backward prediction errors,
ei(t ) =ei_l(t ) +k~(t)r i i ( t - 1) , (3)
ri(t)=ri l ( t - - l )+kbi( t )e i - l ( t ) .
The coefficients k~(t) and kb(t) represent the filter
coefficients of a prediction error filter in lattice struc-
ture. They are called reflection coefficients, too. These reflection coefficients may be calculated by
k~(t) = - (el l ( t ) ' r i - l ( t - l ) ) ( r i_ l ( t - l) , r i_ l ( t - 1)) '
kb(t ) = _ (ei-l(t) , ri_l(t-- 1)) (e, , ( t ) , e i ~(t)) '
(4)
(x, y) expressing the inner product of vectors x andy.
Signal Processing
A, Fischer / Numerical behaviour of a fixed-point implementation 1 9 9
With orthogonality relations among x(t), e ~ ( t ) and
r~(t) we yield
kf+, ( t) = - ( x ( t - i - 1), e l ( t ) )
( x ( t - i - 1), r i ( t - 1))
( x ( t) , r,( t - 1 ) )
( x ( t - i - 1 ) , r g ( t - 1 ) ) ' (5)
k p + , ( t ) = - ( x ( t - i - 1), ei( t) )
( x ( t ) , e~(t) )
(x ( t ) , r ~ ( t - 1))
( x ( t ) , e , ( t ) )
Introducing the generalized residual energies (GREs) ,
XE.z j ( t ) = ( x ( t - i), e,,( t - j ) ) ,
XR. ,c j ( t ) = ( x ( t - i ) , r . ( t - j - 1)) , (6)
and application to (3) leads to the order recursion
XE,,.i,j(t) = XE,,_ ,,i,j ( t)
f + k . ( t - j ) X R , , _ l i i(t) ,
(7)
XR~,i,j (t) = XR._ l,i.j+ l ( t)
+ k b ( t - - j - - 1 ) XE._ <~,j(t) .
These time and order-update recursions contain the
memory of the algorithm, which is of finite length. The GREs are initialized from the inner product matrix,
[ ~bo.o(t) ~bo.,(t) ... ~bo.,.(t) ] ~b,o(t) + , , ( t ) ... ~b~..,(t)
~ ( t ) =
~m,O(l) qbm.,(t) ... ~ ) m m ( t ) J
qbi,j( t) = ( x ( t - i) , x ( t - j ) ) , (8)
by
XEo,/, j (t) = ~i, j ( t ) , (9 )
XRo.i,j( t ) = ~i , j + l ( t ) .
With (9) , the time and order-update recursion (7) and the shift invariance property
XEn,i+ 10+ 1(t) = XEn,i,j( t - 1 ) ,
XR~,g+ L j+ ~(t) = XRn,cj ( t - 1) , (10)
the generalized LeRoux-Gueguen algorithm for the
calculation of the reflection coefficients k~(t) and k b(t) results by expressing (5) in terms of GREs.
The recursions (7) can be divided into two inde- pendent recursions for the first rows,
XE,,.o.i(t)=XE,, i.o.i(t)
+ k~,( t - i )XR. _ J,o.i(t) , 11 )
XRn.o.i(t) -- XR,, I,o.i+ 1 (t)
+ k b ( t - - i - I)XE,,_ j.o.i(t) ,
and columns of the GREs,
XEn.i.o(t) = XEn i,i,o(t)
+ U , I ( t - j ) X R , , ,.re(t) , 12)
XRn,i,o(t) = XRn 1,i- i . o ( t - 1)
+ kb(t - 1 )XE,,_ I,i- H~( t - 1 ) .
With the identity
SRn.o,o(t) = XEn.~ + l.o(t) , 13)
calculation of all terms but XR.,,,, + Lo(t) or XEn,o,o(t) for the determination of the reflection coefficients is
possible. These can be calculated by
X R . . + l.o(t) = XR._ L~,o(t- 1 )
+ k b ( t - - 1 ) X R . i,o,o(t- 1 ) , (14)
XE,,.o,o(t) = XE,, _ l.i,o(t)
+kf( t )XE, , - j .o ,o( t ) • (15)
So the matrix recursions (7) can be replaced by two
vector recursions ( 11 ) or (12) plus one scalar recur-
sion (14) or (15) leading to the two splitted algo- rithms. Sokat named the algorithm using the rows recursion the first splitted generalized LeRoux-Gue- guen algorithm.
The calculations of the first splitted algorithm are
shortly summarized as follows. First the GREs are ini- tialized by (9). Then the first rows of the higher order GREs are calculated using ( 11 ) and the missing term by (14). Finally the reflection coefficients result from (5) with (6) and (13).
The input for the algorithm is the inner product
Vol. ~,~, No. 2, August 1993
200 A. Fischer~Numerical behaviour of a fixed-point implementation
matrix ~ ( t ) of the signal x( t ) to be analyzed. The elements ~bij(t) of the inner product matrix are calcu- lated by
c¢
~bcj(t)= ~ w ( k ) x ( k - i ) x ( k - j ) . (16) k=
This estimation of autocorrelations can be affected by choice of the weighting function w(k) . During this paper we consider a rectangular weighting function, say
= ~ for k<OVk>~L, w ( k ) for 0~<k<L. (17)
With this weighing function, calculation of 4,~j(t) can be expressed by the inner product qbij(t) = ( x ( t - i), x ( t - j ) ) .
Calculation of the prediction error filter of order m is equivalent to the description of the process by an autoregressive model of order m. We state the time- variant autoregressive model as
x ( t ) = e ( t ) + ~ a i ( t ) x ( t - i ) , (18) i = l
with ai(t), 1 ~< i ~< m, being the time-variant model par- ameters and {e(t)} a white noise process. The equiv- alent lattice structure of the autoregressive model,
e,,(t) =e( t ) ,
e l - l ( t ) =ei(t) -k~( t ) r i_ l ( t - 1) ,
ri(t) = r i - ~ ( t - 1 ) + kb(t)ei_ l(t) , (19)
x( t) = ro(t) = eo(t) ,
i = m , . . . , 1 ,
incorporates forward and backward reflection-coeffi- cients k~(t) and k~(t) as model parameters, which are estimated by the algorithm. These two parameter sets can be calculated into each other using a modified Lev- inson recursion [ 3 ].
Having outlined the derivation of the algorithm and the relation of estimated parameters to the time-variant autoregressive model we have to develop a normali- zation of the algorithm for the fixed-point implemen- tation.
3. Normal i za t ion of the a lgor i thm
Fixed-point arithmetic implementation of the algo- rithm requires normalization of all quantities according to the finite wordlength of the signal processing unit. The quantities to normalize are the signal x(t) , its inner product matrix qb(t), the reflection coefficients k~(t), k~(t), the residual energies XEi(t), XRi(t) and all internal quantities of the algorithm. This normalization can be done by fixed normalization factors depending on the available wordlengths and the resolution of the analog-to-digital-converter for the input signal. The following assumptions have been made to characterize the signal processing unit: - Maximum length of intermediate products and sums
is 32 bit. -A l l basic arithmetic operations (addition, subtrac-
tion, multiplication and division) are available for those maximum 32 bit quantities.
- The resolution of the analog-to-digital-converter is 12 bit. So the signal x(t) is normalized by
XN( t) = round (k~x) t) ) . (20)
k~ is the normalization factor, being a power of two, such that the maximum values ofx( t ) in the range of interest can be represented by 12-bit words. Xu(t) the normalized signal, and 'round' denotes a round-func- tion, rounding its argument to the nearest integer.
Table 1 contains the used wordlengths and normaliza- tion factors for the different quantities in the algorithm.
lx denotes the wordlength for residual energies and l~ for reflection coefficients, respectively. The inner product matrix is calculated with the full word length of 32 bit and during initialization of the GREs the values are shifted to the actual length lx. Normalization of the inner product matrix and GREs depends on the
Table I
Normalization factors and wordlengths
Quantity Wordlength Normalization factor
x(t) 12 bit k, • (t) 32 bit k~ kf( t), k~( t) lk bit 2 ~k-~ XEi(t), XR~(t) l~ bit 2 I~- ~2k2
Signal Processing
A. Fischer~Numerical behaviour of a fixed-point implementation 201
signal normalization factor kx and the wordlength/, .
Normalization of the reflection-coefficients leads to the
representation of the interval [ - 2, 2 ] by integer values
of Ik bits length. Since the modulus of the reflection-
coefficients has to be less than or equal to one for the
stationary case, the above normalization is advisable.
Even in the non-stationary case do values with modulus
fairly greater than one mainly occur in the initialization
phase due to transient effects.
All normalization factors are chosen to be powers of
two, so that normalization adaptions within the algo-
rithm can be done by shift operations.
4 . P e r f o r m a n c e m e a s u r e s
Having normalized the algorithm and implemented
it in its normalized version, it is necessary to have
performance criteria to measure the finite word length
effects. This is done in relation with a non-normalized
algorithm, implemented with 64-bit IEEE double p r e -
cision arithmetic so that numerical effects are negligi-
ble. This algorithm is referred to as floating point
algorithm. The normalized algorithm will be called
integer algorithm, with the characteristics stated in the
previous section.
In speech processing likelihood ratio measures are
common classificators [ 1 ]. A likelihood ratio measure
as in [ 1 ] evaluates the relation of the prediction error
energies of a reference filter to a test filter. In our situ-
ation the reference filter is calculated by the floating
point algorithm and the test filter by the integer algo-
rithm. Since both filters are calculated for every signal
sample we get a time-variant likelihood ratio here,
which is calculated by
Era,test(t) Em,int(t) V ( t ) - E ..... f(t~ - E,,,float(t)" (21)
The prediction error energy E, , ( t ) is given by
E, , ( t ) = (era(t), era(t)) =eTm(t)em(t) , (22)
where era(t) may be calculated by
1.0-
0.5-
02-
-0.5-
-1.0
1.0
0.5-
0.0-
-0.5"
-1.0
a)
°° t L _ _ . _ 0.00 , , t
200 400 b) 600 800 1000 200 400 A~ 600 800 1000 1.050
kfint(t)
250 460 660
1.025-
1.ooo ~= ........................................ t 860 1000 260 450 660 860 1000
Fig. 3. Analysis of AR(2)-process with both algorithms, lx = 16 bit, 1,= 12 bit. (a) Reflection coefficients of floating point algorithm. (b) Reflection coefficients of integer algorithm. (c) Sum of absolute differences between forward reflection coefficients divided by filter order. (d)
Performance measure V(t).
VoI. 33, No. 2. August 1993
202 A. Fischer/Numerical behaviour of a fired-point implementation
1ol/
0 . 0
-0.5
- 1 . 0 P , , , , . , . , , t
200 400 b) 600 800 1000 1.050
1.025
1.000 ' i ,
200 400 6()0 800 1000
1.0 a)
0.5
0.0
-0.5
-1.0
1.050
1.000
200 400 ~,'~ 600 800 1000
200 400 600 800 1000
Fig. 4. Analysis of AR (2)-process with both algorithms, l~ = 16 bit, lk = 10 bit. (a) Forward reflection coefficients of integer algorithm.
(b) Performance measure V(t).
Fig. 5. Analysis of AR(2)-process with both algorithms, lx = 14 bit, lk = 12 bit. (a) Forward reflection coefficients of integer algorithm.
(b) Performance measure V(t).
era(t) =X( t )am( t ) , (23)
with X(t ) -- [x( t) , x ( t - 1 ) . . . . . x ( t - m ) and a = [ 1,
al( t ) . . . . . am(t)] T. So we yield
Em( t ) = (X( t)am( t) ) Tx( t)am( t)
=aT ( t ) xT ( t )X( t)am( t)
= a T ( t ) C19(t)am(t) . (24)
This calculation of the likelihood ratios requires the
inner product matrix ~ ( t ) and the transversal predic-
tion error filter coefficients ai(t), which are calculated
from k[(t) and kb~(t) by the modified Levinson recur- sion [3]. The performance criteria V(t) is then
a Tm,int(t) tI)(t)am.int(t) V(t) = a~,no,t(t) clb(t)am.noat(t) ' (25)
and holds the inequality V(t) ~> 1, since the error energy
of the erroneous calculated filter will always be greater
than the optimally calculated one. Here the condition for perfect coincidence between integer and floating-
point calculations is V(t) = 1. V(t) can be seen as a
measure of how well the least-squares optimization
criteria is fulfilled by the integer implementation with
regard to the optimal case.
This performance criteria (25) shall serve to char-
acterize the performance of the integer algorithm. The
simulations whose results will be presented further
have been carried out with the first splitted generalized
LeRoux-Gueguen algorithm only, since the calcula-
tional structure of the second splitted version is iden-
tical and it showed similar behaviour in preliminary
studies.
Figure 3 shows the performance of floating point and
integer algorithm by analyzing one realization of an
AR(2)-process with pole locations z~o 1,2 = 0.5 _ j0 .5 of the model filter, leading to parameters ao = 1, a~ = - 1,
a2 = 0.5. The corresponding reflection coefficients are k f = k b --- - ~ and k f = k2 b = ½. The wordlengths lx = 16
bit and lk = 14 bit lead to a quite satisfactory perform-
ance of the integer algorithm as can be seen by inspect-
ing performance measure V(t). In Figs. 4 and 5 one of the wordlengths is decreased
by 2 bit and the reflection coefficients of the integer
Signal Processing
A. Fischer / Numerical behaviour of a fixed-point implementation 203
c) m = 8 ~.~z}
- j l
- j a) m = 2
Fig. 6. Pole locations of synthesis filters for r = 0.5, q~ = "rr/10.
behaviour of the algorithm (Fig. 5) we can still say that the performance of the integer algorithm is still
acceptable. As a condition for acceptable numerical behaviour of the integer algorithm we state
V~< 1.05, (26)
being the time-average of V(t). So the averaged
deviation of error energies may not exceed 5%.
5. Simulation results
Performance of the algorithm has been studied for stationary input signals (Section 5.1 ) and for non-sta-
tionary input signals (Section 5.2). The synthesis filter
of order m is defined by its pole trajectories z~i(t), i = 1 . . . . . m. It is driven by a zero mean, unity variance,
gaussian white noise process and for each realization
1100 samples are synthesized. These are analyzed by
the two versions of the algorithm with the appropriate
model order and a sliding rectangular window of 100 samples length for calculation of the inner product
matrix. The performance measures are calculated at each time sample and are finally averaged. The first 100 samples (window length) are omitted in this calcula- tion to avoid transient effects.
Table 2
Word leng th combina t ion for residual energies and reflection coeffi-
cients
/r/bit /k/bit
16 4 5 6 7 8 9 l0 12 14 16
14 4 5 6 7 8 9 10 12 14
12 4 5 6 7 8 9 10 12
10 4 5 6 7 8 9 10
algorithm and performance measure V(t) are shown. We see that the wordlength lx of the residual energies
has far more influence on the behaviour of the integer algorithm than the wordlength lk of the reflection coef- ficients. In spite of this special case under inspection
here this relation between the wordlengths holds fairly general.
Although the decrease of wordlength results in worse
5.1. Stationao, signals Pole locations of the synthesis filter for stationary
signals are time-invariant and are defined by
z~l(t) = r(cos(q~) + j s in (~ ) ) ,
z~2(t) = r(cos(q~) - j sin(q~) ) ,
z~,2i+,(t)=r(cos(~+ ~) +jsin(q~+ i~)),
z~,2i+2(t)=r(cos(q~+ ~l-jsin(~P+ ~)),
i = 1 . . . . . ½m, m > 2 . (27)
These model equations generate synthesis filters with pole locations of constant modulus equally distributed in the angular range [q~, ¢+-rr] . The investigated
Vol. 33. No. 2, August 1993
204 A. Fischer~Numerical behaviour of a fixed-point implementation
Z j ~ z
l~ 16blt, lk 0 4, 16bit 1 l~ 14blL lk 0 4, ,14bit 1
3
o ~(z} o ~(~} ., 12bit - l~ = lObit, Ik 0 4 , . . . , lObit
Fig. 7. Regions in unit circle of z-plane for V~< 1.05 in dependency of residual energy and reflection coefficient wordlength, m = 2, stationary case.
01 l~=16bit, l k=4 , . . . , 16b i t ~{z} _ = . = ... . ~{z}
j ~ z}
o ~{z} o ~{~} l= 12btt, l~ 4, ,12bit 1 - l==lObtt,' lk=4,...,lOb~t"
Fig. 8. Regions in unit circle of z-plane for f'~< 1.05 in dependency of residual energy and reflection coefficient wordlength, m = 4, stationary case.
model orders are m = 2, m = 4 and m = 8. Figure 6
shows the corresponding pole locations for r = 0.5 and
~=¢r/lO. By numerical approximation the regions (r, ~) of
the unit circle fulfilling (26) are determined, f ' is cal-
culated by averaging 10 realizations of the model (r,
~) characterized by (27) .
Table 2 shows the combinations of wordlengths for
residual energies and reflection coefficients which have
been simulated. Figures 7 to 9 visualize the results.
Because of symmetry only half of the z-plane with
positive imaginary parts is shown. The smaller reflec-
tion coefficient wordlengths correspond to the inner
curves in all figures.
5.2. Non-stationary signals
As further issue of interest a non-stationary signal
model has been studied. The poles of the transfer func-
tion of the synthesis filter are mirrored with respect to
the imaginary axis during the signal synthesis. This
takes place at sample 600. So the trajectory z=,(t) of
the first pole of the model according to (27) equates
Signal Processing
A. Fischer / Numerical behaviour of a fixed-point implementation 205
o ~{z} o ~{z} l~ 16b~t lk 4, ,16b~t l~ = 14bit, lk = 4 , . . . , 14bit
Ix = 12bit, lk = 4 , . . . , 12bit l~ = 10bit, lk = 4 , . . . , 10bit
Fig. 9. Regions in unit circle of z-plane for ~'~< 1.05 in dependency of residual energy and reflection coefficient wordlength, m = 8, stationary case.
• SL O 3 j -~z
o ~ I / / / ~{z} o ~{z) l~ 16bit, Ik = 4,. . . 16bit lx = 14bit, l k= 4 , . . . , 14bit
o ~ ~{z} o ~{z} l~ 12bit, Ik = 4 . . . . ,12bit l~ = lObit, lk 0__ 4 , . . . , lObit
Fig. 10. Regions in unit circle of z-plane for ~?~< 1.05 in dependency of residual energy and reflection coefficient wordlength, m = 2, non-
stationary case.
= f r ( c o s ( ~ o ) + j sin(~0)), 0 ~ t < 6 0 0 , Z~ i ( t )
• [ - r(cos(q~) + j sin(~o)), 600~<t~< 1100.
(28)
Starting with this first pole trajectory the model accord-
ing to (27) is defined• As in the previous subsect ion
the model orders 2, 4 and 8 are studied with the word-
lengths of Table 2. Figures I0 and 11 show the simu-
lation results for the non-stat ionary case.
6. D i s c u s s i o n
Taking a look at the s imulat ion results we can state
the following.
The most critical pole locations in the unit circle are
the regions near + 1. The nearer the poles are located
at + 1, the higher the wordlengths for residual energies
and reflection coefficients have to be chosen. For m = 2,
l~ = 16 bit and lk= 10 bit (Fig. 7) , the whole unit circle
with a loss of two nearly circular regions with radius
= 0.1 around ___ 1 is covered by the performance thresh-
old f'~< 1.05.
Vol. 33, No, 2, August 1993
206 A. Fischer / Numerical behaviour of a fixed-point implementation
o ~ ' ~ -' < ~ '~(~} ~(z} - 0 1
l= = 16bit, lk = 4,...,16bit l, = 14bit, l ~ 4,...,14bit
l= = 12bit, lk = 4,...,12bit lx = 10bit, lk = 4,...,10bit
Fig. 1 I. Regions in unit circle of z-plane for I?~< 1.05 in dependency of residual energy and reflection coefficient wordlength, m = 4 , non- stationary case.
Location of poles near and on the imaginary axis
leads to far better performance measures than near and
on the real axis. For m = 2, Ix = 16 bit and lk = 5 bit (Fig. 7), nearly the whole interval [ - 1, 1 ] of the imaginary
axis lies within the acceptable performance region, but only approximately [ - 0.5, 0.5] of the real axis.
Turning our attention to the higher order models
( Figs. 8 and 9) we realize that the performance is better the more homogenous the poles are distributed over the
unit circle. Models (r, ~) with ~p~ [ax/2, -rr] have
3'2{z~} ~< 0 for all poles of the model. This we will call an asymmetric pole distribution in the unit circle. For
these asymmetric distributions, the influence of resid- ual energy wordlength increases in that way that sig-
nificantly higher wordlengths have to be used to guarantee the same level of performance.
The influence of the non-stationarity in the second set of simulations is negligible for m = 2 (Figs. 7 and
10). So we may say that parameter jumps in second- order AR-processes with no increase in pole modulus do not have great influence on the numerical behaviour of the fixed-point implementation of the algorithm. For m = 4 the non-stationarity leads to a slight decrease of performance regions, especially in case of asymmetric pole distributions (Figs. 8 and 11 ). In case o f m = 8 the non-stationarity by parameter-jump is covered by the influence of the asymmetric pole distributions. This leads to nearly the same results as under stationary
Signal Processing
conditions (Fig. 9), so the adjacent figure is omitted.
As a quantitative result we yield the following rule
of thumb for the choice Ix and Ik:
lk ~<1~ --6 bi t , (29)
since a bigger choice of lk does not enhance the numer-
ical performance of the algorithm. This empirical
guideline is found in all simulation results figures. Finally we state that a fixed-point implementation of
the first splitted generalized LeRoux-Gueguen algo- rithm with a word length of 16 bit for residual energies
and 10 bit for reflection coefficients will operate in an
acceptable manner with regard to its floating-point counterpart provided that the poles of the autoregres- sive synthesis filter of the signal to analyze are distrib-
uted sufficiently homogenous in the unit circle.
7. Conclusion
In this paper we studied the numerical behaviour of the first splitted generalized Leroux-Gueguen algo- rithm due to fixed-point arithmetic implementation After a short derivation of the algorithm we suggested a normalization with regard to common signal proces- sors and defined performance criteria for the behaviour of the normalized algorithm. By use of the likelihood- ratio-performance criteria we determined the regions
A. Fischer~Numerical behaviour of a fixed-point implementation 207
of pole locations of the synthesis filters in the unit circle,
where the criteria does not exceed a threshold. These studies have been carried out for different model orders
in the stationary and non-stationary case. With the sim- ulation results we were able to characterize critical
regions and distributions for pole locations of the auto- regressive synthesis filters in the unit circle. Further-
more we yielded a guideline for the choice of
wordlengths for the fixed-point implementation.
References
[ l ] A.H. Gray and J.D. Markel, "Distance measures for speech processing". IEEE Trans Acoust. Speech Signal Process., Vol.
24, October 1976, pp. 380-391.
[2] J. Sokat, Ein Beitrag zur adaptiven Filtertheorie mit Anwendun- gen in der automatischen Brandentdeckungstechnik, Disserta- tion, Universit~it Duisburg, 1991.
[ 3 ] P. Strobach, Linear Predictor Theory: A Mathematical Basis for Adaptive Systems, Springer, Berlin, 1990.
Vol. 33. No. 2, August 1993