Binary Ripple Counter

in #utopian-io8 years ago (edited)

image.png

I. Intended Learning Objectives
At the end of the tutorial, the readers should be able to:
1. Explain the operation of a ripple counter
2. Construct the digital circuit using CircuitSim for a ripple counter; and,
3. Perform simulation of the operation of a ripple counter.
II. Requirements
The readers should have a desktop PC or laptop (Win 7, 8, or 10) with an installed CircuitSim simulator to be able to effectively learn the concepts and procedures that will be discussed in this tutorial. Readers will be able to download a copy of the app at ra4king.github.io/CircuitSim/ download page or visit its official Github repository at ra4king/CircuitSim.
III. Difficulty
Intermediate
IV. Introduction to Ripple Counter
A binary ripple counter consists of a complementing series connected flip-flops (T or JK type), with the output of each flip-flops is connected to the clock pulse CP input of the next higher-order flip-flop. The lower order flip-flop holding the least significant bit receives the incoming pulses.
Table 1. Count Sequence for Binary Ripple Counter
image.png

To understand the operation of binary counter, refer to its count sequence as shown in table 1. I said earlier that lower order flip-flop receives the incoming clock pulse. Lowest-order bit A0 must be complemented by count pulse. Everytime A0 changes state from 1 to 0, it complements A1. So, the designated flip-flop A0 is connected a clock while its output is connected to the immediate higher fli-flop A1.
Table 2. Count Sequence showing state change and complements

image.png

For example, we take the transition from count 0111 to 1000. The arrow in table 2 emphasize the transition states. A0 complemented by clock pulse. Since A0 changes from 1 to 0, it triggers A1 and complements it. This is true also for both A2 and A3. The output of the preceded flip-flop will always complement the succeeding flip-flop. The flip-flop change one at a time in succession, as the signal passes through the counter in a ripple. By the way, ripple counters are also known as asynchronous counters.
V. Ripple Counter circuit implementation on CircuitSim
As we have discussed earlier in this tutorial, the ripple counter operates in a way that the lowest-order flip-flop is complemented by a clock pulse. A change in the state from 1 to 0 in the preceding flip-flop triggers the succeeding flip-flop, and complements it. For this tutorial, we will construct a 4-bit binary ripple counter using CircuitSim. Since we will be constructing a 4 bit ripple counter, there would be a four set of JK flip-flops by which the primaryJK flip-flop is connected with a clock pulse. However, the CircuitSim do not have a pre-configure circuit component for JK Flipflop. So, we need first to convert the SR flip-flop into a JK flip-flop using two sets of AND gates. This is done by connecting the input S and R to the output of the AND gate, while one input of the upper AND gate is connected to Q' output of the SR flip-flop.

At the same time the one input of the lower AND gate is connected to SR flip-flop's output terminal Q. After configuring the SR flip-flop to cater the functionality of the JK flip-flop, which include the set of input and output labeled as the terminals of a standard JK flip-flop. We change the name from new circuit to JK Flip-Flop. This is done by right clicking and selecting rename on the worksheet tab. After completing all describes steps, you should have come up up with what is shown on the figure below.
image.png
Now, we open a new circuit worksheet to construct the 4 bit binary ripple counter circuit which involves four set of JK flip-flop. Select from the component library under the circuit menu the JK flip-Flop component we have created a while ago. Put 4 set of this component by arranging it a vertical manner.
image.png

I said earlier that one lowest order JK flip-flop is to be connected to a clock pulse which used to trigger the next higher-state. To accomplish that, we connect a clock pulse on the upper JK Flip-Flop and connect the its output to the succeeding JK Flip-Flip. Do this for all JK Flip-Flops on the worksheet. In this way, we set the ripple action or logic by which the succeeding transition state is triggered by the preceding states.
image.png
Then, we connect a unchangeable logic 1 on the J and K input of the JK Flip-Flop. This serves a constant logic base for the ripple counter. At the same time connect output component to Q terminal of the JK Flip-Flop. Label the output as A0, A1, A2, andA3, vertically. In addition, rename the circuit worksheet as Ripple Counter.
image.png

By connecting a logic-1 input for J and K of the JK Flop-Flop, we ensure that the operation of the circuit is dependent on the transition change primarily set by clock pulse with complementing the higher-order JK Flip-Flop by the preceded output of the immediate lower-order JK Flip-Flop in the circuit.
VI. Simulation of the Ripple Counter
We have now created the binary ripple counter circuit. To start the simulation, simply click simulation > simulation enable and also clock enable. In the running simulation as shown, we can observe a different 4 bit value displayed on the output as we set logic-1 input as 1. The outputs follows a pattern as presented in the earlier discussion as a counter sequence truth table. Here is the recorded simulation of the binary ripple counter.
VII. Summary
In this tutorial, we have discussed the operation of a binary counter. We have learned that the lowest-order bit A0 must be complemented by count pulse. Every time A0 changes state from 1 to 0, it triggers and complements A1. We have simulated the circuit using CircuitSim. We separately constructed a circuit that allows the SR Flip-Flop to operate as a JK flip-Flop and incorporate it as a new component for the binary ripple counter circuit. Then, we have simulated the circuit which outputs the same counter sequence as presented earlier in the discussion.
VIII. Theoretical Reference
Morris Mano, Digital Design, 3rd Edition



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

Thank you for the contribution. It has been approved.

Personal Note:
This is a nicely styled tutorial. You have done a really good job. A little tip: you could give your design a bit more room to "breath" by inserting a < br > above and below all of your images as well as above your headlines. That would give the text more white space.

You can contact us on Discord.
[utopian-moderator]

Thank you @flauwy! Yes, I agree with you. I think i missed to have some ample breaks for the readers to breath. I would apply your tips in my next tutorial.

Great technology .....
Asynchronous counters are also called ripple-counters because of the way the clock pulse ripples it way through the flip-flops.

Boost Your Post. Send 0.100 STEEM or SBD and your post url on memo and we will resteem your post on 5000+ followers. check our account to see the follower count.

Hey @juecoree I am @utopian-io. I have just upvoted you!

Achievements

  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Great tutorial, but i feel you could have given a small definition on the binary ripple counter so that users will at least know what a binary ripple counter is.

Coin Marketplace

STEEM 0.09
TRX 0.32
JST 0.034
BTC 108213.62
ETH 3865.01
USDT 1.00
SBD 0.63