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, multiplication, and delay are combined to express filter structures. 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.

Notation for multiplication Signal x Signal × x₁[n] x₂[n] x₁·x₂ Gain a x[n] a·x[n] The triangle is the symbol for an amplifier
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, $z^{-N}$ is written instead.

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. 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 delay corresponds to one memory cell (register)
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 input-output relation. For an input $X(z)$, the output 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 zeros between samples of the original signal to multiply the rate by $N$, while downsampling ($\downarrow N$) keeps only one out of every $N$ samples, dividing the rate by $N$.

Upsampling and downsampling Upsampling N x[n] ↑ N (rectangular style) Downsampling N 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, multiplication, and delay
  • 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