computer organization & programming chapter4 combinatorial components
TRANSCRIPT
Computer Organization & Programming
Chapter4
Combinatorial Components
Some common, useful combinatorial circuits
Multiplexor• Some number (power of 2) of inputs and some control inputs
• The current values on the control lines are interpreted as a binary representation of the number of one of the other inputs. That input is passed through to the output.
Demultiplexor• Reverse of the multiplexor
• Single input is routed to one of a number (power of 2) output lines, depending on the control lines.
Decoder• Takes an n-bit input number and uses it to select exactly one of 2n
output lines• note difference between demultiplexor and decoder• The selected output line will have a 1, not a selected input value.
Comparator• outputs a 1 if two input values are equal, 0 otherwise
Comparator
All the As represent one input word, all the Bs represent another input word. The output will be one only if the two inputs are the same
Mux (multiplexer) 2 -> 1
Mux 2 -> 1 implementation
Mux 4 -> 1
Mux 8 -> 1Abstract representation of a multiplexor. The circuit details are hidden, but the essentials are visible.
Implement a Boolean Function using Mux
Decoder 3->8
Decoder circuit
Decoder 4 -> 16
Implement a Boolean Function using Decoder
Shifter
C determines if the shift will be left or right.
Assume D = 10000110. Show exactly what passes through each gate, and what ends up in S.
Half Adder
Called a half adder because it does not do the whole job: it does not add a carry in.
Full Adder
Example – 4bit Adder
Example – 4bit Adder/Subtractor
ALU Slice
1bit ALUWhat happens if F= 11, A=1, B=1, carry in = 1
What happens if F= 10, A=1, B=1, carry in = 1
Note INVA (Inverse A), ENA (Enable A), ENB (Enable B)
Once we have the circuit understood, note the inputs and the outputs. We can hide the rest of the details in using this device.
8Bit ALU
Overflow
ALU with overflow detection