0% found this document useful (0 votes)
8 views78 pages

Digital Signal Processing - Quick Guide

Uploaded by

majdahmadali1976
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views78 pages

Digital Signal Processing - Quick Guide

Uploaded by

majdahmadali1976
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Page 1 of 78

Home Whiteboard Graphing Calculator Online Compilers Practice Art

Digital Signal Processing - Quick Guide

Digital Signal Processing - Signals-Definition

Definition
Anything that carries information can be called as signal. It can also be defined as a
physical quantity that varies with time, temperature, pressure or with any independent
variables such as speech signal or video signal.

The process of operation in which the characteristics of a signal (Amplitude, shape,


phase, frequency, etc.) undergoes a change is known as signal processing.

Note − Any unwanted signal interfering with the main signal is termed as noise. So,
noise is also a signal but unwanted.

According to their representation and processing, signals can be classified into various
categories details of which are discussed below.

Continuous Time Signals


Continuous-time signals are defined along a continuum of time and are thus,
represented by a continuous independent variable. Continuous-time signals are often
referred to as analog signals.

This type of signal shows continuity both in amplitude and time. These will have values
at each instant of time. Sine and cosine functions are the best example of Continuous
time signal.
Page 2 of 78

The signal shown above is an example of continuous time signal because we can get
value of signal at each instant of time.

Discrete Time signals


The signals, which are defined at discrete times are known as discrete signals. Therefore,
every independent variable has distinct value. Thus, they are represented as sequence of
numbers.

Although speech and video signals have the privilege to be represented in both
continuous and discrete time format; under certain circumstances, they are identical.
Amplitudes also show discrete characteristics. Perfect example of this is a digital signal;
whose amplitude and time both are discrete.

The figure above depicts a discrete signals discrete amplitude characteristic over a period
of time. Mathematically, these types of signals can be formularized as;

x = {x [n]} , −∞ < n < ∞

Where, n is an integer.

It is a sequence of numbers x, where nth number in the sequence is represented as x[n].

Digital Signal Processing - Basic CT Signals


To test a system, generally, standard or basic signals are used. These signals are the
basic building blocks for many complex signals. Hence, they play a very important role in
the study of signals and systems.

Unit Impulse or Delta Function


Page 3 of 78

A signal, which satisfies the condition, δ(t) = limϵ→∞ x(t) is known as unit impulse
signal. This signal tends to infinity when t = 0 and tends to zero when t ≠ 0 such that
the area under its curve is always equals to one. The delta function has zero amplitude
everywhere excunit_impulse.jpgept at t = 0.

Properties of Unit Impulse Signal

δ(t) is an even signal.

δ(t) is an example of neither energy nor power (NENP) signal.


Area of unit impulse signal can be written as;

∞ ∞ ∞

A = ∫ δ(t)dt = ∫ lim x(t)dt = lim ∫ [x(t)dt] = 1


ϵ→0 ϵ→0
−∞ −∞ −∞

Weight or strength of the signal can be written as;

y(t) = Aδ(t)

Area of the weighted impulse signal can be written as −

∞ ∞ ∞

y(t) = ∫ y(t)dt = ∫ Aδ(t) = A[∫ δ(t)dt] = A = 1


−∞ −∞ −∞

= W igthedimpulse

Unit Step Signal


A signal, which satisfies the following two conditions −

U (t) = 1(when t ≥ 0)and

U (t) = 0(when t < 0)

is known as a unit step signal.


Page 4 of 78

It has the property of showing discontinuity at t = 0. At the point of discontinuity, the


signal value is given by the average of signal value. This signal has been taken just
before and after the point of discontinuity (according to Gibbs Phenomena).

If we add a step signal to another step signal that is time scaled, then the result will be
unity. It is a power type signal and the value of power is 0.5. The RMS (Root mean
square) value is 0.707 and its average value is also 0.5

Ramp Signal
Integration of step signal results in a Ramp signal. It is represented by r(t). Ramp signal
t
also satisfies the condition r(t) = ∫
−∞
U (t)dt = tU (t). It is neither energy nor power
(NENP) type signal.

Parabolic Signal
Integration of Ramp signal leads to parabolic signal. It is represented by p(t). Parabolic
t
signal also satisfies he condition p(t) = ∫
−∞
2
r(t)dt = (t /2)U (t) . It is neither energy
nor Power (NENP) type signal.

Signum Function
Page 5 of 78

This function is represented as

