How about Designing a Non-Sequential Digital Counter?

  • Thread starter Thread starter JJBladester
  • Start date Start date
  • Tags Tags
    Counter Design
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
2 replies · 2K views
JJBladester
Gold Member
Messages
281
Reaction score
2

Homework Statement



Hello, I need to create a digital counter that follows this sequence:


00, 10, 01, 11, 01, 00, 11, 10
A , C, B, D, B, A, D, C

Homework Equations



N/A

The Attempt at a Solution



There are four states (A = 00, B = 01, C = 10, D = 11) so I believe I need two flip-flops. There are eight transitions and then the counter should wrap. I'm having a hard time drawing the state diagram for this.

Here's what I have so far.

non-sequential-counter-state-diagram.jpg
 
on Phys.org
The sequence does not repeat in what you showed, so you will need to add another FF to tell you whether it's the first time through AC... or 2nd time through AD...
 
JJBladester said:

Homework Statement



Hello, I need to create a digital counter that follows this sequence:


00, 10, 01, 11, 01, 00, 11, 10
A , C, B, D, B, A, D, C

Homework Equations



N/A

The Attempt at a Solution



There are four states (A = 00, B = 01, C = 10, D = 11) so I believe I need two flip-flops. There are eight transitions and then the counter should wrap. I'm having a hard time drawing the state diagram for this.

Here's what I have so far.

non-sequential-counter-state-diagram.jpg


Hey Bladester, wasn't it a couple of years ago when you posted your first problem of this type? You must be about ready to graduate, eh?

I agree with Berkeman. You need 8 states instead of 4. Otherwise, for example, when the machine is in state A, how can it know whether to proceed to C or D next? So try:$$
y_2y_1y_0=000, 010, 001, 011, 101, 100, 111, 110, 000$$Then the output ##y_1y_0## gives you your sequence.