Feedback Delay Networks (FDN)
The FDN can be seen as a vector feedback comb filter,3.10obtained by replacing the delay line with a diagonal delay matrix
(defined in Eq.(2.10) below), and replacing the feedback gain
by the product of a diagonal matrix
times an orthogonal
matrix
, as shown in
Fig.2.28 for
. The time-update for this FDN can be written
as
with the outputs given by
![]() |
(3.7) |
or, in frequency-domain vector notation,
![]() |
![]() |
![]() |
(3.8) |
![]() |
![]() |
![]() |
(3.9) |
where
FDN and State Space Descriptions
When
in Eq.
(2.10), the FDN (Fig.2.28)
reduces to a normal state-space model (§1.3.7),
The matrix
![$ \mathbf{A}={\bm \Gamma}\mathbf{Q}$](http://www.dsprelated.com/josimages_new/pasp/img545.png)
![$ \mathbf{x}(n) = [x_1(n), x_2(n), x_3(n)]^T$](http://www.dsprelated.com/josimages_new/pasp/img546.png)
![$ n$](http://www.dsprelated.com/josimages_new/pasp/img146.png)
![$ \mathbf{x}(n)$](http://www.dsprelated.com/josimages_new/pasp/img547.png)
![\begin{eqnarray*}
\mathbf{u}_+(n) &\isdef & \mathbf{u}(n+1)\\
\mathbf{y}_+(n) &\isdef & \mathbf{y}(n+1)
\end{eqnarray*}](http://www.dsprelated.com/josimages_new/pasp/img548.png)
to follow normal convention for state-space form.
Thus, an FDN can be viewed as a generalized state-space model for a
class of th-order linear systems--``generalized'' in the sense
that unit delays are replaced by arbitrary delays. This
correspondence is valuable for analysis because tools for state-space
analysis are well known and included in many software libraries such
as with matlab.
Single-Input, Single-Output (SISO) FDN
When there is only one input signal , the input vector
in Fig.2.28 can be defined as the scalar input
times a
vector of gains:
![$\displaystyle \mathbf{u}(n) = \mathbf{B}u(n)
$](http://www.dsprelated.com/josimages_new/pasp/img551.png)
![$ \mathbf{B}$](http://www.dsprelated.com/josimages_new/pasp/img552.png)
![$ N\times 1$](http://www.dsprelated.com/josimages_new/pasp/img553.png)
![$ N$](http://www.dsprelated.com/josimages_new/pasp/img20.png)
![$ \mathbf{y}(n)$](http://www.dsprelated.com/josimages_new/pasp/img554.png)
![$ N=3$](http://www.dsprelated.com/josimages_new/pasp/img532.png)
Note that when
, this system is capable of realizing
any transfer function of the form
![$\displaystyle H(z) = \frac{\beta_1z^{-1}+\beta_2z^{-2}+\beta_3z^{-3}}{1+a_1z^{-1}+a_2z^{-2}+a_3z^{-3}}.
$](http://www.dsprelated.com/josimages_new/pasp/img556.png)
![$\displaystyle H(z) = \mathbf{C}^T(z\mathbf{I}- \mathbf{A})^{-1}\mathbf{B}
$](http://www.dsprelated.com/josimages_new/pasp/img557.png)
![$ \mathbf{I}$](http://www.dsprelated.com/josimages_new/pasp/img558.png)
![$ 3\times 3$](http://www.dsprelated.com/josimages_new/pasp/img559.png)
The more general case shown in Fig.2.29 can be handled in one of
two ways: (1) the matrices
can be augmented
to order
such that the three delay lines are replaced
by
unit-sample delays, or (2) ordinary state-space analysis
may be generalized to non-unit delays, yielding
![$\displaystyle H(z) = \mathbf{C}^T \mathbf{D}(z)\left[\mathbf{I}- \mathbf{A}\mathbf{D}(z)\right]^{-1}\mathbf{B}
$](http://www.dsprelated.com/josimages_new/pasp/img562.png)
![$ \mathbf{C}^T$](http://www.dsprelated.com/josimages_new/pasp/img563.png)
![$ \mathbf{C}$](http://www.dsprelated.com/josimages_new/pasp/img564.png)
![$\displaystyle \mathbf{D}(z) \isdef \left[\begin{array}{ccc} z^{-M_1} & 0 & 0\\ [2pt] 0 & z^{-M_2} & 0\\ [2pt] 0 & 0 & z^{-M_3} \end{array}\right]. \protect$](http://www.dsprelated.com/josimages_new/pasp/img539.png)
In FDN reverberation applications,
, where
is an orthogonal matrix, for reasons addressed below, and
is a
diagonal matrix of lowpass filters, each having gain bounded by 1. In
certain applications, the subset of orthogonal matrices known as
circulant matrices have advantages [385].
FDN Stability
Stability of the FDN is assured when some norm [451] of
the state vector
decreases over time when the input signal is
zero [220, ``Lyapunov stability theory'']. That is, a
sufficient condition for FDN stability is
for all
![$ n\geq0$](http://www.dsprelated.com/josimages_new/pasp/img270.png)
![$ \left\Vert\,\mathbf{x}(n)\,\right\Vert$](http://www.dsprelated.com/josimages_new/pasp/img566.png)
![$ \mathbf{x}(n)$](http://www.dsprelated.com/josimages_new/pasp/img547.png)
![$\displaystyle \mathbf{x}(n+1) = \mathbf{A}\left[\begin{array}{c} x_1(n-M_1) \\ [2pt] x_2(n-M_2) \\ [2pt] x_3(n-M_3)\end{array}\right].
$](http://www.dsprelated.com/josimages_new/pasp/img567.png)
![$ \,$](http://www.dsprelated.com/josimages_new/pasp/img196.png)
![$ L2$](http://www.dsprelated.com/josimages_new/pasp/img568.png)
![$ \mathbf{A}$](http://www.dsprelated.com/josimages_new/pasp/img569.png)
![$ \,$](http://www.dsprelated.com/josimages_new/pasp/img196.png)
for all
![$ \mathbf{x}$](http://www.dsprelated.com/josimages_new/pasp/img571.png)
![$ \left\Vert\,\cdot\,\right\Vert _2$](http://www.dsprelated.com/josimages_new/pasp/img572.png)
![$ L2$](http://www.dsprelated.com/josimages_new/pasp/img568.png)
![$\displaystyle \left\Vert\,\mathbf{x}\,\right\Vert _2 \isdef \sqrt{x_1^2+x_2^2+\dots+x_N^2}.
$](http://www.dsprelated.com/josimages_new/pasp/img573.png)
![$ L2$](http://www.dsprelated.com/josimages_new/pasp/img568.png)
The matrix norm corresponding to any vector norm
may be defined for the matrix
as
![$\displaystyle \left\Vert\,\mathbf{A}\,\right\Vert \isdef \max_{\mathbf{x}\neq \...
...\Vert\,\mathbf{A}\mathbf{x}\,\right\Vert}{\left\Vert\,\mathbf{x}\,\right\Vert}
$](http://www.dsprelated.com/josimages_new/pasp/img575.png)
![$ \left\Vert\,\mathbf{x}\,\right\Vert$](http://www.dsprelated.com/josimages_new/pasp/img576.png)
![$ \mathbf{x}$](http://www.dsprelated.com/josimages_new/pasp/img571.png)
![$ \vert\vert\,\mathbf{A}\mathbf{x}\,\vert\vert $](http://www.dsprelated.com/josimages_new/pasp/img577.png)
![$ \mathbf{x}$](http://www.dsprelated.com/josimages_new/pasp/img571.png)
![$ L2$](http://www.dsprelated.com/josimages_new/pasp/img568.png)
![$ \,$](http://www.dsprelated.com/josimages_new/pasp/img196.png)
where
![$ \left\Vert\,\mathbf{A}\,\right\Vert _2$](http://www.dsprelated.com/josimages_new/pasp/img579.png)
![$ \mathbf{A}$](http://www.dsprelated.com/josimages_new/pasp/img569.png)
It can be shown [167] that the spectral norm of a matrix
is given by the largest singular value of
(``
''), and that this is equal to the
square-root of the largest eigenvalue of
, where
denotes the matrix transpose of the real matrix
.3.11
Since every orthogonal matrix
has spectral norm
1,3.12 a wide variety of stable
feedback matrices can be parametrized as
![$\displaystyle \mathbf{A}= {\bm \Gamma}\mathbf{Q}
$](http://www.dsprelated.com/josimages_new/pasp/img586.png)
![$ \mathbf{Q}$](http://www.dsprelated.com/josimages_new/pasp/img531.png)
![$ {\bm \Gamma}$](http://www.dsprelated.com/josimages_new/pasp/img530.png)
![$\displaystyle {\bm \Gamma}= \left[ \begin{array}{cccc}
g_1 & 0 & \dots & 0\\
0...
...\\
0 & 0 & \dots & g_N
\end{array}\right], \quad \left\vert g_i\right\vert<1.
$](http://www.dsprelated.com/josimages_new/pasp/img587.png)
An alternative stability proof may be based on showing that an FDN is
a special case of a passive digital waveguide network (derived in
§C.15). This analysis reveals that the FDN is lossless if
and only if the feedback matrix
has unit-modulus eigenvalues
and linearly independent eigenvectors.
Next Section:
Allpass Filters
Previous Section:
Comb Filters