1 f or t > 0
sgn(t) = {
−1 f or t < 0

It is a power type signal. Its power value and RMS (Root mean square) values, both are
1. Average value of signum function is zero.

Sinc Function
It is also a function of sine and is written as −

S inΠt
S inC (t) = = S a(Πt)
ΠT

Properties of Sinc function

It is an energy type signal.


sin Πt
S inc(0) = limt→0 = 1
Πt

(Range of sinπ∞ varies between -1 to +1 but


sin Π∞
S inc(∞) = limt→∞ = 0
Π∞

anything divided by infinity is equal to zero)

If sin c(t) = 0 => sin Πt = 0

⇒ Πt = nΠ

⇒ t = n(n ≠ 0)

Sinusoidal Signal
A signal, which is continuous in nature is known as continuous signal. General format of
a sinusoidal signal is

x(t) = A sin(ωt + ϕ)

Here,

A = amplitude of the signal

ω = Angular frequency of the signal (Measured in radians)


Page 6 of 78

φ = Phase angle of the signal (Measured in radians)

The tendency of this signal is to repeat itself after certain period of time, thus is called
periodic signal. The time period of signal is given as;


T =
ω

The diagrammatic view of sinusoidal signal is shown below.

Rectangular Function
A signal is said to be rectangular function type if it satisfies the following condition −

τ
t 1, f or t ≤
2
π( ) = {
τ 0, Otherwise

Being symmetrical about Y-axis, this signal is termed as even signal.

Triangular Pulse Signal


Any signal, which satisfies the following condition, is known as triangular signal.

2|t| τ
t 1 − ( ) f or|t| <
τ 2
Δ( ) = {
τ
τ 0 f or|t| >
2
Page 7 of 78

This signal is symmetrical about Y-axis. Hence, it is also termed as even signal.

Digital Signal Processing - Basic DT Signals


We have seen that how the basic signals can be represented in Continuous time domain.
Let us see how the basic signals can be represented in Discrete Time Domain.

Unit Impulse Sequence


It is denoted as δ(n) in discrete time domain and can be defined as;

1, f or n = 0
δ(n) = {
0, Otherwise

Unit Step Signal


Discrete time unit step signal is defined as;

1, f or n ≥ 0
U (n) = {
0, f or n < 0

The figure above shows the graphical representation of a discrete step function.

Unit Ramp Function


A discrete unit ramp function can be defined as −
Page 8 of 78

n, f or n ≥ 0
r(n) = {
0, f or n < 0

The figure given above shows the graphical representation of a discrete ramp signal.

Parabolic Function
Discrete unit parabolic function is denoted as p(n) and can be defined as;
2
n
, f or n ≥ 0
p(n) = { 2

0, f or n < 0

In terms of unit step function it can be written as;

2
n
P (n) = U (n)
2

The figure given above shows the graphical representation of a parabolic sequence.

Sinusoidal Signal
All continuous-time signals are periodic. The discrete-time sinusoidal sequences may or
may not be periodic. They depend on the value of ω. For a discrete time signal to be
periodic, the angular frequency ω must be a rational multiple of 2π.
Page 9 of 78

A discrete sinusoidal signal is shown in the figure above.

Discrete form of a sinusoidal signal can be represented in the format −

x(n) = A sin(ωn + ϕ)

Here A,ω and φ have their usual meaning and n is the integer. Time period of the
discrete sinusoidal signal is given by −

2πm
N =
ω

Where, N and m are integers.

DSP - Classification of CT Signals


Continuous time signals can be classified according to different conditions or operations
performed on the signals.

Even and Odd Signals

Even Signal

A signal is said to be even if it satisfies the following condition;

x(−t) = x(t)

Time reversal of the signal does not imply any change on amplitude here. For example,
consider the triangular wave shown below.

The triangular signal is an even signal. Since, it is symmetrical about Y-axis. We can say
it is mirror image about Y-axis.
Page 10 of 78

Consider another signal as shown in the figure below.

We can see that the above signal is even as it is symmetrical about Y-axis.

Odd Signal
A signal is said to be odd, if it satisfies the following condition

x(−t) = −x(t)

Here, both the time reversal and amplitude change takes place simultaneously.

In the figure above, we can see a step signal x(t). To test whether it is an odd signal or
not, first we do the time reversal i.e. x(-t) and the result is as shown in the figure. Then
we reverse the amplitude of the resultant signal i.e. x(-t) and we get the result as shown
in figure.

If we compare the first and the third waveform, we can see that they are same, i.e.
x(t)= -x(-t), which satisfies our criteria. Therefore, the above signal is an Odd signal.

Some important results related to even and odd signals are given below.

Even Even = Even

Odd Odd = Even

Even Odd = Odd

Even ± Even = Even

Odd ± Odd = Odd

Even ± Odd = Neither even nor odd


Page 11 of 78

Representation of any signal into even or odd form

Some signals cannot be directly classified into even or odd type. These are represented
as a combination of both even and odd signal.

x(t) → xe (t) + x0 (t)

Where xe(t) represents the even signal and xo(t) represents the odd signal

[x(t) + x(−t)]
xe (t) =
2

And

[x(t) − x(−t)]
x0 (t) =
2

Example
Find the even and odd parts of the signal x(n) = t + t
2
+ t
3

Solution − From reversing x(n), we get

2 3
x(−n) = −t + t − t

Now, according to formula, the even part

x(t) + x(−t)
xe (t) =
2

2 3 2 3
[(t + t + t ) + (−t + t − t )]
=
2

2
= t

Similarly, according to formula the odd part is

[x(t) − x(−t)]
x0 (t) =
2

2 3 2 3
[(t + t + t ) − (−t + t − t )]
=
2

3
= t + t

Periodic and Non-Periodic Signals

Periodic Signals
Page 12 of 78

Periodic signal repeats itself after certain interval of time. We can show this in equation
form as −

x(t) = x(t) ± nT

Where, n = an integer (1,2,3)

T = Fundamental time period (FTP) ≠ 0 and ≠∞

Fundamental time period (FTP) is the smallest positive and fixed value of time for which
signal is periodic.

A triangular signal is shown in the figure above of amplitude A. Here, the signal is
repeating after every 1 sec. Therefore, we can say that the signal is periodic and its FTP
is 1 sec.

Non-Periodic Signal

Simply, we can say, the signals, which are not periodic are non-periodic in nature. As
obvious, these signals will not repeat themselves after any interval time.

Non-periodic signals do not follow a certain format; therefore, no particular


mathematical equation can describe them.

Energy and Power Signals


A signal is said to be an Energy signal, if and only if, the total energy contained is finite
and nonzero (0<E<∞). Therefore, for any energy type signal, the total normalized signal
is finite and non-zero.

A sinusoidal AC current signal is a perfect example of Energy type signal because it is in


positive half cycle in one case and then is negative in the next half cycle. Therefore, its
average power becomes zero.

A lossless capacitor is also a perfect example of Energy type signal because when it is
connected to a source it charges up to its optimum level and when the source is
removed, it dissipates that equal amount of energy through a load and makes its
average power to zero.
Page 13 of 78

For any finite signal x(t) the energy can be symbolized as E and is written as;

+∞
2
E = ∫ x (t)dt
−∞

Spectral density of energy type signals gives the amount of energy distributed at various
frequency levels.

Power type Signals


A signal is said to be power type signal, if and only if, normalized average power is finite
and non-zero i.e. (0<p<∞). For power type signal, normalized average power is finite
and non-zero. Almost all the periodic signals are power signals and their average power
is finite and non-zero.

In mathematical form, the power of a signal x(t) can be written as;

+T /2
2
P = lim 1/T ∫ x (t)dt
T →∞
−T /2

Difference between Energy and Power Signals


The following table summarizes the differences of Energy and Power Signals.

Power signal Energy Signal

Non-periodic signals are energy


Practical periodic signals are power signals.
signals.

Here, Normalized average power is finite and Here, total normalized energy is finite
non-zero. and non-zero.

Mathematically, Mathematically,
+T /2 +∞

2 2
P = lim 1/T ∫ x (t)dt E = ∫ x (t)dt
T →∞
−T /2 −∞

Existence of these signals is infinite over These signals exist for limited period of
time. time.
Page 14 of 78

Energy of power signal is infinite over infinite Power of the energy signal is zero over
time. infinite time.

Solved Examples
Example 1 − Find the Power of a signal o
z(t) = 2 cos(3Πt + 30 ) + 4 sin(3Π + 30 )
o

Solution − The above two signals are orthogonal to each other because their frequency
terms are identical to each other also they have same phase difference. So, total power
will be the summation of individual powers.

Let z(t) = x(t) + y(t)

Where x(t) = 2 cos(3Πt + 30 )


o
and y(t) = 4 sin(3Π + 30 )
o

Power of
2
x(t) = = 2
2

Power of
4
y(t) = = 8
2

Therefore, P (z) = p(x) + p(y) = 2 + 8 = 10 Ans.

Example 2 − Test whether the signal given x(t) = t


2
+ j sin t is conjugate or not?

Solution − Here, the real part being t2 is even and odd part (imaginary) being sin t is
odd. So the above signal is Conjugate signal.

Example 3 − Verify whether X(t) = sin ωt is an odd signal or an even signal.

Solution − Given X(t) = sin ωt

By time reversal, we will get sin(−ωt)

But we know that sin(−ϕ) = − sin ϕ .

Therefore,

sin(−ωt) = − sin ωt

This is satisfying the condition for a signal to be odd. Therefore, sin ωt is an odd signal.

DSP - Classification of DT Signals


Just like Continuous time signals, Discrete time signals can be classified according to the
conditions or operations on the signals.

Even and Odd Signals


Page 15 of 78

Even Signal
A signal is said to be even or symmetric if it satisfies the following condition;

x(−n) = x(n)

Here, we can see that x(-1) = x(1), x(-2) = x(2) and x(-n) = x(n). Thus, it is an even
signal.

Odd Signal
A signal is said to be odd if it satisfies the following condition;

x(−n) = −x(n)

From the figure, we can see that x(1) = -x(-1), x(2) = -x(2) and x(n) = -x(-n). Hence, it
is an odd as well as anti-symmetric signal.

Periodic and Non-Periodic Signals


A discrete time signal is periodic if and only if, it satisfies the following condition −

x(n + N ) = x(n)

Here, x(n) signal repeats itself after N period. This can be best understood by
considering a cosine signal −

x(n) = A cos(2πf0 n + θ)
Page 16 of 78

x(n + N ) = A cos(2πf0 (n + N ) + θ) = A cos(2πf0 n + 2πf0 N + θ)

= A cos(2πf0 n + 2πf0 N + θ)

For the signal to become periodic, following condition should be satisfied;

x(n + N ) = x(n)

⇒ A cos(2πf0 n + 2πf0 N + θ) = A cos(2πf0 n + θ)

i.e. 2πf0 N is an integral multiple of 2π

2πf0 N = 2πK

K
⇒ N =
f0

Frequencies of discrete sinusoidal signals are separated by integral multiple of 2π .

Energy and Power Signals

Energy Signal

Energy of a discrete time signal is denoted as E. Mathematically, it can be written as;

+∞
2
E = ∑ |x(n)|

n=−∞

If each individual values of x(n) are squared and added, we get the energy signal. Here
x(n) is the energy signal and its energy is finite over time i.e $0

Power Signal
Average power of a discrete signal is represented as P. Mathematically, this can be
written as;

+N
1 2
P = lim ∑ |x(n)|
N →∞ 2N + 1
n=−N

Here, power is finite i.e. 0<P<∞. However, there are some signals, which belong to
neither energy nor power type signal.

DSP - Miscellaneous Signals


There are other signals, which are a result of operation performed on them. Some
common type of signals are discussed below.
Page 17 of 78

Conjugate Signals
Signals, which satisfies the condition x(t) = x ∗ (−t) are called conjugate signals.

Let x(t) = a(t) + jb(t) ...eqn. 1

So, x(−t) = a(−t) + jb(−t)

And x ∗ (−t) = a(−t) − jb(−t) ...eqn. 2

By Condition, x(t) = x ∗ (−t)

If we compare both the derived equations 1 and 2, we can see that the real part is even,
whereas the imaginary part is odd. This is the condition for a signal to be a conjugate
type.

Conjugate Anti-Symmetric Signals


Signals, which satisfy the condition x(t) = −x ∗ (−t) are called conjugate anti-
symmetric signal

Let x(t) = a(t) + jb(t) ...eqn. 1

So x(−t) = a(−t) + jb(−t)

And x ∗ (−t) = a(−t) − jb(−t)

−x ∗ (−t) = −a(−t) + jb(−t) ...eqn. 2

By Condition x(t) = −x ∗ (−t)

Now, again compare, both the equations just as we did for conjugate signals. Here, we
will find that the real part is odd and the imaginary part is even. This is the condition for
a signal to become conjugate anti-symmetric type.

Example
Let the signal given be x(t) = sin t + jt
2
.

Here, the real part being sin t is odd and the imaginary part being t
2
is even. So, this
signal can be classified as conjugate anti-symmetric signal.

Any function can be divided into two parts. One part being Conjugate symmetry and
other part being conjugate anti-symmetric. So any signal x(t) can be written as

x(t) = xcs(t) + xcas(t)

Where xcs(t) is conjugate symmetric signal and xcas(t) is conjugate anti symmetric
signal
Page 18 of 78

[x(t) + x ∗ (−t)]
xcs(t) =
2

And

[x(t) − x ∗ (−t)]
xcas(t) =
2

Half Wave Symmetric Signals


T0
When a signal satisfies the condition cx(t) = −x(t ± (
2
)) , it is called half wave
symmetric signal. Here, amplitude reversal and time shifting of the signal takes place by
half time. For half wave symmetric signal, average value will be zero but this is not the
case when the situation is reversed.

Consider a signal x(t) as shown in figure A above. The first step is to time shift the signal
and make it )] . So, the new signal is changed as shown in figure B. Next, we
T
x[t − (
2

reverse the amplitude of the signal, i.e. make it as shown in figure C.


T
−x[t − ( )]
2

Since, this signal repeats itself after half-time shifting and reversal of amplitude, it is a
half wave symmetric signal.

Orthogonal Signal
Two signals x(t) and y(t) are said to be orthogonal if they satisfy the following two
conditions.

Condition 1 − ∫
−∞
x(t)y(t) = 0 [for non-periodic signal]

Condition 2 − ∫ x(t)y(t) = 0 [For periodic Signal]

The signals, which contain odd harmonics (3rd, 5th, 7th ...etc.) and have different
frequencies, are mutually orthogonal to each other.

In trigonometric type signals, sine functions and cosine functions are also orthogonal to
each other; provided, they have same frequency and are in same phase. In the same
manner DC (Direct current signals) and sinusoidal signals are also orthogonal to each
other. If x(t) and y(t) are two orthogonal signals and z(t) = x(t) + y(t) then the power
and energy of z(t) can be written as ;
Page 19 of 78

P (z) = p(x) + p(y)

E(z) = E(x) + E(y)

Example

Analyze the signal: 0


z(t) = 3 + 4 sin(2πt + 30 )

Here, the signal comprises of a DC signal (3) and one sine function. So, by property this
signal is an orthogonal signal and the two sub-signals in it are mutually orthogonal to
each other.

DSP - Operations on Signals Shifting


Shifting means movement of the signal, either in time domain (around Y-axis) or in
amplitude domain (around X-axis). Accordingly, we can classify the shifting into two
categories named as Time shifting and Amplitude shifting, these are subsequently
discussed below.

Time Shifting
Time shifting means, shifting of signals in the time domain. Mathematically, it can be
written as

x(t) → y(t + k)

This K value may be positive or it may be negative. According to the sign of k value, we
have two types of shifting named as Right shifting and Left shifting.

Case 1 (K > 0)
When K is greater than zero, the shifting of the signal takes place towards "left" in the
time domain. Therefore, this type of shifting is known as Left Shifting of the signal.

Example

Case 2 (K < 0)
Page 20 of 78

When K is less than zero the shifting of signal takes place towards right in the time
domain. Therefore, this type of shifting is known as Right shifting.

Example

The figure given below shows right shifting of a signal by 2.

Amplitude Shifting
Amplitude shifting means shifting of signal in the amplitude domain (around X-axis).
Mathematically, it can be represented as −

x(t) → x(t) + K

This K value may be positive or negative. Accordingly, we have two types of amplitude
shifting which are subsequently discussed below.

Case 1 (K > 0)
When K is greater than zero, the shifting of signal takes place towards up in the x-axis.
Therefore, this type of shifting is known as upward shifting.

Example

Let us consider a signal x(t) which is given as;

⎧ 0, t < 0

x = ⎨ 1, 0 ≤ t ≤ 2

0, t > 0

Let we have taken K=+1 so new signal can be written as −

y(t) → x(t) + 1 So, y(t) can finally be written as;

⎧ 1, t < 0

x(t) = ⎨ 2, 0 ≤ t ≤ 2

1, t > 0
Page 21 of 78

Case 2 (K < 0)
When K is less than zero shifting of signal takes place towards downward in the X- axis.
Therefore, it is called downward shifting of the signal.

Example

Let us consider a signal x(t) which is given as;

⎧ 0, t < 0

x(t) = ⎨ 1, 0 ≤ t ≤ 2

0, t > 0

Let we have taken K = -1 so new signal can be written as;

y(t) → x(t) − 1 So, y(t) can finally be written as;

⎧ −1, t < 0

y(t) = ⎨ 0, 0 ≤ t ≤ 2

−1, t > 0

DSP - Operations on Signals Scaling


Scaling of a signal means, a constant is multiplied with the time or amplitude of the
signal.

Time Scaling
If a constant is multiplied to the time axis then it is known as Time scaling. This can be
mathematically represented as;

or ); where α ≠ 0
t
x(t) → y(t) = x(αt) x(
α
Page 22 of 78

So the y-axis being same, the x- axis magnitude decreases or increases according to the
sign of the constant (whether positive or negative). Therefore, scaling can also be
divided into two categories as discussed below.

Time Compression
Whenever alpha is greater than zero, the signals amplitude gets divided by alpha
whereas the value of the Y-axis remains the same. This is known as Time Compression.

Example

Let us consider a signal x(t), which is shown as in figure below. Let us take the value of
alpha as 2. So, y(t) will be x(2t), which is illustrated in the given figure.

Clearly, we can see from the above figures that the time magnitude in y-axis remains the
same but the amplitude in x-axis reduces from 4 to 2. Therefore, it is a case of Time
Compression.

Time Expansion

When the time is divided by the constant alpha, the Y-axis magnitude of the signal get
multiplied alpha times, keeping X-axis magnitude as it is. Therefore, this is called Time
expansion type signal.

Example

Let us consider a square signal x(t), of magnitude 1. When we time scaled it by a


constant 3, such that ), then the signals amplitude gets modified by
t
x(t) → y(t) → x(
3

3 times which is shown in the figure below.

Amplitude Scaling
Page 23 of 78

Multiplication of a constant with the amplitude of the signal causes amplitude scaling.
Depending upon the sign of the constant, it may be either amplitude scaling or
attenuation. Let us consider a square wave signal x(t) = Π(t/4).

Suppose we define another function y(t) = 2 Π(t/4). In this case, value of y-axis will be
doubled, keeping the time axis value as it is. The is illustrated in the figure given below.

Consider another square wave function defined as z(t) where z(t) = 0.5 Π(t/4). Here,
amplitude of the function z(t) will be half of that of x(t) i.e. time axis remaining same,
amplitude axis will be halved. This is illustrated by the figure given below.

DSP - Operations on Signals Reversal


Whenever the time in a signal gets multiplied by -1, the signal gets reversed. It produces
its mirror image about Y or X-axis. This is known as Reversal of the signal.

Reversal can be classified into two types based on the condition whether the time or the
amplitude of the signal is multiplied by -1.

Time Reversal
Whenever signals time is multiplied by -1, it is known as time reversal of the signal. In
this case, the signal produces its mirror image about Y-axis. Mathematically, this can be
written as;

x(t) → y(t) → x(−t)

This can be best understood by the following example.


Page 24 of 78

In the above example, we can clearly see that the signal has been reversed about its Y-
axis. So, it is one kind of time scaling also, but here the scaling quantity is (-1) always.

Amplitude Reversal
Whenever the amplitude of a signal is multiplied by -1, then it is known as amplitude
reversal. In this case, the signal produces its mirror image about X-axis. Mathematically,
this can be written as;

x(t) → y(t) → −x(t)

Consider the following example. Amplitude reversal can be seen clearly.

DSP - Operations on Signals Differentiation


Two very important operations performed on the signals are Differentiation and
Integration.

Differentiation
Differentiation of any signal x(t) means slope representation of that signal with respect
to time. Mathematically, it is represented as;

dx(t)
x(t) →
dt

In the case of OPAMP differentiation, this methodology is very helpful. We can easily
differentiate a signal graphically rather than using the formula. However, the condition is
that the signal must be either rectangular or triangular type, which happens in most
cases.

Original Signal Differentiated Signal


Page 25 of 78

Ramp Step

Step Impulse

Impulse 1

The above table illustrates the condition of the signal after being differentiated. For
example, a ramp signal converts into a step signal after differentiation. Similarly, a unit
step signal becomes an impulse signal.

Example

Let the signal given to us be x(t) = 4[r(t) − r(t − 2)]. When this signal is plotted, it will
look like the one on the left side of the figure given below. Now, our aim is to
differentiate the given signal.

To start with, we will start differentiating the given equation. We know that the ramp
signal after differentiation gives unit step signal.

So our resulting signal y(t) can be written as;

dx(t)
y(t) =
dt

d4[r(t)−r(t−2)]
=
dt

= 4[u(t) − u(t − 2)]

Now this signal is plotted finally, which is shown in the right hand side of the above
figure.

DSP - Operations on Signals Integration


Integration of any signal means the summation of that signal under particular time
domain to get a modified signal. Mathematically, this can be represented as −
Page 26 of 78

x(t) → y(t) = ∫ x(t)dt


−∞

Here also, in most of the cases we can do mathematical integration and find the resulted
signal but direct integration in quick succession is possible for signals which are depicted
in rectangular format graphically. Like differentiation, here also, we will refer a table to
get the result quickly.

Original Signal Integrated Signal

1 impulse

Impulse step

Step Ramp

Example
Let us consider a signal x(t) = u(t) − u(t − 3). It is shown in Fig-1 below. Clearly, we
can see that it is a step signal. Now we will integrate it. Referring to the table, we know
that integration of step signal yields ramp signal.

However, we will calculate it mathematically,

t
y(t) = ∫ x(t)dt
−∞

t
= ∫ [u(t) − u(t − 3)]dt
−∞

t t
= ∫ u(t)dt − ∫ u(t − 3)dt
−∞ −∞

= r(t) − r(t − 3)

The same is plotted as shown in fig-2,

DSP - Operations on Signals Convolution


The convolution of two signals in the time domain is equivalent to the multiplication of
their representation in frequency domain. Mathematically, we can write the convolution
of two signals as
Page 27 of 78

y(t) = x1 (t) ∗ x2 (t)

= ∫ x1 (p). x2 (t − p)dp
−∞

Steps for convolution

Take signal x1(t) and put t = p there so that it will be x1(p).

Take the signal x2(t) and do the step 1 and make it x2(p).

Make the folding of the signal i.e. x2(-p).

Do the time shifting of the above signal x2[-(p-t)]

Then do the multiplication of both the signals. i.e. x1 (p). x2 [(pt)]

Example

Let us do the convolution of a step signal u(t) with its own kind.

y(t) = u(t) ∗ u(t)


= ∫ [u(p). u[−(p − t)]dp
−∞

Now this t can be greater than or less than zero, which are shown in below figures

So, with the above case, the result arises with following possibilities

0, if t < 0
y(t) = { t
∫ 1dt, f or t > 0
0

0, if t < 0
= { = r(t)
t, t > 0

Properties of Convolution
Page 28 of 78

Commutative
It states that order of convolution does not matter, which can be shown mathematically
as

x1 (t) ∗ x2 (t) = x2 (t) ∗ x1 (t)

Associative
It states that order of convolution involving three signals, can be anything.
Mathematically, it can be shown as;

x1 (t) ∗ [x2 (t) ∗ x3 (t)] = [x1 (t) ∗ x2 (t)] ∗ x3 (t)

Distributive
Two signals can be added first, and then their convolution can be made to the third
signal. This is equivalent to convolution of two signals individually with the third signal
and added finally. Mathematically, this can be written as;

x1 (t) ∗ [x2 (t) + x3 (t)] = [x1 (t) ∗ x2 (t) + x1 (t) ∗ x3 (t)]

Area

If a signal is the result of convolution of two signals then the area of the signal is the
multiplication of those individual signals. Mathematically this can be written

If y(t) = x1 ∗ x2 (t)

Then, Area of y(t) = Area of x1(t) X Area of x2(t)

Scaling

If two signals are scaled to some unknown constant a and convolution is done then
resultant signal will also be convoluted to same constant a and will be divided by that
quantity as shown below.

If, x1 (t) ∗ x2 (t) = y(t)

y(at)
Then, x1 (at) ∗ x2 (at) = ,a ≠ 0
a

Delay
Suppose a signal y(t) is a result from the convolution of two signals x1(t) and x2(t). If
the two signals are delayed by time t1 and t2 respectively, then the resultant signal y(t)
will be delayed by (t1+t2). Mathematically, it can be written as −
Page 29 of 78

If, x1 (t) ∗ x2 (t) = y(t)

Then, x1 (t − t1 ) ∗ x2 (t − t2 ) = y[t − (t1 + t2 )]

Solved Examples
Example 1 − Find the convolution of the signals u(t-1) and u(t-2).

Solution − Given signals are u(t-1) and u(t-2). Their convolution can be done as shown
below −

y(t) = u(t − 1) ∗ u(t − 2)

+∞
y(t) = ∫ [u(t − 1). u(t − 2)]dt
−∞

= r(t − 1) + r(t − 2)

= r(t − 3)

Example 2 − Find the convolution of two signals given by

x1 (n) = {3, −2, 2}

2, 0 ≤ n ≤ 4
x2 (n) = {
0, x > elsewhere

Solution −

x2(n) can be decoded as x2 (n) = {2, 2, 2, 2, 2}Originalf irst

x1(n) is previously given = {3, −2, 3} = 3 − 2Z


−1
+ 2Z
−2

Similarly, x2 (z) = 2 + 2Z
−1
+ 2Z
−2
+ 2Z
−3
+ 2Z
−4

Resultant signal,

X(Z ) = X 1 (Z )X 2 (z)

−1 −2 −1 −2 −3 −4
= {3 − 2Z + 2Z } × {2 + 2Z + 2Z + 2Z + 2Z }

−1 −2 −3 −4 −5
= 6 + 2Z + 6Z + 6Z + 6Z + 6Z

Taking inverse Z-transformation of the above, we will get the resultant signal as

x(n) = {6, 2, 6, 6, 6, 0, 4} Origin at the first

Example 3 − Determine the convolution of following 2 signals −

x(n) = {2, 1, 0, 1}

h(n) = {1, 2, 3, 1}
Page 30 of 78

Solution −

Taking the Z-transformation of the signals, we get,

−1 −3
x(z) = 2 + 2Z + 2Z

And h(n) = 1 + 2Z
−1
+ 3Z
−2
+ Z
−3

Now convolution of two signal means multiplication of their Z-transformations

That is Y (Z ) = X(Z ) × h(Z )

−1 −3 −1 −2 −3
= {2 + 2Z + 2Z } × {1 + 2Z + 3Z + Z }

−1 −2 −3 −4 −5 −6
= {2 + 5Z + 8Z + 6Z + 3Z + 3Z + Z }

Taking the inverse Z-transformation, the resultant signal can be written as;

y(n) = {2, 5, 8, 6, 6, 1}Originalf irst

Digital Signal Processing - Static Systems


Some systems have feedback and some do not. Those, which do not have feedback
systems, their output depends only upon the present values of the input. Past value of
the data is not present at that time. These types of systems are known as static
systems. It does not depend upon future values too.

Since these systems do not have any past record, so they do not have any memory also.
Therefore, we say all static systems are memory-less systems. Let us take an example
to understand this concept much better.

Example
Let us verify whether the following systems are static systems or not.

y(t) = x(t) + x(t − 1)

y(t) = x(2t)

y(t) = x = sin[x(t)]

a) y(t) = x(t) + x(t − 1)

Here, x(t) is the present value. It has no relation with the past values of the time. So, it
is a static system. However, in case of x(t-1), if we put t = 0, it will reduce to x(-1)
which is a past value dependent. So, it is not static. Therefore here y(t) is not a static
system.
Page 31 of 78

b) y(t) = x(2t)

If we substitute t = 2, the result will be y(t) = x(4). Again, it is future value dependent.
So, it is also not a static system.

c) y(t) = x = sin[x(t)]

In this expression, we are dealing with sine function. The range of sine function lies
within -1 to +1. So, whatever the values we substitute for x(t), we will get in between -1
to +1. Therefore, we can say it is not dependent upon any past or future values. Hence,
it is a static system.

From the above examples, we can draw the following conclusions −

Any system having time shifting is not static.

Any system having amplitude shifting is also not static.

Integration and differentiation cases are also not static.

Digital Signal Processing - Dynamic Systems


If a system depends upon the past and future value of the signal at any instant of the
time then it is known as dynamic system. Unlike static systems, these are not memory
less systems. They store past and future values. Therefore, they require some memory.
Let us understand this theory better through some examples.

Examples
Find out whether the following systems are dynamic.

a) y(t) = x(t + 1)

In this case if we put t = 1 in the equation, it will be converted to x(2), which is a future
dependent value. Because here we are giving input as 1 but it is showing value for x(2).
As it is a future dependent signal, so clearly it is a dynamic system.

b) y(t) = Real[x(t)]


[x(t) + x(t) ]
=
2

In this case, whatever the value we will put it will show that time real value signal. It has
no dependency on future or past values. Therefore, it is not a dynamic system rather it is
a static system.
Page 32 of 78

c) y(t) = Even[x(t)]

[x(t) + x(−t)]
=
2

Here, if we will substitute t = 1, one signal shows x(1) and another will show x(-1) which
is a past value. Similarly, if we will put t = -1 then one signal will show x(-1) and another
will show x(1) which is a future value. Therefore, clearly it is a case of Dynamic system.

d) y(t) = cos[x(t)]

In this case, as the system is cosine function it has a certain domain of values which lies
between -1 to +1. Therefore, whatever values we will put we will get the result within
specified limit. Therefore, it is a static system

From the above examples, we can draw the following conclusions −

All time shifting cases signals are dynamic signals.

In case of time scaling too, all signals are dynamic signals.

Integration cases signals are dynamic signals.

Digital Signal Processing - Causal Systems


Previously, we saw that the system needs to be independent from the future and past
values to become static. In this case, the condition is almost same with little
modification. Here, for the system to be causal, it should be independent from the future
values only. That means past dependency will cause no problem for the system from
becoming causal.

Causal systems are practically or physically realizable system. Let us consider some
examples to understand this much better.

Examples
Let us consider the following signals.

a) y(t) = x(t)

Here, the signal is only dependent on the present values of x. For example if we
substitute t = 3, the result will show for that instant of time only. Therefore, as it has no
dependence on future value, we can call it a Causal system.

b) y(t) = x(t − 1)
Page 33 of 78

Here, the system depends on past values. For instance if we substitute t = 3, the
expression will reduce to x(2), which is a past value against our input. At no instance, it
depends upon future values. Therefore, this system is also a causal system.

c) y(t) = x(t) + x(t + 1)

In this case, the system has two parts. The part x(t), as we have discussed earlier,
depends only upon the present values. So, there is no issue with it. However, if we take
the case of x(t+1), it clearly depends on the future values because if we put t = 1, the
expression will reduce to x(2) which is future value. Therefore, it is not causal.

DSP - Non-Causal Systems


A non-causal system is just opposite to that of causal system. If a system depends upon
the future values of the input at any instant of the time then the system is said to be
non-causal system.

Examples
Let us take some examples and try to understand this in a better way.

a) y(t) = x(t + 1)

