0% found this document useful (0 votes)
94 views31 pages

DSP 9

This document discusses circular convolution and how it relates to linear convolution. It defines circular convolution and shows that it is equivalent to multiplying the sequences in the frequency domain. An example is worked out using different methods. It also explains that linear convolution can be computed using circular convolution by padding the sequences with zeros to make them the same length as the output of the linear convolution.

Uploaded by

Anirban Z
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)
94 views31 pages

DSP 9

This document discusses circular convolution and how it relates to linear convolution. It defines circular convolution and shows that it is equivalent to multiplying the sequences in the frequency domain. An example is worked out using different methods. It also explains that linear convolution can be computed using circular convolution by padding the sequences with zeros to make them the same length as the output of the linear convolution.

Uploaded by

Anirban Z
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
You are on page 1/ 31

DIGITAL SIGNAL PROCESSING

th
5 Semester, 2020-21

ANIRBAN BHATTACHARJEE
ASSISTANT PROFESSOR
DEPARTMENT OF ECE,NIT AGARTALA

9/17/2020 Anirban Bhattacharjee, Department of ECE, NIT Agartala


Circular Convolution
Consider two finite length discrete time sequences 𝑥1 𝑛 𝑎𝑛𝑑 𝑥2 𝑛
𝑁 𝑁
𝑠𝑢𝑐ℎ 𝑡ℎ𝑎𝑡 𝑥1 𝑛 𝑋1 𝑘 and 𝑥2 𝑛 𝑋2 𝑘 .
Let
𝑋3 𝑘 = 𝑋1 𝑘 𝑋2 𝑘 , k = 0,1,2, … . , N − 1
Now taking IDFT
𝑁−1
1 2𝜋
𝑗 𝑘𝑚
𝑥3 𝑚 = 𝑋3 𝑘 𝑒 𝑁 , 𝑚 = 0,1,2, … , 𝑁 − 1
𝑁
𝑘=0

𝑁−1
1 2𝜋
𝑗 𝑁 𝑘𝑚
𝑥3 𝑚 = 𝑋1 𝑘 𝑋2 𝑘 𝑒
𝑁
𝑘=0

9/17/2020 Anirban Bhattacharjee, Department of ECE, NIT Agartala


𝑁−1 𝑁−1 𝑁−1
1 2𝜋
−𝑗𝑘 𝑁 𝑛
2𝜋
−𝑗𝑘 𝑁 𝑙
2𝜋
𝑗 𝑁 𝑘𝑚
𝑥3 𝑚 = 𝑥1 𝑛 𝑒 𝑥2 𝑙 𝑒 𝑒
𝑁
𝑘=0 𝑛=0 𝑙=0

𝑁−1 𝑁−1 𝑁−1


1 2𝜋
𝑗 𝑁 𝑘(𝑚−𝑛−𝑙)
𝑥3 𝑚 = 𝑥1 𝑛 𝑥2 𝑙 𝑒
𝑁
𝑛=0 𝑙=0 𝑘=0

2𝜋
𝑗 𝑁 (𝑚−𝑛−𝑙)
Consider the inner sum and let 𝑎 = 𝑒
Therefore

𝑁−1
2𝜋
𝑁−1 𝑁 ,𝑎 = 1
𝑗 𝑁 𝑘(𝑚−𝑛−𝑙)
𝑒 = 𝑎𝑘 = 1 − 𝑎𝑁
,𝑎 ≠ 1
𝑘=0 𝑘=0 1−𝑎
9/17/2020
When m−n−l is a multiple of N, a=1 and 𝑎𝑁 = 1 𝑓𝑜𝑟 𝑎 ≠ 0
Hence
𝑁−1
𝑁, 𝑙 = 𝑚 − 𝑛 + 𝑝𝑁 = (< 𝑚 − 𝑛 >𝑁 )
𝑎𝑘 =
0, 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
𝑘=0
Therefore
𝑁−1 𝑁−1
1
𝑥3 𝑚 = 𝑥1 𝑛 𝑥2 𝑙 𝑁
𝑁
𝑛=0 𝑙=0

𝑁−1

𝑥3 𝑚 = 𝑥1 𝑛 𝑥2 (< 𝑚 − 𝑛 >𝑁 ), 𝑚 = 0,1,2, … , 𝑁 − 1


