Design of a 4 bit bouncing counter using JK flip flops with start/ reset inputs

Not open for further replies.


Joined Jan 29, 2010
The usual method is to convert the Truth Table into a Karnaugh Map, this will give you the steps required to design the hardware.

[You would also submit the Table and Map as part of your assignment answer]

If you are not up to speed on this conversion, check out this video.


Joined Jan 29, 2010
The Truth Table is the image I posted.
I am not sure how you are trying to represent the states in your image.
What are X1,X0 , is it the Clock?

What method are you using to derive the final Logic circuit.?


Joined Mar 31, 2012
Your state table has a pretty glaring oversight.

Let's say that the machine is in State 4, which you encode as (Q3,Q2,Q1,Q0) = (0100).

If the State and Reset inputs are such that the machine should be counting, is the next state going to be State 5 or State 3?

Remember, the machine only knows what state it is currently in and what the inputs currently are.

If just knowing that you are in State 4 is not enough to know where to go next, then you need additional information (such as whether you are currently counting up or counting down) encoded into the state, well.


Joined Mar 30, 2015
X1 and X0 are the inputs (start and reset). Do i need those inputs to find the next state equations?
Your table has 6 inputs (start, reset, and the 4 bits for the counter). You'll need to add one for direction. Can you solve Kmaps with 7 variables?
Last edited:


Joined Jun 13, 2020
As project for university i've been asked to design a 4 bit synchronous bouncing counter with start/reset input.
The counter is able to perform the following sequence when the start input is '1' or high: 15,2,3,4,5,6,7,6,5,4,3,2 and then repeat its cycle again.
If start input is low or '0' the counter's output should be its present state.
However, when a reset input is '1' or high, the counter should reset and start counting again from binary number 15.
Anyone able to explain me how to implement this circuit using the start/reset input?
In the requirements, what kind of flip-flops are needed to implement the counter?
Because to implement a synchronous counter, the following steps must be followed:
1-Determine the number of flip-flops, 4 in your case because 15 in binary is 1111.
2-Draw the state transition diagram showing all possible states, including those that are not part of the desired counting sequence.
3-Use the state transition diagram to set up a table that lists all present states and their next states
4-Add a column to the table mentionned in step 3 for the inputs of the used flip-flops (JK,D or T) and indicate the level of the input by using the excitation table of the corresponadant flip-flop
5-Design the logic circuit to generate the levels required a each flip-flop input
6-Implement the final expression
As an example, you can watch this video on YouTube
Not open for further replies.