240 likes | 375 Views
COMP541 Combinational Logic - II. Montek Singh Aug 27, 2014. Today. Digital Circuits (review) Basics of Boolean Algebra (review) Identities and Simplification Basics of Logic Implementation Minterms and maxterms Going from truth table to logic implementation. Digital Circuits.
E N D
COMP541Combinational Logic - II Montek Singh Aug 27, 2014
Today • Digital Circuits (review) • Basics of Boolean Algebra (review) • Identities and Simplification • Basics of Logic Implementation • Minterms and maxterms • Going from truth table to logic implementation
Digital Circuits • Digital Circuit = network that processes binary variables • one or more binary inputs • one or more binary outputs • inputs and outputs are called “terminals” • a functional specification • relationship between inputs and outputs • a timing specification • describes delay from inputs changing to outputs responding
Digital Circuits • Inside the black box • subcircuits or components or elements • connected by wires • wires and terminals often called “nodes” • each node has a binary value • each node is an input, an output, or “internal” • Example: • E1, E2, E3 are elements • A, B, C are input nodes • Y, Z are output nodes • n1 is an internal node
Types of circuits • Two types: with memory and without • Combinational Circuit • output depends only on the current values of the inputs • provided enough time is given for output to respond • output does not depend on past inputs or outputs • called “memoryless” • example: AND gate • Sequential Circuit • anything not combinational is sequential • output depends on not only current inputs, but also past behavior • previous inputs and/or outputs affect behavior • has “memory”, or is “stateful” • example: counter
Combinational Circuits: Examples OR Adder Multi-output example Slash notation
Combinational Circuits • Theorem: A circuit is combinational if: • every element is itself combinational • every node is either designated as an input, or connects to exactly one output terminal of an element • outputs of two elements are never “shorted together” • ensures that each node has a unique/unambiguous value • contains no cyclic paths • every path through the circuit visits each node at most once • no “feedback” • Conditions above ensure that output is only a function of inputs • Proof: By induction
Combinational Circuits: Examples • Which meet the conditions for combinational logic?
Identities in Boolean Algebra • Use identities to manipulate functions • You can use distributive law … … to transform to
Duals • Left and right columns are duals • Replace ANDs and ORs, 0s and 1s
Commutativity • Operation is independent of order of variables
Associativity • Independent of order in which we group • So can also be written asand
Substitution • Can substitute arbitrarily large algebraic expressions for the variables • Distribute an operation over the entire expression • Example: X + YZ = (X+Y)(X+Z) Substitute ABC for X ABC + YZ = (ABC + Y)(ABC + Z)
DeMorgan’sTheorem • Used a lot • NOR invert, then AND • NAND invert, then OR
Algebraic/Boolean Manipulation • Apply algebraic and Boolean identities to simplify expression • example:
Simplification Example Apply Apply Apply
Consensus Theorem • The third term is redundant • Can just drop third term (consensus term) • Proof summary (for first version): • For third term to be true, Y & Z both must be 1 • Then one of the first two terms is already 1! • Exercise: Provide a similar proof for the 2nd version
Complement of a Function • Definition: 1s & 0s swapped in truth table • Mechanical way to derive algebraic form • Take the dual • Recall: Interchange AND and OR, and 1s & 0s • Complement each literal • x becomes x’ (x’ means complement of x)
Next Lecture • Next Class: More on combinational logic • Commonly-used combinational building blocks