460 likes | 629 Views
CS147 Lecture 6. Prof. Sin-Min Lee Department of Computer Science. POS, K-map and Multiplexer. Karnaugh maps. Last time we saw applications of Boolean logic to circuit design. The basic Boolean operations are AND, OR and NOT.
E N D
CS147 Lecture 6 Prof. Sin-Min Lee Department of Computer Science POS, K-map and Multiplexer
Karnaugh maps • Last time we saw applications of Boolean logic to circuit design. • The basic Boolean operations are AND, OR and NOT. • These operations can be combined to form complex expressions, which can also be directly translated into a hardware circuit. • Boolean algebra helps us simplify expressions and circuits. • Today we’ll look at a graphical technique for simplifying an expression into a minimal sum of products(MSP) form: • There are a minimal number of product terms in the expression. • Each term has a minimal number of literals. • Circuit-wise, this leads to a minimal two-level implementation.
Review: Standard forms of expressions • We can write expressions in many ways, but some ways are more useful than others • A sum of products (SOP) expression contains: • Only OR (sum) operations at the “outermost” level • Each term that is summed must be a product of literals • The advantage is that any sum of products expression can be implemented using a two-level circuit • literals and their complements at the “0th” level • AND gates at the first level • a single OR gate at the second level • This diagram uses some shorthands… • NOT gates are implicit • literals are reused • this is not okay in LogicWorks! f(x,y,z) = y’ + x’yz’ + xz
Unsimplifying expressions • You can also convert the expression to a sum of minterms with Boolean algebra. • Apply the distributive law in reverse to add in missing variables. • Very few people actually do this, but it’s occasionally useful. • In both cases, we’re actually “unsimplifying” our example expression. • The resulting expression is larger than the original one! • But having all the individual minterms makes it easy to combine them together with the K-map. xy + y’z + xz = (xy 1) + (y’z 1) + (xz 1) = (xy (z’ + z)) + (y’z (x’ + x)) + (xz (y’ + y)) = (xyz’ + xyz) + (x’y’z + xy’z) + (xy’z + xyz) = xyz’ + xyz + x’y’z + xy’z
K-maps from truth tables • You can also fill in the K-map directly from a truth table. • The output in row i of the table goes into square mi of the K-map. • Remember that the rightmost columns of the K-map are “switched.”
The Sum-of-Products (SOP) Form When two or more product terms are summed by Boolean addition
Conversion of a General Expression to SOP Form Any logic expression can be change into SOP form by applying Boolean Algebra techniques Example: Try This:
The Standard SOP Form Multiply:
The Products-of-Sum (POS) Form When two or more sum terms are multiplied.
The Standard POS Form Rule 12! Add:
Converting SOP to Truth Table • Examine each of the products to determine where the product is equal to a 1. • Set the remaining row outputs to 0.
Converting POS to Truth Table • Opposite process from the SOP expressions. • Each sum term results in a 0. • Set the remaining row outputs to 1.
The Karnaugh Map • Provides a systematic method for simplifying Boolean expressions • Produces the simplest SOP or POS expression • Similar to a truth table because it presents all of the possible values of input variables
K-Map SOP Minimization • A 1 is placed on the K-Map for each product term in the expression. • Each 1 is placed in a cell corresponding to the value of a product term
Example: Map the following standard SOP expression on a K-Map: Solution:
Example: Map the following standard SOP expression on a K-Map: Solution:
Exercise: Map the following standard SOP expression on a K-Map:
K-Map Simplification of SOP Expressions • A group must contain either 1, 2, 4, 8 or 16 cells. • Each cell in group must be adjacent to one or more cells in that same group but all cells in the group do not have to be adjacent to each other • Always include the largest possible number 1s in a group in accordance with rule 1 • Each 1 on the map must be included in at least one group. The 1s already in a group can be included in another group as long as the overlapping groups include noncommon 1s Goal: To maximize the size of the groups and to minimize the number of groups
Determining the minimum SOP Expression from the Map • Groups the cells that have 1s. Each group of cells containing 1s create one product term composed of all variables that occur in only one form (either uncomplemented or complemented) within the group. Variable that occurs both uncomplemented and complemented within the group are eliminated. These are called contradictory variables.
Example: Determine the product term for the K-Map below and write the resulting minimum SOP expression 1
Example: Use a K-Map to minimize the following standard SOP expression
Example: Use a K-Map to minimize the following standard SOP expression
Don’t Care (X) Conditions • A situation arises in which input variable combinations are not allowed • Don’t care terms either a 1 or a 0 may be assigned to the output
Don’t Care (X) Conditions Example of the use of “don’t care” conditions to simplify an expression
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”.
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.