Combinatorial Logic

Multiplexers

rM drawing 2025-10-30-12.33.30.png

MUX2

Let xa,xb be address inputs and xc,xd,xe be data inputs
y=xa¯xb¯fy(0,0,xc,xd,xe+xe)+xa¯xbfy(0,1,xc,xd,xe)+
xaxb¯fy(1,0,xc,xd,xe)+xaxbfy(1,1,xc,xd,xe)

Fy1={xaxbxcxdxe0011011111110}

fy(0,0,xc,xd,xe)=xe
fy(0,1,xc,xd,xe)=0
fy(1,0,xc,xd,xe)=xd¯xe
fy(0,0,xc,xd,xe)=xc+xd¯xe+xdxe¯=xc+(xdxe)

a¯b¯e+ad¯e+abc+abde¯=a¯(b¯e)+a(d¯e+bc+bde¯)

ad¯e=ab¯d¯e+abd¯e
rM drawing 2025-10-30-12.44.54.png
For A0=b
D0=d¯e
D1=d¯e+c+de¯=c+d+e

Quiz next lecture

iterative circuits, multiplexers

We can convert it into a MUX4
rM drawing 2025-10-30-12.48.16.png

MUX3

let xa,xb,xe be address inputs and xc,xd data inputs
Pasted image 20251105231432.png
Pasted image 20251105231420.png
This can be turned into this circuit
Pasted image 20251105231519.png400

MUX4

Pasted image 20251102232340.png

Example 1

Pasted image 20251105230909.png
this turned into

y=fy(xa,xb,xc,xd,xe)=xaxbxe+xaxdxe+xaxbxc+xaxbxdxe

and shown as
Pasted image 20251105231042.png400
Now we choose x's with least DONTCARE as address inputs (xa,xb.xd,xe) and xc becomes a data input. Which turns into this beautiful mess
Pasted image 20251105231257.png

Example 2

Pasted image 20251103135647.png

Most frequent variables

b and e are most frequent, as they appear in every Y product
This means, we can use those inputs as select lines (addr. input)

Function for each MUX input

b=0,e=0Y=be=1I1=1
b=1,e=0Y=0+0+0=0I2=0
b=0,e=1Y=0+0+0=0I3=0
b=1,e=1Y=0+a+bI3=a+b

Decomposition

MUX decomposition is process of implementing a Boolean func for MUX
Choose some variables as MUX select lines and express function's output as function of those selections

Example
f(A,B,C)=(1,2,6,7)

Truth table

A B C f
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

For each combined AB, express f as function of C

AB MUX input f(C)
00 D0 C
01 D1 C'
10 D2 C
11 D3 1
So f(A,B,C)=MUX(S=AB,D0=C,D1=C,D2=C,D3=1)

Hierarchical decomposition

Large MUX can be recursively decomposed into smaller MUXes
16:1 MUX can be build from four 4:1 MUXes and one 4:1 MUX to select among them
Any boolean func can be ultimately implemented only with 2:1 MUXes

Demultiplexer

rM drawing 2025-11-05-22.45.03.png400