It amuses me that student problems are invariably "urgent". By
contrast, we who work in the commercial world of course have
infinitely long timescales for our projects
Not being an academic I have never heard of Shannon's expansion
theorem, but Shannon was a pretty bright guy and I have no reason
to doubt that he invented such a thing.
It's useful to remember that you can write a multiplexer as
a Boolean expression:
Mux = in0.Sel' + in1.Sel
represents a 2:1 mux selected by Sel, with inputs in0 and in1.
To help with this Mux description, let's define that as a
function M(in0,in1,Sel).
So we can re-think your expression as multiplexers...
F = C' + (A' + A.B').C
= C' + C.M(1, B', A)
= M(1, M(1, B', A), C)
One more little observation:
B' = 1.B' + 0.B
= M(1, 0, B)
Hey, I got one over on your prof! I don't need that OR gate at all!
F = M(1, M(1, B', A), C)
= M(1, M(1, M(1, 0, B), A), C)
|\
|\ 1-| |
|\ 1-| | | |----F
1-| | | |------| |
| |------| | |/
0-| | |/ |
|/ | C
| A
B
ASCII-schematic with thanks, as usual, to Andy Weber's wonderful
AACircuit program (
www.tech-chat.de).
--
Jonathan Bromley, Consultant
DOULOS - Developing Design Know-how
VHDL * Verilog * SystemC * Perl * Tcl/Tk * Verification * Project Services
Doulos Ltd. Church Hatch, 22 Market Place, Ringwood, Hampshire, BH24 1AW, UK
Tel: +44 (0)1425 471223 mail:
[email protected]
Fax: +44 (0)1425 471573 Web:
http://www.doulos.com
The contents of this message may contain personal views which
are not the views of Doulos Ltd., unless specifically stated.