Tapped Delay Line (TDL)
A tapped delay line (TDL) is a delay line with at least one ``tap''. A delay-line tap extracts a signal output from somewhere within the delay line, optionally scales it, and usually sums with other taps for form an output signal. A tap may be interpolating or non-interpolating. A non-interpolating tap extracts the signal at some fixed integer delay relative to the input. Thus, a tap implements a shorter delay line within a larger one, as shown in Fig.2.18.
Tapped delay lines efficiently simulate multiple echoes from the same source signal. As a result, they are extensively used in the field of artificial reverberation.
Example Tapped Delay Line
An example of a TDL with two internal taps is shown in Fig.2.19. The total delay line length is samples, and the internal taps are located at delays of and samples, respectively. The output signal is a linear combination of the input signal , the delay-line output , and the two tap signals and .
The difference equation of the TDL in Fig.2.19 is, by inspection,
Transposed Tapped Delay Line
In many applications, the transpose of a tapped delay line is desired, as shown in Fig.2.20, which is the transpose of the tapped delay line shown in Fig.2.19. A transposed TDL is obtained from a normal TDL by formal transposition of the system diagram. The transposition operation is also called flow-graph reversal [333, pp. 153-155]. A flow-graph is transposed by reversing all signal paths, which necessitates signal branchpoints becoming sums, and sums becoming branchpoints. For single-input, single-output systems, the transfer function is the same, but the input and output are interchanged. This ``flow-graph reversal theorem'' derives from Mason's gain formula for signal flow graphs. Transposition is used to convert direct-forms I and II of a digital filter to direct-forms III and IV, respectively [333].
TDL for Parallel Processing
When multiplies and additions can be performed in parallel, the computational complexity of a tapped delay line is multiplies and additions, where is the number of taps. This computational complexity is achieved by arranging the additions into a binary tree, as shown in Fig.2.21 for the case .
General Causal FIR Filters
The most general case--a TDL having a tap after every delay element--is the general causal Finite Impulse Response (FIR) filter, shown in Fig.2.22. It is restricted to be causal because the output may not depend on ``future'' inputs , , etc. The FIR filter is also called a transversal filter. FIR filters are described in greater detail in [449].
The difference equation for the th-order FIR filter in Fig.2.22 is, by inspection,
The STK class for implementing arbitrary direct-form FIR filters is called Fir. (There is also a class for IIR filters named Iir.) In Matlab and Octave, the built-in function filter is normally used.
Next Section:
Comb Filters
Previous Section:
Digital Waveguides