𝑛=0
The expression on the RHS represents the Circular Convolution of 𝑥1 𝑛 and 𝑥2 𝑛
represented as
𝑥3 𝑚 = 𝑥1 𝑛 ⊛ 𝑥1 𝑛

9/17/2020 Anirban Bhattacharjee, Department of ECE, NIT Agartala


Thus the circular convolution property may be stated as

𝑁 𝑁
𝐼𝑓 𝑥1 𝑛 𝑋1 𝑘 and 𝑥2 𝑛 𝑋2 𝑘 , 𝑡ℎ𝑒𝑛

𝑁
𝑥1 𝑛 ⊛ 𝑥1 𝑛 𝑋1 𝑘 𝑋2 𝑘

9/17/2020 Anirban Bhattacharjee, Department of ECE, NIT Agartala


Example:
Determine the 4- point circular convolution for the following sequences
𝑥1 𝑛 = 2,2,1 𝑎𝑛𝑑𝑥2 𝑛 = 1,2,4,3

ANALYTICAL METHOD: 𝑥1 𝑛 = 2,2,1,0


3

𝑥3 𝑚 = 𝑥1 𝑛 𝑥2 (< 𝑚 − 𝑛 >4 ), 𝑚 = 0,1,2,3


𝑛=0
3

𝑥3 0 = 𝑥1 𝑛 𝑥2 (< −𝑛 >4 ) = 𝑥1 0 𝑥2 0 + 𝑥1 1 𝑥2 3 + 𝑥1 2 𝑥2 2 + 𝑥1 3 𝑥2 1 = 12
𝑛=0
3

𝑥3 1 = 𝑥1 𝑛 𝑥2 (< 1 − 𝑛 >4 ) = 𝑥1 0 𝑥2 1 + 𝑥1 1 𝑥2 0 + 𝑥1 2 𝑥2 3 + 𝑥1 3 𝑥2 2 = 9
𝑛=0

𝑥3 2 = 𝑥1 𝑛 𝑥2 (< 2 − 𝑛 >4 ) = 𝑥1 0 𝑥2 2 + 𝑥1 1 𝑥2 1 + 𝑥1 2 𝑥2 0 + 𝑥1 3 𝑥2 3 = 13
𝑛=0
3

𝑥3 3 = 𝑥1 𝑛 𝑥2 (< 3 − 𝑛 >4 ) = 𝑥1 0 𝑥2 3 + 𝑥1 1 𝑥2 2 + 𝑥1 2 𝑥2 1 + 𝑥1 3 𝑥2 0 = 16
𝑛=0
MATRIX METHOD:
𝑥3 0 𝑥2 0 𝑥2 3 𝑥2 2 𝑥2 1 𝑥1 0
𝑥3 1 𝑥2 1 𝑥2 0 𝑥2 3 𝑥2 2 𝑥1 1
=
𝑥3 2 𝑥2 2 𝑥2 1 𝑥2 0 𝑥2 3 𝑥1 2
𝑥3 3 𝑥2 3 𝑥2 2 𝑥2 1 𝑥2 0 𝑥1 3

𝑥3 0 1342 2 12
𝑥3 1 2134 2 = 9
=
𝑥3 2 4213 1 13
𝑥3 3 3421 0 16

9/17/2020 Anirban Bhattacharjee, Department of ECE, NIT Agartala


FREQUENCY DOMAIN METHOD:
3
2𝜋
−𝑗 𝑘𝑛
𝑋1 𝑘 = 𝑥1 𝑛 𝑒 4 ,𝑘 = 0,1,2,3
𝑛=0
3

𝑋1 𝑘 = 𝑥1 𝑛 𝑊4 𝑘𝑛
𝑛=0

𝑋1 (0) 1 11 12 13 𝑥1 (0)
1 11 12 13
𝑋1 (1) 1𝑊4 𝑊4 𝑊4 𝑥1 (1) 𝑊 𝑊 𝑊
= 2 4 6 ⇨ W4 = 1 4 2 4 4 4 6
𝑋1 (2) 1𝑊4 𝑊4 𝑊4 𝑥1 (2) 1𝑊4 𝑊4 𝑊4
𝑋1 (3) 1𝑊4 3 𝑊4 6 𝑊4 9 𝑥1 (3) 1𝑊4 3 𝑊4 6 𝑊4 9

𝑊41 = 𝑗, 𝑊4 2 = −1, 𝑊4 3 = 𝑗, 𝑊4 4 = 1, 𝑊4 6 = −1, 𝑊4 9 = −𝑗

