Block realization of digital filters - IEEE Xplore

2 downloads 0 Views 558KB Size Report
lEEE TRANSACTIO3 1S ON AUDIO AND ELECTROACOUSTICS, VOL. AU-20, NO. 4, OCTOBER 1972 ock Rea. Digital Filters. CHARLES S. BURRUS.
230

lEEE TRANSACTIO31S ON AUDIO AND ELECTROACOUSTICS,

ock Rea Digital Filters CHARLES S. BURRUS

Absfracf-Different forms of block recursive digital filters are formulated using a matrix representation of convolution. These approaches have the same relation to recursive filtersthat fastconvolution does to nonrecursive filters. The multiplication efficiencies are calculated and compared, showing that the block realization can become more efficient for filters with orders exceeding approximately 25. The general improvementson stability and sensitivity to roundoff error and coefficient accuracy are discussed.

VOL. AU-20,

NO.

4,OCTOBER 1972

It is the purpose of this paper to present a form for general block convolution, to show several implementations of thematrixformulation [ 6 ] , andtopresent Voelcker’smethod [5] in the matrix format for better insight into its properties. A new matrix formulation is developed based on the idea of nieek [9] which appears t o be promising. Finally, a comparison is made of the computational efficiencies of thevariousblockimplementations. The reason for studying these new structures is that theypromise to be computationally more efficient for high-order filters andless sensitive t o roundoff error and coefficient accuracy, which are often the limiting factors for recursive filter realizations. Ii. Block Convolution T h e usual form for causal convolution is given by k

1. introduction

y(k)

h(K - Z)x(l) = h ( k ) * x(h)

= 1-0

