Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Diss / (Springer Series in Information Sciences 25) S. Haykin, J. Litva, T. J. Shepherd (auth.), Professor Simon Haykin, Dr. John Litva, Dr. Terence J. Shepherd (eds.)-Radar Array Processing-Springer-Verlag

.pdf
Скачиваний:
68
Добавлен:
27.03.2016
Размер:
14.79 Mб
Скачать

5. Systolic Adaptive Beamforming

181

perform the same filtering operation without affecting the implicit weight vector w(n). Thus, in response to an input of the form EXT, y], the frozen network will produce the output value

(5.95)

The weight vector w(n) may be regarded as the "impulse response" of this non-adaptive filter in the sense that it could be generated as an output of the system by inputting a (p - 1) x (p - 1) unit matrix to the main triangular array and a zero vector to the right-hand column of the systolic processing network. This suggests a means whereby the weight vector itself may be obtained from the systolic array in Fig. 5.4 without using any additional hardware or performing a back-substitution. We refer to the process of suppressing the adaptation as "weight freezing", and the evaluation of w(n) in this way as "serial weight flushing".

The remainder of this section contains algorithmic details of both weight freezing and flushing. It gives the above statements a firmer basis, and provides further insight to the operation of a fully adaptive array.

5.6.2 Frozen Networks

When the conventional Givens rotation algorithm is employed, setting f3 = 1 and suppressing the update of any values stored within the main triangular processor array in Fig. 5.4 leads, in effect, to the very simple "frozen" network depicted in Fig. 5.7. (For simplicity we have omitted the right-hand column of cells for the moment.) The numbers rij stored within the processing nodes may be regarded as elements of an upper triangular matrix R which remains constant in time, thus rendering the network non-adaptive. For the sake of clarity, Fig. 5.7 does not include the pipeline delays or corresponding data skew represented in Fig. 5.4. It should therefore be regarded as a signal flow graph [5.24] from which the associated systolic array may readily be deduced.

Now consider the effect of this network upon a row vector XT, input from above, and giving rise to a column vector z which emerges from the right as illustrated in Fig. 5.7. It is straightforward to verify that the input vector x may be expressed in terms of the output vector Z as follows:

(5.96)

For example, it is clear that

(5.97)

i.e.,

(5.98)

Hence, if R is non-singular (i.e., no diagonal element of R is zero), the output

182 T.J. Shepherd and J.G. McWhirter

f---_z2

Boundary Cell

Internal Cell

6-."

x - rz

Fig. 5.7 Processing function of "frozen" triangular network

vector z is given by

(5.99)

The signal flow graph in Fig. 5.8 represents a rectangular network ofinternal node processors operating in the frozen mode. Each cell stores one element of a corresponding rectangular matrix U. If a row vector xT is input from above, and a column vector z is input from the left as illustrated, the vector z will obviously emerge unchanged from the right, and it can easily be shown that the row vector X'T which is generated as the output from below takes the form

(5.100)

5. Systolic Adaptive Beamforming

183

Fig. 5.S Processing function of "frozen" rectangular network

R

u

Fig. 5.9. Processing function of trapezoidal network