9/17/2020 Anirban Bhattacharjee, Department of ECE, NIT Agartala


𝑋1 (0) 11 1 1 2 5
𝑋1 (1) 1 −𝑗 −1 𝑗 2 = 1 − 𝑗2
=
𝑋1 (2) 1−1 1 −1 1 1
𝑋1 (3) 1 𝑗 −1 −𝑗 0 1 + 𝑗2
Similarly
𝑋2 (0) 11 1 1 1 10
𝑋2 (1) 1 −𝑗 −1 𝑗 2 = −3 + 𝑗
=
𝑋2 (2) 1−1 1 −1 4 0
𝑋2 (3) 1 𝑗 −1 −𝑗 3 −3 − 𝑗
Let
𝑋3 𝑘 = 𝑋1 (𝑘) 𝑋2 (𝑘)

Therefore 𝑋3 (0) 50
𝑋3 (1) −1 + 𝑗7
=
𝑋3 (2) 0
𝑋3 (3) −1 − 𝑗7
9/17/2020
We know that

1
x = W𝑁 X
𝑁
11 1 1
1 𝑗 −1 −𝑗
W4 ∗ =
1−1 1 −1
1 −𝑗 −1 𝑗
11 1 1 50 12
1 1 𝑗 −1 −𝑗 −1 + 𝑗7
𝑥3 = = 9
4 1−1 1 −1 0 13
1 −𝑗 −1 𝑗 −1 − 𝑗7 16

𝒙𝟑 (n)={12,9,13,16}
9/17/2020 Anirban Bhattacharjee, Department of ECE, NIT Agartala
GRAPHICAL METHOD:

𝑥3 (0)=12

𝑥3 (1)=9
Linear Convolution using Circular Convolution
Consider two finite length discrete time causal sequences 𝑥1 𝑛 𝑎𝑛𝑑 𝑥2 𝑛
𝑠𝑢𝑐ℎ 𝑡ℎ𝑎𝑡
𝑁 𝑁
𝑥1 𝑛 𝑋1 𝑘 & 𝑥2 𝑛 𝑋2 𝑘 .

Let 𝑥1 𝑛 and 𝑥2 𝑛 have lengths 𝐿1 and 𝐿2 respectively and assume that 𝐿1 > 𝐿2

The linear convolution of 𝑥1 𝑛 𝑎𝑛𝑑 𝑥2 𝑛 given by

𝑦 𝑛 = 𝑥1 𝑙 𝑥2 𝑛 − 𝑙
𝑙=−∞
The length of 𝑦 𝑛 is 𝐿 = 𝐿1 + 𝐿2 −1 and is defined for 0 ≤ 𝑛 ≤ 𝐿 − 1.
The circular convolution of 𝑥1 𝑛 𝑎𝑛𝑑 𝑥2 𝑛 is defined as

𝐿1 −1

𝑥3 𝑚 = 𝑥1 𝑛 𝑥2 (< 𝑚 − 𝑛 > 𝐿1 ), 𝑚 = 0,1,2, … , 𝐿1 −1


𝑛=0
and yields a different result from 𝑦(𝑛).

In order to realize 𝑦 𝑛 from 𝑥3 (𝑚), we must have 𝑁 ≥ 𝐿 𝑖. 𝑒. 𝑁 ≥ 𝐿1 + 𝐿2 − 1.

Hence 𝑁 − 𝐿1 zeros must be appended to 𝑥1 (𝑛) & 𝑁 − 𝐿2 zeros must be appended


to 𝑥2 (𝑛) to make the sequences of length 𝐿 .
Once this is done the circular convolution of 𝑥1 (𝑛) & 𝑥2 (𝑛) results in a sequence
which is the linear convolution of the two sequences.
# 𝑥1 𝑛 = 2,5,0,4 𝑎𝑛𝑑 𝑥2 𝑛 = 4,1,3 . Determine the linear convolution of the
two sequences from the circular convolution.
Solution:
Here 𝐿1 = 4 and 𝐿2 = 3
Linear convolution of he two sequences will yield a sequence of length
𝐿 = 𝐿1 + 𝐿2 − 1 = 4 + 3 − 1 = 6
Consequently 𝑁 = 𝐿 = 6.
Hence 2 zeros must be appended to 𝑥1 𝑛 & 3 zeros must be appended to 𝑥2 𝑛
so that the sequences become equal to length 𝐿 = 6.
Next we determine N=6 point circular convolution using