The idea of filtering or processing number sequences which can be written in matrix form in blocks of length greater than one but smaller than the total length of the sequence has been developed and used in several forms with nonrecursive digital filters [l], [a] underthename of sectioningoron-going processing. These methods were developed t o allow the use of the fast Fourier transform (FFT) for high-speed implementation of convolution. Application of block processing t o recursive (infiniteimpulse response) filters was first suggested by Gold and The H matrix is partitioned into LXL square submaJordan 131 who showed that rational transfer functions trices, and the X and Y vectors are partitioned into Lcould be realized by finite convolution. Their formulalength sections or blocks. This is illustrated for L = 3 by tion, however, made itdifficult to study theeffects of the feedback or the implementation. Chanoux[4] considered the efficiency of one implementation and the error “noise” of asecond-orderfilter.Voelcker andI-lartquist [5] approached the same problem but from a different point of view. They used z-transform transfer functionst o show and that rational transfer functions can be realized with finite convolutionandblockfeedback.Unfortunately,their (3) formulation sometimes had stability problems. Stili another approach to the problem was given by Burrus [6], [7] using a matrixrepresentation of convolution that resultsin a state-variabledescriptionwith block Using these submatrices and blocks, (1) becomes feedback. This formulation provides several implementations and a direct statement of the stability of the HI a , 0 [SI and Meek and implementation.ReadandMeek (4) Veletsos [9] have also presented methods that are block Hz HI Ho . . . feedback algorithms, but in a form that makes stability and sensitivity analysis difficult. Manuscript received April 19, 1972. This work was supported in part by the National Science Foundation under Grant GK-23697. Parts of this paper were presented at the IEEE Arden House Workshop on Digital Filtering, Harriman, X. Y., January 1972. The author is with the Department of Electrical Engineering, Rice University, Houston, Tex. 77001.

From this form the generalexpression for the kth output block is seen t o be k Y h

Hh-iXI

= 1= 0

(5)

231

BURRUS: BLOCK REALIZATIOS

H.

Fig. 1. Block convolution. Underlined characters are boldface in text.

B ( z ) Y ( z )= A ( z ) X ( z ) . (10) which is a convolution of convolutions. This is illustrated by a block flow graph in Fig. 1 similar to the approach In terms of convolution this becomes in [ 6 ] .Each of the block-convolution operators H I could be reduced by further blocking, or rather than this direct b(K) * y ( K ) = a ( k ) * x ( k ) . (11) form, a cascade form could beused. Also it is easy to see This can be expressed in matrix form, which isshown that asL goes to one, theblock convolution becomes the here for M= 3 and N = 2. usual scalar convolution of (1). Each H I block could be implemented by direct multiplication or by fast convolution with the FFT. I t is generallymore efficient tocarryoutthecomputation in larger blocks. For example, in (4) the k = 2 output block is given by (6)

Thisrectangularoperatorcanbeimplementedbythe FFT, and when the calculations are carried out in this manner with a row of matrices operating on a string of input blocks to give a single output block, the approach isaform of theoverlap-saveimplementation [l], [a]. If (6) were carried out by columns of matrices such as

Theinputandoutputarepartitionedinto blocksof length L and the block number is denoted by subscript, x 0 = (x(O), x(l), . . . , x ( L - 1 ) ) T and the outputs due to all theX1 were summed, the approach would be the same as the overlap-add implemenx 1 = {x@), x(Z l), . . . , x(2L - 1 ) ) T tation [I], [2]. The computational efficiency of fast convolution generallyismaximumforblocklengthslongerthanthe Yo = {y(O), . ' . ,y ( L - 1))T. length of the operator, and for that case (6) and (7) are exactly the overlap-save and overlap-add methods. Only under very special storage coostraints might the general The A and B matrices in (12) are partitioned into L X L form of (5) become attractive. submatrices denoted (and illustrated here forL = 3 )

+

II. Block Recursion

First the method of block-state feedback [6] will be developed in a way to show the various implementations and efficiencies. Consider a filter described by a rational z-transformtransferfunctionwhere x ( k ) is the input, y(K) the output, and A ( k ) the pulseresponse. The assumed relations are

BO=

61

1

0

[I6 2 bl 0

1 01

-a0 0

0

a1

..a2

a.

0 ]

a1

a0

and

B1 = 0 3['

0

b3 b2 0 bz

0 a2 and

A l = [0

0

0 0

(13)

bbal ] a1

a,]. 0

(14)

232

IEEE TRANSACTIONS ON AUDIO AND ELECTROACOUSTICS, OCTODl?I
M . This is not TABLE I1 necessary [SI, [6], but the shorter block lengths compliOptimal Block Length L for Respective Implementations of Table I cate the approach considerably and do not seem t o offer much. The optimal length was found by a search using values of L = 2p. A direct recursive implementation with 2 M= N requires 2M real multiplications and is given as 4 Fo = 2 M for comparison. T h e case for F4 was calculated 8 10 16 16 16 32 64 -~ ~. in a slightly different manner from that given in (23). 32 32 64 256 20 32 When M is less than one-half L , then a shorter FFT can 64 128 512 40 64 128 1024 60256 64 128 128 . be used for B1 in (20). Advantage of this was taken in 80 128256 512 256 2096 calculating F4. A comparison of the multiplication effi100 128 2096 1024 512 512 ciency of the various implementations is shown in Table I. In addition to the multiplicationefficiency, the length L that must be processed at once is also important, and looksveryinterestingwouldbeto use differentword Table I1 presents the optimal lengths that correspond to lengths in the realization of the convolution part and the the data in Table I. feedback part. This would be particularly applicable for Severalfeaturesshouldbenotedfromthesetables. minicomputerrealizationswheremultiprecisionarithFrom (19) FI can be seen to be always greater than the metic is normally used and speed is important.I t is quite direct realization Fo. Fz becomes less than Fo for about possible thatanalgorithmrequiringmoremultiplicaorder40, Fx for order 30, F4 for order 45, and FS for tions might require fewer bits to be manipulated because order 20. These numbers change at different rates, and of allowing shorter word lengths. There is need for much i t should be noted that the more efficient often require more work in this area. longer block lengths and therefore more computer storage and time delay. The multiplicationefficiency is a feature References of these algorithms, but other factors, such as storage [l] T. G. Stockham, “High speed convolution and correlation,” in requirements,wordlengthconstraints,parallelopera1966 Spring Joint Comput. Conf., A F I P S Conf. Proc., vol. 28. Washington, D. C.: Spartan, 1966. tions, etc., are also important. VI. Conclusions

T h e rationaltransfer-functionrealizationspresented in this paper have the same relation to recursive digital filters as the FFT fast convolution does to nonrecursive digitalfilters. T h e multiplication efficiency crossover occurs for filter orders between 20 and 40. There are several features that all Hock approaches seem to have. They allow caIculations t o bemadein parallel at a slower rate-the block rate-but cause a time delay of one block length. Since most of the output is calculated by a convolution process, and a relatively small part is contributed by the feedback mechanism, the coefficient accuracy and roundoff problems should be closer t o those of convolution rather than recursion. We are further helped by the fact that the poles of the block implementation are closer to the origin than those of a direct implementation. One possible approach that

[2]B.Gold and C. M. Rader, DigitalProcessing of Signals. New York: McGraw-Hill, 1969. [3]B. Go!$ and K. L. Jordan, Jr., “Anote on digital filter synthesis, Proc. {FEE (Lett.), vol. 56, pp. 1717-1718, Oct. 1968. of recursivedigital filters using the [4] D. Chanoux,Synthesis FFT,” IEEE Trans.Audio Electroacoust.(SpecialIssue on DigitalFiltering) (Corresp.), vol. AU-18,pp. 211-212, June 1970. [SI H. B. Voekker and E. E. Hartquist, “Digital filtering via block recursLon. I E E E Trans. Audio Electroacnust. (Saecial Issue on Digital Filterin;), vol. AUi18, pp-1691i76, J u i e i 9 7 0 . [6] C. S. Burrus, Blockimplementation of digitalfilters,” IEEE Trans. Circuit Theory (S$ecial Issue on Ac6ve and Digital Networks), VOI. CT-18, pp. 697-701, NOV.1971. [7] -, “A comparison of blockprocessing type digital filters,” presented atthe 5th AsilomarConf. CircuitsandSystems. Pacific Grove. Calif.. Nov. 9. 1971. [SI R. Read and Meek, “Digkal filters with poles via the FFT,” IEEE Trans. Audio Electroacoust. (Corresp.), vol. AU-19, pp. 322-323, Dec. 1971. [9] J. W. Meek and A. S. Veletsos, “Fast convolution for recursive digitalfilters,” IEEE Trans.Audio Electroacoust. (Corresp.), vol. AU-20, pp. 93-94, Mar. 1972. [lo] J. W. Cooley, P. A. W. Lewis, and P. D. Welck, “The fast Fourier transformalgorithmsand its applications,IBMRes. Rep. RC-1743, Feb. 1967. [ l l ] C. S. Burrus and T. W. Parks, “Time domaindesign of recursive dlgltal filters,” IEEE Trans. Audio Electroacoust. (Special Issue on Digital Filtering), vol. AU-18, pp. 137-141, June 1970. ~~

J.