Circular Shift Operator: Delaying and Circularly Shifting Signals, Study notes of Computer Security

An introduction to the circular shift operator in the context of digital signal processing (dsp). The concept of time shift or delay is crucial to dsp, and the circular shift operator allows us to delay a signal by a certain number of units while wrapping around the end. The concept using examples and provides mathematical equations for calculating circular shifts. It also discusses the use of circular shift matrices and their relationship to permutation matrices.

Typology: Study notes

2011/2012

Uploaded on 10/19/2012

lumidee
lumidee 🇺🇸

4.4

(48)

363 documents

1 / 4

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Connexions module: m12039 1
Circular Shift Operator
Richard Baraniuk
This work is produced by The Connexions Project and licensed under the
Creative Commons Attribution License
Abstract
Introduction to the circular shift operator.
The concept of a
time shift
or
delay
is crucial to DSP.
Example 1
y[n] = x[n2]
, which means "delay
x
by 2 time units" (Figure 1).
Figure 1:
N= 8
.
There are now 2 issues:
What to put in the rst two positions in the graph of
y
(Figure 1)?
What to do with values that slide o the end of
y
(Figure 1)?
A solution: stu the values that slide o the
end
into the
beginning
(Figure 2).
Figure 2
Version 1.2: Jun 15, 2004 11:59 am GMT-5
http://creativecommons.org/licenses/by/1.0
http://cnx.org/content/m12039/1.2/
pf3
pf4

Partial preview of the text

Download Circular Shift Operator: Delaying and Circularly Shifting Signals and more Study notes Computer Security in PDF only on Docsity!

Circular Shift Operator

Richard Baraniuk

This work is produced by The Connexions Project and licensed under the

Creative Commons Attribution License †

Abstract

Introduction to the circular shift operator.

The concept of a time shift or delay is crucial to DSP.

Example 1

y [n] = x [n − 2], which means "delay x by 2 time units" (Figure 1).

Figure 1: N = 8.

There are now 2 issues:

  • What to put in the rst two positions in the graph of y (Figure 1)?
  • What to do with values that slide o the end of y (Figure 1)?

A solution: stu the values that slide o the end into the beginning (Figure 2).

Figure 2

∗ Version 1.2: Jun 15, 2004 11:59 am GMT- † http://creativecommons.org/licenses/by/1.

1 Notes

This is equivalent to putting x on a wheel/circle with N ticks and spinning it 2 ticks. x = (1, 1 , 1 , 1 , 0 , 0 , 0 , 0)

T

(Figure 3).

Figure 3: N = 8.

To delay x by 2 units, spin the wheel 2 ticks counter-clockwise and read o y. y = (0, 0 , 1 , 1 , 1 , 1 , 0 , 0)

T

(Figure 4).

Figure 4

So, we call y a circular shift of x.

This is also equivalent to viewing x as one period of an innite-length periodic vector xp.

x =

xp =

We can then shift xp 2 units and read o y

y =

i.e.: we can view a C N signal as one period of a periodic signal.

Finally we can write y in terms of x using modulo arithmetic.

y [n] = x [(n − 2) modN ] (1)

for 0 ≤ n ≤ N − 1.

3.1 Notes

  1. Cm is a "permutation" matrix.
  2. Columns of Cm are shifted δ basis.

Indeed...

Cm =

δ[m] mod N

δ[m+1] mod N

... δ[m+N −1] mod N

Example 4

C 3 for N = 5. Apply to x = (1, 2 , 3 , 4 , 5)

T (Figure 6).

Figure 6

4 Aside on Circular Shifts

Cmx circularly shifts the column vectorx down m units.

Example 5

C 1

x

T Cm

T circularly shifts the row vectorx

T right m units.

Example 6

C 1

T