Help making a next state table

Discussion in 'Homework Help' started by tomflaherty, Apr 18, 2012.

1. tomflaherty Thread Starter New Member

Apr 18, 2012
4
0
Hey guys,

I have a little problem. I've got a circuit with 3 flip/flops (A, B & C) and one input (X), using the following equations:

D(a) = (BC' + B'C)X + (BC + B'C')X'
D(b) = A
D(c) = B

Now I think I've got the circuit diagram for this (http://i41.tinypic.com/1fzfm.jpg) all right, but I'm having trouble working out the next state table.

This is because I don't really understand HOW to work it out.

Could someone give me a brief explanation of how I'd go about working this out? I don't want/need the answer, as I do need to learn this myself, but if someone could just say "oh - you need to add this to this etc." that would be massively appreciated.

Thanks. Tom.

2. MrChips Moderator

Oct 2, 2009
19,135
6,150
You need to know what type of flip-flop is being used. We will assume they are D-type flip-flops.

Begin with state 000.
Go down sequentially through all eight states (including X) - ABCX.
Write down the results for each function D(a), D(b) and D(c). Of course D(b) and D(c) are trivial.
You do not need a circuit diagram. Use the equations given.

Edit: all 16 states.

Last edited: Apr 18, 2012
3. tomflaherty Thread Starter New Member

Apr 18, 2012
4
0
Okay. Thanks Mr. Chips. So just to make sure I'm doing it right, the first few lines of the truth table would look like this:

 Present Next A B C X A B C 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 1 1 0

Thanks.

4. MrChips Moderator

Oct 2, 2009
19,135
6,150
Yes, I have not gone through the logic but that is the right idea, except do all states in sequential order

ABCX
0000
0001
0010
0011
:
:

etc, or

ABCX
0000
0010
0100
0110
:
:
:
0001
0011
0101
0110
:
:
:
this way you don't miss any state. There should be 16 lines total for 4 variables.

5. tomflaherty Thread Starter New Member

Apr 18, 2012
4
0
Yeah got 16 lines. Thanks very much for your help! 6. WBahn Moderator

Mar 31, 2012
24,562
7,700
Note that:

(BC' + B'C)X + (BC + B'C')X'

Is the expression for a 3-input XOR gate, which can be built from two 2-input XOR gates by XORing any two of the inputs and then XORing the output of that with the third input.