I am currently working on an assignment in which I create a six-state up/down counter. The purpose is to understand the functionality of flip-flops within a circuit among other things.
There are 3 input bits (Q2,Q1, Q0), and a 4th control bit (C) which determines the direction that the counter runs. Naturally I derived a design from 3 next-state function 4x4 k-maps, and I created a design utilizing D flip flops, which runs perfectly forwards and backwards.
The second part asks me to convert from a D-ff design to using JK flip flops. I mostly understand the logic of how a JK flip flop works, but I can't for the life of me figure out how to fit that extra control bit into the translation.
The Attempt at a Solution
My trouble comes in keeping the circuit bi-directional. I am very confused about what to do with the control bit. I created an excitation table for the next states, which I believe is correct, and conversions for the six JK k-maps (K2, K1, K0, J2, J1, and J0). However, I now have two sets of J & K values, one for C=0 and one for C=1.
In trying to work it out, I populated the 6 k-maps with the proper data (only C=0) and constructed a function/circuit, but of course it only clocks in one direction whether C is set to 0 or 1. What am I supposed to do with the control bit when I translate to the new k-maps for K2, K1 etc... which each only take the three Q input bits?
What am I missing in the logic of utilizing JK flip flops for 3 input bits when there is the control bit as well?
Hopefully that's clear, I'm sure it is just a conceptual problem I am having trouble figuring out. If anyone wants me to upload my excitation table or any other part I've done so far, let me know. Any help is greatly appreciated!