Section 6.2  Shift Registers    263
Q  is added together with inputs  x  and  y  to produce the sum bit in output  S.  The next 
state of  Q  is equal to the output carry. Note that the state table entries are identical 
to the entries in a full‐adder truth table, except that the input carry is now the present 
state of  Q  and the output carry is now the next state of  Q.  
If a  D  flip‐flop is used for  Q the circuit reduces to the one shown in  Fig.   6.5   . If a  JK  flip‐
flop is used for  Q it is necessary to determine the values of inputs  J  and  K  by referring to 
the excitation table (Table 5.12). This is done in the last two columns of  Table   6.2   . The two 
flip‐flop input equations and the output equation can be simplified by means of maps to 
J
Q
xy
K
Q
=xy′= (+y)′
=x{y{Q     
The circuit diagram is shown in  Fig.   6.6   . The circuit consists of three gates and a  JK  
flip‐flop. The two shift registers are included in the diagram to show the complete serial 
adder. Note that output  S  is a function not only of  x  and  y but also of the present state 
of  Q.  The next state of  Q  is a function of the present state of  Q  and of the values of  x  
and  y  that come out of the serial outputs of the shift registers.  
Universal Shift Register 
If the flip‐flop outputs of a shift register are accessible, then information entered serially 
by shifting can be taken out in parallel from the outputs of the flip‐flops. If a parallel 
load capability is added to a shift register, then data entered in parallel can be taken out 
in serial fashion by shifting the data stored in the register. 
Some shift registers provide the necessary input and output terminals for parallel 
transfer. They may also have both shift‐right and shift‐left capabilities. The most general 
shift register has the following capabilities: 
 
1.   A clear control to clear the register to 0.  
 
2.   A clock input to synchronize the operations.  
Table 6.2 
State Table for Serial Adder 
Present State 
Inputs 
Next State 
Output 
Flip‐Flop Inputs 
 
   y  
 
 
J
Q
K
Q
 0 
 1 
 0 
 1 
 0 
 1 
 0 
 1 
How to convert pdf to powerpoint slides - C# Create PDF from PowerPoint Library to convert pptx, ppt to PDF in C#.net, ASP.NET MVC, WinForms, WPF
Online C# Tutorial for Creating PDF from Microsoft PowerPoint Presentation
changing pdf to powerpoint; how to change pdf to ppt on
How to convert pdf to powerpoint slides - VB.NET Create PDF from PowerPoint Library to convert pptx, ppt to PDF in vb.net, ASP.NET MVC, WinForms, WPF
VB.NET Tutorial for Export PDF file from Microsoft Office PowerPoint
converting pdf to ppt; how to convert pdf slides to powerpoint
264    Chapter 6  Registers and Counters
 
3.   A shift‐right control to enable the shift‐right operation and the serial input and 
output lines associated with the shift right.  
 
4.   A shift‐left control to enable the shift‐left operation and the serial input and output 
lines associated with the shift left.  
 
5.   A parallel‐load control to enable a parallel transfer and the n input lines associ-
ated with the parallel transfer.  
 
6.   n parallel output lines.  
 
7.   A control state that leaves the information in the register unchanged in response 
to the clock. Other shift registers may have only some of the preceding functions, 
with at least one shift operation.   
A register capable of shifting in one direction only is a  unidirectional  shift register. 
One that can shift in both directions is a  bidirectional  shift register. If the register has 
both shifts and parallel‐load capabilities, it is referred to as a  universal shift register.  
The block diagram symbol and the circuit diagram of a four‐bit universal shift register 
that has all the capabilities just listed are shown in  Fig.   6.7   . The circuit consists of four  D  
flip‐flops and four multiplexers. The four multiplexers have two common selection inputs 
s
1
and    s
0
.    Input 0 in each multiplexer is selected when    s
1
s
0
= 00,    input 1 is selected when 
s
1
s
0
= 01,    and similarly for the other two inputs. The selection inputs control the mode 
of operation of the register according to the function entries in  Table   6.3   . When    s
1
s
0
= 00,    
the present value of the register is applied to the  D  inputs of the flip‐flops. This condition 
forms a path from the output of each flip‐flop into the input of the same flip‐flop, so that 
the output recirculates to the input in this mode of operation. The next clock edge trans-
fers into each flip‐flop the binary value it held previously, and no change of state occurs. 
Shift register A
Shift register B
Clear
SI
S
SI
x
y
Serial
input
Shift
control
CLK
J
C
K
SO
SO
FIGURE 6.6 
Second form of serial adder       
C# PowerPoint - How to Process PowerPoint
Microsoft PowerPoint Document Processing Control in Visual C#.NET of RasterEdge .NET Imaging SDK is a reliable and professional PowerPoint slides/pages editing
pdf into powerpoint; picture from pdf to powerpoint
VB.NET PowerPoint: Process & Manipulate PPT (.pptx) Slide(s)
add image to slide, extract slides and merge library SDK, this VB.NET PowerPoint processing control powerful & profession imaging controls, PDF document, image
how to add pdf to powerpoint presentation; change pdf to ppt
Section 6.2  Shift Registers    265
C
D
Q
Q
Q
Q
4× 1
MUX
A
3
C
D
A
2
C
D
A
1
C
D
A
0
3 2 1 1 0
4× 1
MUX
3 2 2 1 1 0
4× 1
MUX
3 2 1 1 0
4× 1
MUX
3 2 2 1 0
CLK
I
3
I
2
I
1
I
0
s
0
s
1
Serial
input for
shift-right
Serial
input for
shift-left
Parallel inputs
(b)
Parallel outputs
Shift_Register
4
4
A_par
I_par
MSB_in
s1
s0
CLK
Clear_b
Clear_b
LSB_in
(a)
y
y
y
y
FIGURE 6.7 
Four‐bit universal shift register       
VB.NET PowerPoint: Sort and Reorder PowerPoint Slides by Using VB.
clip art or screenshot to PowerPoint document slide large amount of robust PPT slides/pages editing powerful & profession imaging controls, PDF document, image
change pdf to powerpoint online; how to convert pdf into powerpoint on
VB.NET PowerPoint: Use PowerPoint SDK to Create, Load and Save PPT
Besides, users also can get the precise PowerPoint slides count as soon as the PowerPoint document has been loaded by using the page number getting method.
pdf to powerpoint slide; and paste pdf to powerpoint
266    Chapter 6  Registers and Counters
When    s
1
s
0
= 01,    terminal 1 of the multiplexer inputs has a path to the  D  inputs of the 
flip‐flops. This causes a shift‐right operation, with the serial input transferred into flip‐flop 
A
3
.    When    s
1
s
0
= 10,    a shift‐left operation results, with the other serial input going into 
flip‐flop    A
0
.    Finally, when    s
1
s
0
= 11,    the binary information on the parallel input lines is 
transferred into the register simultaneously during the next clock edge. Note that data 
enters MSB_in for a shift‐right operation and enters LSB_in for a shift‐left operation. 
Clear_b  is an active‐low signal that clears all of the flip‐flops. 
Shift registers are often used to interface digital systems situated remotely from each 
other. For example, suppose it is necessary to transmit an  n ‐bit quantity between two 
points. If the distance is far, it will be expensive to use  n  lines to transmit the  n  bits in 
parallel. It is more economical to use a single line and transmit the information serially, 
one bit at a time. The transmitter accepts the  n ‐bit data in parallel into a shift register 
and then transmits the data serially along the common line. The receiver accepts the 
data serially into a shift register. When all  n  bits are received, they can be taken from 
the outputs of the register in parallel. Thus, the transmitter performs a parallel‐to‐serial 
conversion of data and the receiver does a serial‐to‐parallel conversion.     
6.3    RIPPLE COUNTERS 
A register that goes through a prescribed sequence of states upon the application of input 
pulses is called a  counter . The input pulses may be clock pulses, or they may originate 
from some external source and may occur at a fixed interval of time or at random. The 
sequence of states may follow the binary number sequence or any other sequence of 
states. A counter that follows the binary number sequence is called a  binary counter . An 
n ‐bit binary counter consists of  n  flip‐flops and can count in binary from 0 through    2
n
- 1.    
Counters are available in two categories: ripple counters and synchronous counters. 
In a ripple counter, a flip‐flop output transition serves as a source for triggering other 
flip‐flops. In other words, the  C  input of some or all flip‐flops are triggered, not by the 
common clock pulses, but rather by the transition that occurs in other flip‐flop outputs. 
In a synchronous counter, the  C  inputs of all flip‐flops receive the common clock. 
Synchronous counters are presented in the next two sections. Here, we present the 
binary and BCD ripple counters and explain their operation. 
Table 6.3 
Function Table for the Register of  Fig.   6.7    
Mode Control   
s
1
s
0
Register Operation 
No change 
Shift right 
Shift left 
Parallel load 
VB.NET PowerPoint: Extract & Collect PPT Slide(s) Using VB Sample
want to combine these extracted slides into a please read this VB.NET PowerPoint slide processing powerful & profession imaging controls, PDF document, image
convert pdf to powerpoint presentation; how to convert pdf to ppt for
VB.NET PowerPoint: Merge and Split PowerPoint Document(s) with PPT
of the split PPT document will contain slides/pages 1-4 code in VB.NET to finish PowerPoint document splitting If you want to see more PDF processing functions
convert pdf to powerpoint; change pdf to powerpoint on
Section 6.3  Ripple Counters    267
Binary Ripple Counter 
A binary ripple counter consists of a series connection of complementing flip‐flops, with 
the output of each flip‐flop connected to the  C  input of the next higher order flip‐flop. 
The flip‐flop holding the least significant bit receives the incoming count pulses. A com-
plementing flip‐flop can be obtained from a  JK  flip‐flop with the  J  and  K  inputs tied 
together or from a  T  flip‐flop. A third possibility is to use a  D  flip‐flop with the  complement 
output connected to the  D  input. In this way, the  D  input is always the complement of 
the present state, and the next clock pulse will cause the flip‐flop to complement. The 
logic diagram of two 4‐bit binary ripple counters is shown in  Fig.   6.8   . The counter is con-
structed with complementing flip‐flops of the  T  type in part (a) and  D  type in part (b). 
The output of each flip‐flop is connected to the  C  input of the next flip‐flop in sequence. 
The flip‐flop holding the least significant bit receives the incoming count pulses. The  T  
inputs of all the flip‐flops in (a) are connected to a permanent logic 1, making each flip‐
flop complement if the signal in its  C  input goes through a negative transition. The bub-
ble in front of the dynamic indicator symbol next to  C  indicates that the flip‐flops respond 
to the negative‐edge transition of the input. The negative transition occurs when the 
output of the previous flip‐flop to which  C  is connected goes from 1 to 0. 
To understand the operation of the four‐bit binary ripple counter, refer to the first 
nine binary numbers listed in  Table   6.4   . The count starts with binary 0 and increments 
by 1 with each count pulse input. After the count of 15, the counter goes back to 0 to 
repeat the count. The least significant bit,    A
0
,    is complemented with each count pulse 
input. Every time that    A
0
goes from 1 to 0, it complements    A
1
.    Every time that    A
1
goes 
from 1 to 0, it complements    A
2
.    Every time that    A
2
goes from 1 to 0, it complements    A
3
,    
and so on for any other higher order bits of a ripple counter. For example, consider the 
transition from count 0011 to 0100.    A
0
is complemented with the count pulse. Since    A
0
goes from 1 to 0, it triggers    A
1
and complements it. As a result,    A
1
goes from 1 to 0, which 
in turn complements    A
2
,    changing it from 0 to 1.    A
2
does not trigger    A
3
,    because    A
2
produces a positive transition and the flip‐flop responds only to negative transitions. 
Thus, the count from 0011 to 0100 is achieved by changing the bits one at a time, so the 
Table 6.4 
Binary Count Sequence 
A    
3
A  
2
A    
1
A  
0
VB.NET PowerPoint: Complete PowerPoint Document Conversion in VB.
VB.NET PowerPoint Conversion Control to render and convert target PowerPoint document to various image or document formats, such as PDF, BMP, TIFF
table from pdf to powerpoint; embed pdf into powerpoint
VB.NET PowerPoint: Convert & Render PPT into PDF Document
Using this VB.NET PowerPoint to PDF converting demo code below, you can easily convert all slides of source PowerPoint document into a multi-page PDF file.
create powerpoint from pdf; how to convert pdf slides to powerpoint presentation
268    Chapter 6  Registers and Counters
T
R
C
A
0
T
R
C
A
1
T
R
C
A
2
T
R
C
A
3
Reset
Logic 1
Count
D
R
C
A
0
D
R
C
A
1
D
R
C
A
2
D
R
C
A
3
Reset
Count
(a) With T flip-flops
(b) With D flip-flops
FIGURE 6.8 
Four‐bit binary ripple counter       
VB.NET PowerPoint: Add Image to PowerPoint Document Slide/Page
insert or delete any certain PowerPoint slide without methods to reorder current PPT slides in both powerful & profession imaging controls, PDF document, tiff
converter pdf to powerpoint; pdf picture to powerpoint
C# PowerPoint: C# Guide to Add, Insert and Delete PPT Slide(s)
file and it includes all slides and properties to view detailed guide for each PowerPoint slide processing & profession imaging controls, PDF document, tiff
convert pdf into powerpoint; add pdf to powerpoint presentation
Section 6.3  Ripple Counters    269
count goes from 0011 to 0010, then to 0000, and finally to 0100. The flip‐flops change 
one at a time in succession, and the signal propagates through the counter in a ripple 
fashion from one stage to the next. 
A binary counter with a reverse count is called a  binary countdown counter . In a 
countdown counter, the binary count is decremented by 1 with every input count pulse. 
The count of a four‐bit countdown counter starts from binary 15 and continues to binary 
counts 14, 13, 12, . . . , 0 and then back to 15. A list of the count sequence of a binary 
countdown counter shows that the least significant bit is complemented with every count 
pulse. Any other bit in the sequence is complemented if its previous least significant bit 
goes from 0 to 1. Therefore, the diagram of a binary countdown counter looks the same 
as the binary ripple counter in  Fig.   6.8   , provided that all flip‐flops trigger on the positive 
edge of the clock. (The bubble in the  C  inputs must be absent.) If negative‐edge‐triggered 
flip‐flops are used, then the  C  input of each flip‐flop must be connected to the comple-
mented output of the previous flip‐flop. Then, when the true output goes from 0 to 1, the 
complement will go from 1 to 0 and complement the next flip‐flop as required. 
BCD Ripple Counter 
A decimal counter follows a sequence of 10 states and returns to 0 after the count of 9. 
Such a counter must have at least four flip‐flops to represent each decimal digit, since 
a decimal digit is represented by a binary code with at least four bits. The sequence of 
states in a decimal counter is dictated by the binary code used to represent a decimal 
digit. If BCD is used, the sequence of states is as shown in the state diagram of  Fig.   6.9   . 
A decimal counter is similar to a binary counter, except that the state after 1001 (the 
code for decimal digit 9) is 0000 (the code for decimal digit 0). 
The logic diagram of a BCD ripple counter using  JK  flip‐flops is shown in  Fig.   6.10   . 
The four outputs are designated by the letter symbol  Q with a numeric subscript equal 
to the binary weight of the corresponding bit in the BCD code. Note that the output of 
Q
1
is applied to the  C  inputs of both    Q
2
and    Q
8
and the output of    Q
2
is applied to the 
C  input of    Q
4
.    The  J  and  K  inputs are connected either to a permanent 1 signal or to 
outputs of other flip‐flops. 
A ripple counter is an asynchronous sequential circuit. Signals that affect the flip‐flop 
transition depend on the way they change from 1 to 0. The operation of the counter can 
0000
0001
0010
0011
0100
1001
1000
0111
0110
0101
FIGURE 6.9 
State diagram of a decimal BCD counter       
270    Chapter 6  Registers and Counters
J
K
C
Q
1
J
K
C
Q
2
J
K
C
Q
4
J
K
C
Q
8
Logic 1
Count
FIGURE 6.10 
BCD ripple counter       
be explained by a list of conditions for flip‐flop transitions. These condi-
tions are derived from the logic diagram and from knowledge of how a 
JK  flip‐flop operates. Remember that when the  C  input goes from 1 to 0, 
the flip‐flop is set if    = 1,    is cleared if    K= 1,    is complemented if 
J=1,    and is left unchanged if    == 0.    
Section 6.4  Synchronous Counters    271
To verify that these conditions result in the sequence required by a BCD ripple coun-
ter, it is necessary to verify that the flip‐flop transitions indeed follow a sequence of 
states as specified by the state diagram of  Fig.   6.9   .    Q
1
changes state after each clock 
pulse.    Q
2
complements every time    Q
1
goes from 1 to 0, as long as    Q
8
=0.    When    Q
8
becomes 1,    Q
2
remains at 0.    Q
4
complements every time    Q
2
goes from 1 to 0.    Q
8
remains 
at 0 as long as    Q
2
or    Q
4
is 0. When both    Q
2
and    Q
4
become 1,    Q
8
complements when    Q
1
goes from 1 to 0.    Q
8
is cleared on the next transition of    Q
1
.    
The BCD counter of  Fig.   6.10    is a  decade  counter, since it counts from 0 to 9. To 
count in decimal from 0 to 99, we need a two‐decade counter. To count from 0 to 999, 
we need a three‐decade counter. Multiple decade counters can be constructed by con-
necting BCD counters in cascade, one for each decade. A three‐decade counter is 
shown in  Fig.   6.11   . The inputs to the second and third decades come from    Q
8
of the 
previous decade. When    Q
8
in one decade goes from 1 to 0, it triggers the count for the 
next higher order decade while its own decade goes from 9 to 0. 
6.4    SYNCHRONOUS COUNTERS 
Synchronous counters are different from ripple counters in that clock pulses are applied 
to the inputs of all flip‐flops. A common clock triggers all flip‐flops simultaneously, 
rather than one at a time in succession as in a ripple counter. The decision whether a 
flip‐flop is to be complemented is determined from the values of the data inputs, such 
as  T  or  J  and  K  at the time of the clock edge. If    = 0    or    == 0,    the flip‐flop does 
not change state. If    T= 1    or    K= 1,    the flip‐flop complements. 
The design procedure for synchronous counters was presented in Section 5.8, and the 
design of a three‐bit binary counter was carried out in conjunction with Fig. 5.31. In this 
section, we present some typical synchronous counters and explain their operation. 
Binary Counter 
The design of a synchronous binary counter is so simple that there is no need to go 
through a sequential logic design process. In a synchronous binary counter, the flip‐flop 
in the least significant position is complemented with every pulse.  A flip‐flop in any other 
BCD
Counter
Q
8
Q
4
Q
2
Q
1
BCD
Counter
Q
8
Q
4
Q
2
Q
1
BCD
Counter
Q
8
Q
4
Q
2
Q
1
Count
pulses
102 digit
101 digit
100 digit
FIGURE 6.11 
Block diagram of a three‐decade decimal BCD counter       
272    Chapter 6  Registers and Counters
position is complemented when all the bits in the lower significant positions are equal to 1 . 
For example, if the present state of a four‐bit counter is    A
3
A
2
A
1
A
0
= 0011,    the next 
count is 0100.    A
0
is always complemented.    A
1
is complemented because the present 
state of    A
0
= 1.       A
2
is complemented because the present state of    A
1
A
0
=11.    However, 
A
3
is not complemented, because the present state of    A
2
A
1
A
0
= 011,    which does not 
give an all‐1’s condition. 
Synchronous binary counters have a regular pattern and can be constructed with 
complementing flip‐flops and gates. The regular pattern can be seen from the four‐bit 
counter depicted in  Fig.   6.12   . The  C  inputs of all flip‐flops are connected to a common 
clock. The counter is enabled by Count_enable. If the enable input is 0, all  J  and  K  inputs 
are equal to 0 and the clock does not change the state of the counter. The first stage, 
A
0
,    has its  J  and  K  equal to 1 if the counter is enabled. The other  J  and  K  inputs are 
equal to 1 if all previous least significant stages are equal to 1 and the count is enabled. 
The chain of AND gates generates the required logic for the  J  and  K  inputs in each 
stage. The counter can be extended to any number of stages, with each stage having an 
additional flip‐flop and an AND gate that gives an output of 1 if all previous flip‐flop 
outputs are 1. 
Note that the flip‐flops trigger on the positive edge of the clock. The polarity of the 
clock is not essential here, but it is with the ripple counter. The synchronous counter can 
be triggered with either the positive or the negative clock edge. The complementing 
flip‐flops in a binary counter can be of either the  JK  type, the  T  type, or the  D  type with 
XOR gates. The equivalency of the three types is indicated in Fig. 5.13.  
Up–Down Binary Counter 
A synchronous countdown binary counter goes through the binary states in reverse order, 
from 1111 down to 0000 and back to 1111 to repeat the count. It is possible to design a 
countdown counter in the usual manner, but the result is predictable by inspection of the 
downward binary count. The bit in the least significant position is complemented with each 
pulse.  A bit in any other position is complemented if all lower significant bits are equal to 0.  
For example, the next state after the present state of 0100 is 0011. The least significant 
bit is always complemented. The second significant bit is complemented because the first 
bit is 0. The third significant bit is complemented because the first two bits are equal to 0. 
But the fourth bit does not change, because not all lower significant bits are equal to 0. 
A countdown binary counter can be constructed as shown in  Fig.   6.12   , except that 
the inputs to the AND gates must come from the complemented outputs, instead of 
the normal outputs, of the previous flip‐flops. The two operations can be combined in 
one circuit to form a counter capable of counting either up or down. The circuit of an 
up–down binary counter using  T  flip‐flops is shown in  Fig.   6.13   . It has an up control 
input and a down control input. When the up input is 1, the circuit counts up, since the 
T  inputs receive their signals from the values of the previous normal outputs of the 
flip‐flops. When the down input is 1 and the up input is 0, the circuit counts down, 
since the complemented outputs of the previous flip‐flops are applied to the  T  inputs. 
When the up and down inputs are both 0, the circuit does not change state and remains 
Documents you may be interested
Documents you may be interested