1
\$\begingroup\$

I need to build a circuit that accepts a 4-bit number and turns on a LED (representing an error) if the given number is higher than 9.

As I understood, it should represent an "error display for a BCD counter". Since a BCD accepts a number of 4 bits (0-15) but it only counts from 0-9, I should turn on a LED that represents the presence of an error on the counter.

So, I followed the steps below:

  1. Built the truth table;
  2. Built the expression based on the truth table;
  3. Built the Karnaugh Map;
  4. Built the simplified expression from the Karnaugh Map;

1. Building the Truth Table

Note: the X column represents the output that shows an error (i.e. the LED)

enter image description here


2. Building the expression based on the Truth Table

So, based on the Truth Table, I got the following expressions:

Note: consider the (!X) as a NOT X

(D)(!C)(B)(!A) + (D)(!C)(B)(A) + (D)(C)(!B)(!A) + (D)(C)(!B)(A) + (D)(C)(B)(!A) + (D)(C)(B)(A)


3. Building the Karnaugh Map

enter image description here

So, as you guys can see, I found two quartets.


4. Building the simplified expression from the Karnaugh Map

As I found two quartets, this is the final expression I found:

(DC) + (DB)


The conclusion and the final question

So, after all these steps, I tried to apply the Truth Table values into my simplified expression (ignoring the A column, as the simplified expression doesn't contain it). It seems to be correct after all.

My question is:

Let's suppose someone get close to me and says:

"I've built a BCD counter. It should only count from 0 to 9. If a number higher than 9 is given, then there is an error. I need YOU to build ANOTHER circuit. I'll give you the 4-bit number that entered on my circuit and then you need to show an error in case this number is higher than 9."

Considering my final expression, (DC) + (DB), should I just ignore the port A, since there is no A in my final simplified expression? Does it mean I can just leave A without being connected to any wire?

\$\endgroup\$

2 Answers 2

1
\$\begingroup\$

This is correct.

(DC) + (DB) = D(C + B)

Your choices are to;

  • ignore the fault, (input > 9) . x= don't care? or are there consequences?
  • display a fault ( error detect ) is it useful?
  • blank the display with flashing Dot or something( from erroneous data )
  • use a HEX LED converter and show result as a,b,c,d,e,f ( is that useful? )

Only you can tell if there are consequences of a fault condition but often fault detection is a good thing if you do something with it. Sometimes this is only done on a power On reset with JTAG tests. The higher the % fault detection (metric for Test Engineers, the better the design.

\$\endgroup\$
2
  • \$\begingroup\$ Thank you, Sunny! So from what I understood, what I should do really depends on what I'm building, right? Of course supposing this is gonna be implemented by a physical and real circuit. Since I'm a Computer Science student, this exercise is just a theoretical one. So, in this case, only turning on a LED saying "hey, you got an error" seems to be enough. \$\endgroup\$ Commented Apr 12, 2019 at 17:37
  • \$\begingroup\$ FWIW , yes....... in real applications they use non BCD for other purposes like higher level system error codes \$\endgroup\$
    – D.A.S.
    Commented Apr 12, 2019 at 17:38
4
\$\begingroup\$

As the A input does not matter it is not necessary to decode it.

\$\endgroup\$
1
  • \$\begingroup\$ Unless A is your boss saying sometimes you need to display when there is a faulty data. Yesm this may be insignficant in the overall project \$\endgroup\$
    – D.A.S.
    Commented Apr 12, 2019 at 16:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.