We have already discussed this system in causal system too. For any input, it will reduce
the system to its future value. For instance, if we put t = 2, it will reduce to x(3), which
is a future value. Therefore, the system is Non-Causal.

b) y(t) = x(t) + x(t + 2)

In this case, x(t) is purely a present value dependent function. We have already
discussed that x(t+2) function is future dependent because for t = 3 it will give values
for x(5). Therefore, it is Non-causal.

c) y(t) = x(t − 1) + x(t)

In this system, it depends upon the present and past values of the given input. Whatever
values we substitute, it will never show any future dependency. Clearly, it is not a non-
causal system; rather it is a Causal system.

DSP - Anti-Causal Systems


An anti-causal system is just a little bit modified version of a non-causal system. The
system depends upon the future values of the input only. It has no dependency either on
present or on the past values.
Page 34 of 78

Examples
Find out whether the following systems are anti-causal.

a) y(t) = x(t) + x(t − 1)

The system has two sub-functions. One sub function x(t+1) depends on the future value
of the input but another sub-function x(t) depends only on the present. As the system is
dependent on the present value also in addition to future value, this system is not anti-
causal.

b) y(t) = x(t + 3)

If we analyze the above system, we can see that the system depends only on the future
values of the system i.e. if we put t = 0, it will reduce to x(3), which is a future value.
This system is a perfect example of anti-causal system.

