August, August ,, 1981 1981 LIDS-P-1116 ROUNDOFF NOISE AND SCALING IN THE DIGITAL IMPLEMENTATION OF CONTROL COMPENSATORS by Paul Moroney LINKABIT Corporation 1L453 Roselle Street 92121 San Diego, California Alan S. Willsky Laboratory for Information and Decision Systems Department of Electrical Engineering and Computer Science 02139 Cambridge, Massachusetts Paul K. Houpt Laboratory for Information and Decision Systems Department of Mechanical Engineering Massachusetts Institute of Technology 02139 Cambridge, Massachusetts ABSTRACT Researchers in digital signal processing have examined at length the effects of finite wordlength in the design of digital The issues that have been considered apply to any filters. In particular, the design of digital control digital system. In this paper we will use, systems must consider these issues. adapt, and extend the ideas developed in digital signal processing to the issue of roundoff noise in digital LQG We will then examine (linear-quadratic-Gaussian) compensators. the roundoff noise effects for a particular LQG example and several different implementation structures. This work was performed in part at the MIT Laboratory for Information and Decision Systems with support provided by NASA Ames under grant NGL-22-009-124 and in part at the Charles Stark Draper Laboratory. 1. INTRODUCTION In the design of digital filters it has strated that been amply demon- one must consider the effects of the finite preci- sion inherent in the digital implementation. This finite preci- leads to degradation due to quantization noise, coefficient sion inaccuracy, and limit cycle the been effects have of a great deal of research in digital signal subject processing. These oscillations. [1,2,3] It is also important to investigate issues these in the application of digital processing to other fields - specifically, to discrete-time designs control usually have systems. been implemented that could effectively past, controller large, expensive, the on However, the number of applica- floating-point computer systems. tions In use small-scale hardware control systems that work in real time has greatly increased, with advent of the inexpensive microprocessor. the menting such compensators, we must consider the especially When imple- problems that arise in dealing with the fixed-point arithmetic and finite wordlengths of small-scale digital systems. As these problems are not addressed at all in the idealized mathematical design proce- dures that have been developed to date for control, a methodology must be established for treating the digital implementation of a compensator design. For developed this methodology, we have for implementing digital turned filters. to the results On one level, a single-input digital single-output filter. However, feedback loop around require 'us to the adapt implementations. ideas digital as compensator is simply a we will show, the existence of a digital compensator frequently will and extend the ideas developed for filter These adaptations of digital signal processing will serve as the basis for techniques dealing with round- off noise, scaling, coefficient rounding, and limit cycles in digital feedback compensators. Some work has already been done concerning controller implementation [5-14]. However, these have been limited in scope, typically treating only a few points, or only one example. Our intention is quite different - a systematic extension and adaptation of digital signal processing ideas to controller implementation. We have reported results concerning the coefficient quan- tization issue in [15] and the issues of [16]. In this paper, we will examine scaling and roundoff quantization in fixed-point controller implementations. The basic idea behind the examination of roundoff the noise same for digital filters and digital compensators. mating the results of intermediate computations, or values, node is Approxisignal with a finite number of bits will cause a degradation in the system's performance as compared to the ideal. Assuming that a given quantitative performance measure is provided, we can measure the tradeoff in the number Then, assuming of bits vs. the degradation. that we specify an acceptable amount of degrada- -2- needed meet this goal. to In fixed-point digital systems, this can be done by bounding the effects also would this however, of quantization additive white noise, thus allowing analysis com- More noise. that the roundoff operation can be modeled as assume we [8-11,17]; include limit cycle effects and thus constitute very loose bounds on quantization monly, bits can determine the minimum number of node variable tion, we [3]. techniques the linear of use system We will adopt the latter approach in our investigation. In order to bring out specific results concerning control system implementations, we will consider a specific class of con- problems trol linear-quadratic-Gaussian (LQG) problems. The in the compensator resulting from the LQG framework is sense that it minimizes a quadratic functional of the state and This control fluctuations. detail in optimal Section 2. compensator will be described in It is very convenient also to treat this quadratic functional as the index of performance by which we measure the relative merit of different digital implementations of a controller design. performance index Thus any given implementation will produce greater than the 'optimal' ideal (infinite- This increase will reflect the degradation due precision) value. to some finite wordlength effect, such as noise. The fact roundoff *the output quantization that we use this performance metric, somewhat different from but more appropriate than the of a noise used in -3- digital 1 2 -norm (variance) filtering analysis, is from another reason out results differ signal processing literature. digital in reported those the If the problem under con- sideration had been a Kalman or Weiner filter, a then suitable performance measure would have been the trace of the error covariance matrix. Our results extend in a straightforward manner to this case, and also to the output noise power case, measure. In any the control problem, it is the presence of a feedback for loop through some controlled system which makes our techniques novel. for structure a results and Specifically, as we will see, the concept of a digital compensator, the notation developed by Chan [18] for describing the operations in a filter digital structure (including precedence), approaches to scaling, roundoff noise analysis techniques, and the minimum roundoff noise struc- tures of Mullis and Roberts 119,20] and Hwang 121] all need to be adapted for the control problem. deal only with Also, in this single-output single-input systems, control multiple- although our results can be extended to multiple-input output systems The shall we paper [16]. organization of this paper will be as follows. In Sec- tion 2 we will describe the LQG control problem and the resulting ideal optimal compensator - it is this ideal compensator that must be implemented with as little degradation as possible due to finite precision effects. somewhat different The notion of a compensator structure, than a conventional filter structure, and an adaptation of the Chan notation for -4- describing such structures will be presented in Section 3. In Section 4 we will review the digital signal processing techniques for scaling structures to satisfy the dynamic range constraints of fixed-point digital filters, and will we how show digital -control systems. these ideas must be modified for The scaling issue, of course, is cen- tral to any meaningful measurement of roundoff quantization noise effects. noise In Section 5 we will review the techniques for roundoff analysis in digital filtering, and extend these to digital controllers. The minimum roundoff noise structures of Mullis and Roberts [19,20] and Hwang [21] will be adapted for controllers in Section 6, along with a treatment of the more tion techniques introduced troller implementation. developed) we by Chan, optimiza- general also as adapted for con- Finally, (using the techniques we have will compare the roundoff quantization noise per- formance of several scaled structures for implementing a specific LQG controller example. pensator structure, We will also show that a 'default' quite natural com- for the control designer to implement, is in fact not a very desirable structure to select. 2. LQG CONTROLLER DESIGN In section we will introduce the single-input single- this design - one that would only be possible with infinite-precision From this ideal we wish to select a finite-precision arithmetic. implementation which in results a digital filter as little degradation (in the directly This is performance index) as possible. designing that compensator of course only specify an ideal will procedure This results. optimal the and problem output LQG control using a analogous to bilinear transformation, implementing impulse invariance, or whatever technique, and then the 'ideal' design in finite-precision. Let us assume that we wish to design a digital discrete-time compensator for a continuous-time system (a 'plant'), and that piecewise the control signal will be assume that constant. We will also the output of the plant is sampled at the rate 1/T. The term linear-quadratic-Gaussian refers to the following design problem: given a linear discrete-time model of a continuous-time that system subject to disturbances Gaussian noises, design a can be modeled as white linear compensator that minimizes a quadratic performance index. Consider the following discrete-time model of a continuous- time plant: x(k+l) = ux(k) + ru(k) + w (k) (1) y(k) = Lx(k) + w 2 (k) -6- where x is the state n-vector, u and y are the control and output variables, is an n x n state transition matrix, r is an n x--l 4 input gain matrix, and L is a L x. nt output gain matrix. The quantities w 1 and w 2 are the discrete Gaussian noises referred to above. These noises are zero mean, with covariance matrices el, (n x n) and e 2 (1 x 1), respectively. The performance index can be written as follows(2) ix I(k)Q x(k)+ 2x'(k) Mu(k) + Ru2(k)I - E J = i+ k=-i Thus we see that J reflects the weighted squared of the states and of the control. deviations The weighting parameters Q, M, and R can be specified by the designer. The determination of a linear compensator that minimizes J involves the solution of plant and two Ricatti weighting parameters. equations involving the However, the resulting control u(k) typically will depend on past values of the plant output to and including y(k) [22]. Unfortunately, pensator is not directly feasible for up the resulting com- implementation, since a certain amount of time must be allowed to compute u(k) from y(k), y(k-l), etc. Yet u(k) and y(k) refer to the control and plant output at identical times. Some delay must be accounted for and thus the design as described so far is unfeasible. Fortunately, Kwakernaak and Sivan [23] have presented a design procedure that does account for this delay. compensator is optimal in the sense that that it The resulting produces the u(k) minimizes J, but based only on a linear function of y(k-l), -7- y(k-2)..., and not on y(k). mented, essentially Such a allowing one compensator full sample cxCputattrr of-u(k) after the y(k-l) sample however, the computation time available long before it is be imple- period for the generated. If, is much shorter than the sample interval, this implies some inefficiency; be can i the output used. as a u(k) will coatra.., Thus Kwakernaak and Sivan also include a method for skewing the sample time of the plant output sator. up with respect to the rest of the compen- The compensator output u(k) will still depend on to and including y(k-l), but now y(k-1) is produced calculation time before u(k) inefficiency [16,23]. is needed. This inputs only one eliminates any We will return to the implications of this necessary calculation time in Section 3. The optimal compensator described above is of the following form: x(k+l) = xP(k) + ru(k) + K(y(k) - Lx(k)) (3) u(k+i) = -Gx(k+l) where x is the estimated state vector, and the n x 1 Kalman ter matrix K and 1 x n regulator matrix G result from the solu- tion of two discrete-time algebraic Ricatti equations [23]. that in equations inputs y(k), fil- (3), the next control u(k+l) y(k-l).... depends only Note on Thus the computational delay has been. allowed for in this formulation. -8- Now if we treat this compensator as a discrete linear system and, examine its transfer function, we have -l gY(=z) -G(z-4+KL+rG) 1K In a more conventional form, this can be written: -1 U(z) Y Note the alz n +a2 Y+b lz lack -n -2 +b2z2 of 2z) (5) +...+bnz n a term a o in the numerator. The presence of such a term would reflect a dependence of the present the present input. Since output on (5) represents a compensator that can be implemented, the a o term must be zero. This delay has an important implication in the way at structures we look for implementing digital compensators, as we will show in Section 3. 1 Note that we have taken u to be the output of the digital network and y to be the input. This may be contrary to the expectations of many readers. -9- 3. ALGORITHMS AND STRUCTURES FOR DIGITAL COMPENSATORS In the nomenclature of digital term structure precision) is refers to signal processing the specific combination of arithmetic operations by which a filter output generated from intermediate values and the input. a structure can be represented by a signal-flow examine a simple filter structure to Specifically, let us examine (1] filter structure: a (n=4) 0o u(k) a -b - 4b < 3 z \/-l .> a4 Figure 3-1: Direct Form II Filter Structure -10- sample Let us (5). (See Figure 3-1) a (finite- Typically, graph. fourth-order y(k) the see whether it will be appropriate for representing the compensator of form II [IJ direct Note the presence of the ao term. exactly represent an implementation, has not been accounted for. taken to represent a assumed to be since computational delay needed present, and is ignored. for computations iorates when However, in any adequately repre- If series delay exists in the compensator, and has not been accounted for, the system may be unstable. entire control Control system performance always deter- extra delay is added to the loop. Thus any treat- ment of compensator structures must include specification of calculation delays. is In most digital filter control system, all delays that exist must be in the structure notation. ais in digital signal processing; applications, series delay is of no consequence. sented delay However, such a signal-flow graph structure basically, the extra series Such a structure cannot all This consideration basically led to the form of equation (5). Now, tion (5). let us take Figure 3-1 and set a° to zero, as in equa(See Figure 3-2) >. y(k) 1.T ... 1 a z ..- . % -b4 __ u(k) a4 Figure 3-2: Direct Form II Filter Structure (a=0O) an accurate implementation of equation (5). The only The signal-flow graph of Figure 3-2 representation of an is time available for computation is between sample-skewing for now). still not sample times (ignore Yet Figure 3-2 shows u(k) depending on compensator state nodes (defined to be the outputs of delay ments), also at the same time k. Time must be allowed for the Thus u(k) cannot be in multiplications al through a4 . ele- existence until after the state node values are calculated. A structure Figure 3-3. for implementing equation (5) is depicted in This can be derived from Figure signal-flow graph manipulation. -12- 3-2 by elementary aal delaymustthe precede ) u(k node. For controller 'direct form II Thus the -1 uk)node is <41 Direct Form II Compensator Structure implementations theis structure. compensatorned. state will One clear result delay must precede the u(k) node. The be design procedure, careful to include a unit Thus the u(k) node is always a that this organization of the com-5 unit allowing u(k) ao. Thus to depend only on past y values, results in a controller which can be are delays ined as the emerges putations was only possible due to the zero value our a design -1ur u(k) procedure, allowing to depend only on past y V Figure 3-3: z all of implemented if we the actual delays inherent in the structure. Another difference between filter and controller should be mentioned. The structure structures of Figure 3-3 has 5 unit delays, while that of Figure 3-1 has only 4. This carries to all types of filter and compensator structures [16]. over In fact, for an nth-order transfer function, a delay-canonic filter struc- -13- ture has n unit delays, while a delay-canonic compensator ture has n+I. This fact has an interesting consequence when we TQok at certain filter structures. composed struc- One example is the structure of cascaded direct form I second-order sections. fourth-order transfer function, such a filter structure For a has 6 unit delaysr and is not canonic (a canonic structure would have 4 delays): (See Figure 3-4) u(k) 1t -y(k) z Z d2 Figure 3-4: z -l z-I Z i d. -b 2 -b_ Direct Form I Filter Structure -14- - ld However, such a compensator structure for a fourth-order system (n=4) would have only 5 delays, which is tors: [16] for compensa- (See Figure 3-5) -u (k) 4 Figure 3-5: This canonic -uk Direct Form I Compensator Structure again brings out some of the differences between the filter and compensator cases. In addition to representing compensator structures with the signal-flow graph, we need a mathematical notation for describing In order to accomplish this, we will adapt the fil- a structure. ter developed notation structures. by Chan [18] to the case of compensator Chan's notation accounts for the specific multiplier coefficients in the structure, and for the exact sequence, or precedence, to the computations and quantizations involved. Using y and u to represent a filter output and input respectively, and the filter states v (delay-element outputs), the Chan notation can be written as: -15- v(k) v(k+l) _ vV u,1(6) 1u q-l y(k) (rounded) Each (k) coefficient in the filter structure occurs once and only once as an entry in one of the dence to the operations is by shown the The matrices. the matrix entries are ones and zeros. of remainder Yi ordering The precethe of The operations involved in computing the intermediate matrices. (non-state) nodes r are v(k ) (k) = Y1 (k) ~lu(k) 1 = A forth. The = then r2(k) first, completed T2 r (k) next, and so parameter q specifies the number of such precedence levels. above, For representing compensator structures as discussed several changes definition: are necessary. First, u and y are reversed in u is now the compensator output, and y input. the But more importantly, the u(k) node is now a state of the compensator. Inclusion of these changes produces the following modi- fied state space notation: v(k+l) u(k+l) v(k) =T 1 - u(k)(7) qq-1' (k Examples of the modified state space representation can be in Section 7 and in [16]. -16- found Notationally, it is also useful to define T, nite precision product of iq, to be the infi- Yq_,-f...' 'Yt and to partition it as follows: TCO_ _X [,1 1 . 1 2 ] = CT 11 1 -(8) where T11 is (n+l) x (n+l) and T12 is (n+l) x 1. We can summarize the main point presented in this section as th follows: an n h-order filter transfer function can be impleth (states-). However, the nt -order mented with n unit delays th (for an n -order system transfer function of a compensator model) requires unit delays. a compensator structure representation with nil This altered form of a structure reflects the exact consideration of the computation delays that must digital implementation. -17- exist in any 4. DYNAMIC RANGE CONSTRAINTS AND SCALING Researchers in digital signal length node signals within a digital arithmetic operations. flow have treated at for scaling to reduce the dynamic range of the need the processing structure employing fixed-point [1,3,18-21,24] The tradeoff between over- roundoff quantization noise must be resolved before we and can measure and compare the roundoff noise performance of dif- ferent structures. One seems Several methods of scaling digital filters exist. particularly stochastic appropriate for use with stochastic systems. (12) scaling procedure [19,20,21] deals with the probSpecifi- ability of overflow at each node within the structure. cally, if the This input is zero-mean Gaussian noise with a filter given variance, then scalers are selected such that the probabil- ity of overflow at each node is identical to the overflow at the input. variance at each This node. is Chan probability accomplished by equalizing [183 has applied 12 of the scaling to digital filters, using his state space notation. Certainly one obvious approach to the scaling of digital compensators would be to follow the method developed by Chan, but with alterations to include the modified -18- state space notation in introduced in [16]. Any In fact, we have shown this in detail Section 3. treatment of that problem However,- there is one important a compensator as a stand-alone filter ignores This the remainder of the feedback loop through the plant. have resulting when designing LQG systems that the stable even though itself, in-and-of procedure would fail, *or at compensator 'is the overall closed-loop system performs as desired and is stable. "In scaling can Specifically, there is no guarantee implications. serious arises.. such a case the least produce incorrect results. compensator node will Therefore, since the variance of each depend on the closed loop, the closed-loop compensator must be accounted for. performance of Thus we have adapted the the 12 scaling procedure for digital compensators as follows. Recall the plant and compensator equations (1) *and (7). To compute the state and system's closed-loop performance, we must combine the compensator equations into a single augmented state space for the overall closed-loop system: x(k+l) u(k+l)J wl(k) =Ax(k) v(k+l) + =Av(k) u(k) L 1 2 w 2 (k)] (9) where I A = .... 12 L On -1 ..... 11 -19- and 0n represents an all-zero n x n matrix and Y11' Y 12 represent the unscaled compensator as partitioned in (8). Given this complete form (9), let us now follow in general Scaling the basic 12 scaling procedure as applied by Chan 1181. will to diagonal transformations of the Yi matrices, correspond sinTilarity the analogous to in transformation linear system Let the scaled compensator have the modified state space theory. Then parameters Yq',.'l t i(Si = for i=q, ... ,1 )-1 (10) where S all S and and all are Si i 0 i00 We now describe a modification of 1diagonal. diagonal. We now describe a modification of Chan's procedure for determining the elements of the S i. The (unscaled) state covariance matrix written Z for (9) be in [19-21]) assuming a unit-variance Gaussian noise (as input y(k), as the solution of a steady-state Lyapunov where Z is the (2n+l) x (2n+l) covariance matrix. ( x' u v' equation: (11) Z = AZA' + C Z = E can ') -20- and · ~T 12E021i2j 0 At this point we must break from the usual 12 scaling procesince the plant states, of course, cannot be scaled (nor do dure The usefulness of we wish to scale them). us- an expression node variances. the compensator for MYlI is that it gives Let us partition Z as follows: (12) z= Z22 [Z12 Since we wish to equalize the where Zll is nxn. 2 with the variance of y, let us compute a. node variances Since y = Lx, (13) a = LZ1 L' y 11 (7), From we see that the node covariances will depend on the covariances of v, u, and y. Combining (1) and (12), we pro- duce: E)u Using (v (7) UYj y'[ and 1 222 212;L ' LZ12 LZ11L'" (14) (14), the covariance matrix of the nodes r can be written as: E( 1 ri Z22 Z 12L'] LLZ12 LZ11L = -21- 1 i (15) In general, for the ith intermediate nodes, Z2 2 E(r i r!) = i i Z12,'L LZ LL, '1 (16) With this information, we can again apply the by Chan methods [18] and others to compute a set of matrices Ki (Note the normalization by a used ... Kq: of (13).) y 2O LZ El X0 Yi2-l~ (17) 12 The diagonal elements of the K matrices represent the gains the variance of y to the specific intermediate node variance. this definition, Kq must then from By represent the gains from the y variance to the variances of the compensator state nodes v and u, and should thus equal Z22 /ay. [16,18]. As in This can be shown to be true [18], the scaling matrices Si1 shown in (10) are computed as: [Si] (K [Ki )l/2 i=l,.-.q (18) for all j Thus the scaled system K matrices will have unit all node ance of y. diagonals; variances will be equal to each other and to the variThis ensures the desired equal overflow probabil- ities. Two other points of difference between filter and compensa- tor scaling arise. Firstly, the issue of -22- A/D and D/A scaling must be addressed. Note the that In order to keep actually scales the output node u. loop system transfer above scaling procedure the closed function unchanged due to this scaling, a gain factor of p" must be included in the D/A conversion of u. From (10), (19) [sq-l 2 n+l,n+l beyond this point, how do we set the A/D and D/A scale = But factors in general? probability of overflow. will ability procedure The scaling equalized the node However, the actual value of that prob- be determined by the way we employ the A/D conver- ter, in other words, how we set its scale factor. This must be decided by the expected level of transients in the system (due to the control action) and by the closed-loop RMS fluctuations (variance) of y. This issue will be less complex for digital filters, where there is no external closed loop. Again, to keep our ideal closed-loop response unchanged, the D/A scale counteract kda any A/D gain. factor The D/A scale factor could be written: P/ka (20) Whatever is selected for kad' the compensator scaling meter matrices must Si para- do not change; the compensator and converter scalings are independent. Remember that in comparing different compensator structures for a given ideal compensator design, only the scaling of the compensator itself will be important. -23- The final point of difference between filter and compensator scaling LQG configurations, as described in the will have set have the to to some non-zero output, and also to minimize system [23] regulators Such set-point fluctuations around that value. same parameter values as described in Section 2, independent of the set point. plant 2, Thus the control action will try tion of the control system. will Section - in other words, reference inputs for the regulator por- points drive Most of the the nature of the control system. concerns However, any offset DC in the output y (the compensator input) certainly will affect the probability of overflow at internal the and input compensator at The 12 compensator nodes, and thus affect the scaling. scaling procedure assumed a Gaussian zero-mean input to the pensator. This all com- procedure would unfortunately not be valid with DC inputs. described in Sivan [23], where ur is the reference input. If Figure 4-1 presents the set-point LQG Kwakernaak and we wish to drive the output y to yr, H1 (l)Yr, then system ur must be set to where Hc(z) is the closed-loop transfer function from ur to y: Hc(z) = L(zI - ~ + rG) r (21) Unfortunately, this compensator has a steady-state value of y is scaling is not possible. -24- non-zero. DC input Thus, since the as we said, 12 IU ~i~~ Uri ' plant ". y --- -[L----- i I I I I i I + Kalman I --I I CompensatorI Figure 4-1: Set-Point Compensator Configuration However, we will show that we system can set-point Let us define i, n, and y Figure 4-1 in another way. of the describe to be the deviations of the states, input, and output steady-state DC values xo, uo, and yo. their and Y = y-y.. u-u Thus i Using equation (1), the following away = x-x0 , from n' relation- ship must hold between these steady-state values: = x y= o Ox + ru (22) Lx% o Now, ; I we can design an LQG compensator for the system devia- tions, using a model for the deviations: e(k+l) = i(k) + r n(k) + wl(k) (23) x(k) = LE (k) + w 2 (k) 0--· 00' -- -- - - --- -25- -- - - This will, of course, produce the same parameters as the LQG design with equation system, Now, if we take the resulting (1). and substitute for n and y, we produce Figure 4-2. YO uo - -- - -- - - -- - - - --_ -- - - - -_ - u ? I+ / (-,')I actual Y + plant n I I I - - I I .. - (Z,i;,y) plant Compensator (3) designed for (th/,y) system Figure 4-2: Alternate LQG Set-Point Configuration -26- Thus it is possible to use an alternate LQG set-point con- figur.ation where the compensator input Y has an average value- of. thereby allowing us to apply stochastic zero, (-12) scaling. The disadvantage to this alternate configuration is the necessity two reference inputs which maintain the precise relation- having typically in the presence of ship (22), plant (at least one pole at the origin), which is series integration very common occurence in control systems. is integrator before added an an actuator (part of the plant) to r ))-ly 0 . the if plant has figuration of Figure 4-2 need YO=yr, and However, since DC the not two. u0 is forced to zero. gain inputs u In other any series integration, the LQG conhave only one reference input, Note that the configuration of Figure 4-1 does not change when the plant has integrator poles; pensator ef- infinite if there are any open-loop integrator poles in the plant (poles at z=l), words, the To see integrator pole on the configuration of Figure 4-2, let us write uO as (L(I-L(I-f) Fris a In fact, frequently an provide desensitivity to constant disturbances. of uncer- parameter disadvantage will vanish whenever the plant has a This tainty. fect of both com- and y will still have DC components, and the system as a whole still requires the reference input ur. From this point on, the Figure 4-2 configuration is assumed so that 12 scaling can be applied. -27- 5. ROUNDOFF NOISE ANALYSIS In this section we will develop a method for evaluating the effects of roundoff quantization noise in As stated in the digital introduction, we will adapt a method used in evaluating digital filter roundoff effects [18-21]. digital filtering applications, length of the internal registers compensators. As in most we will assume a uniform wordof the compensator. We will also not consider the effect of the input A/D converter quantization on system performance, since this will be independent of the structure chosen. Typically, many less bits are required for the converters, as compared to the internal registers. In most filtering applications, the filter output variance due to roundoff quantization is taken to be the measure formance for the structure [3,18-21,25]. each We can repre- roundoff operation on some value x as x plus additive white noise, uniformly distributed between quantization step size. + where A is independent [3]. the Furthermore, in a structure with many roundoff operations, all such additive noises are assumed tion per- The analysis of round- off effects is based on the following assumption. sent of to be Given this statistical description of quantiza- effects, one can easily apply linear system analysis tech- niques to compute the output node variance due to roundoff. In examining the effects of roundoff tors, we on digital compensa- can make the same assumptions concerning the quantizer -28- However, as with scaling, we cannot model. procedures blindly the follow Again, the performance of the com- used for filters. pensator will depend on the entire closed-loop system, and not on the compensator alone. compen- Furthermore, the variance of the output node is not the best measure of performance for the sator control system. original metric Instead, it is much more reasonable to use the which figured in the ideal compensator design - the quantity J shown in (2). Curry Some work has been done previously along elated lines. [7] has considered the second moment of the system output error due to rounding for a specific sampled-data control system with a direct form II compensator structure. Knowles and Edwards also used the additive white noise model for generating a [6] bound on the quantization noise effects of direct form II, cascade, and parallel compensator structures. Sripad [12] has considered the increase in the performance index J due to additive white model, noise but did scaling issue or the general concepts of and representations. be more general roundoff, not using the address either the compensator structures The results we present in this section will since we can consider any type of compensator structure, using the modified state space notation, and since we have accounted for the necessary scaling operation. The following roundoff analysis procedure results if we consider J to be the performance measure, and if we consider the closed-loop nature of the control -29- system. Let us model the roundoff errors after each compensator multiplication as additive A/D structure-independent (The noise.. will contribution be The scaled, augmented system of plant and compensator, ignored.) sources, roundoff including all the internal can written: be (see (9) and (10)) (k ii' W < (k+l) (k+l) I (k+l) q e ( = ++(k q A(k)+(k)+. ... q )+ 1 2 k da k2 ( d2 (24) L The (D 0 - where. A = l12 Lk irkda 11 ' ad will refer to scaled quantities, Si(k) will represent tilde the noise vector due to the product quantizations associated with the precedence level matrix Ti, and q will be the number of cedence levels. be Since this is a linear system, superposition can The noises wl(k) and w 2(k) are present even in the applied. idealized infinite precision system - they are the that pre- the ideal design value of J. produce uncertainties Thus if we treat the Ei(k) noises alone, our analysis will yield the inease to internal roundoff quantization. Thus our system in J due model for roundoff analysis is: x(k) x(k+l) (k+l) A (k) s (k+q1 a(k) q + L -30- ... =2 q-30- () this model, the resulting (scaled) state covariance matrix Given equation: can be computed as in Section 4, by solving a Lyapunov Z AZA + o (26) where q q--L ~ q + i-={Aq+jqAq_l The A. matrices q q-1 q-2q2 i4l~ Tq"'-+ ''+ Wq. 'Y 2 A 1N2'qj are diagonal matrices whose (j,j)th entry th row equals the number of non-integer coefficients in the jth Ti, of that is, the number of roundoff error sources associated with the jth component of r i. This expression assumes that roundoff occurs after every non-trivial product. ble produce to double-precision precision addition. It would also be and products, do possi- a double- A single roundoff quantization would then be needed to generate the new node value, in which case all the nonzero entries of A i would be ones. This method requires more hardware, but results in a reduced roundoff noise effect. To relate the state covariance index J in matrix to the performance (2 ), we must rewrite J as described in [26]. yields the following expression in terms of the unscaled ties: -31- This quanti- J = trace(Qxx') + 2 trace(M ux') + trace(R uu') where On n On On 0O M' O R T- Now off noise, x(k) that directly. (27) TZ = trace us apply this to the increase (dJ) in J due round- let and then relate dJ to the scaled covariance Z. is scaled not and The only scaled quantity computation is u. However, u = does v(k) kda not Note figure into dJ enter into the 1 u, or u = pkad u. Thus, subthat does stituting into (27), and considering dJ; (28) dJ = trace TZ where Q n On ' n _daM' Thus our analysis kaM kdaM n da 0 procedure roundoff involves solving for (26) for (28). -32- the Z, increase and dJ evaluating due to equation 6. MINIMUM ROUNDOFF NOISE STRUCTURES Mullis and Roberts [19,20] and Hwang [211 have developed techniques for computing structures with minimum effects. The most to for (q=l) second-order sections, each of which minimum roundoff noise. will have about 4n coefficients, where n is which overall be composed of a parallel or series combination of one-precence level optimized noise of these structures is the block In this filter structure, one assumes the optimal form. structure practical roundoff is The resulting structure is the filter order, about twice the number for a direct form II cascade or parallel structure. Certainly we could treat a compensator as a stand-alone filabove-mentioned ter and follow the minimum roundoff noise structure. procedure to generate a However, as explained in Sec- tions 4 and 5, in order to obtain an accurate picture of roundoff effects we must consider the closed-loop system. Thus certain changes will be required in the procedure. For filters, the involves the computation of a procedure block transformation matrix, which when applied to the original unscaled filter structure, generates a new structure with minimum roundoff noise. K1 and W 1. The keys to this transformation are the matrices K 1 is related to the filter scaling procedure dis- cussed in Section 4, reflects the gain and (in W1 is a "noise gain" matrix. It variance) from each noise source to the -33- output node. to node Recall that Ki reflects the Rober-ts, Hwang technique to digital minimization if we for technique input compensator noise roundoff can compute K 1 and W 1 matrices that account for the closed-loop control system. the the Thus, we can apply the Mullis and internal node. each from gain finding in K1 We have already specified the section on scaling (see In this section, we will develop an expression for W 1 . (17.)). Since W 1 represents the gain from roundoff noise sources filters), we need a matrix which reflects (for variance output to the gain from these sources to the performance index increase dJ. The following will be adapted from Mullis and Roberts, and Hwang. Let us rewrite (26) in terms of the unscaled eters T11 and T12: = TAT -T-1 1 compensator param- (As in [173 this assumes q=l.) AT + A (29) _ where T includes the scaling matrix S1 ; T = n S1 I is the n x n identity matrix, and I A - A__ - before. Ir n____ _ 11 12 as 0 (We have assumed kad is 1; kad would at any rate not affect the optimal structure.) the of definition just equals T 1 ZT 1. Z By manipulating and using and T, we can recognize that the matrix Z Substituting in (29), we have ZAZA' +Z = AZA' + (10) (30) (30) ° -12-34- The expression for the increase in performance index due to roundoff noi.se for the scaled system can also be written in terms. of the unscaled covariance matrix Z: (See (27).) = trace {TT- ZTI} dJ = trace {TZ} = trace {T1TTZ} = tracetTZl Using an (31) adjoint Lyapunov equation (see Appendix 1), equa- tions (30) and (31) can be replaced by (32) and (33): dJ trace 12 = 12 tL { AlSl} ts W (32) alJ where W = A'WA + (33) T The trace expression in (32) can be simplified if we define W 1 to be the lower right-hand (n+l) x (n+l) portion of W: A2 dJ = - W1 is trace (34) W1 (-W1 { 12 the matrix needed to apply the Mullis and Roberts, Hwang techniques for generating Using W1 K1 and as the optimal presented transformation above and in Section 4, we can follow the remainder of their technique to generate minimum roundoff noise compensator structure. be quite different matrix. a one-level It may, of course, from that resulting from a treatment of the compensator as a stand-alone filter. -35- Conceptually, extended to the multiple described technique above could be However, the iterative structure levels. optimization procedure developed by Chan [18] for filters is far more useful for minimizing roundoff noise for general structures. In Chan's method, an initial structure is subjected to continuous transformations, each of reduces some overall objective which function, given constraints on certain coefficient filters, an equation similar Almost any of the coef- ficients of the initial structure can be held process. fixed during the Thus we can use this method to trade off an increase in the number of The For to (34) (but without the closed- loop) is used as the objective function. optimization values. coefficients versus performance. extension of this very useful procedure to low-noise compen- sator design is presented in [16]. -36- 7. AN LQG EXAMPLE A specific sixth-order LQG example was could examine so that f16]. This example adapted from the longitudinal control system design done for the F8 digital fly-by-wire and parameters plant continuous-time fighter [27]. The performance index parameters 0 -15.77 are given below: Continuous Time System Parameters: 5.7x10 -0.6696 A = we roundoff noise performance of several struc- the tures using the techniques developed above was chosen 4 0 -0.01357 1 -1.2x10 -9.01 -14.11 4 -32.2 -1.214 0 0 -0.433 0 -0.1394 0 1 0 0 0 0 0 0 0 0 0 -12 12 O 0 0 0 B= CO 0 0 C = [1 0.003091 0 0 31.28 0 1l 1 3.592 -37- 0] 0 Continuous-Time Performance Index Parameters r=6.637 = Q 0 0 2.6554x10-7 0 2.686x10-3 0 0 0 3.085x10 Lo0 R = 0O 0 2.686x10 3 27.174 0 -4 3.085x10 -4 0 0 3.121 0 0 7 0O 0O 0 0 0 0 0.3585 0 O 0 0 27.174 3.121 0O 0 4j 5.252 Continuous-Time Noise Covariances -1= = diag[O 0 0 0 10 - 6 10 - 6 0.0018441 This continuous-time system was discretized at a sample rate of 10 HZ and the optimal regulator and The double-precision parameters 0, K - can be found in r, Kalman L, Q, filter M, R, designed. e 1 , e, G, and [16]. Before discussing the different structures tested, it will be helpful to mention the A/D noise contribution for this example (independent of structure). in J due similar to .to this that If we allow a five per cent increase single. noise. source,. then Outlined .... in -38- Section 5 .a procedure requires a 4.98 bit A/D the next be fix wordlength. largest Including a.sign integer value, our selecting actual wordlength would for bears out the need As will be shown, this bits. and bit, shorter A/D wordlengths as compared to internal wordlengths. compen- Five types of structures for implementing .the ideal sator transfer funtion (4) were examined. direct filter-ing-based form These were the digital II structure for compensators (see form Section 3), several cascade structures consisting of direct II or direct form I sections, several parallel second-order structures composed of direct form II sections, roundoff minimum noise structure, a and a 'default' compensator structure which we will call the simple structure. cases, In alter generally 4. five all before will indicate the initial design coefficients we implementing the 12 scaling procedure of Section This will the initial values, and frequently create a few extra scaling coefficients. the block-optimal In any case where a unity entry in unscaled structure has become a multiplier coefficient (non- unity, non-power of two) when scaled, we have indicated this with an asterisk. The first structure we will examine is the compensator structure. the output form II structure come function (35). II Figure 3-3 presents a signal-flow graph for the 4th-order case (n=4). preceding direct form Note the presence of the delay The 12 coefficients of the direct node. directly from the unfactored transfer Its modified state space representation (two precedence levels) is shown in (36). -39- H(z) alz +a 2 z -2+a3 z 1l'~ 2 +blz-l+b2z +a 4 z +az-D+a6 .z -6 (35)- 3 4 5 6z +b3z3 +b4z-4+b5z-5+b6z-6 1 0 0 0 0 0 o 1 o o o 0] ol 0 0 0 1 0 O 0 0 0 0 1 0 0 0 0 a6 a5 a4 a3 0 0 01 a2 a (36) 0 1 0 0 0 0 0 0 O 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 O 0 0 0 1 0 0 0 O O 0' 0 1 0 0 -b 2 -b 1 0 1* O sb -b 5 -b6 When this structure is -b 3 12 scaled, the unity value marked with an asterisk will become a 13 th non-unity coefficient. The second type of structure, the cascade, derives its coefficients from a multiplicative second-order sections. factorization into The factored transfer function, 3 series assuming direct form II sections, is shown in (37). H(z) (dz-l+d2z 2)(l+d 3 z 1+d4 z 2 ) (l+d5 zl1 d6 z 2 ) 2 3 4 5 6 '+ -1 (l+clz l+c2 z -2)(l+c 3 z-1-+c4 z -2 )(l+c5z -1+c6z -22) -40- ( (37) a structure will have 12 coefficients, 4 precedence levels, Such and will require 3 additional scaling multipliers when 1 2 -scaled (see 38)). 7r 4 1 0 0 0 0 0 1 -O 0 0 0 0 0 o 6 0 1 0 0 0 0 0 1 0 0 0 0 O O 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 d6 d5 1* (38) 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 O 0 0 0 0 0 1 0 1 0.0 0 0o 0 0 1 0 0 0 0 0 0 0 1 0 01 O O 0 0. 0 0 0 0 1 0 0 0 0 0 0 d4 d 3 7!1= 0 -c4 -C3 1d2 -c 6 -c5 0 5 d2 1 -0 0 0 0 0 0 0- O .1 0 0 0 0 0 O 0 0 1 0 0 0 0 ° 0 ° 0 ° 0 0 1 1 =0 00 00 0 0 0 0 0 1 0 0 -c 2 -C 1 0 0 0 0 0 -41- ,3 -4 1* 1 0 0 0 1 O: 0 0 d 0 Details are available in [16]. tures can be formed ferently, or by Note that several cascade struc- simply by grouping the poles and zeraos ordering the sections differently, or even by implementing the sections differently [16]. ters, the typical digital compensatot second-order poles together. using direct ordering. presence of more we Unlike digital than further complicates section, dit- the fil- one real pole in a cnoices. In each will also have to pair different real Two cascade structures will be considered, both form II sections, but with a different pairing and In addition, a direct form I structure will be tested. Its modified state space is given in [16]. The third type of structure, the parallel form, to corresponds a partial-fraction expansion of (35), which allows the use of parallel first and/or second-order sections. parallel direct form II sections, before of 5 4 first-order and 1 second order, the expanded transfer function cients For the case (also having 12 coeffi- scaling) is shown in (39), and its modified state space is given in (40): H(z) = e1 +e2 ez1 ez-+e 2 z2 + e3z 1 l+c2z-l+c2-2 +dz-1 e zea-1 e4z +dz-1 -42- -42- -1 e 5z e z-1 e 6z 6z l+d (39) 0 0 0 0 0o 0 1 0 0 0 0 0 0 1 0 0 0 O O 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 e2 el e3 e4 e5 e6 i 2 = (.40) 0 1 0 10 0 0 0 0O -C1 0 0 0 0 0 1* 0 0 -C 3 0 0 0 0 1* 0 0 0 -c 0 0 0 1* 0 0 0 0 -C 5 0 0 1* ,0 0 0 0 0 0 1* -C 2 - 6 To scale this structure, 5 additional scalers (one per tion) are required. Of course, there are many other parallel forms, depending on how one groups the poles and zeros, one implements each section [16]. We and The two how will also examine two parallel structures having only second-order direct form II tions. sec- sec- structures differ only in the pairing of the 4 real poles of the compensator. The fourth type of structure tested is a parallel block optimal minimum roundoff noise structure, as described in Section -43- 6. This structure will have 25 coefficients, many more than the previous 3 types. Its modified state space is given in (41), and precedence shows three second-order sections and only one level [16]. fl f2 0 0 0 0 0 f3 0 0 415 0 0 f f 0 fl f1 f24 0 f25 f f24 f25 f2 6 (41) 0 f if 19 The last 0 0 0 if if 20 21 0 ff 1 6 f18 22 f23 structure filtering literature. we f26 will consider has no analog in the structure This would result if we tried to directly implement the compensator equations shown in (3). It is important to analyze this type of 'simple' because a naive structure implementation might employ it more or less by default, as it is the natural result of the ideal design. the equations shown in (3), we must implementable form. (Note first rewrite them in an that u(k+l) cannot be computed from x(k+l) since some computation delay must be allowed for the tiplication by G.) Taking Substituting for £(k+l), we get: -44- mul- x(k+l) = Ix(k) + ru(k) + K(y(k) - Lx(k)) (42) u(k+l) = -Gbx(k) These ture. - Gru(k) equations - GK(y(k) - Li(k)) do represent a feasible compensator struc- Its modified state space representation would have 3 pre- cedence levels: = = | 3h2IW -:]_0 T, ! r lK ]--- The The important !(43) isa ------ 0 -0 !°!% _ -L disadvantage of this type of structure can be For a sixth-order example, there will easily seen from (43). be up to 60 coefficients. The actual scaled coefficient values for these 9 structures Table 7-1 summarizes the are presented in [16]. results for these structures. roundoff noise As mentioned previously, the A/D noise contribution is the same for all and structures is not included. structure (a) (b) (c) (d) (e) (f) (g) (h) (i) direct form II parallel direct form II parallel direct form II parallel direct form II block optimal parallel cascade direct form II cascade direct form II cascade. direct form I simple, default structure Table 7-1: The levels, 'levels' levels N 2 2 2 2 1 4 4 3 3 13 17 15 15 25 15 15 14 50 wordlength dpa spa 19.65 8.05 10.18 14.74 7.88 15.69 10.51 15.52 9.01 18.25 7.45 9.39 13.94 7.06 14.68 9.47 14.36 7.54 Roundoff Noise Results column and the 'N' column lists lists -45- the the number number of of precedence coefficents including The roundoff noise results in the structure. scalers are presented in terms of the number of signal bits (wordlength) that are required to hold the increase in J due to product roundnoise to 5% of the ideal value. off Two wordlengths include the sign bit. are presented The left-hand column (larger) corresponds to structure. of Again, these numbers do not roundoff for the case after every nontrivial multiplication, and then the use of single-precision adders, while the right-hand column responds each cor- to the case of double-precision adders and quantization after addition. From Table 7-1, we can see that the different pole with parallel structures (c) and (d) produced results associated that differed by 4.5 bits. poles pairings Placing the near-unit magnitude real of the compensator in different sections was significantly Of the two similar cascades superior. two poles (f) and (g), the one with in different sections required 5.2 fewer these same bits. As with filters, the pairing/ordering issue is clearly not a trivial question. sections, (h), Also note that the cascade of direct form which uses the same pairing/ordering as (g), has nearly identical performance, but 1 less precedence level less I coefficient. Unlike digital filter and 1 applicationsi it is worth considering for feedback compensator implementation. Structure (b), the combination of parallel sections, first- and second-order with its 17 coefficients, outperformed every -46- other structure except the block optimal. coefficients of the block Even so, the extra 8 optimal structure with second-order sections only gained 0.2 bits of performance over this structure. Thus, when evaluating different structures, it know the important to block optimal result (for various pairings) so that we can judge whether a suboptimal structure like enough. (b) is effective In this case it clearly is. As expected from direct form II has very important it cients. the literature on digital filters, the poor noise performance. It is also very to note that even though the simple structure (i) per- formed fairly well (b)), is has (but still 1 bit worse (comparatively) far too many multiplier coeffi- than the structure Were such a structure to be built, this surfeit of coef- ficients would require either a slower sampling rate, or a more expensive compensator, than (b) or (e), which would outperform it. The second wordlength column in table 7-1 shows the gain possible when using double precision adders and fewer quantizers. Depending on the structure tested, a savings of from 0.6 to 1.47 bits was realized. tify the Whether this small savings is enough to higher-precision jus- adders will depend on the particular application. -47- 8. SUMMARY We.have shown that the implementation of compensa- digital can benefit greatly from the concepts developed for dealing tors in effects digital and structures with different computational finite wordlength However, due to the nature of the filters. Thug control problem, new issues arise that must bae cdrTdered. we had. to adapt and extend these digital signal processing have concepts and techniques. unaccounted First, the importance of system that required structure. included we rethink to shown be When dealing with the LQG ideal the proce- design resulting compensator have its output node as a state, that is, the output of a unit delay element. Thus the used structures com- for filters must be modified when applied to compensators. The concept of scaling for fixed-point digital affect technique response. compensators Since the entire closed-loop system also had to be reconsidered. will control in our model so that the closed-loop system performs as dure. Any structure for implementing monly a Any computational delay that will be present must control problem, this led to a specific be in notion of a compensator the close to the ideal design as possible. can delay the internal compensator node variance, any scaling must take into account the overall closed-loop That is, it is inappropriate to treat the compensator as a stand-alone filter. The 12 -48- scaling technique was thus for adapted LQG In addition, the form of a set- compensators. important in that would be effective. An alternate set-point configuration that would allow the use of 12 point regulator control system the determining type of was scaling shown to be scaling -was proposed. scalirrg has Once beer accomplished, we can begin to analyze performance. the effects of quantization noise on control system As with scaling, alone filter. the include the compensator cannot be treated as a stand- Thus we adapted the filter analysis techniques to plant and feedback loop, and to use the natural LQG performance index as our figure of merit rather than output noise variance due to roundoff. Minimum roundoff noise structures, such as those developed for filters by Mullis and Roberts, Hwang, and also Chan, were treated next. These structural design tech- niques also needed modification to include the effects of the closed-loop on system performance. Finally, several example structures for a single LQG compenwere sator scaled and their roundoff performance compared. pairing and ordering issues involved with parallel and cascade structures were shown to be even more complex for compensa- type tors, due to the number of real poles that are common in system compensators. LQG compensator. control It was also shown that the default type of structure for LQG controllers is a poor choice of the The structure for Its extremely large number of multiplier coefficients would impose unnecessary speed limitations -49- or com- plexity embedded. on the compensator and the control system in which it is In fact, the result points out the need for ing the issues we have dealt with in this paper. -50- consider- APPENDIX 1 If we take the trace of the product of two matrices to an inner product on the space of matrices, and be i to be a matrix operator, then: (7r(X) trace where U) = trace (X ir is the adjoint operator of operator XT can be derived from trace ((X-AXA')U) (A.1) (U)) r. For T(X)=X-AXA', the (A.1): = trace (XU)-trace(AXA'U) (XU)-trace(XA'UA) trace = X (A.2) = trace(X(U-A'UA)) Thus XT (U)=U-A'UA. As used in section 6, the Lyapunov equation (30) trace (31) were replaced by the equivalent equations Relating this to the derivation above: X= Z U=W r(X) A12 120 AlS * (U) = T -51- 2 and (32) and the (33). REFERENCES Schafer, Digital Oppenheim and R.W. 1. A.V. Inc., Hall, Prentice Processina, Signal Englewood Cliffsr New Jersey, 1975; Mecklenbrauker, Claasen, W.F.G. 2. T.A.C.M. Quantization and Peek, "Effects of J.B.H. Overflow in Recursive Digital Filters," IEEE Acous. Speech & Signal Processing, Trans. 1976, pp. 6, December Vol. ASSP-24, No. 517-529. 3. A.V. Oppenheim and C.J. Weinstein, "Effects of Finite Register Length in Digital Filtering and Vol. IEEE, the Fast Fourier Transform," Proc. 60, August 1972, pp. 957-976. Willsky, Digital Signal Processing and 4. A.S. Theory - Points of Control and Estimation Tangency. Areas of Intersection, and Parallel Press, Cambridge, The M.I.T. Directions, Mass., 1979. 5. A. Fettweis and K. Meerkotter, "On Parasitic Filters Under Looped Oscillation in Digital Conditions," IEEE Trans. Circuits and Systems, 9, September 1977, pp. CAS-24, No. Vol. 475-481. Knowles and R. Edwards, "Effect of a 6. J.B. in a Sampled-Data Finite-Word-Length Computer Feedback System," Proc. IEE, Vol. 112, No. 6, June 1965, pp. 1197-1207. Curry, "The Analysis of Round-Off and 7. E.E. Truncation Errors in a Hybrid Control System," AC-13, IEEE Trans. on Aut. Control, Vol. October 1967, pp. 601-604. Bertram, "The Effect of Quantization in 8. J.E. Sampled-Feedback Systems," Trans. Amer. Inst. 2, September 77, Pt. Enars. , Vol. Elec. 1958, pp. 177-182. 9. J.B. Slaughter, "Quantization Errors in Digital Control Systems," IEEE Trans. Aut. Control, Vol. AC-9, No. 1, January 1964, pp. 70-74. -52- 10. G.W. Johnson, "Upper Bound on Dynamic Quantization Error in Digital Control Systems via the Direct Method of Lyapunov," IEEE Trans. AC-10, No., 4, October Aut. Control, Vol. 1965, pp. 439-448. 11. G.N.T. Lack and G.W. Johnson, "Comments on Quantization Error in "Upper Bound on Dynamic Digital Control Systems -Via the Direct Method of Lyapunov," IEEE Trans. Aut. Control, Vol. AC-11, April 1966, pp. 331-334. 12. A.B. Sripad, "Models for Finite Precision Arithmetic, with Application to the Digital Implementation of Kalman Filters," Sc.D. Dissertation, Washington University, Sever Institute, January 1978. 13. R.E. Rink and H.Y. Chong, "Performance of State Regulator Systems with Floating-Point Computation," IEEE Trans. on Aut. Cont. , Vol. AC-24, No. 3, June 1979, pp. 411-421. 14. F.A. Farrar, "Microprocessor Implementation of Advanced Control Modes," Summer Computer Simulation Conference Proceedings, Chicago, Illinois, July 1977, pp. 339-342. Houpt, "The 15. P. Moroney, A.S. Willsky, P.K. Digital Implementation of Control Compensators: The Coefficient Wordlength Issue," IEEE Trans. on Aut. Cont. , Vol. AC-25 , No. 4 , August 1980, pp. 16. P. Moroney,"Issues in the Digital Implementation Dissertation, of Control Compensators," Ph.D. MIT, Dept. of EE &CS, September 1979. Hess,' "Limit Cycle 17. S.R. Parker and S.F. Oscillations in Digital Filters," IEEE Trans. 6, November CT-18, No. Circuit Theory, Vol. 1971, pp. 687-697. Chan, "Theory and Implementation of 18. D.S.K. Multidimensional Discrete Systems for Signal Processing," Ph.D. Dissertation, MIT, Dept. of EE & CS, May 1978. Roberts, "Synthesis of Mullis and R.A. 19. C.T. Minimum Roundoff Noise Fixed-Point Digital Filters," IEEE Trans. Circ. and Syst. , Vol. CAS-23, No. 9, Sept. 1976, pp. 551-562. 20. C.T. Mullis and R.A. -53- Roberts, "Filter Roundoff Noise in Structures Which Minimize Fixed-Point Digital Filters," Proc. IEEE Inter. Conf. Acous. Speech & Signal Processing, April 1976, Philadelphia, Penn., pp. 505-508. 21. S.Y. Hwang, "Minimum Uncorrelated Unit Noise in IEEE Trans. Filters," State-Space Digital Vol. Signal Processing, Speech & Acous. pp. 273-281. 4, August 1977, No. ASSP-25, Systems Control, Optimal Sage, 22. A.P. New Jersey, Prenticea-Hal, Englewood Cliffs, 1968. and R. Sivan, 23. H. Kwakernaak & Control Systems, J. Wiley 1972. Optimal Linear Sons, New York, Jackson, "On the Interaction of Roundoff 24. L.B. in Digital Filters," Noise and Dynamic Range 2, 49, No. Journal, Vol. Tech. Bell Syst. February 1970, pp. 159-184. 25. S.Y. Hwang, "Roundoff Noise in State-Space Analysis," IEEE A General Digital Filtering: Trans. Acous. Speech & Signal Processing, Vol. ASSP-24, No. 3, June 1976, pp. 256-262. of Computer "Consideration Roberts, 26. G.K. On-Line Controls," Limitations in Implementing ESL-R-665, Cambridge, Mass. MIT ESL Rept. June 1976. 27. A.E. Bryson, Jr., Guest Ed. Mini-Issue on the Aut. Control, Vol. Trans. F-8 DFWB, IEEE AC-22, No. 5, October 1977, pp. 752-806. -54-