Friday, 12 May 2017

digital logic - An exercise on decoders


I have the following exercise:


Design a circuit that takes a 2 bit binary and makes it x^3 (x cubed), using a decoder 

of your choice.

I thought to do it with a 3 to 8 decoder, because I have 2 bits of input, and 4 bits of output, since the largest output is 11011 (which is 27 in decimal).


I have managed to get to a truth table. Input = \$x_0x_1x_2\$. Output= \$a,b,c,d,e\$.


\begin{array}{|c|c|c|c|c|c|c|c|} \hline x_0 & x_1 & x_2 & a & b & c & d & e \\ \hline 0 & 0 &0 &0 &0 &0 &0 &0\\ \hline 0 &0 &1 &0 &0 &0 &0 &1\\ \hline 0& 1 &0 &0 & 1 &0 &0 &0\\ \hline 0 &1 &1 &1 &1 &0 &1 &1\\ \hline \end{array}


However, I am not quite sure what should I do now. I have to get to a function to represent it in gates? How can I make a karnaugh map from that table?


I am aware that I would have to add three more outputs to the 3 to 8 decoder, but they will be just "don't cares".


Your help is appriciated.



Answer



With some thought you can do it with less logic ... a single 2-input gate.



I'll not give the whole game away, but one technique that may help is to treat each output bit individually, and minimise the logic for that output alone.


Start with bit c as it is the simplest.


Then put the individual solutions together.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...