# Need help in understanding MUX-NOT flip-flop

I need help in doing practice problem:

A MUX-NOT flip-flop (MN flip-flop) behaves as follows. If M=1 the flip-flop complements the current state. If M=0, the next state of the flip-flop is equal to N. Derive the truth table and excitation table for an M-N flip-flop.

My book does not give any data about MN flip-flop and I did not find any adequate materials on that online. Can anyone help me to understand the question and the idea behind MN flip-flop?

• The entire description is in that paragraph. Which part of it are you having trouble with? – Ignacio Vazquez-Abrams Nov 30 '14 at 19:45
• ... right, it's a fictional logic element... – vicatcu Nov 30 '14 at 19:47

Ignore what they are calling it and draw a truth table for what they describe. There appears three inputs: "the current state" which you can arbitrarily call Q(n), N, and M. There is one output which we can arbitrarily call Q(n+1). The names are not totally arbitrary, because Q(n+1) is by definition a one-time-step delayed version of Q(n) (i.e. Q(n) is the previous output).

  Inputs           Outputs
Q(n)    M    N    Q(n+1)
0      0    0      ?
0      0    1      ?
0      1    0      ?
0      1    1      ?
1      0    0      ?
1      0    1      ?
1      1    0      ?
1      1    1      ?


You should be able to fill in the question marks from the narrative description trivially. This is a truth table.

I believe an excitation table is just a rephrasing of the truth table where the valid entries are include 0, 1, and Q(n) and it's complement /Q(n) (so there are only two "real" inputs). And removing "redundant" rows (i.e. if a variable is a don't-care under some conditions, then express that collapsed row with an "x" for that variable).

Inputs       Outputs
M    N       Q(n+1)
0    0       Q(n), /Q(n), 0, or 1?
0    1       Q(n), /Q(n), 0, or 1?
1    0       Q(n), /Q(n), 0, or 1?
1    1       Q(n), /Q(n), 0, or 1?


Can you reduce this further once you put answers in to the question marks?

• I added my resulted truth table to the post. Is it right? I do not understand idea of excitation table though... :( – YohanRoth Nov 30 '14 at 20:10
• No its not right. If M=1, it complements the current state. Take a look at row 3 for an example of your table not obeying that rule. – vicatcu Nov 30 '14 at 20:14
• I believe the excitation table should express the conditions under which the output changes. – vicatcu Nov 30 '14 at 20:16
• Note that "complements" means "inverts" in boolean logic. – vicatcu Nov 30 '14 at 20:18
• So, if in row 3 has M=1 and Q(n)= 0, we should complement zero and get 1 for Q(n+1). Right? Or I am not getting it at all.. – YohanRoth Nov 30 '14 at 20:28

By your description this is a T or Toggle Flip Flop. When T = high, the Output toggles (changes state -> complements) when the T inout is low the state is held (Q_n+1 = Qn).

Here's the idea behind it; it's just a 2:1 MUX and a DFLOP. 