Digital Signal Processing - Linear Systems


A linear system follows the laws of superposition. This law is necessary and sufficient
condition to prove the linearity of the system. Apart from this, the system is a
combination of two types of laws −

Law of additivity

Law of homogeneity
Page 35 of 78

Both, the law of homogeneity and the law of additivity are shown in the above figures.
However, there are some other conditions to check whether the system is linear or not.

The conditions are −

The output should be zero for zero input.

There should not be any non-linear operator present in the system.

Examples of non-linear operators −

(a) Trigonometric operators- Sin, Cos, Tan, Cot, Sec, Cosec etc.

(b) Exponential, logarithmic, modulus, square, Cube etc.

(c) sa(i/p) , Sinc (i/p) , Sqn (i/p) etc.

Either input x or output y should not have these non-linear operators.

Examples
Let us find out whether the following systems are linear.

a) y(t) = x(t) + 3

This system is not a linear system because it violates the first condition. If we put input
as zero, making x(t) = 0, then the output is not zero.

b) y(t) = sin tx(t)

In this system, if we give input as zero, the output will become zero. Hence, the first
condition is clearly satisfied. Again, there is no non-linear operator that has been applied
on x(t). Hence, second condition is also satisfied. Therefore, the system is a linear
system.

c) y(t) = sin(x(t))

In the above system, first condition is satisfied because if we put x(t) = 0, the output will
also be sin(0) = 0. However, the second condition is not satisfied, as there is a non-linear
operator which operates x(t). Hence, the system is not linear.

DSP - Non-Linear Systems


If we want to define this system, we can say that the systems, which are not linear are
non-linear systems. Clearly, all the conditions, which are being violated in the linear
systems, should be satisfied in this case.
Page 36 of 78

Conditions

The output should not be zero when input applied is zero.

Any non-linear operator can be applied on the either input or on the output to
make the system non-linear.

Examples

To find out whether the given systems are linear or non-linear.

a) y(t) = e
x(t)

In the above system, the first condition is satisfied because if we make the input zero,
the output is 1. In addition, exponential non-linear operator is applied to the input.
Clearly, it is a case of Non-Linear system.

b) y(t) = x(t + 1) + x(t − 1)

The above type of system deals with both past and future values. However, if we will
make its input zero, then none of its values exists. Therefore, we can say if the input is
zero, then the time scaled and time shifted version of input will also be zero, which
violates our first condition. Again, there is no non-linear operator present. Therefore,
second condition is also violated. Clearly, this system is not a non-linear system; rather
it is a linear system.

DSP - Time-Invariant Systems


For a time-invariant system, the output and input should be delayed by some time unit.
Any delay provided in the input must be reflected in the output for a time invariant
system.

Examples
a) y(T ) = x(2T )
Page 37 of 78

If the above expression, it is first passed through the system and then through the time
delay (as shown in the upper part of the figure); then the output will become
x(2T − 2t). Now, the same expression is passed through a time delay first and then

through the system (as shown in the lower part of the figure). The output will become
x(2T − t) .

Hence, the system is not a time-invariant system.

b) y(T ) = sin[x(T )]

If the signal is first passed through the system and then through the time delay process,
the output be sin x(T − t). Similarly, if the system is passed through the time delay first
then through the system then output will be sin x(T − t). We can see clearly that both
the outputs are same. Hence, the system is time invariant.

DSP - Time-Variant Systems


For a time variant system, also, output and input should be delayed by some time
constant but the delay at the input should not reflect at the output. All time scaling cases
are examples of time variant system. Similarly, when coefficient in the system
relationship is a function of time, then also, the system is time variant.

Examples
a) y(t) = x[cos T ]

If the above signal is first passed through the system and then through the time delay,
the output will be x cos(T − t) . If it is passed through the time delay first and then
through the system, it will be x(cos T − t) . As the outputs are not same, the system is
time variant.

b) y(T ) = cos T . x(T )

If the above expression is first passed through the system and then through the time
delay, then the output will be cos(T − t)x(T − t) . However, if the expression is passed
Page 38 of 78

through the time delay first and then through the system, the output will be
cos T . x(T − t) . As the outputs are not same, clearly the system is time variant.

Digital Signal Processing - Stable Systems


A stable system satisfies the BIBO (bounded input for bounded output) condition. Here,
bounded means finite in amplitude. For a stable system, output should be bounded or
finite, for finite or bounded input, at every instant of time.

Some examples of bounded inputs are functions of sine, cosine, DC, signum and unit
step.

Examples
a) y(t) = x(t) + 10

Here, for a definite bounded input, we can get definite bounded output i.e. if we put
x(t) = 2, y(t) = 12 which is bounded in nature. Therefore, the system is stable.

b) y(t) = sin[x(t)]

In the given expression, we know that sine functions have a definite boundary of values,
which lies between -1 to +1. So, whatever values we will substitute at x(t), we will get
the values within our boundary. Therefore, the system is stable.

Digital Signal Processing - Unstable Systems


Unstable systems do not satisfy the BIBO conditions. Therefore, for a bounded input, we
cannot expect a bounded output in case of unstable systems.

Examples
a) y(t) = tx(t)

Here, for a finite input, we cannot expect a finite output. For example, if we will put
x(t) = 2 ⇒ y(t) = 2t. This is not a finite value because we do not know the value of t.

So, it can be ranged from anywhere. Therefore, this system is not stable. It is an
unstable system.

x(t)
b) y(t) =
sin t

We have discussed earlier, that the sine function has a definite range from -1 to +1; but
here, it is present in the denominator. So, in worst case scenario, if we put t = 0 and sine
Page 39 of 78

function becomes zero, then the whole system will tend to infinity. Therefore, this type of
system is not at all stable. Obviously, this is an unstable system.

DSP - System Properties Solved Examples


Example 1 − Check whether y(t) = x ∗ (t) is linear or non-linear.

Solution − The function represents the conjugate of input. It can be verified by either
first law of homogeneity and law of additivity or by the two rules. However, verifying
through rules is lot easier, so we will go by that.

If the input to the system is zero, the output also tends to zero. Therefore, our first
condition is satisfied. There is no non-linear operator used either at the input nor the
output. Therefore, the system is Linear.

x(t + 1), t > 0


