Discrete-time Systems
What is A System ?
A System Responds to signals and produces new signals.
System Analysis - Basically:
- Mathematical model - Idealized representation of the system
- Describing the relationship between the input and output signals
- 4 main types of input/output representations
- Time Domain :
- Input/output differential equation or difference equation
- Convolution model
- Frequency Domain :
- Fourier Transform representation
- Transfer function representation
Model
MIMO System
Multiple Input, Multiple Output (MIMO) System
SISO System
Single Input, Single Output (SISO) System
E.g. Sampling
x(t)→T{}:sampling→y[n]=x(nTs)
E.g. Amplifier
x[n]T{}:amplifier→y[n]=c×x[n]
Properties of system - Basically:
A System can be:
- Memoryless - output depends on the current input signal only
- Causal - output does not depend on future input signal
- Additive - output for (x1+x2) = output for x1 + output for x2
- Homogeneous - output for (cx) = (output for x) scaled by c
- Linear - Additive + homogeneous
- Time invariant - its behavior doesn’t change with time
- ^ c is a real number, x1,x2,x are inputs.
The properties are not mutually exclusive. (Cannot have >1 different properties)
- Linear is special case, but still only Additive + homogeneous
System property: Memory
Possess Memory
- Possess Memory - output does not solely depend on the present value of the input signal
Example of Averaging
x[n]→H{}:averaging→y[n]=(x[n]+x[n−1])/2
Note Here the output is depend on the previous input x[n−1] .
Since y[n] is x[n+k]-dependent where k=0, It possess Memory and does not solely depend on the present value of the input signal.
Memoryless
- Memoryless - output depends only on the present value of the input signal
System property: Causality
All real-time system is causal.
In real-time system, It is impossible to get an output before an input is applied to the system
Causal
- Causal - future input will not be considered
- Example case: A system that introduces a time delay
Example of Delay
x[n]→H{}:delay→y[n]=x[n−1]
Noncausal
- Noncausal - depends on future system input (contains [x+4])
Example of Averaging
Note: An averaging circuit is not necessarily a non- causal system. It depends on how it is realized.
Compare this example and the one in possess Memory example!
x[n]→H{}:averaging→y[n]=(x[n]+x[n+1])/2
Note Here the output is depend on the future input x[n+1] .
System property: Linearity
A system is linear if it is both additive and homogeneous.
Otherwise the System is non-Linear.
Additive
Homogeneous
More Info about Linearity
If the System is Linear, we can derive the output by convolution.
We cannot handle nonlinear system. If the range is small enough, it can be approximated by linear systems.
Nonlinear
Prove a system that is nonlinear.
First Find is it addictive, then is it homogenous.
If it is not addictive or homogenous, the system is nonlinear.
Example:
Is this System Linear or NonLinear?
Firstly, prove if it is additive.
let y1[n]=x12[n], y2[n]=x22[n]
If x3[n]=x1[n]+x2[n]
=> y3[n]={x3[n]}2 =x12[n]+x22[n]+2x1[n]x2[n]
=> y3[n]=y12[n]+y22[n]+2x1[n]x2[n]=y1[n]+y2[n]
Therefore it is not additive => Not Linear
Let’s check homogenous too, Although we knew the system is nonlinear.
let y1[n]=x12[n]
If x2[n]=ax1[n]
=> y2[n]=x2[n]2=a2x12[n]
=> y2[n]=a2y1[n]=ay1[n]
Therefore it is not homogeneous! => Not linear.
System property: Time Invariance
Time invariance
If an input is delayed by t0, then the output is also delayed by the same amount.

Additive
Example:
Is this System time invariant or time variant?
let y1[n]=x12[n]
If x2[n]=x1[n−m]
=> y2[n]=x2[n]2=x1[n−m]2=y1[n−m]
Therefore it is time invariant.
Warm-up questions
Lets do some questions to warm up.

(i) it is Casual. As the output depends on the past and the current input values only (x[n] and x[n-1])
(ii) It has Memory. As the current output y[n] depends on a past input value x[n-1].
(iii)
Addictive?
Let y1[n]=x1[n]+x1[n−1], y2[n]=x2[n]+x2[n−1]
If y3[n]=y1[n]+y2[n]
=> y3[n]=x3[n]+x3[n−1]=x1[n]+x1[n−1]+x2[n]+x2[n−1]
=> y3[n]=y1[n]+y2[n]=x1[n]+x1[n−1]+x2[n]+x2[n−1]
Yes it is addictive.
Homogenous?
Let y1[n]=x1[n]+x1[n−1]
If x2[n]=ax1[n]
=> y2[n]=x2[n]+x2[n−1]
=> y2[n]=ax1[n]+ax1[n−1]=ay1[n]
Yes it is homogenous.
Therefore: Linear
(iv)
If y[n]=x1[n]+x1[n−1]
Then for input x2[n]=x1[n−t], we have
y2[n]=x2[n]+x2[n−1]
y2[n]=(x1[n−t]+x1[n−t−1])=y1[n−t]
It is Time-invariant.
Quick Check on System
| Properties |
Contains component / Bookmark |
| Not Causal |
Contains x [n+k] where k>0 |
| Not Memoryless |
Contains x[n−k] where k=0 |
| Not Time-invariant |
Contains x[kn] where k=0 |
| Not Linear |
Contains x[n]1 or Square or Cubic or any power =0 |
| Causal |
!(Not Casual), All real-time system is casual |
| Memoryless |
!(Not Memoryless), depends only on present input |
| Additive |
input1 + input2 = output1 + output2 |
| Homogeneous |
k × input = k × output |
| Linear |
output can be derived by convolution (LTI) |
| Time invariance |
input delayed by tk -> output also delayed by tk |
Time Domain Analysis of Discrete-time Systems
LTI Discrete-time Systems
LTI System
- A system which is causal + linear + time-invariant
- when input = unit pulse δ[n], output = unit-pulse response h[n] (Special Case)
- unit-pulse response can be measured or derived based on the system model
A LTI system is (time-invariant, homogeneous, additive, linear, usually causal).
General Case:
x[n]→SystemH{}→y[n]
Special Case:
δ[n]→SystemH{}→h[n]
Property of a LTI system’s unit-pulse response