𝑥3 𝑚 = 𝑥1 𝑛 𝑥2 (< 𝑚 − 𝑛 >6 ), 𝑚 = 0,1,2, … , 5


𝑛=0
6 Point Circular Convolution
𝑥3 0 𝑥2 0 𝑥2 5 𝑥2 4 𝑥2 3 𝑥2 2 𝑥2 1 𝑥1 0
𝑥3 1 𝑥2 1 𝑥2 0 𝑥2 5 𝑥2 4 𝑥2 3 𝑥2 2 𝑥1 1
𝑥3 2 𝑥 2 𝑥2 1 𝑥2 0 𝑥2 5 𝑥2 4 𝑥2 3 𝑥1 2
= 2
𝑥3 3 𝑥2 3 𝑥2 2 𝑥2 1 𝑥2 0 𝑥2 5 𝑥2 4 𝑥1 3
𝑥3 4 𝑥2 4 𝑥2 3 𝑥2 2 𝑥2 1 𝑥2 0 𝑥2 5 𝑥1 4
𝑥3 5 𝑥2 5 𝑥2 4 𝑥2 3 𝑥2 2 𝑥2 1 𝑥2 0 𝑥1 5

𝑥3 0 4 0 0 0 3 1 2 8
𝑥3 1 1 4 0 0 0 3 5 22
𝑥3 2 3 1 4 0 0 0 0 = 11
=
𝑥3 3 0 3 1 4 0 0 4 31
𝑥3 4 0 0 3 1 4 0 0 4
𝑥3 5 0 0 0 3 1 4 0 12

𝑦 𝑛 = {𝟖, 𝟐𝟐, 𝟏𝟏, 𝟑𝟏, 𝟒, 𝟏𝟐}


# 𝑥1 𝑛 = 1,1,1,1 𝑎𝑛𝑑 𝑥2 𝑛 = 1,1,1 . Determine the circular convolution of
the two sequences for N=6 , N=5 and N=4 and compare the result in each case with
the linear convolution sequence 𝒚 𝒏 = {𝟏, 𝟐, 𝟑, 𝟑, 𝟐, 𝟏}

Solution:
N=6

𝑥3 0 1 0 0 1 1 1 1 1
𝑥3 1 1 1 0 0 1 1 1 2
𝑥3 2 1 1 1 0 0 1 1 3
= =
𝑥3 3 1 1 1 1 0 0 0 3
𝑥3 4 0 1 1 1 1 0 0 2
𝑥3 5 0 0 1 1 1 1 0 1

𝐱𝟑 𝐧 = 𝟏, 𝟐, 𝟑, 𝟑, 𝟐, 𝟏 = 𝐲(𝐧)
N=5
𝑥3 0 1 0 1 1 1 2
𝑥3 1 1 1 0 1 1 2
𝑥3 2 = 1 1 1 0 1 = 3
𝑥3 3 1 1 1 1 0 3
𝑥3 4 0 1 1 1 0 2
𝐱𝟑 𝐧 = {𝟐, 𝟐, 𝟑, 𝟑, 𝟐}
Comparing the circular convolution sequence with the linear convolution
sequence, 𝑦 n = {1,2,3,3,2,1}, we observe that first sample of the circular
convolution sequence is dissimilar.
𝑦 n = {1,2,3,3,2,1},
1 2 3 3 2
Wrap around 1
Time Aliasing = {2, 2, 3, 3, 2}
N=4
𝑥3 0 1 1 1 1 1 3
𝑥3 1 1 1 1 1 1 = 3
=
𝑥3 2 1 1 1 1 1 3
𝑥3 3 1 1 1 1 0 3

𝐱 𝟑 𝐧 = {𝟑, 𝟑, 𝟑, 𝟑}
Comparing the circular convolution sequence with the linear convolution
sequence, 𝑦 n = {1,2,3, 3,2,1}, we observe that first three samples of the
circular convolution sequence are dissimilar.
𝑦 n = {1,2,3, 3,2,1},
1 2 3 3
Wrap around 2 1

Time Aliasing ={3, 3, 3, 3}


