In the diagram below there are three multiplication operations required to compute each filter output sample. I'd like to draw a block diagram of an equivalent filter but requiring fewer than three multiplies per filter output sample.

I need to transform the filter structure to Transformed Direct Form II, that it can be seen that number of multiplication can be reduced to 2. But, how to do that

enter image description here


enter image description here

As per the filter, are we talking about something like the picture below? If that's the case, what's up with that unmarked node? What is he, addition? just redirection? I've never seen that before.

I'm trying to extract some generalizable rules about how to construct those neat equations you've made about the output and A & B but I'm not really able to put it into words, because I have only to foggiest notion of what you've done there, would you help me to do that?


1 Answer 1


It's instructive to look at the actual difference equation implemented by the system. If you define a sequence $w[n]$ as the output of the first (left-hand side) adder you get

$$w[n] = x[n] + Aw[n-1]\\ y[n] = Bw[n] + Bw[n-1]$$

Applying the $\mathcal{Z}$-transform gives

$$W(z) = X(z) + A \ W(z)z^{-1}\\ Y(z) = B \ W(z)\left(1 + z^{-1}\right)$$

which results in

$$W(z) = \frac{X(z)}{1-Az^{-1}}\\ Y(z) = \frac{B(1+z^{-1})}{1-Az^{-1}}X(z)$$

In the time-domain this last equation is equivalent to

$$y[n] = Ay[n-1]+B \left( x[n] + x[n-1] \right) \tag{1}$$

Equation (1) shows that this system can obviously be implemented with only two multiplications. If you want to use the Transposed Direct-Form II structure then just use the structure shown here (bottom figure), set $a_1=-A$, remove the branches with multipliers $a_2$ and $b_2$ and the lower delay element (because you only have a first order filter), remove the multipliers $b_0$ and $b_1$, and multiply the input signal directly with $B$.

EDIT: (in reaction to your updated question)

There are a few mistakes in your figure. Note that in the figure I linked to, the input is on the right-hand side. This might have caused some confusion. Anyway, in your figure where you multiply by $B$, just multiply by $A$ instead. Then remove the multiplication by $-A$ and add a multiplication by $B$ to the input signal $x[n]$, before the path splits. The node you refer to is simply an addition; they obviously forgot the 'plus' sign.

As for the equations, what I wanted to do is to get a difference equation for the output signal $y[n]$ in terms of $x[n]$ and of delayed versions of $x[n]$ and $y[n]$. This shows what the system actually does and in this way the description of the system becomes independent of the chosen filter structure. In order to do that, I used the $\mathcal{Z}$-transform which transforms difference equations into algebraic equations. So in the $\mathcal{Z}$-domain it is straightforward to eliminate the signal $w[n]$ and write $Y(z)$ directly in terms of $X(z)$. Transforming back to the time-domain yields the desired difference equation, which can then be implemented by any structure you like.

  • $\begingroup$ Hi, I wanted to ask a question with a picture so I posted it as an answer, I know that's in bad taste, but the comments on this site are so maladapted I didn't really have any other choice! or did I? $\endgroup$
    – user8769
    May 29, 2014 at 1:04
  • $\begingroup$ @matthias.anglicus: I've added some info to my answer in reaction to your comments. I've also added the update to your question to the original question. You can delete your answer now. $\endgroup$
    – Matt L.
    May 29, 2014 at 11:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy