EKT 221 : Digital 2 RTL : Bidirectional Shift Register

EKT 221 : Digital 2
RTL : Bidirectional Shift Register
Today’s Outline
 Bidirectional
Shift Registers
Bidirectional Shift Register
Unidirectional Register

◦
Capable of shifting in only one direction (like what we have
discussed in last lecture)
1. Shift on clock pulse
2. Shift & Load
3. Shift, Load & Hold
* shift occurs in one direction only
Bidirectional Register

◦
A register that can shift in both directions
1. Shift Left (sl)
2. Shift Right (sr)
And at the same time is capable of HOLD and LOAD
Bidirectional Shift Register

A0
A1
A2
A3
By placing a 4-input multiplexer in front of each D
flip-flop in a shift register, we can implement a
circuit with shift right, shift left, parallel load, hold.
0
1
2
3
4 to 1
mux
S0 S1

D
S1
S0
Register Operation
0
0
1
1
0
1
0
1
No change (hold)
Shift Left
Shift Right
Parallel Load
Each stage consists of a D-FF and 4:1 multiplexer
Bidirectional Shift Register
How do we represent his in RTL??
S1
S0
Register Operation
0
0
1
1
0
1
0
1
No change (Hold)
Shift Left
Shift Right
Parallel Load
(No Transfer occurs)
S1S0 : Q
sl Q
S1S0 : Q
S1S0 : Q
sr Q
D
Bidirectional
Shift Register
Let’s analyze the one
stage diagram of a
Bidirectional Shift
Register with parallel
load.
S1
S0
Register
Operation
0
0
No change (Hold)
0
1
Shift Left
1
0
Shift Right
1
1
Parallel Load
4 Bits Bidirectional Shift Register
with Parallel Load
Serial outputs:
(Right Shift)
(Left Shift)
Bidirectional Shift Register

Shift registers can also be designed to
shift more than a single bit position right
or left

Shift register can be designed to shift a
variable number of bit positions specified
by a variable called a shift amount.
Thank You