Block Processing of long data sequences
Long data sequences can be thought to be infinite in length.
Determining the system output using any of the known methods is
impractical considering the size of the input sequence.
The long data sequence is divided into smaller sequences i.e. blocks
and each block is processed using DFT & IDFT to produce a block of
output data. The output blocks are joined together to generate the
sequence which represents the linear convolution sequence i.e. the
system output.
Two different methods are used: (i) Overlap-save method.
(ii) Overlap-add method.
Overlap-Save Method

𝒙(𝒏) 𝒉(𝒏) 𝒚(𝒏)

Consider a long data sequence , 𝑥(𝑛) as input to an LTI system with impulse response
ℎ(𝑛) of length 𝐿.
 Divide 𝑥(𝑛) into blocks, 𝑥𝑏 𝑛 , of length 𝑁 with each block overlapping the previous
block by 𝐿 − 1 samples as shown below. The first 𝐿 − 1 samples of the first block is set
to zero.
 Assume 𝑁 >> 𝐿.
𝑵 𝑵 ……….
𝑵
Input Data Sequence , 𝒙(𝒏)
𝐿−1
zeros 𝒙𝟎 (𝒏)
𝐿−1
data
𝒙𝟏 (𝒏)
𝐿−1
data
𝒙𝟐 (𝒏) ……….
The blocks can be represented as
𝑥𝑏 𝑛 = 𝑥 𝑛 + 𝑏 𝑁 − 𝐿 + 1 − 𝐿 + 1 , 𝑏 = 0,1,2, … . .
Let
𝑦𝑏 𝑛 = 𝑥𝑏 𝑛 ⊛ ℎ(𝑛)

 The first 𝐿 − 1 samples of each output block is discarded and the remaining 𝑁 − 𝐿 + 1 samples
are saved and concatenated with the 𝑁 − 𝐿 + 1 samples from other blocks to obtain the final
output.

𝑳−𝟏
data
𝒚𝟎 (𝒏)

𝑳−𝟏
data
𝒚𝟏 (𝒏)

𝑳−𝟏
𝒚𝟐 (𝒏) ……….
data

Output Sequence,𝒚(𝒏)
EXAMPLE
# Let 𝑥 𝑛 = 𝑛 + 1 , 0 ≤ 𝑛 ≤ 9 and ℎ 𝑛 = 1,0,1 . Compute the linear convolution
𝑦 𝑛 = 𝑥 𝑛 ∗ ℎ(𝑛) using the overlap save method.

Solution: The length of h(n) , L=3. Let the number of blocks be 3.

𝑡𝑜𝑡𝑎𝑙 𝑙𝑒𝑛𝑔𝑡ℎ 𝑜𝑓 𝑡ℎ𝑒 𝑖𝑛𝑝𝑢𝑡 𝑠𝑒𝑞𝑢𝑒𝑛𝑐𝑒


Number of blocks required=
𝑛𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝑛𝑒𝑤 𝑠𝑎𝑚𝑝𝑙𝑒𝑠 𝑖𝑛 𝑒𝑎𝑐ℎ 𝑏𝑙𝑜𝑐𝑘
𝐿𝑥 10
𝐻𝑒𝑛𝑐𝑒 3 = =
𝑁−𝐿+1 𝑁−2

⇨ 𝑁 − 2 = 4 𝑖. 𝑒. 𝑁 = 6
The following are the blocks:
𝑥0 𝑛 = {0,0,1,2,3,4}
𝑥1 𝑛 = {3,4,5,6,7,8}
𝑥2 𝑛 = {7,8,9,10,0,0}

Next we compute the 6 point circular convolution


𝑦0 𝑛 = 𝑥0 𝑛 ⊛ ℎ 𝑛 = {−3, −4,1,2,2,2}

𝑦1 𝑛 = 𝑥1 𝑛 ⊛ ℎ 𝑛 = {−4, −4,2,2,2,2}

𝑦2 𝑛 = 𝑥2 𝑛 ⊛ ℎ 𝑛 = {7,8,2,2,2, −9, −10}


𝑥 𝑛 ⇨

𝐿 − 1 𝑧𝑒𝑟𝑜𝑠
𝑁 − 𝐿 + 1 𝑑𝑎𝑡𝑎 ℎ 𝑛
𝑥0 𝑛 ⇨

𝑥1 𝑛 ⇨ 𝑁 𝑝𝑜𝑖𝑛𝑡 𝐶𝑖𝑟𝑐𝑢𝑙𝑎𝑟 𝐶𝑜𝑛𝑣𝑜𝑙𝑢𝑡𝑖𝑜𝑛