The signal flow graph in Fig. 5.9 represents a trapezoidal network constructed from the triangular network R of Fig. 5.7 and the type of rectangular network U illustrated in Fig. 5.8. The matrices Rand U are assumed to have an equal number of rows and together they form the upper trapezoidal matrix S = [R, UJ. Consider the effect of inputting from above a row vector XT, conformably partitioned between Rand U as follows:

(5.101)

184 T.J. Shepherd and J.G. McWhirter

From the discussion above, it is clear that the vector

(S.102)

will emerge from the right and that the row vector

(S.103)

will be produced as the output from below.

The structure in Fig. S.9 may be specialized to one in which the rectangular matrix U is a single column vector u. If a vector of the form

(S.104)

is input to such a network, the output from the right is again given by (S.102) while the output from below is a simple scalar of the form

(S.10S)

So far, we have only considered freezing an array of processing cells designed to implement the conventional Givens rotation algorithm. We turn our attention now to the square-root-free algorithm and examine the effect of suppressing the update of quantities stored within the cells in Fig. S.Sa or S.5b. In either case, the frozen cells perform the reduced processing tasks indicated in Fig. S.10. Note that elements of the (constant) diagonal matrix D stored within the boundary cells do not play any role within the corresponding nonadaptive processor. In fact, it is clear that the frozen square-root-free triangular array will perform the same function as a fixed network of the type represented in Fig. S.7 if every diagonal element in the latter is equal to one. It follows that the effect of inputting a vector xT from above is to produce as an output from the right the vector

~ = l1-T x,

(S.106)

Boundary cell

Internal cell

x

x

&-.

 

x - i'z

Fig. 5.10. Cell processing functions for square-root-free "frozen" network

5. Systolic Adaptive Beamforming

185

where il is the unit upper triangular matrix stored by the internal cells. The function of a square-root-free trapezoidal array can therefore be deduced from Fig. 5.9 by substituting the unit upper triangular matrix il for the general upper triangular matrix R in all expressions.

When the conventional Givens rotation algorithm is employed, it is necessary to define two distinct processes for each cell in the QR decomposition array if it is to be capable of operating in either the adaptive or the frozen mode. Note, however, that the suppression of all updating within the square-root-free QR decomposition array can be achieved in practice by setting the parameters bin = 0 and f3 = 1 in the boundary cells as defined in Fig. 5.5a or 5.5b. This provides a very simple means offreezing the processor without defining a second mode of operation for the internal cells. It is a direct consequence of the fact that the square-root-free algorithm can be applied to the more general weighted least-squares problem as noted by Gentleman [5.18]; a discussion of this point is given in Appendix 5.C.

We conclude this discussion on frozen networks by pointing out, that an adaptive beamformer based on the Modified Gram Schmidt (MGS) algorithm [5.25, 26] may also be implemented using the type of triangular array processor represented in Fig. 5.7. This highlights the close relationship between the QR decomposition and MGS algorithms which is explored further in Appendix 5.A.

5.6.3 Serial Weight Flushing

Assume now that an adaptive QR decomposition array, employing the conventional Givens rotation algorithm, has processed all input data samples up to and including the vector [xT(tn ), y(tn )] and that the latest weight vector w (n) is now required. As discussed above, freezing the array in Fig. 5.4 will result in the type of simplified network which is represented by Fig. 5.9, the cells containing elements of the matrix R(n) and the column vector u(n). Let 'I; denote the (p - l)-element vector whose only non-zero element occurs in the ith position and takes the value unity. It follows from (5.103) that the effect of inputting the sequence of vectors

8; = ['IL 0] (i = 1,2, ... , p - 1)

(5.107)

into the top of this frozen array is to generate successive elements of the vector - R -1 (n) u(n). These emerge from the bottom cell in the right-hand.column DE of Fig. 5.4, and are not affected by the final cell F for which Yin is defined to be

unity in the frozen mode. The vector

- R - 1 (n) u(n) is, of course, the least-

squares weight vector w(n) as defined

in (5.27). The sequence of vectors 8;

(i = 1,2, ... , p - 1) constitutes an input data matrix of the form

1

0

0

ggj,

(5.108)

X= [ 0

0

1

010

 

 

 

000

1

0

 

186 T.J. Shepherd and J.G. McWhirter

and so the weight flushing technique suggested at the start of this section has been justified in terms of the corresponding frozen network.

The input data sequence required to flush out the weight vector w(n) is illustrated in Fig. 5.11 which depicts a (3 + l)-channel systolic array, and input data to which the appropriate data stagger has been applied. The additional column of "ones" and "zeros" which enter the top boundary processor consti-

 

x, (t..2 )

 

x, (t..,)

 

0

0

0

0

 

0

x, (t.

 

Xl (t..,)

x2 (t..2)

":z (t ..,)

0

0

x2 (t )

lC..! (t....,)

":z (to-2)

X3 (t..2)

\ (t ..,)

0

0

~(t. )

X3 (t..,)

X3(~)

Xa (tn-3)

y(t••,)

0

0

0

Y (t n )

Y (t •.)

y (t...2)

y (tn-3)

y (t •.)

Fig. 5.11. 4-channel data configuration for weight flushing procedure

5. Systolic Adaptive Beamforming

187

tutes a sequence of simple control digits. A "one" serves to indicate that the corresponding (skewed) input vector should be processed adaptively while a "zero" means that the associated data vector should be processed in the frozen mode. The control digit, having been input to the top boundary processor, is distributed in a pipelined manner across the entire array arriving at each processing cell on the same clock cycle as an element of the vector wavefront which it controls. Each cell then performs the sequence of instructions appropriate to the mode of operation which has been defined.

Figure 5.11 highlights the fact that the processing of data samples from the antenna array must be interrupted for p - 1 clock cycles every time a single weight vector is to be flushed out in this manner. It follows that applying the technique too frequently would greatly reduce the efficiency of the processor. However, it should also be clear from Fig. 5.11 that the weight flushing procedure, unlike back-substitution, may be accommodated quite naturally within the pipelined QR decomposition process.

Now consider the square-root-free QR decomposition processor depicted in Fig. 5.5. It follows from Sect. 5.6.2 that the effect of inputting-the data matrix defined by (5.108) to an array which has been frozen at time tn is to generate successive elements of the vector - R- 1(n) ii(n). These emerge from the final cell F whose input parameter ()in is defined to be unity in the frozen mode. As in Sect. 5.4.4, ii(n) denotes the vector which is generated within the right-hand column DE of a square-root-free array at time tn and it follows from (5.57) that -R-l(n)ii(n) is the corresponding least-squares weight vector. As pointed out in Sect. 5.6.2, the square-root-free QR decomposition array may be frozen very simply by setting ()in = 0 and P= 1 in each boundary processor, and so the sequence ofcontrol digits in Fig. 5.11 only needs to be clocked along the chain of boundary cells in step with the first element of the corresponding data vector.

5.6.4 Further Insights

Consider again an adaptive QR decomposition array based on the conventional Givens rotation algorithm which has been frozen after processing all input data samples up to and including the vector [xT(tn ), y(tn )]. If this data vector were input again to the frozen network, the corresponding output would take the form

(5.109)

and from (5.27) and (5.58) it is seen that x' is identical to the a posteriori leastsquares residual e(n, n). Since this output would also have been produced by the fully adaptive array in response to the input vector [xT(tn ), y(tn )], it is clear that the QR decomposition processor can indeed be regarded as an adaptive filter which (1) updates its effective weight vector w(n), and (2) performs the corresponding filtering operation as each data vector passes through the triangular array.

188 T.J. Shepherd and J.G. McWhirter

Now the a posteriori residual may also be written in the form

(5.110)

where

(5.111)

and from the discussion in Sect. 5.6.2, it follows that z(n) is the vector which emerges from the right-hand side of the basic triangular array ABC as a result of inputting the data vector xT(tn) to a network frozen at time tn. Also, from (5.78), it can be seen that

z(n) = ,*(n) ,

(5.112)

where ,(n) is a component of the unitary update matrix Q(n) whose properties were examined in Sect. 5.5.2. It is interesting, therefore, to note that each element of the vector ,(n) is related to the residual associated with a corresponding sub- array in Fig. 5.6. We define the first j - 1 channels (j < p) to be the auxiliary inputs, and the jth channel to be the primary input of the jth sub-array. The complete array may then be considered to contain p - 1 of these sub-arrays, each with its own least-squares processing function as well as its own sub-

residual ej(n, n). If the scalars y cumulatively computed in the

associated

boundary cells are defined by

 

j-1

 

Yj(n) = n Ci(n), [1'1 (n) = 1] ,

(5.113)

i=l

 

where ci(n) is the rotation parameter computed on row i of the array, then from

(5.64) we have

(5.114)

Now the rotation parameter sin), as computed by thejth boundary cell, is given by

s.(n) =

ocin)

,

(5.115)

J

rjj(n)

 

where ocin) denotes the datum which enters that cell from above, and rjj(n) is the updated diagonal element of R(n). Note, however, that if the jth boundary cell were to act as the final (multiplier) cell for the jth sub-array, it would have to compute the product

(5.116)

This follows by direct analogy with (5.83) where, by definition, e(n, n), y(n) and oc(n) correspond to ep(n, n), yp(n), and ocp(n) in the more general notation adopted

5. Systolic Adaptive Beamforming

189

here. The vector z(n) must therefore comprise the normalized sub-residuals:

 

T(

)=[e1(n,n)

,

e2(n,n)

... ,

ep_l(n,n)

]

.

 

Z

 

n

r11 (n)

r22(n)

rp-l,p-l (n)

 

(5.117)

The entire discussion in this subsection is, of course, also applicable to the square-root-free QR decomposition array in Fig. 5.5. In particular, we have

(5.118)

where

(5.119)

i.e., z(n) is the vector which would be generated by freezing the basic square- root-free triangular array ABC at time tn and then inputting the vector xT(tn) from above. In this case, however,

(5.120)

and so it comprises the unnormalized sub-residuals.

Finally, it is interesting to note that the effect ofinputting the vector xT(tn) to a fully adaptive square-root-free triangular array ABC at time tn - 1 (as in the normal recursive updating process) is to produce the output vector

(5.121)

This is readily verified by comparing the processing cells in Fig. 5.7 with those in Figs. 5.5a and b. It follows that the corresponding output produced by the righthand column of cells DE must be

(5.122)

and so, from (5.57) it is clear that a(n) must be the a priori residual e(n, n - 1) as stated previously in (5.94).

5.7 Linear Constraint Pre-Processor

So far in this chapter we have only considered the task of minimizing the output power from an adaptive combiner of the canonical configuration illustrated in Fig. 5.2. In particular, we have shown how a triangular systolic/wavefront array of the type illustrated in Figs. 5.4 and 5.5 may be used to minimize the norm of a residual vector e(n) in the form of(5.10). This type ofprocessor will henceforth be referred to as a "canonical processor of order p", where p - 1 is the order of the weight vector w. In this section we will devote our attention to the problem of minimizing the output power from a general p-element adaptive array subject to

190 T.J. Shepherd and J.G. McWhirter

one or more linear equality constraints, and show how the canonical processor may also be applied to this problem [5.27, 28J.

5.7.1 Single Constraint Pre-Processor

Consider the problem of minimizing the power of the p-element combined signal

(5.123)

subject to the single linear equality constraint

(5.124)

Formulated as a least-squares problem, this amounts to finding the p-element vector w(n) which satisfies (5.124) and minimizes the norm E(n) of the residual vector

e(n) = X(n) w ,

(5.125)

where X(n) denotes the n x p matrix of all data samples which enter the combiner up to time tn. An analytic expression for the least-squares weight vector may be obtained by equating to zero the complex gradient (with respect to w* and A) of the quantity

(5.126)

where A is a Lagrange undetermined multiplier. This leads to the well-known equation

M(n) w(n) = J.lc* /(cT M- 1 (n) c*) ,

(5.127)

where

M(n) = XH(n) X(n) ,

(5.128)

i.e., M(n) is the (estimated) p x p covariance matrix of all samples which enter the combiner up to time tn. The weight vector w(n) could be obtained by solving (5.127) directly but, as explained in Sect. 5.3.2, this approach leads to a rather complicated circuit architecture and has some numerical disadvantages. We will show instead how the constrained least-squares problem defined in (5.124) and (5.125) may be transformed into the canonical form discussed in Sect. 5.3.1 and solved using a canonical processor of order p + 1.

The transformation may be derived very simply by partitioning the constraint vector c, the weight vector wand the data matrix X(n) in the form

cT = [i\, cTJ ,

(5.129)

wT = [WI' ",TJ ,

(5.130)