ETE 204 Digital Electronics FlipFlops and Registers Lecture

  • Slides: 36
Download presentation
ETE 204 - Digital Electronics Flip-Flops and Registers [Lecture: 13] Instructor: Sajib Roy Lecturer,

ETE 204 - Digital Electronics Flip-Flops and Registers [Lecture: 13] Instructor: Sajib Roy Lecturer, ETE, ULAB

Flip-Flops (continued) Summer 2012 ETE 204 - Digital Electronics 2

Flip-Flops (continued) Summer 2012 ETE 204 - Digital Electronics 2

SR Flip-Flop ● ● The SR Flip-Flop has three inputs - Clock (Ck) ---

SR Flip-Flop ● ● The SR Flip-Flop has three inputs - Clock (Ck) --- denoted by the small arrowhead - Set (S) and Reset (R) Similar to an SR Latch - S = 1 sets the flip-flop (Q+ = 1) - R = 1 resets the flip-flop (Q+ = 0) Like the D Flip-Flop, the Q output of an SR Flip-Flop only changes in response to an active clock edge. ● Summer 2012 - Positive edge-triggered - Negative edge-triggered ETE 204 - Digital Electronics 3

SR Flip-Flop S R Q 0 0 1 1 1 0 0 1 1

SR Flip-Flop S R Q 0 0 1 1 1 0 0 1 1 0 1 0 1 1 Q+ 0 1 0 0 1 1 not allowed } } } Q+ = Q store Q+ = 0 reset positive edge-triggered SR Flip-Flop Q+ = 1 set State change occurs after active Clock edge Summer 2012 ETE 204 - Digital Electronics 4

SR Flip-Flop (master-slave) SR Latches Enabled on opposite levels of the clock Summer 2012

SR Flip-Flop (master-slave) SR Latches Enabled on opposite levels of the clock Summer 2012 ETE 204 - Digital Electronics 5

SR Flip-Flop: Timing Diagram Summer 2012 ETE 204 - Digital Electronics 6

SR Flip-Flop: Timing Diagram Summer 2012 ETE 204 - Digital Electronics 6

JK Flip-Flop ● ● The JK Flip-Flop has three inputs - Clock (Ck) ---

JK Flip-Flop ● ● The JK Flip-Flop has three inputs - Clock (Ck) --- denoted by the small arrowhead - J and K Similar to the SR Flip-Flop - J corresponds to S: – K corresponds to R: J = 1 → Q+ = 1 K = 1 → Q+ = 0 Different from the SR Flip-Flop in that the input combination J = 1, K = 1 is allowed. ● Summer 2012 J = K = 1 causes the Q output to toggle after an active clock edge. ETE 204 - Digital Electronics 7

JK Flip-Flop } } Summer 2012 Q+ = Q store Q+ = 0 reset

JK Flip-Flop } } Summer 2012 Q+ = Q store Q+ = 0 reset Q+ = 1 set Characteristic Equation: Q+ = Q' Q+ = J. Q' + K'. Q toggle ETE 204 - Digital Electronics 8

JK Flip-Flop (master-slave) SR Latches Enabled on opposite levels of the clock Summer 2012

JK Flip-Flop (master-slave) SR Latches Enabled on opposite levels of the clock Summer 2012 ETE 204 - Digital Electronics 9

JK Flip-Flop: Timing Diagram Summer 2012 ETE 204 - Digital Electronics 10

JK Flip-Flop: Timing Diagram Summer 2012 ETE 204 - Digital Electronics 10

T Flip-Flop ● ● ● The Toggle (T) Flip-Flop has two inputs - Clock

