Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1...
-
Upload
sandra-cosey -
Category
Documents
-
view
281 -
download
3
Transcript of Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1...
![Page 1: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/1.jpg)
Multiplexers
Section 3-7 Mano & Kime
![Page 2: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/2.jpg)
Multiplexers & Demultiplexers
• Multiplexers (Selectors)
• Lab 1 – Behavioral VHDL -- Multiplexers
• MUX as a Universal Element
![Page 3: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/3.jpg)
4– to– 1- Line Multiplexer
![Page 4: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/4.jpg)
4–to–1-Line Multiplexer with Transmission Gates
![Page 5: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/5.jpg)
Quadruple 2–to–1-Line Multiplexer
![Page 6: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/6.jpg)
![Page 7: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/7.jpg)
Typical uses
![Page 8: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/8.jpg)
Multiplexers
• Multiplexers (Selectors)
• Lab 1 – Behavioral VHDL -- Multiplexers
• MUX as a Universal Element
![Page 9: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/9.jpg)
Combinational Circuit Example
n-line 2-to-1 Multiplexer
n-line
2 x 1 MUX
a(n-1:0)
b(n-1:0)y(n-1:0)
sel
sel y
0 a
1 b
![Page 10: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/10.jpg)
library IEEE;use IEEE.std_logic_1164.all; entity mux2g is generic (width:positive); port ( a: in STD_LOGIC_VECTOR(width-1 downto 0); b: in STD_LOGIC_VECTOR(width-1 downto 0); sel: in STD_LOGIC; y: out STD_LOGIC_VECTOR(width-1 downto 0) );end mux2g;
An n-line 2 x 1 MUX
a(n-1:0)
b(n-1:0)
y(n-1:0)
sel
n-line2 x 1MUX
![Page 11: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/11.jpg)
library IEEE;use IEEE.std_logic_1164.all; entity mux2g is generic (width:positive); port ( a: in STD_LOGIC_VECTOR(width-1 downto 0); b: in STD_LOGIC_VECTOR(width-1 downto 0); sel: in STD_LOGIC; y: out STD_LOGIC_VECTOR(width-1 downto 0) );end mux2g;
Entity Each entity must begin with these library and use
statements
port statement defines inputs and outputs
generic statement defineswidth of bus
![Page 12: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/12.jpg)
library IEEE;use IEEE.std_logic_1164.all; entity mux2g is generic (width:positive); port ( a: in STD_LOGIC_VECTOR(width-1 downto 0); b: in STD_LOGIC_VECTOR(width-1 downto 0); sel: in STD_LOGIC; y: out STD_LOGIC_VECTOR(width-1 downto 0) );end mux2g;
Entity
Mode: in or out
Data type: STD_LOGIC,STD_LOGIC_VECTOR(width-1 downto 0);
![Page 13: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/13.jpg)
Standard Logic
type std_ulogic is ( ‘U’, -- Uninitialized‘X’ -- Forcing unknown‘0’ -- Forcing zero‘1’ -- Forcing one‘Z’ -- High impedance‘W’ -- Weak unknown‘L’ -- Weak zero‘H’ -- Weak one‘-’); -- Don’t care
library IEEE;use IEEE.std_logic_1164.all;
![Page 14: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/14.jpg)
Standard Logic
Type std_ulogic is unresolved.
Resolved signals provide a mechanismfor handling the problem of multipleoutput signals connected to one signal.
subtype std_logic is resolved std_ulogic;
![Page 15: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/15.jpg)
architecture mux2g_arch of mux2g isbegin mux2_1: process(a, b, sel) begin if sel = '0' then y <= a; else y <= b; end if; end process mux2_1;end mux2g_arch;
Architecture
a(n-1:0)
b(n-1:0)
y(n-1:0)
sel
n-line2 x 1MUX
Note: <= is signal assignment
![Page 16: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/16.jpg)
architecture mux2g_arch of mux2g isbegin mux2_1: process(a, b, sel) begin if sel = '0' then y <= a; else y <= b; end if; end process mux2_1;end mux2g_arch;
Architecture entity name
process sensitivity list
Sequential statements (if…then…else) must
be in a process
Note begin…end
in processNote begin…end
in architecture
![Page 17: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/17.jpg)
Digilab2 – DIO1 Boards
Spartan IIFPGA
8 LEDsLD
8 SwitchesSW4 Pushbuttons
BTN
Four 7-segmentdisplays
Pushbuttonbn
74HC373 latch ldg <= ‘1’
![Page 18: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/18.jpg)
Top-level Design – Lab 1
a(3:0)
b(3:0)
mux2g
Lab1
sel
ySW(1:4)
SW(5:8)
LD(1:4)
BTN4
ldg‘1’
![Page 19: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/19.jpg)
library IEEE;use IEEE.std_logic_1164.all; entity lab1 is port ( SW: in STD_LOGIC_VECTOR (1 to 8); BTN4: in STD_LOGIC;
ldg: out STD_LOGIC; LD: out STD_LOGIC_VECTOR (1 to 4) );end lab1;
a(3:0)
b(3:0)
mux2g
Lab1
sel
ySW(1:4)
SW(5:8)
LD(1:4)
BTN4
ldg‘1’
![Page 20: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/20.jpg)
architecture lab1_arch of lab1 is component mux2g generic(width:positive); port ( a: in STD_LOGIC_VECTOR (width-1 downto 0); b: in STD_LOGIC_VECTOR (width-1 downto 0); sel: in STD_LOGIC; y: out STD_LOGIC_VECTOR (width-1 downto 0) );end component; constant bus_width: positive := 4; begin ldg <= '1'; -- enable 74HC373 latch SWmux: mux2g generic map(width => bus_width) port map (a => SW(1 to 4), b => SW(5 to 8), sel => BTN4, y => LD); end lab1_arch;
a(3:0)
b(3:0)
mux2g
Lab1
sel
ySW(1:4)
SW(5:8)
LD(1:4)
BTN4
ldg‘1’
![Page 21: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/21.jpg)
![Page 22: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/22.jpg)
An n-line 4 x 1 multiplexer
a(n-1:0)
b(n-1 :0)y(n-1 :0)
sel(1:0)
8-line4 x 1MUXc(n-1 :0)
d(n-1 :0)
Sel y
“00” a
“01” b
“10” c
“11” d
![Page 23: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/23.jpg)
An 8-line 4 x 1 multiplexer
library IEEE;use IEEE.std_logic_1164.all; entity mux4g is
generic(width:positive); port ( a: in STD_LOGIC_VECTOR (width-1 downto 0); b: in STD_LOGIC_VECTOR (width-1 downto 0); c: in STD_LOGIC_VECTOR (width-1 downto 0); d: in STD_LOGIC_VECTOR (width-1 downto 0); sel: in STD_LOGIC_VECTOR (1 downto 0); y: out STD_LOGIC_VECTOR (width-1 downto 0) );end mux4g;
![Page 24: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/24.jpg)
Example of case statement
architecture mux4g_arch of mux4g isbegin process (sel, a, b, c, d) begin case sel is when "00" => y <= a; when "01" => y <= b; when "10" => y <= c; when others => y <= d; end case; end process;end mux4g_arch; Must include ALL posibilities
in case statement
Note implies operator =>
Sel y
“00” a
“01” b
“10” c
“11” d
![Page 25: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/25.jpg)
VHDL Architecture Structurearchitecture name_arch of name is
begin
end name_arch;
Signal assignments
Concurrent statements
Concurrent statements
Process 1
Process 2
Concurrent statements
Processes contain sequential
statements, but execute
concurrently within the
architecture body
![Page 26: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/26.jpg)
VHDL Process
P1: process (<sensitivity list)<variable declarations>begin <sequential statements>end process P1;
Optional process label
Within a process:
Variables are assigned using :=
and are updated immediately.
Signals are assigned using <=
and are updated at the end of
the process.
![Page 27: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/27.jpg)
Multiplexers
• Multiplexers (Selectors)
• Lab 1 – Behavioral VHDL -- Multiplexers
• MUX as a Universal Element
![Page 28: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/28.jpg)
Multiplexer as universal combinational module
• connect input variables x to select inputs of multiplexer s
• set data inputs to multiplexer equal to values of function for corresponding assignment of select variables
• using a variable at data inputs reduces size of the multiplexer
![Page 29: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/29.jpg)
Implementing a Boolean Function with a Multiplexer
![Page 30: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/30.jpg)
Implementing a Four- Input Function with a Multiplexer
![Page 31: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/31.jpg)
Networks with 2-input multiplexers
![Page 32: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/32.jpg)
Implementation of SFs with network of MUXes
![Page 33: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/33.jpg)
Design of networks with MUXes
![Page 34: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/34.jpg)
Example
![Page 35: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/35.jpg)
Ordering of variables in subtrees affects the number of MUXes
![Page 36: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/36.jpg)
Example of Shannon’s Decomposition
F = x3(x1 + x2x0)
Implemented using a multiplexer network
![Page 37: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/37.jpg)
F = x3(x1 + x2x0)
Start with any variable - x0 for example
x0 = 0
x0 = 1
F = x3x1
F = x3(x1 + x2)
![Page 38: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/38.jpg)
F = x3(x1 + x2x0)
Then x! for example
x0 = 0
x0 = 1
F = x3x1
F = x3(x1 + x2)
x1 = 0
x1 = 1
F = 0
F = x3
x1 = 0
x1 = 1
F = x3x2
F = x3
![Page 39: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/39.jpg)
F = x3(x1 + x2x0)
Then x2 for example
x0 = 0
x0 = 1
F = x3x1
F = x3(x1 + x2)
x1 = 0
x1 = 1
F = 0
F = x3
x1 = 0
x1 = 1
F = x3x2
F = x3
x2 = 0
x2 = 1
F = 0
F = x3
![Page 40: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/40.jpg)
F = x3(x1 + x2x0)
x0 = 0
x0 = 1
F = x3x1
F = x3(x1 + x2)
x1 = 0
x1 = 1
F = 0
F = x3
x1 = 0
x1 = 1
F = x3x2
F = x3
x2 = 0
x2 = 1
F = 0
F = x3
Inputs
![Page 41: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/41.jpg)
F = x3(x1 + x2x0)
x0 = 0
x0 = 1
F = x3x1
F = x3(x1 + x2)
x1 = 0
x1 = 1
F = 0
F = x3
x1 = 0
x1 = 1
F = x3x2
F = x3
x2 = 0
x2 = 1
F = 0
F = x3
MUX Select Lines
![Page 42: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/42.jpg)
x1 = 0x0 = 0
x0 = 1
F = x3x1
F = x3(x1 + x2)
x1 = 1
F = 0
F = x3
x1 = 0
x1 = 1
F = x3x2
F = x3
x2 = 0
x2 = 1
F = 0
F = x3
1
0
sel
x3x1
x3(x1 + x2) x0
F
![Page 43: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/43.jpg)
x1 = 0x0 = 0
x0 = 1
F = x3x1
F = x3(x1 + x2)
x1 = 1
F = 0
F = x3
x1 = 0
x1 = 1
F = x3x2
F = x3
x2 = 0
x2 = 1
F = 0
F = x3
x3x1
1
0
sel
x3(x1 + x2)
1
0
sel
x0
x1
0
x3
The branch for x0 = 0F
![Page 44: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/44.jpg)
x1 = 0x0 = 0
x0 = 1
F = x3x1
F = x3(x1 + x2)
x1 = 1
F = 0
F = x3
x1 = 0
x1 = 1
F = x3x2
F = x3
x2 = 0
x2 = 1
F = 0
F = x3
x3x1
1
0
sel
x3(x1 + x2)
1
0
sel
x0
x1
0
x3
1
0
sel
x1
x3x2
x3
The branch for x0 = 1
F
![Page 45: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/45.jpg)
x1 = 0x0 = 0
x0 = 1
F = x3x1
F = x3(x1 + x2)
x1 = 1
F = 0
F = x3
x1 = 0
x1 = 1
F = x3x2
F = x3
x2 = 0
x2 = 1
F = 0
F = x3
x3x1
1
0
sel
x3(x1 + x2)
1
0
sel
x0
x1
0
x3
1
0
sel
x1
x3x2
x3
The branch for x1 = 0
1
0
sel
x2
x3
0F
![Page 46: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/46.jpg)
F = x3(x1 + x2x0)
• Starting with x0• Shannon’s Decomposition
• 4 Multiplexers
1
0
sel
1
0
sel
x0
x1
0
x3
1
0
sel
x1
x3
1
0
sel
x2
x3
0F
![Page 47: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/47.jpg)
F = x3(x1 + x2x0)
• Starting with x1• Shannon’s Decomposition
• 3 Multiplexers
1
0
sel
1
0
sel
x1
x0
0
1
0
sel
x2
x3F
x3
0
![Page 48: Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.](https://reader036.fdocuments.in/reader036/viewer/2022081506/56649c7b5503460f9492e7f2/html5/thumbnails/48.jpg)
16-input tree multiplexer