𝑥2 𝑛 ⇨
𝐿 − 1 𝑜𝑣𝑒𝑟𝑙𝑎𝑝𝑝𝑒𝑑 𝑠𝑎𝑚𝑝𝑙𝑒𝑠 Linear Convolution :
𝑦′ 0 = {0,0,1,2,2,2, −3, −4}
𝑦 ′ 1 = {3,4,2,2,2,2, −7, −8}
𝑦 ′ 2 = {7,8,2,2, −9, −10,0,0}
𝑦0 𝑛 ⇨

𝐿 − 1 𝑑𝑖𝑠𝑐𝑎𝑟𝑑𝑒𝑑 𝑠𝑎𝑚𝑝𝑙𝑒𝑠
𝑦1 𝑛 ⇨

𝐷𝑖𝑠𝑐𝑎𝑟𝑑𝑖𝑛𝑔 𝐿 − 1 𝑠𝑎𝑚𝑝𝑙𝑒𝑠 𝑎𝑛𝑑 𝑦2 𝑛 ⇨


𝑐𝑜𝑛𝑐𝑎𝑡𝑒𝑛𝑎𝑡𝑖𝑛𝑔 𝑡ℎ𝑒 𝑟𝑒𝑚𝑎𝑖𝑛𝑖𝑛𝑔
𝑁 − 𝐿 + 1 𝑠𝑎𝑚𝑝𝑙𝑒𝑠 𝑜𝑓 𝑒𝑎𝑐ℎ 𝑏𝑙𝑜𝑐𝑘

𝑦 𝑛
Overlap-Add Method

𝑥 𝑛 = 𝑥𝑏 (𝑛 − 𝑏𝑀)
𝑏=0

𝑥 𝑛 + 𝑏𝑀 , 0 ≤ 𝑛 ≤ 𝑀 − 1
𝑥𝑏 𝑛 =
0, 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
∞ ∞

System Output: 𝑦 𝑛 =ℎ 𝑛 ∗ 𝑥𝑏 𝑛 − 𝑏𝑀 = 𝑦𝑏 (𝑛 − 𝑏𝑀) 𝑦𝑏 𝑛 = ℎ 𝑛 ∗ 𝑥𝑏 (𝑛)


𝑏=0 𝑏=0

Length of 𝑦𝑏 𝑛 is 𝑀 + 𝐿 − 1
𝑁 =𝑀+𝐿−1 𝑦0 𝑛 = ℎ 𝑛 ∗ 𝑥0 𝑛 , 0 ≤ 𝑛 ≤ 𝑀 + 𝐿 − 2
𝑦1 𝑛 = ℎ 𝑛 ∗ 𝑥1 𝑛 , 𝑀 ≤ 𝑛 ≤ 2𝑀 + 𝐿 − 2
𝑦2 𝑛 = ℎ 𝑛 ∗ 𝑥2 𝑛 , 2𝑀 ≤ 𝑛 ≤ 3𝑀 + 𝐿 − 2 𝑎𝑛𝑑 𝑠𝑜 𝑜𝑛
𝑥 𝑛 𝑦 𝑛

∗ 𝒚𝟎 (𝒏) {1,2,2,2, −3, −4}

∗ 𝒚𝟏 (𝒏) {5,6,2,2, −7, −8}

𝒚𝟐 (𝒏) {9,10, −9, −10,0,0}



The linear convolution is of length M+L-1 which can be obtained by N=M+L-1 point circular convolution

Input Data Sequence , 𝒙(𝒏)

Each of the block is extended in length to N


by appending L-1 zeros
𝑳−𝟏
𝒙𝟎 (𝒏) zeros
𝑳−𝟏
𝒙𝟏 (𝒏) zeros

𝑀 𝑑𝑎𝑡𝑎 𝑳−𝟏
…. 𝒙𝒃 (𝒏) zeros
𝑀 𝑑𝑎𝑡𝑎 ……..

𝑀 𝑑𝑎𝑡𝑎
Overlap:
𝑀+𝐿−2 − 𝑀−1 = 𝐿 − 1 𝑠𝑎𝑚𝑝𝑙𝑒𝑠 𝑏𝑒𝑡𝑤𝑒𝑒𝑛 𝑦0 𝑛 𝑎𝑛𝑑 𝑦1 (𝑛)
2𝑀 + 𝐿 − 2 − 2𝑀 − 1 = 𝐿 − 1 𝑠𝑎𝑚𝑝𝑙𝑒𝑠 𝑏𝑒𝑡𝑤𝑒𝑒𝑛 𝑦1 𝑛 𝑎𝑛𝑑 𝑦2 (𝑛)
and so on