T Flip-Flop ● ● ● The Toggle (T) Flip-Flop has two inputs - Clock (Ck) --- denoted by the small arrowhead - Toggle (T) The T input controls the state change - when T = 0, the state does not change (Q+ = Q) - when T = 1, the state changes following an active clock edge (Q + = Q') T Flip-Flops are often used in the design of counters. Summer 2012 ETE 204 - Digital Electronics 11

T Flip-Flop Characteristic Equation: Q+ = T. Q' + T'. Q = T xor

T Flip-Flop Characteristic Equation: Q+ = T. Q' + T'. Q = T xor Q Summer 2012 ETE 204 - Digital Electronics 12

T Flip-Flop: Timing Diagram Summer 2012 ETE 204 - Digital Electronics 13

T Flip-Flop: Timing Diagram Summer 2012 ETE 204 - Digital Electronics 13

Building a T Flip-Flop Summer 2012 ETE 204 - Digital Electronics 14

Building a T Flip-Flop Summer 2012 ETE 204 - Digital Electronics 14

Asynchronous Control Signals Summer 2012 ETE 204 - Digital Electronics 15

Asynchronous Control Signals Summer 2012 ETE 204 - Digital Electronics 15

Asynchronous Control Signals: Timing Diagram Summer 2012 ETE 204 - Digital Electronics 16

Asynchronous Control Signals: Timing Diagram Summer 2012 ETE 204 - Digital Electronics 16

D FF with Clock Enable Summer 2012 ETE 204 - Digital Electronics 17

D FF with Clock Enable Summer 2012 ETE 204 - Digital Electronics 17

Registers Summer 2012 ETE 204 - Digital Electronics 18

Registers Summer 2012 ETE 204 - Digital Electronics 18

Registers Several D flip-flops may be grouped together with a common clock to form

Registers Several D flip-flops may be grouped together with a common clock to form a register. Because each flip-flop can store one bit of information, a register with n D flip-flops can store n bits of information. A load signal can be ANDed with the clock to enable and disable loading the registers. A better approach is to use registers with clock enables if they are available. Summer 2012 ETE 204 - Digital Electronics 19

Register: 4 bits Summer 2012 ETE 204 - Digital Electronics 20

Register: 4 bits Summer 2012 ETE 204 - Digital Electronics 20

Data Transfer between Registers Data transfer between registers is a common operation in computer

Data Transfer between Registers Data transfer between registers is a common operation in computer (i. e. digital) systems. ● Multiple registers can be interconnected using tri-state buffers. ● Data can be transferred between two registers by enabling the proper tri-state buffer. ● Summer 2012 ETE 204 - Digital Electronics 21

Data Transfer between Registers Summer 2012 ETE 204 - Digital Electronics 22

Data Transfer between Registers Summer 2012 ETE 204 - Digital Electronics 22

Register with Tri-state Output Summer 2012 ETE 204 - Digital Electronics 23

Register with Tri-state Output Summer 2012 ETE 204 - Digital Electronics 23

Data Transfer using Tri-state Bus Summer 2012 ETE 204 - Digital Electronics 24

Data Transfer using Tri-state Bus Summer 2012 ETE 204 - Digital Electronics 24

Shift Register A shift register is a register in which binary data can be

Shift Register A shift register is a register in which binary data can be stored and shifted either left or right. The data is shifted according to the applied shift signal; often there is a left shift signal and a right shift signal. A shift register must be constructed using flip-flops (i. e. edgetriggered devices); it cannot be constructed using latches or gated-latches (i. e. level-sensitive devices). Summer 2012 ETE 204 - Digital Electronics 25

Shift Register: 4 bits Summer 2012 ETE 204 - Digital Electronics 26

Shift Register: 4 bits Summer 2012 ETE 204 - Digital Electronics 26

Shift Register (4 bits): Timing Diagram Summer 2012 ETE 204 - Digital Electronics 27

Shift Register (4 bits): Timing Diagram Summer 2012 ETE 204 - Digital Electronics 27

8 -bit SI SO Shift Register Summer 2012 ETE 204 - Digital Electronics 28

8 -bit SI SO Shift Register Summer 2012 ETE 204 - Digital Electronics 28

4 -bit PIPO Shift Register Summer 2012 ETE 204 - Digital Electronics 29

4 -bit PIPO Shift Register Summer 2012 ETE 204 - Digital Electronics 29

4 -bit PI PO Shift Register: Operation Summer 2012 ETE 204 - Digital Electronics

4 -bit PI PO Shift Register: Operation Summer 2012 ETE 204 - Digital Electronics 30

Parallel Adder with Accumulator Summer 2012 ETE 204 - Digital Electronics 31

Parallel Adder with Accumulator Summer 2012 ETE 204 - Digital Electronics 31

Parallel Adder with Accumulator In computer circuits, it is frequently desirable to store one

Parallel Adder with Accumulator In computer circuits, it is frequently desirable to store one number in a register (called an accumulator) and add a second number to it, leaving the result stored in the register. Summer 2012 ETE 204 - Digital Electronics 32

n-bit Parallel Adder with Accumulator Summer 2012 ETE 204 - Digital Electronics 33

n-bit Parallel Adder with Accumulator Summer 2012 ETE 204 - Digital Electronics 33

Loading the Accumulator Before addition in the previous circuit can take place, the accumulator

Loading the Accumulator Before addition in the previous circuit can take place, the accumulator must be loaded with X. This can be accomplished in several ways. The easiest way is to first clear the accumulator using the asynchronous clear inputs on the flip-flops, and then put the X data on the Y inputs to the adder and add the accumulator in the normal way. Alternatively, we could add multiplexers at the accumulator inputs so that we could select either the Y input data or the adder output to load into the accumulator. Summer 2012 ETE 204 - Digital Electronics 34

Adder Cell with Multiplexer Summer 2012 ETE 204 - Digital Electronics 35

Adder Cell with Multiplexer Summer 2012 ETE 204 - Digital Electronics 35

Questions? Summer 2012 ETE 204 - Digital Electronics 36

Questions? Summer 2012 ETE 204 - Digital Electronics 36