Signal Processing 16 (1989) 193-207 North-Holland
193
INVITED PAPER MODIFIED WAVE DIGITAL FILTERS FOR IMPROVED BY C O M M E R C I A L D I G I T A L S I G N A L P R O C E S S O R S
IMPLEMENTATION
Alfred FETTWEIS Ruhr-Universitiit Bochum, Postfach 102148, D-4630 Bochum 1, Fed. Rep. Germany Received 29 February 1988 Revised 2 August 1988
Abstract. While wave digital filters (WDFs) can always be implemented by commercially available integrated digital signal processors (DSPs), the efficiency of such implementations leaves room for improvement. Modified forms of WDFs are therefore derived that yield much more efficient DSP implementations than those previously available. The approach is particularly suitable for lattice WDFs. The modified WDF structures can be easily built in such a way that they possess all stability properties desired under signal quantization, i.e. not only the absence of small- and large-scale limit cycles, but also, for example, forced-response stability and related properties.
Zusammenfassung. Wellendigitalfilter (WDF) k6nnen stets mit Hilfe kommerziell verfiigbarer integrierter digitaler Signalprozessoren (DSP) implementiert werden, doch ist die dabei bisber erzielbare Effizienz nicht so grol3 wie eigentlicb erw/inscht. Eine modifizierte Art Wellendigitalfilter wird daher vorgestellt, die zu DSP-Implementierungen fiihrt, die wesentlich effizienter sind, als was bisher m6glich war. Das Verfahren eignet sich insbesondere f/Jr Briicken-WDF. Die modifizierten WDF-Strukturen k6nnen auf einfache Weise so gebaut werden, dab sie alle StabilitS.tseigenschaften besitzen, die in Anbetracht der unvermeidlichen Signalquantisierung gefordert werden k6nnen, also nicht nur Freiheit von parasitiiren Fein- und Grobschwingungen, sondern z.B. auch Antwortstabilitiit und verwandte Eigenschaften. R~sum~. Les filtres num6riques d'onde peuvent toujours ~tre r6alis6s au moyen de processeurs num6riques int~gr6s de signal, mais l'efficience ainsi obtenue est inf6rieure ~ ce qui peut ~tre d6sirable. Pour cette raison une forme modifi6e de filtres num6riques d'onde est propos6e qui conduit ~ des r6alisations nettement plus efficientes que ce qui 6tait possible ant~rieurement. La m6thode est surtout appropri6e aux filti'es num6riques d'onde en treillis. Les filtres num6riques d'onde modifies peuvent ais6ment ~tre construit de telle faqon qu'ils poss~dent toutes les propri6t6s de stabilit6 qui peuvent ~tre exig6es en rapport avec la quantification in6vitable des signaux. Ceci concerne donc non seulement l'absence de cycles limites fi faible et h forte amplitude, mais aussi par exemple la stabilit6 de r6ponse et des propri6t6s y relatives. Keywords. Wave digital filters, implementation, digital signal processors.
1. Introduction
Wave digital filters (WDFs) [3] are known to have many interesting properties [4]. The most important of these concern their excellent stability behavior, in particular with respect to all aspects resulting from the nonlinearities that are caused by the signal quantizing operations required for carrying out rounding/truncation a n d overflow corrections, and their good dynamic range performance. Other advantageous properties hold more specifically for voltage-wave digital filters
(VWDFs), i.e. for the type of WDFs usually considered and with which the present paper is also concerned: the small number of multipliers required, at least if the most appropriate structures are selected, and the small number of nonzero bits needed for implementing the multiplier coefficients. On the other hand, VWDFs require more adders than multipliers, at least if the most common type of implementation is adopted, i.e., the one that is the most economical in number of multipliers. This is not a disadvantage if a dedicated hardware is
0165-1684/89/$3.50 © 1989, Elsevier Science Publishers B.V. (North-Holland)
194
A. Fettweis / Modified wave digital filters
used, but can be undesirable if the implementation is to be done by means of general-purpose digital signal processors of the types hitherto available. For these digital signal processors an individual computing cycle always consists of a multiplyaccumulate operation, i.e., of one multiplication combined with an accumulation (addition). Hence, an individual addition requires a full cycle, i.e., a multiplication by 1 followed by the addition itself. This can be a disadvantage for the implementation of WDFs, especially in the case of floating-point arithmetic. Recall that in a WDF the arithmetic operators (adders and multipliers) are grouped in so-called adaptors. The purpose of the present method is to show how the disadvantage just mentioned can be overcome in a wide class of WDFs (i.e., those for which only two-port adaptors are needed) by appreciably reducing the number of cycles needed for carrying out the computations. This class includes the most attractive realizations of lattice WDFs, i.e., those types of WDFs that have so far proved to be the most attractive ones in practice. It will be seen that the realizations thus obtained are such that they can draw great advantage from a certain feature available in several digital signal processors (see e.g. [7]). This feature allows one to ensure that if an overflow occurs after a multiply-add operation the actual result is obtained according to a saturation characteristic. Due to the specific properties of WDFs this guarantees not only the suppression of overflow oscillations, but also forced-response stability and related properties [1, 4, 8-11]. Although we have so far stressed two-port adaptors, the method is also applicable in the case of adaptors with more than two ports. Considerable advantages are then still obtainable, but the reduction in the number of cycles decreases with the number of ports of the adaptor. Note, however, that more than three ports are rarely needed in practice. The crux of the method consists in inserting, at selected locations of the original structure, appropriately chosen pairs of (mutually) inverse multipliers and then combining, wherever possible, Signal Processing
each such multiplier with the adaptor to which it is most adjacent (i.e., to which it is either directly adjacent or from which it is separated by at most a delay element). The pairs of inverse multipliers do not necessarily correspond to ideal transformers. Hence, we may no longer simply speak of port resistances or conductances (weights), but the two terminals of a same terminal-pair in the final structure may very well have different weights. This answers in a positive way a question that had been left open in a recent paper on fully general passive and lossless digital filter structures [5]. It had been mentioned there that it was "not known whether there exist situations in which further simplifications could result" by choosing distinct weights for the two terminals of the same terminalpair. If not otherwise mentioned, terminology and notation will be as given in [4].
2. Reactances and all-pass structures involving two-port adaptors
2.1. First-degree sections Since WDFs are based on using wave quantities rather than voltages and currents, realizing an impedance or admittance is equivalent to realizing a reflectance; in particular, realizing a reactance is equivalent to realizing an all-pass structure. A first-degree all-pass section is shown in Fig. l(a). Contrary to what we have previously usually done [4], we have indicated port conductances (weights) rather than port resistances, and we will do the same in corresponding later figures in this paper, such conductances (weights) being of course positive quantities. Consequently, for the multiplier coefficient ),j we have
~I=(GI-Go)/(GI+Go),
]T,I
and the equations describing the two-port adaptor are
bo = - )',ao + (1 + ),,)a,,
(2a)
bo = (1 - y,)ao+ "y,a,,
(2b)
195
A. Fettweis / Modified wave digital filters
®
Ol
c
bo
where
,,l!ll,o
,.tq
I
1 I
Yoo=-yl,
ao
Y,o = (1 - 3',)/k'(, 3
al °
ki
k~
01
bo
I
0
:
61 =
bl
O
¢
k~'
1
ol
=
b'l
ao k;'~;
©
k'l = 1/(1 + 3'0,
I
=
1/k~ --
(5c, d)
Go
G~
G';-- k~'2G1 ¢
3',1 = 3"lk'l/k'~.
We have two alternatives for making equal to unity one of the coefficients in each one of equations (4a) and (4b). The first alternative is
I
al
(5a, b)
yo,=(l+yOk',,
N1
a
k~' = 1 - 3'1,
(6a, b)
I
k ~ / k ' , = 1 - 32,
I
(6c)
I
I
o'1
which leads to
bo
3'o0 = -3'1,
Yol = 3'1o = 1, (7)
%
~
c°i'
N1
v bI
kl,
b~
3 ' . = 3'1/(] - 3',~).
Go
I
The second alternative is
oo
Fig. 1. (a) A first-degree all-pass section. (b) A section derived from (a) by inserting pairs of inverse multipliers at appropriate locations. (c) Simplified representation of (b).
k', = 1/(] + 3'0,
k~ = 3',/(1 + 3/1)
k'(/k'l = 3',,
(8a, b) (8c)
which leads to the subscript 1 being given to 3' for reasons that will b e c o m e clear later. We m a y assume Yl ~ 0, since otherwise equations (2) b e c o m e trivial and a p r o b l e m of simplifying t h e m does not arise. We n o w insert pairs of inverse multipliers with coefficients k'l, 1 / k ' b k~, and 1/ k "1, as shown in Fig. l(b). Observe that the two multipliers of such a pair are placed directly in cascade. This does not change the signals a~ and b, at the input port of the overall arrangement. We can c o m b i n e the a d a p t o r and its two adjacent multipliers into a new building block, N1, as indicated by means of the broken line in Fig. l(b). This building block m a y be said to be f r e q u e n c y - i n d e p e n d e n t just like a conventional a d a p t o r since it does not contain any delay. F r o m Fig. l(b) we derive a, = k~a'l,
bl = k'(b'l.
(3a, b)
Hence, N, is described by bo = 3"ooao+ 3"ola'b
(4a)
b'l = 3',oao+ y, la'l,
(4b)
Too = --Yl,
Tol = 3'11 = 1, (9)
Ylo = (1
2 - 3'0/3'l-
Since ]3'1[<1, we can always ensure, if desired, that none of the coefficients in (4) is larger than 1 in modulus. This possibility is offered by (6) and (7) for Iv,I (,/3-1)/2 20.618, and by (8) and (9) for Iv,I/> (<3- 1)/2. In (6) and (8) we have supplemented the expressions for k'l and k[ by simple expressions for k "1/,~1, I v ' ' these show that we always have
Ikr/k;[<-l.
(10)
There remain of course the two multipliers to the left of N, in Fig. l(b). These m a y obviously be c o m b i n e d into a single multiplier of coefficient k ~ / k ' v In some cases this single multiplier m a y even simply be d r o p p e d , but in others this is not permitted. In any case, the i m p l e m e n t a t i o n of NI requires only 2 m u l t i p l y - a c c u m u l a t e steps. A simplified overall representation of the structure of Fig. l(b) is shown in Fig. l(c). Vol. 16, No. 3, March 1989
A. Fettweis/ Modified wave digitalfilters
196
preferred keeping them separate for the sake of symmetry and for reasons as explained in [4]. We can again transform Fig. 2(a) in a way similar to what we have done previously, which leads to Fig. 2(b). The part to the right in Fig. 2(a) is assumed to be transformed, as in Fig. 1, with N, thus being as in Figs. l(b) and l(c). The multipliers 1/k~ and k~', however, have been shifted across the two delays T/2 and have been inserted into what is becoming N2. In addition to the weights G~ and G~' given by (11), we now also have to consider terminal weights
In addition to the port conductances, Go and G~, the weights
G~=k~2G~,
G~'=k'~2G~,
( l l a , b)
are indicated in Figs. l(b) and 1(c). Only Go corresponds to a true port conductance, while G'I and G~' are the individual terminal weights of the two terminals of N1 at its access on the left. These two terminals thus do not form a true port. The role played by G~ and G~' will become clear in Section 3. Obviously, N~ may no longer be termed a twoport, but we may still call it an adaptor, i.e., a 4-pole parallel adaptor.
G 2p _- kt2,r-j : ,-,:,
2.2. Sections of degree two and higher
® c
03
i
b2
b3
I
02
b 2 : -'y2a2 3c (1 + 'y2)a3,
(13a)
b3 = (1 - ~/2)a2+ yEa3,
(13b)
o
c°::,i! iGoo0
o
e
k~
~
I
C
O~:k~202
b~
o
o
Gi :- k't2G |
G2
G2
01
I
I
aO
I
N1 G,, u,,2 r.
c
-k i'
®°°3
:--
G2
I
p
o;o %
e
~
e
o,,:
N2
k~'
Gi"
~3t
I
I
NI
2
g3
Oo
I 1
n2 :
c
bo
oj
O~
I
,, L,,2~ 2:~2 ~2
°
~ DI
11
I
k~ o30
(12)
A simplified overall representation of the structure of Fig. 2(b) is shown in Fig. 2(c). The equations describing the left adaptor in Fig. 2(a) are
A situation in which the multipliers to the left of N1 mentioned in Subsection 2.1 may not immediately be dropped is encountered in a second-degree all-pass section, as shown in Fig. 2(a). Note that there we could combine the two delays T / 2 into a single delay T, but we have
®
G2 = k'~:G2.
o~
G~
-I
J
Oo
Fig. 2. (a) A second-degreeall-pass section. (b) A section derived from (a) by inserting pairs of inverse multipliers at appropriate locations. (c) Simplified representation of (b). Signal Processing
197
A. Fenweis / Modified wave digital filters
which leads to
where
--
(14a, b) ')"32 =
(14b) again following from (14a) because G~ > 0 and G2 > 0. We may assume 3'2 # 0. Since (cf. Fig. 2(b)) r¢
t
a 2 = k~ a2,
b2= k ; b ~ ,
(15a, b)
a3 = k'2a'3
b3 = k~b~,
(15c, d)
(13) gives rise to b ~ = 3'22a2' + 3'23a3, '
(16a)
b~=
(16b)
3 ' 3 2 a 2' -I- 3 ' 3 3 a 3 ,'
-1 -- . 3'2 3,2
3'22 = -- 3"2k~/k~,
3'23 =
3"2)k~/k~,
(1+
(17a, b) (1 -
3"2)k':/k'~,
k~ = (1 - 3,2)k'~, (18a, b)
which leads to ¢
(19a, b)
3"22 = - 3 " 2 k l / k l ,
3"23 = 1,
3"32= 1,
3'33 = 1 - 32" k-'-('
3"2
k'~
and on the other,
1.
or (22)
[kUk',l,
respectively. Note that from (18) and (20b) we also obtain it k2/k
l __ 2-
(1 - 3 " 22l. K .~ / k. l . . and . . . k2/ . k2 = 3'2,
respectively. These expressions, together with (10), show that in all cases we have
Ik~/k;l<~ 1.
(24)
The process described obviously can be extended to all-pass structures of arbitrary degree, say n (Fig. 3(a)). We then proceed from the right to the left, as we have done in Fig. 2, and we thus arrive at a structure of the form given in Fig. 3(b). The derivation of N3 will he exactly as that of N2, but with k~ and k~' taking the role of k'~ and k~', etc. For the sake of completeness as well as for later use, we will devote the remaining part of this section to presenting the general equations thus resulting. First we note that the equations describing the ith two-port parallel adaptor, i = 1 to n, are given by
(1 -
¢
y2k2,
(20a, b)
+
(1
+ 7i) a 2 i -
3 , i ) a 2 i _ 2 + "yia2i
1,
(25a)
1,
(25b)
,),
]Ti]< 1, (26a, b)
where
3,,=(G,-G, tt
(21c, d)
13,d(1-3,~)l<-lk'~/k' d
b2i_ 1 =
k 2 --
3'33 =
These two choices still have to be combined with those available for N1, i.e. for k'l and G', thus yielding altogether four choices. Due to I3'21< 1, taking into account (10), we can always ensure that none of the coefficients in (16) is larger than unity in modulus, and this independently of which one of the alternatives for N1 has been adopted. The property mentioned is achieved by (19) or (21) if
b 2 i _ 2 = - yia2i_2
(19c, d)
k; = k ; / ( 1 + 3,2),
(21a, b)
(23)
These equations thus describe a new 4-pole adaptor, N2, indicated in Fig. 2(b) by means of the broken line and shown in compact form in Fig. 2(c). In (15), k~, and k~ may be chosen arbitrarily, but 3,22 cannot be influenced by the choice available. Like for N~, we have thus two choices for making equal to unity one of the coefficients in each one of the equations (16a) and (16b), i.e. on the one hand,
t¢
3'23 = 1,
y2k~/k~.
3'33 =
(17c, d)
k'2 = k',/(1 + 3,2),
I
-k;' ktl '
1"/2/(1 - 3'2)1/>
where
3,32 =
rt
3'22 - - y 2 k 2 / k b
13,21<1,
T2=(G2-G,)/(G2+G,),
,)/(Gi+G,
Vol. 16, No. 3, M a r c h 1989
198
A. Fettweis / Modified wave digital filters a2n-1 I
Ib2n'2
132
®
~
J-~
o-- . . . .
---e
a3
!IGI l 02
I a2n_ 2
IZ]
GI
~
bI
I ¥
1__
Fig. 3. (a) An all-pass structure of degree n. (b) A structure derived from (a) by inserting, at appropriate locations, pairs of inverse multipliers and combining them (except for the two multipliers at the left) with the adaptor to which they are closest.
the Go to G , being the consecutive port conductances. We introduce parameters k~ to k" and k~' to k',' as well as new signal quantities a~ to a~,_] and b6 to b~,_l satisfying, for i = 1 to n, the equations _
/¢
1
b2i_ 2
a2i_ 2 -- ki_la2i_2,
~ t = ki-lb2i-2,
(27a, b) !
!
t!
t
b2i_ 1 = k~ b2~-l,
a2i_ I = kia2i_l,
(27c, d)
with k ~ ,--k o " = 1,
! _
a o' -- a o ,
b o - bo. (28a, b, c, d)
This leads to b~i_ 2 = ?2i_2,2i_2a~i_2 + ?2i_2,2i_lar2i_l,
(29a)
?2i-1,2i-la2i-1,
(29b)
b~i-1
= 72i-1,2i-2a2i-2 +
Ni. For the terminal weights o f Ni we find G i ,-_ ki,2 Gi,
G i " = k"-i" 2 ~v i ,
(31)
at least for those on the left-hand side o f Ni. On the right-hand side o f N~ the terminal weights are the same as the corresponding ones on the lefth a n d side o f N i - l . They are thus those given by (31), but with i replaced by i - 1. In view o f (28a, b) this includes the case i = 1. By appropriate choice o f the k; and k'[, we can make sure that, for each i = 1 to n, one o f the coefficients in (29a) and one of the coefficients in (29b) becomes equal to unity. Each one o f the N;, i = 1 to n, thus requires only two multiply-accumulate steps. The two solutions for which this holds are k,
t ~
I
k,_~/(1
"l-
7,),
k,P! = ( 1 - ? , ) k H ,II (32a, b)
where which leads to k;'-i ?2i-2,2i-2 = --?i
k;_,'
72,-2,2,-1 = (1 + ?i)
(30a) k~ , ,
72i-2,2i--2
?2~-1,2~-2 = (1 - ?i) - -
k",'
k; Y2i-l.2i-i -- ?i k'i'"
(30d)
These equations thus describe the 4-pole a d a p t o r Signal Processing
(33a) (33b)
1,
(33c)
Ti kl-i 'Y2i--1.2i--1- - 1 - ?2 " k;'-l'
(33d)
k~ = k ; _ , / ( 1 + ?,),
(34a)
k,'.' = k~_, ?,/(1 + ?,),
(34b)
72i--1,2i--2
(30c)
-?,k",_~/k~_l,
T2i-2.2i-1 = 1, (30b)
ki-- 1 I! ki-1
=
=
and
A. Fettweis / Modified wave digital filters
which leads to
GI t _
-l! ? ~/2i-2,2i--2 -- - ' y i k i - l l l k i - l ,
(35a)
) / 2 i - 2 , 2 i - I = 1,
(35b)
G'i-i
Gi_(1
Yi
3/2i-1'2i-2 -
(35c)
kl-l'
72i-1.2i-1 = 1.
(35d)
Furthermore, one of the two alternatives thus available for N~ is such that it does not involve any multiplier coefficient larger than 1 in modulus. More precisely, while we have in general 2 n possibilities for achieving the goal that none of the N~ to N, requires more than two multiplyaccumulate steps, there is always one solution, and usually only one, for which none of the final multiplier coefficients is larger than 1 in modulus. This can be shown to be a consequence, among other things, of the fact that one has always either " _ 2, k--L= k , " - -(1 - - -~ k7iJ l
k'i'-,
or
(38b)
72i-2,2i-2
~/2i-1,2i- 1
G~G'[= G'~ ,G,"_~, l__
1 - 3/2 kiC1
199
(39a)
-- ' Y 2 i - 2 , 2 i - 2 ' Y 2 i - l , 2 i - 1 ) G i
1.
(39b)
Similarly, for the solution defined by (34) and (35) we obtain, again using (26) and (31), 2 Gti'-I ~/2i-Z,2i-2 -- ~12i-2,2i-2")12i-l,2i-2 - , , Gi-i
GI l! Gi-1 al ~ _ GI-1
1
(41a)
~12i-2,2i-2")12i-1,2i-2
(41b)
)/2i-2,2i-2, ~/2i- 1,2i-2
GI = G~_, + G~', GI =
(40)
'~2i-2,2i--2~
1 -
-
(42a) r
G~ 1.
(42b)
"Y2i 1,2i-2/
k'[
-3-'-i-, k l 3. R e a l i z a t i o n o f circuits with m o r e general
thus, in view of (26b) and (28a, b)
[k'i'/kll<~ 1,
for i = 1 to n.
transfer properties
(36)
This is also the reason why it is never possible to arrive at a choice such as "}/2i-2,2i-2 = 1. The two multipliers remaining on the left of Fig. 3(b) can be combined into a single multiplier, m = k ~ / k ' , for which we thus also have I m l<~ 1, with the inequality sign usually holding. In some cases this single multiplier may even simply be dropped, in others it may in turn be combined in some fashion with another multiplier, thus leading also to a further saving. We conclude this section by listing a few useful relations that can be derived after some more or less tedious calculations. For the solution defined by (32) and (33) we obtain, using (26) and (31), 2
~/2i-2.2i 2 G~ tp
Gi
~/2i-2,2i--2
I! Gi-1
"Y2i- 1,2i-- 1
a~-l'
'Y2i- 1.2i- 1 1
"~2i-2,2i-2
(37) (38a)
WDFs in lattice configuration have so far turned out to be the most attractive ones from a practical point of view [4]. A lattice W D F can be built by means of two W D F all-pass structures. For these, the results of Section 2 are immediately applicable. In fact, one can make use of these results in different fashions since any all-pass function can be realized by means of either a chain connection of unit elements or a cascade of individual sections of degree, say, one and two. In the former case, we obtain a W D F realization in the form of Fig. 3(a), thus leading to the structure of Fig. 3(b). In the latter, we are led to making use of the results described in relation to Figs. 1 and 2. In all cases, however, there obviously will be, for each complete all-pass structure, only one multiplier that has to be implemented in addition to those inside the 4-pole adaptors such as N~ to N , in Figs. 1 to 3, i.e. in addition to those implemented in the form of multiply-accumulate operations. Vol. 16, No. 3, March 1989
A. Fettweis / Modified wave digiml filters
200
we ignore the remaining multipliers mentioned in the previous paragraph. Clearly, the structure of Fig. 4(a) is equivalent to that of Fig. 4(b), where m~ and m 2 are the coefficients of the multipliers just referred to. Clearly, the structure of Fig. 4(b) is equivalent to those of Figs. 4(c) and 4(d). In these, the multipliers m] and mE, respectively, may again usually be dropped, and the remaining multiplier may be combined with the adder into another multiplyaccumulate operation. Note that the discussion given here does not consider scaling requirements. The situation is, obviously, very similar if the full two-port lattice WDF (Fig. 5(a)) is to be implemented. One of the two main possibilities then available is shown in Fig. 5(b).
2B2
A1
At
2B2
2B2
AI
7-
0,
AI c
oA 2
:~
® (~)
m11m2
is21
I!$i
AI
-
m2
2B2 O
2BI Fig. 4. (a) A lattice W D F with one input and one output terminal. (b) Corresponding structure obtained by realizing the all-pass functions $1 and S 2 as explained in Section 2. (c) and (d) Equivalent structures derived from (b).
A configuration of a lattice WDF for the case that only one input and one output terminal are used is shown in Fig. 4(a). It comprises two branches of all-pass transfer functions S~ and $2, w h i l e A 1 and B 2 a r e the (steady-state or z-transform) input and output signals, respectively. (The factor 2 at the output is irrelevant; it has been included in order to be in conformity with Fig. 23 in [4].) Let S'~ and S~ be those functions corresponding to S~ and $2, respectively, that are obtained by the method explained in Section 2 if Signal Processing
Ale
=
~
~
:~
o 2B2
=
oA 2
®
Fig. 5. (a) Full two-port lattice WDF. (b) Example of a structure derived from (a) by realizing the all-pass functions S 1 and S 2 as explained in Section 2.
201
A. Fettweis I Modified wave digital filters
®
o b2n_l----~ b° ~
®
,. O2n "~-'--b2n o
. . . .02n_1-,---.
I b2n'1o
°°°-GoI b°°
=
b2n.1 O2n° I = " tGn. 1
IIGn.I
I
I
©1 ~
b'2n" I
~ b2n'l
k'n. 1
I G';, j
bo ko
IN°''I
4
t
Go.1
°
Gn.,
~2
O2n*l
1/k'n° 1
a2n*l
Fig. 6. (a) A reference filter in the form of a cascade of unit elements. (b) A corresponding WDF. (c) A structure derived from (b) by means of a method analogous to that described in Section 2.
There are also other W D F structures for which the method is directly applicable. This is the case in particular for a W D F (Fig. 6(b)) obtained from a reference filter in the form of a cascade of unit elements (Fig. 6(a)). We may, in this case, again start from the end with the port conductance Go, similar to what we have done in Section 2, and then proceed to the other end, which leads us to the structure of Fig. 6(c). Note that in Fig. 6 we have adopted a numbering of the Gi, i = 0 to n + 1, which is different from the one we have usually chosen in the case of doubly-terminated filters [4], but which is more in conformity with the one used in Figs. 1 to 3. The process is precisely as that described in Section 2, except at the beginning. Indeed, assuming that a multiplier in cascade with an externally accessible terminal is irrelevant, we may introduce multipliers 1/k~ and kg in cascade with the input and the output terminals, respectively, of port 0. I f we choose k ot __ - kop! = 1 (cf. (28a, b)) everything will be as in Section 2, but if we accept k~ ~ kg, we have one additional degree of freedom. This may be used to make one further coefficient (e.g. in N1) equal to unity.
The methods explained in this section may, of course, also be of interest in the case of circuits having more input and more output terminals than considered here.
4. Stability considerations 4.1. Ideal lossless 4-pole adaptors It is known that the most important advantages of WDFs are their excellent stability properties, especially those under the various nonlinear conditions resulting from the unavoidable quantization operations needed for the signal quantities. Owing to the way we have derived the new circuits described in Sections 2 and 3 from conventional WDFs it follows that the former must inherit all stability properties of the latter. We will briefly examine the mechanism behind this observation. We do this first under the assumption of ideal lossless adaptors Ni. The case of nonideal adaptors Ni will be considered in Subsection 4.2. Consider a 4-pole Ni, i ~ {1, 2 , . . . , n}, of Fig. 3. It is described by equations (26)-(31), with (31) to be used, for a given Ni, also with i replaced by Vol. 16, No. 3, M a r c h 1989
A. Fettweis / Modified wave digital filters
202
i - 1. In order to simplify the writing, we consider specifically the choice i = 2 , in which case the equations just mentioned may be replaced by (11), (12), and (14)-(17). (Note that i = 1 would not be appropriate if we wanted to be general, since for N1 the specific conditions (28) hold.) The instantaneous power (pseudo-power) absorbed by the original adaptor with coefficient 3'2 is given by (43)
P2 = (G~a~+ G2a~) - (G~b~+ G2b2).
It is known (and can be verified directly) that, due to losslessness, we have p2=0. Using (11), (12), and (15), we obtain from (43) p2=
..... 2. . . . 2. . . . . . ~ ¢ . J l a 2 -t- ¢ J 2 a 3 } - - ~ l J l O
2 . . . . . .
2",
2 --i- L r 2 o 3 ) .
(44)
We note that in (44) each one of the four signals, a~, a~, b~, and b~, appears squared and multiplied by the weight of the particular terminal to which the signal refers. Under ideal linear conditions, i.e. if (16) holds, (44) again yields p2=0, assuming of course that (11), (12), (14a), and (17) are satisfied. Mathematically speaking the main difference between (43) and (44) consists of the fact that while in (43) the second parenthesis comprises the same weights (i.e. G1 and G2) as the first one, this is not the case for (44). It is known, however [2, 4, 5], that this does not affect any of the stability proofs that have been provided for WDFs. This implies that the same type of quantization rules that guarantee, if applied to the bi, a specific type of stability in the original WDF, will guarantee the same type of stability in the modified WDF if applied to the bl, with i ranging over an appropriate set of integers. In order to be more specific, let us designate by b~q the value resulting from b'~ by quantization. There will be no observable small-scale or largescale limit cycle if quantization is carried out in such a way that Ib:ql~
is excluded, there will be no unobservable limit cycle either. The conditions mentioned allow us also to guarantee stability under looped conditions and to state equally that limit cycles superimposed onto the output signal if the input is an arbitrary periodic signal will be very small. Of particular interest, is the fact that forcedresponse stability and related properties [ 1, 8-11] can be guaranteed by simply requiring that for all relevant i's the value of blq is obtained from the corresponding bl by adopting for overflow correction, e.g. either simple saturation or a triangular overflow characteristic with slopes of +45 °. The first of these possibilities is directly available in several digital signal processors (e.g. in the TMS 320 [7]) at the completion of each multiplyaccumulate step. Thus, since the computation of any b'iq requires just one such step, using the option available in such a digital signal processor automatically guarantees forced-response stability and related properties. It should be stressed that all this holds for any type of signal representation, in particular not only for fixed-point arithmetic but also for floatingpoint arithmetic. This is particularly important since any floating-point digital filter that cannot be built strictly without parasitic oscillation can always sustain a parasitic oscillation involving the highest possible value of the exponent [6, 12], in practice therefore a parasitic oscillation of high amplitude. Finally, it should be recalled that an expression such as that appearing on the right-hand side of (44) corresponds to the definition of the power absorbed in the case of a class of digital filters that appears to be the only one that offers all the same good features as conventional WDFs, yet is, in a sense, somewhat more general [5]. It had been shown in [5] that this extended class can always be obtained from conventional WDFs by precisely the type of transformation described in Section 2. Since this type of transformation is of a rather trivial nature, the digital filters described in this paper should still appropriately be called "wave digital filters".
A. Fettweis / Modified wave digital filters
In [5] the question had been left open as to whether the transformation just referred to can lead to structures offering true advantages over those obtainable by the more conventional W D F approach. The results of the present paper show that this question can now be answered in the affirmative. 4.2. L o s s y building 4-pole adaptors
In a conventional W D F an adaptor can be easily made strictly lossless, at least under the assumption that all additions and multiplications are carried out exactly, i.e. that the circuit is strictly linear. This is due to the fact that, for example, for a two-port adaptor described by (13) strict losslessness is fulfilled for any value of y2 provided we adopt port weights G~ and G2 that satisfy (14). Since the latter requirement is trivial to meet, we can, in particular, adopt for 3'2 any value expressible in a binary representation with a finite number of bits. In this case, all four coefficients in (13), in particular also the coefficients (1 - Y2) and (1 + Y2), are expressible in the same way. This same simple property does not hold for the adaptor N~, i = 1 to n, say, in an all-pass section of the type of Fig. 3(b). In order to show this we simply consider NI. Since G o - Go = Go we obtain, for i = 1, from (37) and (40) yo2o Yoo- 1 'Y]l
and
2 YooYio= Too-
1,
(45a, b) respectively. Thus, Yoo and Yl~ (first equation) as well as yo6 and Y~o (second equation) have to satisfy an expression that usually cannot be fulfilled if these coefficients have to be expressed in a finite number of binary digits. In order to solve this dilemma we observe that for all stability aspects discussed in Subsection 4.1 to hold, it is merely required that the adaptor Ni are passive, i.e. such that p~/> 0, i = 1 to n, and this for all values of the input signals of Ni, pi being defined as given by (44) (for i = 2); strict losslessness, i.e. p~ = 0 instead of p~ ~ 0, is not needed.
203
We first consider NI ; more specifically, the choice leading to (7). Let Yooq and YHq be the quantized values of Too and 3'11, respectively. We may assume the value of Go to be given, but G'1 and G [ may have to be replaced by new values, which we designate by G'lq and G(q, respectively; suitable choices for these still have to determined. Let Plq be the power absorbed by N1 under these new conditions. We have Plq
=
Goa~ + tJlqal "-" '2 -- G o b o2 - ~.-,iq,,1 " h'2 •
(46)
Using (4) (but with Yoo and Yl~ replaced by •OOq and Tllq, respectively) and yo~ = Ylo = 1, this yields Plq = ( G o - yO2oqGo- Glq)ao"2 + ( G ' l q - G o - Y]lqGlq)al 2 ,, ,2 - 2( YooqGo+ Y] ~qG~q)aoa'~.
(47)
Any choice of yooq, ~llq, G'lq, and G~q for which p~q~0 for all ao and a'~ is acceptable. We will now show that the problem thus formulated is indeed solvable. For this, let us choose G'lq and G(q such that
G'lq = (1 - Yooqyllq) G o ,
(48a)
G ~ q = - Tooq G o , '~1 I q
(48b)
these expressions corresponding in a sense to (39b) and (38b), respectively, with i = 1. In order to lead to the desired stability results, these expressions must yield positive values of the weights Grlq and G~'q. For this, observe that in view of (lb) and (7) we have YOOYll< 0 , and we may thus assume the quantization to be such that the signs of Yoo and yll are not reversed, i.e. in particular that --TOOqYllq ~ O,
-- YOOq//")/11 q ~ O.
(49)
Substitution of (48) into (47) yields
plq = (1- T~oq+ T°°ql Goa~,
(50)
~/1 l q /
and thus requires 'y20q -- ( "YOOq/'~1 lq) ~ 1,
(51) Vol. 16, No. 3. March 1989
204
A. Fettweis / Modified wave digital filters
which, in view of (49), is equivalent to `/20q-l-[`/OOq/`/llq[ ~ 1.
(52)
Comparison with (45a) shows that it is easy to carry out a quantization of `/oo and `/n such that (51) is fulfilled. All requirements are then met if G~q and G~'q are chosen according to (48). Next we consider again N1, but with the choice leading to (9). From (46) we now obtain Plq = ( G o - `/ooq 2 G o - `/10q 2 I. J. l. q. j a o 2 q- ( G'lq -- Go __ 1idlq) .~. . .a 2 -- 2(`/ooqGo+ `/loqG~q)aoa'l.
(53)
By an approach similar to that used before, we find that plq~>0 for all ao and a~ if, for example, we quantize `/oo and Y~o in such a way that
where GPlqand G~'q may be assumed to be known from quantizing the coefficients of N 1. Any choice o f `/22q, `/33q, G ~ q , and G~q for which P2q ~ 0 f o r all a2' and a 3' is acceptable. One such choice is obtained if we put G~q = (1 - `/22q`/33q) Gtlq,
(58a)
G'~q : -( `/z2q/ `/33q)O~q,
(58b)
these expressions corresponding in a sense to (39b) and (38b), respectively, with i = 2. This leads again to positive weights G~q and G~q; indeed, it follows from (14b), (19a), and (19d) that `/22Y33< 0 so that we may assume `/22q`/33q
<
0,
`/22q/`/33q
<
(59)
0.
Inserting (58) into (57) leads to P2q = ( G l q - " `/22qGlq..l_( 2 , 2 `/22q/ ` / 3 3 q ) G lpq ) a
`/200q -- `/00q`/10q ~ 1,
and if we select G~q and G~q such that (cf. (41b) and (42a) for i = 1) G~q = - ( ` / o o q / ` / , o q ) G o ,
- G " lq + -(-Jo" G l 'q --
(55a, b) Assume next that the circuit also involves N2. Having performed a quantization of the coefficients of N 1 and having thus also chosen G~lq and G~'q, we may now approach N2. We assume first that for N2 the choice leading to (19) has been adopted. Let `/22q and `/33q be the quantized versions of `/22 and `/33, respectively; let G~q and G~q be corresponding choices for G~ and G~, respectively; and let P2q be the value thus replacing P2 given by (44). We have ~tt
t2-- i,"~!
t2
i.~v 1..J2 i"¢vt l.~v2
P2q = I J l q a 2 --t-v 2 q a 3 -- ~...,lqU2 -- ,,.S2qt,,3 .
(56) From this we obtain, using (16) (with `/22 and `/33 replaced by `/22q and `/33q, respectively) together with (19b) and (19c), P2q
q- ( G ~ q -
O;q-
Signal Processing
2
t!
t
`/220 -- (`/22q/`/33q) ~ G l q / G l q .
(61)
Hence, a quantization according to (61), together with a choice of G~q and G~q according to (58), meets all the requirements. If, for N2, we adopt the choice leading to (21), it turns out that (57) is replaced by P 2 q = ( G l q " - `/z2qGlq 2 t -F ( G ~ q -
t Glq-
--
2 ~ t ¢ \ a2t2 `/32qO2q)
~ , / x t2 IJ2q)a 3
-- 2(`/22qG~q + `/32qG~q)a~a~3.
(62)
We now have to perform the quantization of "/22 and `/32 as well as the choice of G~q and G~q in such a way that P2q/> 0 for all a~ and a~. A possible simple solution for this can be found in a similar way as before, i.e. by combining the requirement `/]2q -- `/22q`/32q ~ G ; q / G ~ q
(63)
with the choice G~q = G ~ q + G~q.
(64a, b)
2 .I--/2q) . . . . a3 2 `/33q
- 2(`/22qG~q+ `/33qG'~q)a'2a'3,
from which we derive the requirement
G~q = - (`/22q/~32q) G',q,
( G l qtt- - `/22qGlq 2 , __ i.-~. J 2 q /Xa 2,2
t2, (60)
(54)
(57)
If n > 2, the process can be continued until we reach N,. Thus, for any i ~ {1, 2 . . . . . n} and with
205
A . F e t t w e i s / M o d i f i e d w a v e digital filters
G~-l,q and G"i--l,q known, we must quantize the coefficients of Ni in such a way that piq >/0 for all choices of a~i-, and a~i-2, with ~t¢ t2 ..~ g,~! _t'2 P i q :" I J i - l , q a 2 i 2 ~Jiq~2i-1 1¢"¢t I.~t2 - - ~.j i _ l , q U 2 i _ 2 -
['-¢o I~t2 ,~j i q U 2 i _ l .
A possible solution for this is immediately obtained as a generalization of our results given above. Thus, if for N~ we adopt the choice leading to (33) we may first quantize Y2~-2,z~-2 and y2~-~,z~-~ according to 2 '~2i-2,2i-2.q
T2i
2,2i-2,q_< GT-l,q ~
'~2i--1,2i--l,q
(65)
GI l.q
and then choose Glq and G~"qaccording to 1,q)G;_l,q,
(66a)
G,q--(72,-2,2,-2.q/72, ~.2,-~.q)G',-,.q.
(66b)
G l q = ( 1 - 3/2i_2,2i_2,q~/2i_1,2i
t! _
Similarly, if for Ni we adopt the choice leading to (35) we may quantize Yz~-z,2~-2 and yz~ ~.2~-2 according to 2 ' Y 2 i - 2 , 2 i - 2 , q - - 'Y2i--2,2i 2 , q T 2 i - l , 2 i - 2 , q G"
(67)
GI_I, q'
tt _
¢
G i q - - ( Y2i-2,2i-2,q/ Y:i-l,2i-2,q)Gi-l,q,
(68a)
' - Gti-l,q + G','q. Giq
(68b)
-
If, in such a process, an optimum solution (say, with respect to the transmission properties of the circuit) is desired for the quantized coefficients, we would, of course, have to repeat the full cycle from 1 to n as often as needed. Note that we could then encounter, for one or more of the i c {1,2 . . . . , n}, a case for which one of the two multiplier coefficients may be chosen equal to zero. We would then also choose the other coefficient equal to zero, but would restrict this situation to the case leading to (33), thus to ~/2i 2 , 2 i - 2 , q = ~/2i--1,2i--l,q ~ 0
and l,q,
A need for this does not arise if m may simply be dropped. In other cases, such as in Fig. 4(c), the actual problem is that of finding a quantized value for rn2/rn~, where rn~ and m 2 in turn may be products of factors such as m, but this is not a question of stability. There may be cases, however, where passivity from input to output must be guaranteed. In such cases it is best to consider the corresponding transfer function. Let A~,_~ and B~,_~ be the steadystate (or z-transform) quantities corresponding to a~,-1 and b~,_~, respectively (Fig. 3(b)). If all adaptors N 1to N n are designed as discussed above, i.e., if these are all passive, we have [2, 5] r
2
-o°1tt 2°t ,I2 -0,
i.e. for the transfer function S
Isl= lo" / a;I,
and then choose Glq and G(q according to
'
rn = k ,r!/ k , .¢
!
~<_ i-*,q
G~q- -- Gi
The problem of determining N~ then becomes trivial. After having completed the quantization of the coefficients of the adaptors N~, i = 1 to n, there may remain the problem of choosing 1/k" and k" (cf. Fig. 3(b)), or simply that of choosing
G i q"
= G"i - l , q -
where S = B'z,_~/ A'2,__~.
Note that in our stability analysis we have specifically examined the case of the structures of Figs. 1-3. It is obvious that similar considerations hold for other structures, e.g. for the one of Fig. 6. In the above procedure of quantizing the multiplier coefficients in such a way that the adaptors N~, i = 1 to n, remain passive, we have, for each case considered, given a specific solution by which the desired goal can be achieved. It should be stressed that other solutions may very well be feasible. Thus, considering the general case of N~, adopting the choice leading to (33), we may replace (66a) by
Glq = --(Y:i-l.:,-l.q/Y:i-2,:i-:.q)G'[-i.q.
(69)
It can be shown that performing the quantization according to (65), and selecting G~q and GSq according to (69) and (66b), respectively, also meets all the requirements. Vol. 16, No. 3, March 1989
206
A. Fettweis / Modified wave digital filters
However, such an alternative cannot be better than the one given by (65) and (66). Indeed, using (65) with i replaced by i + 1 , we see that. the quantity Ki = G "lq;/ ~v' l q should be as large as possible in order to facilitate as much as possible the quantization of Ni÷l. We can verify that the ratio of the values of Ki obtained by choosing Glq according to (69) and (66a), respectively, is equal to
( ~/2i-2,2i-2,q 2 -- "Y2i-2,2i-2,q~ a i -,l , q ~/2i-l,2i-l,q] ai-l,q
which, according to (65), is 41. The situation is similar if, for N~, the choice leading to (35) is considered. An alternative solution is then obtained if we replace (68b) by G l q = - G~(t i,q/('y2i_2,2i_2,q'Y2i_l,2i_2,q),
(70)
but again it is never better than the one given originally. The reason for this is the same as that given in the previous paragraph.
5. WDFs involving adaptors with more than two ports In certain types of WDFs we have to make use of adaptors with more than two ports. The question thus arises as to whether the present approach can be extended to such cases. In principle this question can be answered in the affirmative. It is always possible to introduce pairs of inverse multipliers as we have done in Section 2 and to make use of the freedom thus gained in order to introduce simplifications for the realization of the adaptors, Hence, we can take advantage of this possibility also in the case of adaptors with more than two ports. In general, however, we cannot expect to arrive at as substantial a gain as in the case of two-port adaptors. The reason for this is that the number of entries of a matrix describing an adaptor increases with the square of the number of ports, while the number of degrees of freedom gained Signal Processing
for an adaptor increases only linearly with the number of its ports. It is thus clear that beyond two-port adaptors the method appears to be most attractive in the case of three-port adaptors, which are also the ones that are most important in practice. We do not examine this in detail in this paper, but simply point out a few aspects. We have to expect that in the case of a three-port adaptor the resulting 6-pole block will be such that two multiply-accumulate steps will be necessary for each one of the three output signals (except for the output signal at a reflection-free port, which needs only one multiply-accumulate step). A difficulty arises in this case with respect to implementing a simple saturation characteristic, at least if the only possibility of doing it is to apply it after each multiply-accumulate step individually, and if the three values to be added do not all have the same sign. A way of avoiding this difficulty is offered if none o f the coefficients involved is larger than unity in modulus and if there exists a possibility to arrange the order of the computations in such a way that the first accumulation step concerns two numbers of opposite sign. Even without the latter type of facility, however, overflow stability (as opposed to the more stringent forced-response stability) can be shown to remain guaranteed.
References [1] T.A.C.M. Claesen, W.F.G. Mecklenbr~iuker and J.B.H. Peek, "On the stability of the forced response of digital filters with overflownonlinearities", IEEE Trans. Circuits Syst., Vol. CAS-22, No. 8, August 1975, pp. 692-696. [2] A. Fettweis, "Some general properties of signal-flow networks", in: J.K. Skwirzynski and J.O. Scanlan, eds., Networks and Signal Theory, Peter Peregrinus, London, England, 1973, pp. 48-59. [3] A. Fettweis, "Digital filters related to classical filter networks", Arch. Elektr. Obertr., Vol. 25, No. 2, February 1971, pp. 79-89; reprinted in: Selected Papers in Digital Signal Processing II, IEEE Press, New York, 1976, pp. 510-524. [4] A. Fettweis, "Wave digital filters: theory and practice", Proc. IEEE, Vol. 74, No. 2, February 1986, pp. 270-327.
A. Fettweis / Modified wave digital filters [5] A. Fettweis, "Passivity and losslessness in digital filter structures", Arch. Elektr. Ubertr., Vol. 42, No. 1, January/February 1988, pp. 1-8. [6] T. Kaneko, "Limit cycle oscillations in floating point digital filters", IEEE Trans. Audio Electroacoust., Vol. AU-21, No. 2, April 1973, pp. 100-106. [7] S.S. Magar, E.R. Claudel and A.W. Leigh, "A microcomputer with digital signal processing capability", in: Dig. Tech. Papers, IEEE Int. Solid-State Circuits Conf., San Francisco, CA, February 1982, pp. 32-33, and 284. [8] K. Meerk6tter, "Beitr~ge zur Theorie tier Wellendigitalfilter", Doctoral Dissertation, Ruhr-Universit~it Bocbum, Bochum, W. Germany, February 1979.
207
[9] K. Meerk6tter, "Incremental pseudo-passivity of wave digital filters", Proc. Ist European Signal Processing Conf. (EUSIPCO-80), Lausanne, Switzerland, September 1980, pp. 27-32. [10] H. Samueli and A.N. Willson, Jr., "Almost period P sequences and the analysis of forced overflow oscillations in digital filters", IEEE Trans. Circuits Syst., Vol. CAS-29, No. 8, August 1982, pp. 510-515. [11] A.N. Willson, Jr., "Some effects of quantization and adder overflow on the forced response of digital filters", Bell. Syst. Tech. J., Vol. 51, April 1972, pp. 863-887. [12] M.I. Youssef, "Realisierung yon Wellendigitalfiltern mit Gleitkommaarithmetik", Doctoral Dissertation, RuhrUniversit~it Bochum, Bochum, W. Germany, January 1988.
Vol. 16, No. 3, March 1989