Chapter 7: How to Draw Block Diagrams

Block Diagram Notation

Overview

A block diagram is a concise pictorial representation of the components of a system and the flow of signals, drawn with lines and symbols. In digital signal processing, basic elements such as addition, subtraction, constant multiplication, and delay are combined to express the structures of filters (linear time-invariant systems); multiplying two signals together is a different operation, used for example in modulation. As a rule, signals are drawn flowing from left to right and from top to bottom.

Block

A functional unit is represented by a rectangular block. Typically a description or name is written inside the rectangle, but if it does not fit, the label may also be placed outside.

Basic form of a block Process
Figure 1: Block (basic rectangular form)

Input and Output

The input is drawn as a line entering from the left, and the output as a line exiting to the right. A small circle may be attached to denote a terminal, but since the convention that signals flow from left to right is established, inputs and outputs can be distinguished even when the terminal circles are omitted and only lines are used.

Input/output notation using terminal symbols x[n] H(z) y[n] Input Output
Figure 2.1: I/O notation using terminal symbols (circles)
Input/output notation with terminal symbols omitted x[n] H(z) y[n] Input Output
Figure 2.2: Notation with terminal symbols omitted

Adding arrows makes the direction of signal flow more explicit and reduces the risk of misreading.

Input/output notation using arrows --> x[n] H(z) --> y[n] Input Output
Figure 2.3: I/O notation using arrows

Connection and Branching

Blocks are connected by lines to express the flow of signals. By convention, signals flow from left to right and from top to bottom. When the flow goes against the convention (right to left, or bottom to top), an arrow is added to indicate the direction explicitly.

When a signal branches into several paths, a filled black dot (•) is placed at the branch point. When two lines merely cross without being connected, drawing one line jumping over the other prevents misreading (lower left of Figure 3).

How to draw connections and branches Connection A B Branching C D x x x Crossing (no connection)
Figure 3: Connection and branching

Addition and Subtraction

To add signals together, an adder symbol consisting of a circle with a "+" inside is used. When addition and subtraction are mixed, the circle contains the summation symbol "$\Sigma$", and "+" or "$-$" is written near each input arrow.

Notation for addition and subtraction Addition + x₁[n] x₂[n] x₁+x₂ Add/Subtract (Sigma) Σ + − x₁[n] x₂[n] x₁−x₂ Place + or − near each input
Figure 4: Addition and subtraction (notation with + and $\Sigma$)

Multiplication

To multiply signals together, a multiplier symbol consisting of a circle with "$\times$" inside is used. When a signal is multiplied by a constant (a gain), it is represented by a triangle pointing in the direction of signal flow, with the gain written inside or near the triangle. In filters (linear time-invariant systems), the basic element is multiplication by a constant; multiplying two signals together is not a linear time-invariant operation (it is used, for example, in modulation).

Notation for multiplication Signal × Signal × x₁[n] x₂[n] x₁·x₂ Gain a x[n] a·x[n] An amplifier symbol in analog circuits; here a constant multiplier by a
Figure 5: Multiplication (signal-by-signal uses $\times$; a gain uses a triangle pointing in the direction of signal flow)

Delay

To delay a signal by one sample, a block containing $z^{-1}$ is used. For a delay of $N$ samples (with $N$ a nonnegative integer), $z^{-N}$ is written instead (in the time domain, $y[n]=x[n-N]$).

Relation to the z-transform

$z^{-1}$ corresponds to a one-sample delay of the signal $X(z)$, namely $X(z) \cdot z^{-1}$, in the z-transform (the two-sided z-transform, or the one-sided one with $x[n]=0$ for $n \lt 0$). Similarly, $z^{-N}$ denotes the $N$-sample delay $X(z) \cdot z^{-N}$.

Notation for delay elements 1-sample delay z−1 x[n] x[n−1] N-sample delay z−N x[n] x[n−N] A 1-sample delay uses one memory cell (register); an N-sample delay uses N
Figure 6: Delay ($z^{-1}$ and $z^{-N}$)

Transfer Function Block

The transfer function of an entire system or a subsystem is written inside a rectangle as, e.g., $H(z)$. This abstracts away the internal structure and shows only the linear time-invariant (LTI) input-output relation. For an input $X(z)$, the output with zero initial state (the zero-state response) is $Y(z) = H(z) \cdot X(z)$.

Transfer function block H(z) X(z) Y(z) = H(z)·X(z)
Figure 7: Transfer function block $H(z)$

Up/Down-Sampling

In multirate systems, special symbols are used to denote sampling-rate conversion. Upsampling ($\uparrow N$) inserts $N-1$ zeros between consecutive samples to multiply the rate by $N$, while downsampling ($\downarrow N$) keeps only one out of every $N$ samples, dividing the rate by $N$ (in practice, a low-pass filter is placed before it to prevent aliasing).

Upsampling and downsampling Upsampling ↑ N or (circle style) x[n] ↑ N (rectangular style) Downsampling ↓ N or (circle style) x[n] ↓ N (rectangular style)
Figure 8: Upsampling and downsampling

Summary

  • Block diagram: signal-processing systems are depicted using the basic elements of addition/subtraction, constant multiplication, and delay (multiplying two signals is a separate operation, e.g. modulation)
  • Signal flow: from left to right and top to bottom by convention; the reverse direction is indicated by arrows
  • Delay $z^{-1}$: represents a one-sample delay, corresponding to one memory cell
  • Transfer function block: $H(z)$ abstracts away the internal structure
  • Up/Down-sampling: $\uparrow N$ and $\downarrow N$ represent rate conversion

References

Frequently Asked Questions

Q1. What is a block diagram?

A block diagram is a concise pictorial representation of a system's components and the flow of signals between them, using lines and symbols. In digital filters (linear time-invariant systems), the basic elements of addition/subtraction, constant multiplication, and delay are combined to express their structure. Multiplying two signals together is a different operation, used for example in modulation.

Q2. What does $z^{-1}$ mean in a block diagram?

$z^{-1}$ denotes a one-sample delay. It comes from the fact that in the z-transform (the two-sided z-transform, or the one-sided one with $x[n]=0$ for $n \lt 0$), a one-sample delay of a signal $X(z)$ is written as $z^{-1}X(z)$. Similarly, for a nonnegative integer $N$, $z^{-N}$ denotes an $N$-sample delay.