Example 2 − Check whether y(t) = { is linear or non linear
x(t − 1), t ≤ 0

Solution − Clearly, we can see that when time becomes less than or equal to zero the
input becomes zero. So, we can say that at zero input the output is also zero and our
first condition is satisfied.

Again, there is no non-linear operator used at the input nor at the output. Therefore, the
system is Linear.

Example 3 − Check whether y(t) = sin t. x(t) is stable or not.

Solution − Suppose, we have taken the value of x(t) as 3. Here, sine function has been
multiplied with it and maximum and minimum value of sine function varies between -1 to
+1.

Therefore, the maximum and minimum value of the whole function will also vary
between -3 and +3. Thus, the system is stable because here we are getting a bounded
input for a bounded output.

DSP - Z-Transform Introduction


Discrete Time Fourier Transform(DTFT) exists for energy and power signals. Z-transform
also exists for neither energy nor Power (NENP) type signal, up to a certain extent only.
The replacement z = e
jw
is used for Z-transform to DTFT conversion only for absolutely
summable signal.

So, the Z-transform of the discrete time signal x(n) in a power series can be written as −
Page 40 of 78

−n
X(z) = ∑ x(n)Z

n−∞

The above equation represents a two-sided Z-transform equation.

Generally, when a signal is Z-transformed, it can be represented as −

X(Z ) = Z [x(n)]

Or x(n) ⟷ X(Z )

If it is a continuous time signal, then Z-transforms are not needed because Laplace
transformations are used. However, Discrete time signals can be analyzed through Z-
transforms only.

Region of Convergence
Region of Convergence is the range of complex variable Z in the Z-plane. The Z-
transformation of the signal is finite or convergent. So, ROC represents those set of
values of Z, for which X(Z) has a finite value.

Properties of ROC

ROC does not include any pole.

For right-sided signal, ROC will be outside the circle in Z-plane.

For left sided signal, ROC will be inside the circle in Z-plane.

For stability, ROC includes unit circle in Z-plane.

For Both sided signal, ROC is a ring in Z-plane.

For finite-duration signal, ROC is entire Z-plane.

The Z-transform is uniquely characterized by −

Expression of X(Z)

ROC of X(Z)

Signals and their ROC

x(n) X(Z) ROC

δ(n) 1 Entire Z plane


Page 41 of 78

U (n) 1/(1 − Z
−1
) Mod(Z)>1

n
a u(n) 1/(1 − aZ
−1
) Mod(Z)>Mod(a)

n
−a u(−n − 1) 1/(1 − aZ
−1
) Mod(Z)<Mod(a)

n
na u(n) aZ
−1
/(1 − aZ
−1 2
) Mod(Z)>Mod(a)

Mod(Z)<Mod(a)
n −1 −1 2
−a u(−n − 1) aZ /(1 − aZ )

2
(Z − Z cos ω)
U (n) cos ωn Mod(Z)>1
2
/(Z − 2Z cos ω + 1)

2
(Z sin ω)/(Z − 2Z cos ω
U (n) sin ωn Mod(Z)>1
+ 1)

Example

Let us find the Z-transform and the ROC of a signal given as x(n) = {7, 3, 4, 9, 5},

where origin of the series is at 3.

Solution − Applying the formula we have −


∞ −n
X(z) = ∑ x(n)Z
n=−∞

3 −n
= ∑ x(n)Z
n=−1

−1 −2 −3
= x(−1)Z + x(0) + x(1)Z + x(2)Z + x(3)Z

−1 −2 −3
= 7Z + 3 + 4Z + 9Z + 5Z

ROC is the entire Z-plane excluding Z = 0, ∞, -∞

DSP - Z-Transform Properties


In this chapter, we will understand the basic properties of Z-transforms.

Linearity
It states that when two or more individual discrete signals are multiplied by constants,
their respective Z-transforms will also be multiplied by the same constants.

Mathematically,

a1 x1 (n) + a2 x2 (n) = a1 X 1 (z) + a2 X 2 (z)


Page 42 of 78

Proof − We know that,

−n
X(Z ) = ∑ x(n)Z

n=−∞

∞ −n
= ∑ (a1 x1 (n) + a2 x2 (n))Z
n=−∞

∞ −n ∞ −n
= a1 ∑ x1 (n)Z + a2 ∑ x2 (n)Z
n=−∞ n=−∞

= a1 X 1 (z) + a2 X 2 (z) (Hence Proved)

Here, the ROC is ROC 1 ⋂ ROC 2 .

Time Shifting
Time shifting property depicts how the change in the time domain in the discrete signal
will affect the Z-domain, which can be written as;

−n
x(n − n0 ) ⟷ X(Z )Z

Or x(n − 1) ⟷ Z
−1
X(Z )

Proof −

Let y(P ) = X(P − K )

∞ −p
Y (z) = ∑ y(p)Z
p=−∞

∞ −p
= ∑ (x(p − k))Z
p=−∞

Let s = p-k

∞ −(s+k)
= ∑ x(s)Z
s=−∞

∞ −s −k
= ∑ x(s)Z Z
s=−∞

−k ∞ −s
= Z [∑ x(m)Z ]
s=−∞

= Z
−k
X(Z ) (Hence Proved)

Here, ROC can be written as Z = 0 (p>0) or Z = ∞(p<0)

Example

U(n) and U(n-1) can be plotted as follows


Page 43 of 78

Z-transformation of U(n) cab be written as;

∞ −n
∑ [U (n)]Z = 1
n=−∞

Z-transformation of U(n-1) can be written as;

∞ −n −1
∑ [U (n − 1)]Z = Z
n=−∞

So here x(n − n0 ) = Z
−n0
X(Z ) (Hence Proved)

Time Scaling
Time Scaling property tells us, what will be the Z-domain of the signal when the time is
scaled in its discrete form, which can be written as;

n −1
a x(n) ⟷ X(a Z)

Proof −

Let p
y(p) = a x(p)

∞ −p
Y (P ) = ∑ y(p)Z
p=−∞

∞ p −p
= ∑ a x(p)Z
p=−∞

∞ −1 −p
= ∑ x(p)[a Z]
p=−∞

= X(a
−1
Z) (Hence proved)

ROC: = Mod(ar1) < Mod(Z) < Mod(ar2) where Mod = Modulus

Example
Let us determine the Z-transformation of x(n) = a
n
cos ωn using Time scaling property.

Solution −

We already know that the Z-transformation of the signal cos(ωn) is given by −


Page 44 of 78

−n 2 2
∑ (cos ωn)Z = (Z − Z cos ω)/(Z − 2Z cos ω + 1)

n=−∞

Now, applying Time scaling property, the Z-transformation of a


n
cos ωn can be written
as;
∞ n −n −1
∑ (a cos ωn)Z = X(a Z)
n=−∞

−1 2 −1 −1 2 −1
= [(a Z) − (a Z cos ωn)]/((a Z) − 2(a Z cos ωn) + 1)

2 2
= Z (Z − a cos ω)/(Z − 2az cos ω + a )

Successive Differentiation
Successive Differentiation property shows that Z-transform will take place when we
differentiate the discrete signal in time domain, with respect to time. This is shown as
below.

dx(n)
−1
= (1 − Z )X(Z )
dn

Proof −

dx(n)
Consider the LHS of the equation −
dn

[x(n) − x(n − 1)]


=
[n − (n − 1)]

= x(n) − X(n − 1)

−1
= x(Z ) − Z x(Z )

= (1 − Z
−1
)x(Z ) (Hence Proved)

ROC: R1< Mod (Z) <R2

Example
Let us find the Z-transform of a signal given by x(n) = n u(n)
2

By property we can write

dZ [U (n)]
Z z[nU (n)] = −Z
dz

Z
d[ ]
Z−1
= −Z
dZ

2
= Z /((Z − 1)
Page 45 of 78

= y(let)

Now, Z[n.y] can be found out by again applying the property,

dy
Z (n, y) = −Z
dz

3
d[Z /(Z −1) ]
= −Z
dz

2
= Z (Z + 1)/(Z − 1)

Convolution
This depicts the change in Z-domain of the system when a convolution takes place in the
discrete signal form, which can be written as −

x1 (n) ∗ x2 (n) ⟷ X 1 (Z ). X 2 (Z )

Proof −

∞ −n
X(Z ) = ∑ x(n)Z
n=−∞

∞ ∞ −n
= ∑ [∑ x1 (k)x2 (n − k)]Z
n=−∞ k=−∞

∞ ∞ −n
= ∑ x1 (k)[∑ x2 (n − k)Z ]
k=−∞ n

∞ ∞ −(n−k) −k
= ∑ x1 (k)[∑ x2 (n − k)Z Z ]
k=−∞ n=−∞

Let n-k = l, then the above equation cab be written as −

∞ −k ∞ −l
X(Z ) = ∑ x1 (k)[Z ∑ x2 (l)Z ]
k=−∞ l=−∞

∞ −k
= ∑ x1 (k)X 2 (Z )Z
k=−∞

∞ −k
= X 2 (Z ) ∑ x1 (Z )Z
k=−∞

= X 1 (Z ). X 2 (Z ) (Hence Proved)

ROC:ROC ⋂ ROC 2

Example
Let us find the convolution given by two signals

x1 (n) = {3, −2, 2} ...(eq. 1)

x2 (n) = {2, 0 ≤ 4 and 0 elsewhere} ...(eq. 2)

Z-transformation of the first equation can be written as;


Page 46 of 78

∞ −n
∑ x1 (n)Z
n=−∞

−1 −2
= 3 − 2Z + 2Z

Z-transformation of the second signal can be written as;

∞ −n
∑ x2 (n)Z
n=−∞

−1 −2 −3 −4
= 2 + 2Z + 2Z + 2Z + 2Z

So, the convolution of the above two signals is given by −


X(Z ) = [x1 (Z ) x2 (Z )]

−1 −2 −1 −2 −3
= [3 − 2Z + 2Z ] × [2 + 2Z + 2Z + 2Z

−4
+ 2Z ]

−1 −2 −3
= 6 + 2Z + 6Z + 6Z +. . . ... ...

Taking the inverse Z-transformation we get,

x(n) = {6, 2, 6, 6, 6, 0, 4}

Initial Value Theorem


If x(n) is a causal sequence, which has its Z-transformation as X(z), then the initial value
theorem can be written as;

X(n)(at n = 0) = limz→∞ X(z)

Proof − We know that,


∞ −n
X(Z ) = ∑ x(n)Z
n=0

Expanding the above series, we get;

0 −1 −2
= X(0)Z + X(1)Z + X(2)Z +. . . ...

−1 −2
= X(0) × 1 + X(1)Z + X(2)Z +. . . ...

In the above case if Z → ∞ then Z


−n
→ 0 (Because n>0)

Therefore, we can say;

limz→∞ X(z) = X(0) (Hence Proved)

Final Value Theorem


Final Value Theorem states that if the Z-transform of a signal is represented as X(Z) and
the poles are all inside the circle, then its final value is denoted as x(n) or X(∞) and can
Page 47 of 78

be written as −

−1
X(∞) = limn→∞ X(n) = limz→1 [X(Z )(1 − Z )]

Conditions −

It is applicable only for causal systems.

X(Z )(1 − Z
−1
) should have poles inside the unit circle in Z-plane.

Proof − We know that

+ k −n
Z [x(n + 1) − x(n)] = limk→∞ ∑ Z [x(n + 1) − x(n)]
n=0

+ +
⇒ Z [x(n + 1)] − Z [x(n)] = limk→∞

k −n
∑ Z [x(n + 1) − x(n)]
n=0

+ +
⇒ Z [X(Z ) − x(0)] − X(Z ) = limk→∞

k −n
∑ Z [x(n + 1) − x(n)]
n=0

Here, we can apply advanced property of one-sided Z-Transformation. So, the above
equation can be re-written as;

+ + 0 +
Z [x(n + 1)] = Z [X(2) − x(0)Z ] = Z [X(Z ) − x(0)]

Now putting z = 1 in the above equation, we can expand the above equation −

limk→∞ [x(1) − x(0) + x(6) − x(1) + x(3) − x(2)+. . . ...

. . . +x(x + 1) − x(k)]

This can be formulated as;

X(∞) = limn→∞ X(n) = limz→1 [X(Z )(1 − Z


−1
)] (Hence Proved)

Example
Let us find the Initial and Final value of x(n) whose signal is given by

−1 −2
X(Z ) = 2 + 3Z + 4Z

Solution − Let us first, find the initial value of the signal by applying the theorem

x(0) = limz→∞ X(Z )

−1 −2
= limz→∞ [2 + 3Z + 4Z ]

3 4
= 2 + ( ) + ( ) = 2
∞ ∞
Page 48 of 78

Now let us find the Final value of signal applying the theorem

−1
x(∞) = limz→∞ [(1 − Z )X(Z )]

−1 −1 −2
= limz→∞ [(1 − Z )(2 + 3Z + 4Z )]

−1 −2 −3
= limz→∞ [2 + Z + Z − 4Z ]

= 2 + 1 + 1 − 4 = 0

Some other properties of Z-transform are listed below −

Differentiation in Frequency
It gives the change in Z-domain of the signal, when its discrete signal is differentiated
with respect to time.

dX(z)
nx(n) ⟷ −Z
dz

Its ROC can be written as;

r 2 < M od(Z ) < r 1

Example

Let us find the value of x(n) through Differentiation in frequency, whose discrete signal in
Z-domain is given by x(n) ⟷ X(Z ) = log(1 + aZ −1 )

By property, we can write that

dx(Z )
nx(n) ⟷ −Z
dz

−2
−aZ
= −Z [ ]
−1
1+aZ

−1 −1
= (aZ )/(1 + aZ )

−1
= 1 − 1/(1 + aZ )

n
nx(n) = δ(n) − (−a) u(n)

n
⇒ x(n) = 1/n[δ(n) − (−a) u(n)]

Multiplication in Time
It gives the change in Z-domain of the signal when multiplication takes place at discrete
signal level.

1
x1 (n). x2 (n) ⟷ ( )[X1(Z ) ∗ X2(Z )]
2Πj
Page 49 of 78

Conjugation in Time
This depicts the representation of conjugated discrete signal in Z-domain.

∗ ∗ ∗
X (n) ⟷ X (Z )

DSP - Z-Transform Existence


A system, which has system function, can only be stable if all the poles lie inside the unit
circle. First, we check whether the system is causal or not. If the system is Causal, then
we go for its BIBO stability determination; where BIBO stability refers to the bounded
input for bounded output condition.

This can be written as;

M od(X(Z )) < ∞

−n
= M od(∑ x(n)Z ) < ∞

−n
= ∑ M od(x(n)Z ) < ∞

jw −n
= ∑ M od[x(n)(re ) ] < 0

−n −jwn
= ∑ M od[x(n)r ]M od[e ] < ∞

∞ −n
= ∑ M od[x(n)r ] < ∞
n=−∞

The above equation shows the condition for existence of Z-transform.

However, the condition for existence of DTFT signal is

∑ M od(x(n) < ∞

n=−∞

Example 1
Let us try to find out the Z-transform of the signal, which is given as

−n n
x(n) = −(−0.5) u(−n) + 3 u(n)

n n
= −(−2) u(n) + 3 u(n)

Solution − Here, for −(−2)


n
u(n) the ROC is Left sided and Z<2

For n
3 u(n) ROC is right sided and Z>3

Hence, here Z-transform of the signal will not exist because there is no common region.
Page 50 of 78

Example 2
Let us try to find out the Z-transform of the signal given by

n n
x(n) = −2 u(−n − 1) + (0.5) u(n)

Solution − Here, for −2


n
u(−n − 1) ROC of the signal is Left sided and Z<2

For signal n
(0.5) u(n) ROC is right sided and Z>0.5

So, the common ROC being formed as 0.5<Z<2

Therefore, Z-transform can be written as;

1 1
X(Z ) = { } + { }
−1 −1
1−2Z (1−0.5Z )

Example 3
Let us try to find out the Z-transform of the signal, which is given as x(n) = 2
r(n)

Solution − r(n) is the ramp signal. So the signal can be written as;

nu(n) n
x(n) = 2 {1, n < 0(u(n) = 0) and 2 , n ≥ 0(u(n) = 1)}

n
= u(−n − 1) + 2 u(n)

Here, for the signal u(−n − 1) and ROC Z<1 and for 2
n
u(n) with ROC is Z>2.

So, Z-transformation of the signal will not exist.

Z -Transform for Causal System


Causal system can be defined as h(n) = 0, n < 0 . For causal system, ROC will be
outside the circle in Z-plane.

−n
H (Z ) = ∑ h(n)Z

n=0

Expanding the above equation,

−1 −2
H (Z ) = h(0) + h(1)Z + h(2)Z +. . . ... ...

= N (Z )/D(Z )

For causal systems, expansion of Transfer Function does not include positive powers of Z.
For causal system, order of numerator cannot exceed order of denominator. This can be
written as-
Page 51 of 78

limz→∞ H (Z ) = h(0) = 0 or F inite

For stability of causal system, poles of Transfer function should be inside the unit circle in
Z-plane.

Z-transform for Anti-causal System


Anti-causal system can be defined as h(n) = 0, n ≥ 0 . For Anti causal system, poles of
transfer function should lie outside unit circle in Z-plane. For anti-causal system, ROC will
be inside the circle in Z-plane.

DSP - Z-Transform Inverse


If we want to analyze a system, which is already represented in frequency domain, as
discrete time signal then we go for Inverse Z-transformation.

Mathematically, it can be represented as;

−1
x(n) = Z X(Z )

where x(n) is the signal in time domain and X(Z) is the signal in frequency domain.

If we want to represent the above equation in integral format then we can write it as

1
−1
x(n) = ( )∮ X(Z )Z dz
2Πj

Here, the integral is over a closed path C. This path is within the ROC of the x(z) and it
does contain the origin.

Methods to Find Inverse Z-Transform


When the analysis is needed in discrete format, we convert the frequency domain signal
back into discrete format through inverse Z-transformation. We follow the following four
ways to determine the inverse Z-transformation.

Long Division Method

Partial Fraction expansion method

Residue or Contour integral method

Long Division Method


In this method, the Z-transform of the signal x (z) can be represented as the ratio of
polynomial as shown below;
Page 52 of 78

x(z) = N (Z )/D(Z )

Now, if we go on dividing the numerator by denominator, then we will get a series as


shown below

−1 −2
X(z) = x(0) + x(1)Z + x(2)Z +. . . ... ...

The above sequence represents the series of inverse Z-transform of the given signal (for
n0) and the above system is causal.

However for n<0 the series can be written as;

1 2 3
x(z) = x(−1)Z + x(−2)Z + x(−3)Z +. . . ... ...

Partial Fraction Expansion Method


Here also the signal is expressed first in N (z)/D (z) form.

If it is a rational fraction it will be represented as follows;

−1 −2 −m
x(z) = b0 + b1 Z + b2 Z +. . . ... . . . +bm Z )

−1 −2 −N
/(a0 + a1 Z + a2 Z +. . . ... . . . +a n Z )

The above one is improper when m<n and an≠0

If the ratio is not proper (i.e. Improper), then we have to convert it to the proper form to
solve it.

Residue or Contour Integral Method


In this method, we obtain inverse Z-transform x(n) by summing residues of [x(z)Z
n−1
]

at all poles. Mathematically, this may be expressed as

n−1
x(n) = ∑ residues of [x(z)Z ]

all poles X(z)

Here, the residue for any pole of order m at z = β is

m−1
1 d
m n−1
Residues = lim { {(z − β) X(z)Z }
m−1
(m − 1)! Z →β dZ

DSP - Z-Transform Solved Examples

Example 1
Page 53 of 78

Find the response of the system s(n + 2) − 3s(n + 1) + 2s(n) = δ(n), when all the
initial conditions are zero.

Solution − Taking Z-transform on both the sides of the above equation, we get

2 1
S (z)Z − 3S (z)Z + 2S (z) = 1

2
⇒ S (z){Z − 3Z + 2} = 1

1 1 α1 α2
⇒ S (z) = 2
= = +
{z −3z+2} (z−2)(z−1) z−2 z−1

1 1
⇒ S (z) = −
z−2 z−1

Taking the inverse Z-transform of the above equation, we get

−1 1 −1 1
S (n) = Z [ ] − Z [ ]
Z −2 Z −1

n−1 n−1 n−1


= 2 − 1 = −1 + 2

Example 2
Find the system function H(z) and unit sample response h(n) of the system whose
difference equation is described as under

1
y(n) = y(n − 1) + 2x(n)
2

where, y(n) and x(n) are the output and input of the system, respectively.

Solution − Taking the Z-transform of the above difference equation, we get

1 −1
y(z) = Z Y (Z ) + 2X(z)
2

1 −1
= Y (Z )[1 − Z ] = 2X(Z )
2

Y (Z ) 2
= H (Z ) = =
1 −1
X(Z ) [1− Z ]
2

This system has a pole at Z =


1
and Z = 0 and H (Z ) =
2
1
2 −1
[1− Z ]
2

Hence, taking the inverse Z-transform of the above, we get

1 n
h(n) = 2( ) U (n)
2

Example 3
Determine Y(z),n≥0 in the following case −

1 1
y(n) + y(n − 1) − y(n − 2) = 0 given y(−1) = y(−2) = 1
2 4
Page 54 of 78

Solution − Applying the Z-transform to the above equation, we get

1 −1 1 −2 −1
Y (Z ) + [Z Y (Z ) + Y (−1)] − [Z Y (Z ) + Z Y (−1)
2 4

+ 4(−2)] = 0

1 1 1 1 1
⇒ Y (Z ) + Y (Z ) + − Y (Z ) − − = 0
2Z 2 2 4Z 4
4Z

1 1 1 1
⇒ Y (Z )[1 + − ] = −
2Z 2 4Z 2
4Z

2
4Z +2Z −1 1−2Z
⇒ Y (Z )[ ] =
2 4Z
4Z

Z (1−2Z )
⇒ Y (Z ) =
2
4Z +2Z −1

Digital Signal Processing - DFT Introduction


Like continuous time signal Fourier transform, discrete time Fourier Transform can be
used to represent a discrete sequence into its equivalent frequency domain
representation and LTI discrete time system and develop various computational
algorithms.

X (jω) in continuous F.T, is a continuous function of x(n). However, DFT deals with
representing x(n) with samples of its spectrum X(ω). Hence, this mathematical tool
carries much importance computationally in convenient representation. Both, periodic
and non-periodic sequences can be processed through this tool. The periodic sequences
need to be sampled by extending the period to infinity.

Frequency Domain Sampling


From the introduction, it is clear that we need to know how to proceed through
frequency domain sampling i.e. sampling X(ω). Hence, the relationship between sampled
Fourier transform and DFT is established in the following manner.

Similarly, periodic sequences can fit to this tool by extending the period N to infinity.

Let an Non periodic sequence be, X(n) = limN →∞ xN (n)

Defining its Fourier transform,

∞ −jwn
X(ω) = ∑ x(n)e X(K δω)
n=−∞

Here, X(ω) is sampled periodically, at every δω radian interval.

As X(ω) is periodic in 2π radians, we require samples only in fundamental range. The


samples are taken after equidistant intervals in the frequency range 0≤ω≤2π. Spacing
between equivalent intervals is radian.

δω = k
N
Page 55 of 78

Now evaluating,

ω = k
N


...eq(2)
2π −j2πnk/N
X( k) = ∑ x(n)e ,
N n=−∞

where k=0,1,N-1

After subdividing the above, and interchanging the order of summation

N −1 ∞

...eq(3)
2π −j2πnk/N
X( k) = ∑ [ ∑ x(n − N l)]e
N

n=0 l=−∞


∑ x(n − N l) = xp (n) = a periodic f unction of period N
l=−∞

N −1 j2πnk/N
and its f ourier series = ∑ Ck e
k=0

where, n = 0,1,..,N-1; p- stands for periodic entity or function

The Fourier coefficients are,

N −1
k=0,1,,N-1 ...eq(4)
1 −j2πnk/N
Ck = ∑ xp (n)e
N n=0

Comparing equations 3 and 4, we get ;

k=0,1,,N-1 ...eq(5)

N C k = X( k)
N

...eq(6)
2π jw −j2πnk/N
N C k = X( k) = X(e ) = ∑ xp (n)e
N
n=−∞

From Fourier series expansion,

N −1 N −1
1 2π
...eq(7)
1 j2πnk/N j2πnk/N
xp (n) = ∑ N Ck e = ∑ X( k)e
N
N N
k=0 k=0

Where n=0,1,,N-1

Here, we got the periodic signal from X(ω). x(n) can be extracted from xp (n) only, if
there is no aliasing in the time domain. N ≥ L

N = period of xp (n) L= period of x(n)

xp (n), 0 ≤ n ≤ N − 1
x(n) = {
0, Otherwise

The mapping is achieved in this manner.

Properties of DFT

Linearity
Page 56 of 78

It states that the DFT of a combination of signals is equal to the sum of DFT of individual
signals. Let us take two signals x1(n) and x2(n), whose DFT s are X1(ω) and X2(ω)
respectively. So, if

x1 (n) → X 1 (ω) and x2 (n) → X 2 (ω)

Then ax1 (n) + bx2 (n) → aX 1 (ω) + bX 2 (ω)

where a and b are constants.

Symmetry
The symmetry properties of DFT can be derived in a similar way as we derived DTFT
symmetry properties. We know that DFT of sequence x(n) is denoted by X(K). Now, if
x(n) and X(K) are complex valued sequence, then it can be represented as under

x(n) = xR (n) + jx1 (n), 0 ≤ n ≤ N − 1

And X(K ) = X R (K ) + jX 1 (K ), 0 ≤ K ≤ N − 1

Duality Property
Let us consider a signal x(n), whose DFT is given as X(K). Let the finite duration
sequence be X(N). Then according to duality theorem,

If, x(n) ⟷ X(K )

Then, X(N ) ⟷ N x[((−k))N ]

So, by using this theorem if we know DFT, we can easily find the finite duration
sequence.

Complex Conjugate Properties

Suppose, there is a signal x(n), whose DFT is also known to us as X(K). Now, if the
complex conjugate of the signal is given as x*(n), then we can easily find the DFT
without doing much calculation by using the theorem shown below.

If, x(n) ⟷ X(K )

Then, x ∗ (n) ⟷ X ∗ ((K ))N = X ∗ (N − K )

Circular Frequency Shift

The multiplication of the sequence x(n) with the complex exponential sequence ej2Πkn/N
is equivalent to the circular shift of the DFT by L units in frequency. This is the dual to
the circular time shifting property.
Page 57 of 78

If, x(n) ⟷ X(K )

Then, x(n)e
j2ΠK n/N
⟷ X((K − L))N

Multiplication of Two Sequence


If there are two signal x1(n) and x2(n) and their respective DFTs are X1(k) and X2(K),
then multiplication of signals in time sequence corresponds to circular convolution of
their DFTs.

If, x1 (n) ⟷ X 1 (K ) & x2 (n) ⟷ X 2 (K )

Then, x1 (n) × x2 (n) ⟷ X 1 (K )©X 2 (K )

Parsevals Theorem
For complex valued sequences x(n) and y(n), in general

If, x(n) ⟷ X(K ) & y(n) ⟷ Y (K )

N −1 N −1
Then, ∗ 1 ∗
∑ x(n)y (n) = ∑ X(K )Y (K )
n=0 N k=0

DSP - DFT Time Frequency Transform


We know that when ω = 2πK /N and N → ∞, ω becomes a continuous variable and
limits summation become −∞ to +∞ .

Therefore,

∞ ∞
2π −j2πnk
jω −jωn
N C k = X( k) = X(e ) = ∑ x(n)e N = ∑ x(n)e
N
n=−∞ n=−∞

Discrete Time Fourier Transform (DTFT)


We know that, X(e

) = ∑
n=−∞
x(n)e
−jωn

Where, X(e

) is continuous and periodic in ω and with period 2π. eq(1)

Now,

N −1
xp (n) = ∑
k=0
N Ck e
j2πnk/N
From Fourier series

1 N −1 j2πnk/N 2π
xp (n) = ∑ N Ck e ×
2π k=0 N

ω becomes continuous and → dω , because of the reasons cited above.



eq(2)
1 jω jωn
x(n) = ∫ X(e )e dω
2π n=0
Page 58 of 78

Inverse Discrete Time Fourier Transform

Symbolically,

x(n) ⟺ x(e

) (The Fourier Transform pair)

Necessary and sufficient condition for existence of Discrete Time Fourier Transform for a
non-periodic sequence x(n) is absolute summable.


i.e.∑n=−∞ |x(n)| < ∞

Properties of DTFT

Linearity : a1 x1 (n) + a2 x2 (n) ⇔ a1 X 1 (e



) + a 2 X 2 (e

)

Time shifting − x(n − k) ⇔ e


−jωk
. X(e

)

Time Reversal − x(−n) ⇔ X(e


−jω
)

Frequency shifting − e
jω0 n
x(n) ⇔ X(e
j(ω−ω0 )
)

Differentiation frequency domain −


d jω
nx(n) = j X(e )

Convolution − x1 (n) ∗ x2 (n) ⇔ X 1 (e



) × X 2 (e

)

Multiplication − x1 (n) × x2 (n) ⇔ X 1 (e



) ∗ X 2 (e

)

Co-relation − yx
1 ×x 2
(l) ⇔ X 1 (e

) × X 2 (e

)

Modulation theorem −
1 j(ω+ω0 jw
x(n) cos ω 0 n = [ X 1 (e ) ∗ X 2 (e )
2

Symmetry − ∗
x (n) ⇔ X (e
∗ −jω
) ;

x (−n) ⇔ X (e
∗ jω
) ;
Real[x(n)] ⇔ X even (e

) ;
I mag[x(n)] ⇔ X odd (e

) ;
xeven (n) ⇔ Real[x(e

)] ;
xodd (n) ⇔ I mag[x(e

)] ;
∞ 2 π 2
Parsevals theorem −
1 jω
∑ |x1 (n)| = ∫ | X 1 (e )| dω
−∞ 2π −π

Earlier, we studied sampling in frequency domain. With that basic knowledge, we sample
) in frequency domain, so that a convenient digital analysis can be done from that

X(e

sampled data. Hence, DFT is sampled in both time and frequency domain. With the
assumption x(n) = xp (n)

Hence, DFT is given by −

N −1
j2πnk

, k=0,1,.,N1 eq(3)
2π −
X(k) = DF T [x(n)] = X( k) = ∑ x(n)e N
N

n=0

And IDFT is given by −


Page 59 of 78

j2πnk
N −1
, n=0,1,.,N1 eq(4)
1
X(n) = I DF T [X(k)] = ∑ X(k)e N
N k=0

∴ x(n) ⇔ X(k)

Twiddle Factor
It is denoted as WN and defined as WN = e
−j2π/N
. Its magnitude is always maintained
at unity. Phase of WN = −2π/N . It is a vector on unit circle and is used for
computational convenience. Mathematically, it can be shown as −

r r±N r±2N
W = W = W =. . .
N N N

It is function of r and period N.


Consider N = 8, r = 0,1,2,3,.14,15,16,.
0 8 16 32
⟺ W = W = W =. . . =. . . = W =. . . = 1 = 1∠0
8 8 8 8

1 9 17 33 1 1 π
W = W = W =. . . =. . . = W =. . . = = j = 1∠ −
8 8 8 8 4
√2 √2

Linear Transformation
Let us understand Linear Transformation −

We know that,

2π N −1 −nk
DF T (k) = DF T [x(n)] = X( k) = ∑ x(n). Wn ;
N n=0

k = 0, 1, . , N 1

1 N −1 −nk
x(n) = I DF T [X(k)] = ∑ X(k). W ; n = 0, 1, . , N 1
N k=0 N

Note − Computation of DFT can be performed with N2 complex multiplication and N(N-
1) complex addition.

x(0)
⎡ ⎤

⎢ x(1) ⎥
⎢ ⎥
⎢ ⎥
xN = . N point vector of signal xN
⎢ ⎥
⎢ ⎥
⎢ . ⎥

⎣ ⎦
x(N − 1)

X(0)
⎡ ⎤

⎢ X(1) ⎥
⎢ ⎥
⎢ ⎥
XN = . N point vector of signal XN
⎢ ⎥
⎢ ⎥
⎢ . ⎥

⎣ ⎦
X(N − 1)
Page 60 of 78

1 1 1 ... ... 1
⎡ ⎤
2 N −1
⎢1 WN W ... ... W ⎥
⎢ N N ⎥
⎢ 2(N −1)

⎢ 2 4 ⎥
. W W ... ... W
⎢ N N N ⎥
⎢ ⎥
⎢ . ⎥
⎢ ⎥

⎣ N −1 2(N −1) (N −1)(N −1) ⎦


1 W W ... ... W
N N N

N - point DFT in matrix term is given by - X N = WN xN

WN ⟼ Matrix of linear transformation

−1
N ow, xN = W XN
N

IDFT in Matrix form is given by

1

xN = W XN
N
N

Comparing both the expressions of and


−1 1 ∗ ∗
xN , W = W WN × W = N [I ]N ×N
N N N N

Therefore, WN is a linear transformation matrix, an orthogonal (unitary) matrix.

From periodic property of WN and from its symmetric property, it can be concluded that,
k+N /2 k
W = −W
N N

Circular Symmetry
N-point DFT of a finite duration x(n) of length N≤L, is equivalent to the N-point DFT of

periodic extension of x(n), i.e. xp (n) of period N. and xp (n) = ∑l=−∞ x(n − N l) .
Now, if we shift the sequence, which is a periodic sequence by k units to the right,
another periodic sequence is obtained. This is known as Circular shift and this is given
by,


xp (n) = xp (n − k) = ∑ x(n − k − N l)

l=−∞

The new finite sequence can be represented as



xp (n), 0 ≤ n ≤ N − 1
xp (n) = {
0 Otherwise

Example − Let x(n)= {1,2,4,3}, N = 4,


xp (n) = x(n − k, modulo N ) ≡ x((n − k))N ; ex − if k = 2i. e 2

unit right shif t and N = 4,

Assumed clockwise direction as positive direction.


Page 61 of 78

We got, x′(n) = x((n − 2))4

x′(0) = x((−2))4 = x(2) = 4

x′(1) = x((−1))4 = x(3) = 3

x′(2) = x((−2))4 = x(0) = 1

x′(3) = x((1))4 = x(1) = 2

Conclusion − Circular shift of N-point sequence is equivalent to a linear shift of its


periodic extension and vice versa.

Circularly even sequence − x(N − n) = x(n), 1 ≤ n ≤ N − 1

i. e. xp (n) = xp (−n) = xp (N − n)

Conjugate even − ∗
xp (n) = xp (N − n)

Circularly odd sequence − x(N − n) = −x(n), 1 ≤ n ≤ N − 1

i. e. xp (n) = −xp (−n) = −xp (N − n)

Conjugate odd − ∗
xp (n) = −xp (N − n)

Now, xp (n) = xpe + xpo (n) , where,

1 ∗
xpe (n) = [xp (n) + xp (N − n)]
2

1 ∗
xpo (n) = [xp (n) − xp (N − n)]
2

For any real signal x(n), ∗


X(k) = X (N − k)

X R (k) = X R (N − k)

X l (k) = −X l (N − k)

∠X(k) = −∠X(N − K )

Time reversal − reversing sample about the 0th sample. This is given as;

x((−n))N = x(N − n), 0 ≤ n ≤ N − 1

Time reversal is plotting samples of sequence, in clockwise direction i.e. assumed


negative direction.

Some Other Important Properties


Other important IDFT properties x(n) ⟷ X(k)
Page 62 of 78

Time reversal − x((−n))N = x(N − n) ⟷ X((−k))N = X(N − k)

Circular time shift − x((n − l))N ⟷ X(k)e


j2πlk/N

Circular frequency shift − x(n)e


j2πln/N
⟷ X((k − l))N

Complex conjugate properties −


∗ ∗ ∗
x (n) ⟷ X ((−k))N = X (N − k) and
∗ ∗ ∗
x ((−n))N = x (N − n) ⟷ X (−k)

Multiplication of two sequence −


x1 (n) ⟷ X 1 (k) and x2 (n) ⟷ X 2 (k)

∴ x1 (n)x2 (n) ⟷ X 1 (k) X 2 (k)

Circular convolution − and multiplication of two DFT


N −1
x1 (k) x2 (k) = ∑ x1 (n). x2 ((m − n))n , m = 0, 1, 2, . . . . , N
k=0

− 1

x1 (k) x2 (k) ⟷ X 1 (k). X 2 (k)

Circular correlation − If x(n) ⟷ X(k) and y(n) ⟷ Y (k) , then there


exists a cross correlation sequence denoted as ¯
Y xy such that
N −1
¯ ∗ ∗
Y xy (l) = ∑ x(n)y ((n − l))N = X(k). Y (k)
n=0

Parsevals Theorem − If x(n) ⟷ X(k) and y(n) ⟷ Y (k);


N −1 N −1
1
∗ ∗
∑ x(n)y (n) = ∑ X(k). Y (k)
N
n=0 n=0

DSP - DFT Circular Convolution


Let us take two finite duration sequences x1(n) and x2(n), having integer length as N.
Their DFTs are X1(K) and X2(K) respectively, which is shown below −

N −1
j2Πkn

X 1 (K ) = ∑ x1 (n)e N k = 0, 1, 2...N − 1

n=0

N −1
j2Πkn

X 2 (K ) = ∑ x2 (n)e N k = 0, 1, 2...N − 1

n=0

Now, we will try to find the DFT of another sequence x3(n), which is given as X3(K)

X 3 (K ) = X 1 (K ) × X 2 (K )

By taking the IDFT of the above we get

N −1
j2Πkn
1
x3 (n) = ∑ X 3 (K )e N
N

n=0
Page 63 of 78

After solving the above equation, finally, we get

N −1

x3 (n) = ∑ x1 (m)x2 [((n − m))N ] m = 0, 1, 2...N − 1

m=0

Comparison points Linear Convolution Circular Convolution

Shifting Linear shifting Circular shifting

Samples in the convolution


N_1&plus;N_21 M ax(N1 , N2 )
result

Finding response of a filter Possible Possible with zero padding

Methods of Circular Convolution


Generally, there are two methods, which are adopted to perform circular convolution and
they are −

Concentric circle method,

Matrix multiplication method.

Concentric Circle Method

Let x1 (n) and x2 (n) be two given sequences. The steps followed for circular convolution
of x1 (n) and x2 (n) are

Take two concentric circles. Plot N samples of x1 (n) on the circumference of the
outer circle (maintaining equal distance successive points) in anti-clockwise
direction.

For plotting x2 (n), plot N samples of x2 (n) in clockwise direction on the inner
circle, starting sample placed at the same point as 0th sample of x1 (n)

Multiply corresponding samples on the two circles and add them to get output.

Rotate the inner circle anti-clockwise with one sample at a time.

Matrix Multiplication Method


Matrix method represents the two given sequence x1 (n) and x2 (n) in matrix form.

One of the given sequences is repeated via circular shift of one sample at a time
to form a N X N matrix.
Page 64 of 78

The other sequence is represented as column matrix.


The multiplication of two matrices give the result of circular convolution.

DSP - DFT Linear Filtering


DFT provides an alternative approach to time domain convolution. It can be used to
perform linear filtering in frequency domain.

Thus, Y (ω) = X(ω). H (ω) ⟷ y(n) .

The problem in this frequency domain approach is that Y (ω), X(ω) and H (ω) are
continuous function of , which is not fruitful for digital computation on computers.
However, DFT provides sampled version of these waveforms to solve the purpose.

The advantage is that, having knowledge of faster DFT techniques likes of FFT, a
computationally higher efficient algorithm can be developed for digital computer
computation in comparison with time domain approach.

Consider a finite duration sequence, [x(n) = 0, f or, n < 0 and n ≥ L]

(generalized equation), excites a linear filter with impulse response


[h(n) = 0, f orn < 0 and n ≥ M ].

x(n)y(n)

M −1

output = y(n) = ∑ h(k). x(n − k)

k=0

From the convolution analysis, it is clear that, the duration of y(n) is L+M1.

In frequency domain,

Y (ω) = X(ω). H (ω)

Now, Y (ω) is a continuous function of and it is sampled at a set of discrete frequencies


with number of distinct samples which must be equal to or exceeds L + M − 1.

DF T size = N ≥ L + M − 1

With k,

ω =
N

Y (ω) = X(k). H (k) , where k=0,1,.,N-1

Where, X(k) and H(k) are N-point DFTs of x(n) and h(n) respectively. x(n)&h(n) are
padded with zeros up to the length N. It will not distort the continuous spectra X(ω) and
H (ω). Since N ≥ L + M − 1, N-point DFT of output sequence y(n) is sufficient to
represent y(n) in frequency domain and these facts infer that the multiplication of N-
Page 65 of 78

point DFTs of X(k) and H(k), followed by the computation of N-point IDFT must yield
y(n).

This implies, N-point circular convolution of x(n) and H(n) with zero padding, equals to
linear convolution of x(n) and h(n).

Thus, DFT can be used for linear filtering.

Caution − N should always be greater than or equal to L + M − 1. Otherwise, aliasing


effect would corrupt the output sequence.

DSP - DFT Sectional Convolution


Suppose, the input sequence x(n) of long duration is to be processed with a system
having finite duration impulse response by convolving the two sequences. Since, the
linear filtering performed via DFT involves operation on a fixed size data block, the input
sequence is divided into different fixed size data block before processing.

The successive blocks are then processed one at a time and the results are combined to
produce the net result.

As the convolution is performed by dividing the long input sequence into different fixed
size sections, it is called sectioned convolution. A long input sequence is segmented to
fixed size blocks, prior to FIR filter processing.

Two methods are used to evaluate the discrete convolution −

Overlap-save method

Overlap-add method

Overlap Save Method


Overlapsave is the traditional name for an efficient way to evaluate the discrete
convolution between a very long signal x(n) and a finite impulse response (FIR) filter
h(n). Given below are the steps of Overlap save method −

Let the length of input data block = N = L+M-1. Therefore, DFT and IDFT length = N.
Each data block carries M-1 data points of previous block followed by L new data points
to form a data sequence of length N = L+M-1.

First, N-point DFT is computed for each data block.

By appending (L-1) zeros, the impulse response of FIR filter is increased in length
and N point DFT is calculated and stored.
Page 66 of 78

Multiplication of two N-point DFTs H(k) and Xm(k) : Y′m(k) = H(k).Xm(k), where
K=0,1,2,N-1

Then, IDFT[Y′m((k)] = y′((n) = [y′m(0), y′m(1), y′m(2),.......y′m(M-1),


y′m(M),.......y′m(N-1)]
(here, N-1 = L+M-2)

First M-1 points are corrupted due to aliasing and hence, they are discarded
because the data record is of length N.

The last L points are exactly same as a result of convolution, so


y′m (n) = ym(n) where n = M, M+1,.N-1

To avoid aliasing, the last M-1 elements of each data record are saved and these
points carry forward to the subsequent record and become 1st M-1 elements.

Result of IDFT, where first M-1 Points are avoided, to nullify aliasing and
remaining L points constitute desired result as that of a linear convolution.

Overlap Add Method


Given below are the steps to find out the discrete convolution using Overlap method −

Let the input data block size be L. Therefore, the size of DFT and IDFT: N = L+M-1

Each data block is appended with M-1 zeros to the last.

Compute N-point DFT.

Two N-point DFTs are multiplied: Ym(k) = H(k).Xm(k), where k = 0,,1,2,.,N-1

IDFT [Ym(k)] produces blocks of length N which are not affected by aliasing as
the size of DFT is N = L+M-1 and increased lengths of the sequences to N-points
Page 67 of 78

by appending M-1 zeros to each block.

Last M-1 points of each block must be overlapped and added to first M-1 points of
the succeeding block.
(reason: Each data block terminates with M-1 zeros)
Hence, this method is known Overlap-add method. Thus, we get −
y(n) = {y1(0), y1(1), y1(2), ... .., y1(L-1), y1(L)+y2(0), y1(L+1)+y2(1), ... ... ..,
y1(N-1)+y2(M-1),y2(M), ... ... ... ... ... }

DSP - DFT Discrete Cosine Transform


DCT (Discrete Cosine Transform) is an N-input sequence x(n) , 0≤n≤N-1 , as a linear
transformation or combination of complex exponentials. As a result, the DFT coefficients
are in general, complex even if x(n) is real.

Suppose, we try to find out an orthogonal transformation which has NN structure that
expressed a real sequence x(n) as a linear combination of cosine sequence. We already
know that −

N −1
2Πkn
X(K ) = ∑ x(n)cos 0 ≤ k ≤ N − 1
N
n=0

N −1
And
1 2Πkn
x(n) = ∑ x(k)cos 0 ≤ k ≤ N − 1
N k=0 N

This is possible if N point sequence x(n) is real and even. Thus,


x(n) = x(N − n), 0 ≤ n ≤ (N − 1). The resulting DFT itself is real and even. These
things make it clear that we could possibly device a discrete cosine transform, for any N
point real sequence by taking the 2N point DFT of an Even extension of sequence.

DCT is, basically, used in image and speech processing. It is also used in compression of
images and speech signals.

2N −1 nk
DF T [s(n)] = S (k) = ∑ s(n)W , where 0 ≤ k ≤ 2N − 1
n=0 2N

N −1 2N −1

nk nk
S (k) = ∑ x(n)W + ∑ x(2N − n − 1)W ; where
2N 2N

n=0 n=N

0 ≤ k ≤ 2N − 1

−k/2 N −1 nk k/2 −nk −k/2


⇒ S (k) = W + ∑ x(n)[W W + W W ]; where
2N n=0 2N 2N 2N 2N

0 ≤ k ≤ 2N − 1

2
N −1 π 1
⇒ S (k) = W ∑ x(n) cos[ (n + )k]; where 0 ≤ k ≤ 2N − 1
2N n=0 N 2

DCT is defined by,


Page 68 of 78

N −1 π 1
V (k) = 2 ∑ x(n) cos[ (n + )k] where 0 ≤ k ≤ N − 1
n=0 2 2

k k

2 2
⇒ V (k) = W S (k) or S (k) = W V (k), where 0 ≤ k ≤ N − 1
2N 2N

2
N −1 nk
⇒ V (k) = 2R[W ∑ x(n)W ], where 0 ≤ k ≤ N − 1
2N n=0 2N

DSP - DFT Solved Examples

Example 1
n

Verify Parsevals theorem of the sequence


1
x(n) = u(n)
4

∞ π
2
1 2
Solution −

∑ |x1 (n)| = ∫ | X 1 (e )| dω
2π −π
−∞


2
L.H.S ∑ |x1 (n)|

−∞


= ∑ x(n)x (n)

−∞


1 1 16
2n
= ∑( ) u(n) = =
1
4 1 − 15
−∞ 16

R.H.S. jω 1 1
X(e ) = =
1 1−0.25 cos ω+j0.25 sin ω
1− e−jω
4

∗ jω 1
⟺ X (e ) =
1−0.25 cos ω−j0.25 sin ω

Calculating, X(e

). X (e
∗ jω
)

1 1
= =
2 2 1.0625−0.5 cos ω
(1−0.25 cos ω) +(0.25 sin ω)

1 π 1
∫ dω
2π −π 1.0625−0.5 cos ω

1 π 1
∫ dω = 16/15
2π −π 1.0625−0.5 cos ω

We can see that, LHS = RHS. (Hence Proved)

Example 2
Compute the N-point DFT of x(n) = 3δ(n)

Solution − We know that,


Page 69 of 78

N −1
j2Πkn

X(K ) = ∑ x(n)e N

n=0

N −1
j2Πkn

= ∑ 3δ(n)e N

n=0

0
= 3δ(0) × e = 1

So, x(k) = 3, 0 ≤ k ≤ N − 1 Ans.

Example 3
Compute the N-point DFT of x(n) = 7(n − n0 )

Solution − We know that,

N −1
j2Πkn

X(K ) = ∑ x(n)e N

n=0

Substituting the value of x(n),

N −1
j2Πkn

∑ 7δ(n − n0 )e N

n=0

= e
−kj14Πkn0 /N
Ans

DSP - Fast Fourier Transform


In earlier DFT methods, we have seen that the computational part is too long. We want
to reduce that. This can be done through FFT or fast Fourier transform. So, we can say
FFT is nothing but computation of discrete Fourier transform in an algorithmic format,
where the computational part will be reduced.

The main advantage of having FFT is that through it, we can design the FIR filters.
Mathematically, the FFT can be written as follows;

N −1

nk
x[K ] = ∑ x[n]W
N

n=0

Let us take an example to understand it better. We have considered eight points named
from x0 to x7 . We will choose the even terms in one group and the odd terms in the
other. Diagrammatic view of the above said has been shown below −
Page 70 of 78

Here, points x0, x2, x4 and x6 have been grouped into one category and similarly, points
x1, x3, x5 and x7 has been put into another category. Now, we can further make them in
a group of two and can proceed with the computation. Now, let us see how these
breaking into further two is helping in computation.

N N
−1 −1
2 2

2rk (2r+1)k
x[k] = ∑ x[2r]W + ∑ x[2r + 1]W
N N

r=0 r=0

N N
−1 −1
2 rk 2 rk k
= ∑ x[2r]W + ∑ x[2r + 1]W × W
r=0 N /2 r=0 N /2 N

k
= G[k] + H [k] × W
N

Initially, we took an eight-point sequence, but later we broke that one into two parts
G[k] and H[k]. G[k] stands for the even part whereas H[k] stands for the odd part. If we
want to realize it through a diagram, then it can be shown as below −
Page 71 of 78

From the above figure, we can see that

4
W = −1
8

5 1
W = −W
8 8

6 2
W = −W
8 8

7 3
W = −W
8 8

Similarly, the final values can be written as follows −

G[0] − H [0] = x[4]

1
G[1] − W H [1] = x[5]
8

2
G[2] − W H [2] = x[6]
8

3
G[1] − W H [3] = x[7]
8

The above one is a periodic series. The disadvantage of this system is that K cannot be
broken beyond 4 point. Now Let us break down the above into further. We will get the
structures something like this
Page 72 of 78

Example

Consider the sequence x[n]={ 2,1,-1,-3,0,1,2,1}. Calculate the FFT.

Solution − The given sequence is x[n]={ 2,1,-1,-3,0,1,2,1}

Arrange the terms as shown below;

DSP - In-Place Computation


This efficient use of memory is important for designing fast hardware to calculate the
FFT. The term in-place computation is used to describe this memory usage.

Decimation in Time Sequence


Page 73 of 78

In this structure, we represent all the points in binary format i.e. in 0 and 1. Then, we
reverse those structures. The sequence we get after that is known as bit reversal
sequence. This is also known as decimation in time sequence. In-place computation of
an eight-point DFT is shown in a tabular format as shown below −

POINTS BINARY FORMAT REVERSAL EQUIVALENT POINTS

0 000 000 0

1 001 100 4

2 010 010 2

3 011 110 6

4 100 001 1

5 101 101 5

6 110 011 3

7 111 111 7

Decimation in Frequency Sequence


Apart from time sequence, an N-point sequence can also be represented in frequency.
Let us take a four-point sequence to understand it better.

Let the sequence be x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7]. We will group two points
into one group, initially. Mathematically, this sequence can be written as;
Page 74 of 78

N −1

n−k
x[k] = ∑ x[n]W
N

n=0

Now let us make one group of sequence number 0 to 3 and another group of sequence 4
to 7. Now, mathematically this can be shown as;

N
−1
2 N −1

nk nk
∑ x[n]W + ∑ x[n]W
N N

n=0 n=N /2

Let us replace n by r, where r = 0, 1 , 2.(N/2-1). Mathematically,

N
−1
2

nr
∑ x[r]W
N /2

n=0

We take the first four points (x[0], x[1], x[2], x[3]) initially, and try to represent them
mathematically as follows −

3 nk 3 (n+4)k
∑ x[n]W + ∑ x[n + 4]W
n=0 8 n=0 8

3 3 (4)k nk
= {∑ x[n] + ∑ x[n + 4]W } × W
n=0 n=0 8 8

3
now X[0] = ∑
n=0
(X[n] + X[n + 4])

3 nk
X[1] = ∑ (X[n] + X[n + 4])W
n=0 8

1 2
= [X[0] − X[4] + (X[1] − X[5])W + (X[2] − X[6])W
8 8

3
+ (X[3] − X[7])W
8

We can further break it into two more parts, which means instead of breaking them as 4-
point sequence, we can break them into 2-point sequence.

DSP - Computer Aided Design


FIR filters can be useful in making computer-aided design of the filters. Let us take an
example and see how it works. Given below is a figure of desired filter.
Page 75 of 78

While doing computer designing, we break the whole continuous graph figures into
discrete values. Within certain limits, we break it into either 64, 256 or 512 (and so on)
number of parts having discrete magnitudes.

In the above example, we have taken limits between -π to +π. We have divided it into
256 parts. The points can be represented as H(0), H(1),.up to H(256). Here, we apply
IDFT algorithm and this will give us linear phase characteristics.

Sometimes, we may be interested in some particular order of filter. Let us say we want
to realize the above given design through 9th order filter. So, we take filter values as h0,
h1, h2.h9. Mathematically, it can be shown as below

jω −jω −2jω −9jω


H (e ) = h0 + h1 e + h2 e +. . . . . +h9 e

Where there are large number of dislocations, we take maximum points.

For example, in the above figure, there is a sudden drop of slopping between the points
B and C. So, we try to take more discrete values at this point, but there is a constant
slope between point C and D. There we take less number of discrete values.

For designing the above filter, we go through minimization process as follows;

jω1 −jω1 −2jω1 −9jω1


H (e ) = h0 + h1 e + h2 e +. . . . . +h9 e

jω2 −jω2 −2jω2 −9jω2


H (e ) = h0 + h1 e + h2 e +. . . . . +h9 e

Similarly,

jω1000 −jω1000 −2jω1000 −9jω1000


(e ) = h 0 + h 1 eH h2 e +. . . . . +h9 + e

Representing the above equation in matrix form, we have −

jω1 −jω1 −j9ω1


H (e ) e ... e h0
⎡ ⎤ ⎡ ⎤⎡ ⎤

⎢ . ⎥ ⎢ . . ⎥⎢ . ⎥
⎢ ⎥ = ⎢ ⎥
⎢ ⎥ ⎢ ⎥⎢ ⎥
⎢ . ⎥ ⎢ . . ⎥⎢ . ⎥

⎣ jω1000 ⎦ ⎣ −jω1000 j9ω1000 ⎦⎣ ⎦


H (e ) e ... e h9

Let us take the 10001 matrix as B, 10009 matrix as A and 91 matrix as h.


^
Page 76 of 78

So, for solving the above matrix, we will write

^ T −1 T
h = [A A] A B

∗T −1 ∗T
= [A A] A B

where A* represents the complex conjugate of the matrix A.

TOP TUTORIALS

Python Tutorial

Java Tutorial

C++ Tutorial

C Programming Tutorial

C# Tutorial

PHP Tutorial

R Tutorial
HTML Tutorial

CSS Tutorial

JavaScript Tutorial

SQL Tutorial

TRENDING TECHNOLOGIES

Cloud Computing Tutorial

Amazon Web Services Tutorial

Microsoft Azure Tutorial

Git Tutorial

Ethical Hacking Tutorial

Docker Tutorial

Kubernetes Tutorial

DSA Tutorial

Spring Boot Tutorial


SDLC Tutorial

Unix Tutorial

CERTIFICATIONS

Business Analytics Certification


Page 77 of 78

Java & Spring Boot Advanced Certification

Data Science Advanced Certification

Cloud Computing And DevOps

Advanced Certification In Business Analytics

Artificial Intelligence And Machine Learning

DevOps Certification

Game Development Certification

Front-End Developer Certification


AWS Certification Training

Python Programming Certification

COMPILERS & EDITORS

Online Java Compiler


Online Python Compiler

Online Go Compiler

Online C Compiler

Online C++ Compiler

Online C# Compiler

Online PHP Compiler

Online MATLAB Compiler

Online Bash Terminal

Online SQL Compiler

Online Html Editor

ABOUT US | OUR TEAM | CAREERS | JOBS | CONTACT US | TERMS OF USE |

PRIVACY POLICY | REFUND POLICY | COOKIES POLICY | FAQ'S


Page 78 of 78

Tutorials Point is a leading Ed Tech company striving to provide the best learning material on
technical and non-technical subjects.

© Copyright 2026. All Rights Reserved.

Change GDPR Consent

You might also like