Overlapped 𝐿 − 1 samples of each are added to the first 𝐿 − 1 samples of the succeeding block

𝑳−𝟏
𝒚𝟎 (𝒏) data

𝐿 − 1 𝑎𝑑𝑑𝑒𝑑 𝑳−𝟏
𝒚𝟏 (𝒏)
𝑳−𝟏
data data

𝑳−𝟏 𝑳−𝟏
𝐿 − 1 𝑎𝑑𝑑𝑒𝑑 data
𝒚𝟐 (𝒏) data

𝐿 − 1 𝑎𝑑𝑑𝑒𝑑 𝑳−𝟏 𝑳−𝟏


……..
data 𝒚𝟑 (𝒏) data

Output Sequence,𝒚(𝒏)
# Let 𝑥 𝑛 = 𝑛 + 1 , 0 ≤ 𝑛 ≤ 9 and ℎ 𝑛 = 1,0,1 . Compute the linear convolution 𝑦 𝑛 = 𝑥 𝑛 ∗ ℎ(𝑛)
using the overlap add method.

𝑥 𝑛 ⇨
𝑡𝑜𝑡𝑎𝑙 𝑙𝑒𝑛𝑔𝑡ℎ 𝑜𝑓 𝑡ℎ𝑒 𝑖𝑛𝑝𝑢𝑡 𝑠𝑒𝑞𝑢𝑒𝑛𝑐𝑒 10
Number of blocks required= = =3
𝑙𝑒𝑛𝑔𝑡ℎ 𝑜𝑓 𝑒𝑎𝑐ℎ 𝑑𝑎𝑡𝑎 𝑏𝑙𝑜𝑐𝑘 4
𝑥0 𝑛 ⇨
𝑁 𝑝𝑜𝑖𝑛𝑡 𝐶𝑖𝑟𝑐𝑢𝑙𝑎𝑟 𝐶𝑜𝑛𝑣𝑜𝑙𝑢𝑡𝑖𝑜𝑛
𝑥1 𝑛 ⇨

𝑥2 𝑛 ⇨
ℎ 𝑛

𝑦0 𝑛 ⇨

𝑦1 𝑛 ⇨ 𝐿 − 1 𝑎𝑑𝑑𝑒𝑑
𝐿 − 1 𝑎𝑑𝑑𝑒𝑑
𝑦2 𝑛 ⇨

𝑦 𝑛 ⇨
Multiplication Property
𝑁 𝑁
𝐼𝑓 𝑥1 𝑛 𝑋1 𝑘 and 𝑥2 𝑛 𝑋2 𝑘 , 𝑡ℎ𝑒𝑛
𝑁 1
𝑥1 𝑛 𝑥1 𝑛 [𝑋1 𝑘 ⊛ 𝑋2 𝑘 ]
𝑁

Parseval’s Relation
𝑁−1 𝑁−1
𝑁 𝑁 1
𝐼𝑓 𝑥 𝑛 𝑋 𝑘 and 𝑦 𝑛 𝑌 𝑘 , 𝑡ℎ𝑒𝑛 𝑥 𝑛 𝑦∗ 𝑛 = 𝑋(𝑘)𝑌 ∗ (𝑘)
𝑁
𝑛=0 𝑘=0


𝑁−1 𝑁−1 𝑁−1 𝑁−1 𝑁−1
1 1
𝑥 𝑛 𝑦∗ 𝑛 = 𝑥 𝑛 𝑌(𝑘)𝑊𝑁 𝑘𝑛 = 𝑥 𝑛 𝑌 ∗ (𝑘)𝑊𝑁 −𝑘𝑛
𝑁 𝑁
𝑛=0 𝑛=0 𝑘=0 𝑛=0 𝑘=0

𝑁−1 𝑁−1 𝑁−1