Difference equation
A discrete system can be modeled with a difference equation.
difference equation
i∑βiy[n−i]=j∑ajx[n−j]
where y[n−i] is the (n−i)th output samples,
x[n−j] is the (n−j)th input samples
α and β are the weight.
Example:
y[n]=x[n]+x[n−1]+x[n−2]
i.e. α0=α1=α2=β0=1, other αk=βk=0
get h[n] based on difference equation
When x[n]=δ[n] , then y[n] is the unit-pulse response h[n].
Example:
Given difference equation: y[n]+y[n−1]=x[n]+2x[n−1]+x[n−2]
get h[n].
Solution:
When x[n]=δ[n], y[n] is the unit-pulse response h[n]
replace x[n] with δ[n], replace y[n] with h[n]
=> h[n]+h[n−1]=δ[n]+2δ[n−1]+δ[n−2]

Note: All the values except δ[0] are 0s.
Convolution (in Discrete)
Output response y[n] is equal to the convolution of the unit-pulse response h[n] with the input x[n].
In general, x[n], y[n] and h[n] can be any discrete functions (signals or unit pulse responses of systems).
y[n]=x[n]⊗h[n]≜i=−∞∑∞x[i]h[n−i]=i=0∑∞h[i]x[n−i]
where h[i] is the ith sample of h[n] if i is a constant.
Note: ≜ means “equal to by definition”
- The system is determined completely by the unit-pulse response h[n].
Important things:
h[−i]: time reflected version of sequence h[i]
h[n−i]: shift the time reflected version h[−i] to the right by n steps
Length of convolution output: Length of h + Length of x - 1
Example - compute the whole output sequence y[n] for all n.

Example - focus in individual y[n] samples and compute those of interest only:



So basically, for computing output y[n] with input x[n] and system h[n] by convolution:
- Initialize n=0
- Flip h[i] to get h[−i]
- Shift h[−i] to the right by n to get h[n−i]
- Pointwise multiply h[n−i] and x[i] to get x[i]h[n−i]
- Sum up x[i]h[n−i] for all i to get y[n]
- If Got all y[n], end. Else n=n+1 (and go back to step 3.
Properties of Convolution
Associativity
x[n]⊗(v[n]⊗w[n])=(x[n]⊗v[n])⊗w[n]
Commutativity
x[n]⊗v[n]=v[n]⊗x[n],i=−∞∑∞x[i]v[n−i]=i=−∞∑∞v[i]x[n−i]
Distributivity with Addition
x[n]⊗(v[n]+w[n])=x[n]⊗v[n]+x[n]⊗w[n]
Shift property
w[n]=x[n]⊗v[n]⇒
w[n−q]=x[n−q]⊗v[n] or w[n−q]=x[n]⊗v[n−q]
LTI system is time invariant.
Convolution with the unit pulse
x[n]⊗δ[n]=i=−∞∑∞x[i]δ[n−i]=x[n]
LTI system is time invariant.
Convolution with the shifted unit pulse
x[n]⊗δ[n−q]=∑x[i]δ[n−q−i]=x[n−q]
LTI system is time invariant.
Self convolution
x[n]⊗x[n]=i=0∑∞x[i]x[n−i]
Where x[n] is the sequence.
Warm-up Questions
Lets do some questions to warm up.
y[n]=x[n]⊗h[n]≜∑i=−∞∞x[i]h[n−i]=∑i=0∞h[i]x[n−i]
- Initialize n=0
- Flip h[i] to get h[−i]
- Shift h[−i] to the right by n to get h[n−i]
- Pointwise multiply h[n−i] and x[i] to get x[i]h[n−i]
- Sum up x[i]h[n−i] for all i to get y[n]
- If Got all y[n], end. Else n=n+1 (and go back to step 3.
- x[n]={2,4,6,4,2} h[n]={3,−1,2,1} (unit pulse response) What will be the output?

Therefore y[n]={6,10,18,16,18,12,8,2}.

Impulse response h[n] is the output when input is δ[n].
if x[n]=δ[n] , then y[n]=h[n].
h[n]=2δ[n]+3δ[n−1]−4δ[n−2]



y[n]=1,2,−5,13,−2,3

x[n]={1,2,−1,1,2}
h[n]={1,1,0,2,−2,−1}

y[n]={1,3,1,2,5,−5,2,3,−5,−2}
y[n]=δ[n+5]+3δ[n+4]+δ[n+3]+2δ[n+2]+5δ[n+1]−5δ[n]+2δ[n−1]+3δ[n−2]−5δ[n−3]−2δ[n−4]

h[n]=∑k=−∞nδ[k]
h[n]=δ[n]+δ[n−1]+δ[n−2]+⋯=u[n]
graph of output y[n]

Keynote Summary
LTI System
A LTI system is (time-invariant, homogeneous, additive, linear, usually causal).
Pulse Response
The definition of unit pulse response of a system is the system output when the input is when input is δ[n].
- Output : h[n] <- pulse response
- Input : δ[n]
Convolution
Formula : y[n]=x[n]⊗h[n]=∑i=0∞h[i]x[n−i]
- Number of terms in y[n]
- = Range of non-zero terms of x[n] + Range of non-zero terms of h[n] and then - 1