Digital Logic Problems (II) Prof. Sin-Min Lee Department of Mathematics and Computer Science
Multiplexers A combinational circuit that selects info from one of many input lines and directs it to the output line. The selection of the input line is controlled by input variables called selection inputs. They are commonly abbreviated as “MUX”.
Implementing Boolean functions with multiplexers Any Boolean function of n variables can be implemented with 2 n -1 -to-1 multiplexer. The procedure for implementing a Boolean function with a multiplexer is 1.Express the function in its sum of minterms form. 2. Order the sequence of variables chosen for the minterms. Suppose the sequence is, where A is the leftmost variable, and are the remaining n -1 variables.
3.Connect the n -1 variables to the selection lines of the 2 n -1 -to-1 multiplexer, with B connected to the highest order selection line, and so on. 4. Construct the implementation table: List all the minterms in two rows. The first row consists of minterms 0 to 2 n (in all of which A is complemented). The second row consists of minterms 2 n -1 to 2 n -1 (in all of which A is uncomplemented)..
5. Circle all the minterms of the function and inspect each column in the implementation table separately If the two minterms in a column are not circled, apply 0 to the corresponding multiplexer input. If the two minterms are circled, apply 1 to the corresponding multiplexer input. If the bottom minterm is circled, and the top is not circled, apply A to the corresponding multiplexer input. If the top minterm is circled but not the bottom, apply A*
Multiplexers and decoders are used when many lines of information are being gated and passed from one part of a circuit to another. Multiplexing is when multiple data signals share a common propagation path. Time multiplexing is when different signals travel along the same wire but at different times. These devices have data and address lines, and usually include an enable/ disable input. When the device is disabled the output is locked into some particular state and is not effected by the inputs.
Consider the function of 3 variables: 1. Input variables B and C are applied to the selection lines s 1 and s 0, respectively. 2. Construct the implementation table, and circle all the minterms of the function in the implementation table 3. Apply 0, 1, A, and A* to the inputs I 0 through I 3.
Multiplexers (continued) S 0 and S 1 are the selection inputs. D 0, D 1, D 2, D 3 are the input lines.
Multiplexers (continued) MUX blocks can be combined in parallel with common selection and enable inputs to perform selection on multiple bit quantities.
Combinational circuit implementation using MUX We can use Multiplexers to express Boolean functions also. Expressing Boolean functions as MUXs is more efficient than as decoders. First n-1 variables of the function used as selection inputs; last variable used as data inputs. If last variable is called Z, then each data input has to be Z, Z’, 0, or 1.
Karnaugh Map Method of Multiplexer Implementation Consider the function: A is taken to be the data variable and B,C to be the select variables.
Example of MUX combo circuit F(X,Y,Z) = m(1,2,6,7)
Implement g(w,x,y)=wx+xy+wy using a 4-1 multiplexer.