1 1
= 𝑌 ∗ (𝑘) 𝑥(𝑛 𝑘 𝑊𝑁 −𝑘𝑛 = 𝑋(𝑘)𝑌 ∗ (𝑘)
𝑁 𝑁
𝑘=0 𝑛=0 𝑘=0
𝑊ℎ𝑒𝑛 𝑦(𝑛) = 𝑥(𝑛)

𝑁−1 𝑁−1
2
1
|𝑥(𝑛)| = |𝑋(𝑘)|2
𝑁
𝑛=0 𝑘=0
Conjugate and Conjugate Symmetry Property
𝑁
𝐼𝑓 𝑥 𝑛 𝑋 𝑘 𝑡ℎ𝑒𝑛
𝑁

𝑥 𝑛 𝑋 ∗ < −𝑘 >𝑁 = 𝑋 ∗ 𝑁 − 𝑘 𝑎𝑛𝑑
𝑁
∗ ∗
𝑥 𝑁 − 𝑛 = 𝑥 < −𝑛 >𝑁 𝑋∗ 𝑘
Proof: ∗
𝑁−1 𝑁−1
−𝑗2𝜋𝑘𝑛 2𝜋
−𝑗 (−𝑘)𝑛
𝐷𝐹𝑇[𝑥 ∗ 𝑛 ]= 𝑥∗ 𝑛 𝑒 𝑁 = 𝑥 𝑛 𝑒 𝑁
𝑛=0 𝑛=0
𝑁
∗ ∗
𝑥 𝑛 𝑋(< −𝑘 >𝑁 = 𝑋 ∗ < −𝑘 >𝑁 = 𝑋 ∗ 𝑁 − 𝑘

𝐼𝐷𝐹𝑇 𝑋 ∗ 𝑘 ∗
𝑁−1 𝑁−1
1 𝑗2𝜋𝑘𝑛 1 2𝜋
+𝑗 𝑁 (−𝑘)𝑛
= 𝑋∗ 𝑘 𝑒 𝑁 = 𝑋 𝑘 𝑒 = 𝑥(< −𝑛 >𝑁 ) ∗
𝑁 𝑁
𝑛=0 𝑛=0
= 𝑥 ∗ < −𝑛 >𝑁
Case I: x(n) is real
𝑁
Since 𝑥∗ 𝑛 𝑋 ∗ < −𝑘 >𝑁
Hence
𝑋 𝑘 = 𝑋 ∗ < −𝑘 >𝑁 = 𝑋 ∗ 𝑁 − 𝑘
𝑋 ∗ 𝑘 = 𝑋 < −𝑘 >𝑁 = 𝑋(𝑁 − 𝑘) ⇨ Conjugate Symmetric

Case II: x(n) is real and circularly even


𝑥 𝑛 = 𝑥 ∗ 𝑛 = 𝑥 < −𝑛 >𝑁
Hence
𝑋 𝑘 = 𝑋 ∗ < −𝑘 >𝑁 = 𝑋 < −𝑘 >𝑁
i.e.
𝑋 𝑘 = 𝑋 ∗ 𝑁 − 𝑘 = 𝑋(𝑁 − 𝑘) ⇨ Real & Circularly Even
Case III: x(n) is real and circularly odd
𝑥 𝑛 = 𝑥 ∗ 𝑛 = −𝑥 < −𝑛 >𝑁
Hence
𝑋 𝑘 = 𝑋 ∗ < −𝑘 >𝑁 = −𝑋 < −𝑘 >𝑁
i.e.
𝑋 𝑘 = 𝑋 ∗ 𝑁 − 𝑘 = −𝑋(𝑁 − 𝑘) ⇨ Imaginary & Circularly Odd

Case IV:
𝑁
𝐶𝑜𝑛𝑠𝑖𝑑𝑒𝑟 𝑥 𝑛 𝑋 𝑘
1
𝑥𝑐𝑒 𝑛 = 𝑥 𝑛 + 𝑥 < −𝑛 >𝑁
2
1 1
𝐷𝐹𝑇 𝑥𝑐𝑒 𝑛 = 𝐷𝐹𝑇 𝑥 𝑛 + 𝑥 < −𝑛 >𝑁 = 𝑋 𝑘 + 𝑋∗ 𝑘 = 𝑋𝑅 𝑘
2 2
1
𝑥𝑐𝑜 𝑛 = 𝑥 𝑛 − 𝑥 < −𝑛 >𝑁
2
1 1
𝐷𝐹𝑇 𝑥𝑐𝑜 𝑛 = 𝐷𝐹𝑇 𝑥 𝑛 − 𝑥 < −𝑛 >𝑁 = 𝑋 𝑘 − 𝑋 ∗ 𝑘 = 𝑗𝑋𝐼 𝑘
2 2

You might also like