Logic Gates & Boolean Algebra Chin-Sung Lin Eleanor Roosevelt High School
Logic Gates & Boolean Algebra System Concept Systems & Subsystems Analog Systems vs. Digital Systems Combinational vs. Sequential Circuits Truth Tables & Basic Logic Gates Logic Simulation Digital Logic Circuits Equivalent Logic Circuits Digital Building Blocks
System Concept
What Are They In Common? VS. Computer Onion
System Concept System (System Function) System (System Function) Input Output
System Concept System (System Function) System (System Function) Input Output Input Output System Function
System Concept A convenient way to view and understand both the nature and man-made worlds. Hide details and complexity from the viewers by encapsulating this detail information into a “system”. Only the inputs/outputs (I/O) of the system, and the function of the system (called system function) are important. System (System Function) System (System Function) Input Output
Systems & Subsystems
System (System Function) System (System Function) Systems & Subsystems Systems can be further divided down to subsystems. Subsystems are connected together through inputs and outputs to form the larger system. Input Output Subsystem Sub- system Input Output
Subsystem Sub- system Input Output Systems & Subsystems Subsystem themselves can also be further divided down to “Sub-subsystems”. This process can be continued until we reach the most basic elements of the digital logic world— basic logic gates. A system has a layered hierarchical structure like an onion. Input Output Input Output
Systems & Subsystems
System & Subsystem Example
Analog System vs. Digital Systems
Two types of systems: Analog system and digital system. Analog System Analog System Input Output Digital System Digital System Input Output
Analog System vs. Digital Systems The values of input/output/internal signals of an analog system can vary over a continuous range of values. Analog System Analog System Input Output
Analog System vs. Digital Systems The values of input/output/internal signals of a digital system can only be 1’s and 0’s. Digital System Digital System Input Output
Analog System vs. Digital Systems Lots of real-world signals are analog in nature. Analog-to-Digital (A/D) converter has been used to process (digitization/quantization) the incoming analog signals and change them to digital (binary) signals. The digital signals can now be processed by the digital system (e.g., microprocessor). Digital System Digital System Digital I/P A/D Converter A/D Converter Analog I/P
Analog System vs. Digital Systems The output digital signals from the digital system are digital (binary) in nature. Digital-to-Analog (D/A) converter has been used to process the outgoing digital signals and change them to analog (continuous) signals. Most of the computers are the mix of analog and digital systems. Digital System Digital System Digital I/P Digital O/P D/A Converter D/A Converter A/D Converter A/D Converter Analog I/P Analog O/P
Digital System Digital System Digital I/P Digital O/P D/A Converter D/A Converter A/D Converter A/D Converter Analog I/P Analog O/P Analog System vs. Digital Systems
Digital System Digital System Digital I/P Digital O/P D/A Converter D/A Converter A/D Converter A/D Converter Analog I/P Analog O/P Digital Systems In this unit, we are going to focus ONLY on the digital system.
Combinational vs. Sequential Systems
Combinational System Combinational System Input Output Sequential System Sequential System Input Output Two types of digital systems/circuits— combinational and sequential.
Combinational vs. Sequential Systems The outputs of a combinational digital system/circuits are solely decided by its inputs. Combinational System Combinational System Input Output Combinational System Combinational System Input Output Combinational System Combinational System Input Output
Combinational vs. Sequential Systems The outputs of a sequential digital system/circuits depend not only on its inputs, but also on the “current state” of the system. Sequential System Sequential System Input Output Sequential System Sequential System Input Output Sequential System Sequential System Input Output
Sequential System Sequential System Sequential System Sequential System Sequential System Sequential System Combinational vs. Sequential Systems The outputs of a sequential digital system/circuits depend not only on its inputs, but also on the “current state” of the system. Sequential system/circuits have some sort of “memory” in it, so it can “memorize” the “current state” of the system and behave accordingly. Input Output Input Output Input Output State: 101 State: 110 State: 001
Combinational vs. Sequential Systems Combinational System Combinational System Input Output Sequential System Sequential System Input Output
Sequential System Sequential System Input Output Combinational Systems In this unit, we are going to focus MAINLY on the combinational digital system. Combinational System Combinational System Input Output
Truth Tables & Basic Logic Gates
Truth Tables A truth table shows how a logic circuit's output responds to various combinations of the inputs. A truth table describe the system function of a logic system. Use “1” and “0” to represent “T” and “F” respectively p q pqpq Use a logic gate symbol to represent the function.
Truth Tables & Basic Logic Gates X = A B There are eight basic logic gates. However, only AND, OR and NOT are the most fundamental ones.
Negations (NOT) The negation of a statement always has the opposite truth value of the original statement and is usually formed by adding the word not to the given statement. StatementRight angle is 90 o NegationRight angle is not 90 o TRUE FALSE StatementTriangle has 4 sides NegationTriangle does not have 4 sides FALSE TRUE
Truth Table – Negation (NOT) The relationship between a statement p and its negation ~p can be summarized in a truth table. A statement p and its negation ~p have opposite truth values. p~p 01 10
Conjunctions (AND) A compound statement formed by combining two simple statements using the word and. Statement: p, q Conjunction: p and q Symbols: p ^ q
Truth Table – Conjunctions (AND) A conjunction is true when both statements are true. When one or both statements are false, the conjunction is false. pqp ^ q
Disjunctions (OR) A compound statement formed by combining two simple statements using the word or. Statement: p, q Disjunction p or q Symbols: p V q
Truth Table – Disjunctions (OR) A disjunction is true when one or both statements are true. When both statements are false, the disjunction is false. pqp V q
Truth Tables & Basic Logic Gates The truth table summarizes all the possible values of input signals and their corresponding output signal values. The truth table is an effective way to describe the system function of a digital system. Input X Output Y XY /1 1/0 System Function
Truth Tables & Basic Logic Gates A logic gate is a device performing a logical operation on one or more logical inputs, and produces a single logical output. 0/1 1/0 Logic Gate X
Boolean Algebra & Boolean Functions Boolean algebra is a branch of algebra in which the values of the variables are the truth values true (1) and false (0). The main operations of Boolean algebra are the conjunction (and, ), the disjunction (or, +), and the negation (not, ). 0/1 1/0 Logic Gate X
Boolean Algebra & Boolean Functions A Boolean function describes how to determine a Boolean value output based on some logical calculation from Boolean inputs. Y = X Y = A + B Y = A B (NOT)(OR)(AND)
Truth Tables & Basic Logic Gates X XY NOT (Inverter) Boolean Function Truth Table Logic Gate Y = X
Truth Tables & Basic Logic Gates AND Truth Table Logic Gate ABY Y = A B Boolean Function
Truth Tables & Basic Logic Gates Truth Table Logic Gate ABY OR Y = A + B Boolean Function
Truth Tables & Basic Logic Gates XY Buffer Boolean Function Truth Table Logic Gate Y = X X
Truth Tables & Basic Logic Gates NAND Truth Table Logic Gate ABY Y = A B Boolean Function
Truth Tables & Basic Logic Gates Truth Table Logic Gate ABY NOR Y = A + B Boolean Function
Truth Tables & Basic Logic Gates XOR Truth Table Logic Gate ABY Y = A B Boolean Function
Truth Tables & Basic Logic Gates Truth Table Logic Gate ABY XNOR Y = A B Boolean Function Y = A B
Truth Tables & Basic Logic Gates XX
XX
XX
X = A B
Digital Logic Circuits
Logic gates can be connected and cascaded to form logic circuits. Every logic circuits can be treated as a system, and can be described by a system function— truth table. We can derive the truth table of the circuit by evaluating the logic circuit stage by stage. Y
Digital Logic Circuits ABCDEFY C D E F Y
ABCDEFY C D E F Y
ABCDEFY C D E F Y
ABCDEFY C D E F Y
ABCDEFY C D E F Y
ABCDEFY C D E F Y
ABCDEFY C D E F Y = A B +
Digital Logic Circuits Exercise ABCDEFGQ C D E F D E F G
ABCDEFGQ C D E F D E F G
Logic Simulation
Logic simulation is the use of simulation software (Logisim) to predict the behavior of digital circuits.
Equivalent Logic Circuits
Logic circuits of different gates and forms can have an identical truth table. These circuits are called equivalent logic circuits. This implies that a digital system with certain system function (truth table) can have many different implementations.
Laws of Boolean Algebra One variable NOT: x = x AND: x · x = x x · x = 0 OR: x + x = x x + x = 1 XOR: x ⊕ x = 0 x ⊕ x = 1
Laws of Boolean Algebra Commutativity AND: x · y = y · x OR: x + y = y + x XOR: x ⊕ y = y ⊕ x Associativity AND: (x · y) · z = x · (y · z) OR: (x + y) + z = x + (y + z) XOR: (x ⊕ y) ⊕ z = x ⊕ (y ⊕ z)
Laws of Boolean Algebra Distributivity x · (y + z) = (x · y) + (x · z) x + (y · z) = (x + y) · (x + z) x · (y ⊕ z) = (x · y) ⊕ (x · z) De Morgan’s laws NAND: x · y = x + y NOR: x + y = x · y
Logic Simplification We can apply the laws of Boolean algebra to reduce the expression to its simplest form (simplest defined as requiring the fewest gates to implement)
Equivalent Logic Circuits Different implementations are chosen to meet different design considerations Less number of gates (area) less kind of gates (gate type), and less stages of the circuits (speed).
Equivalent Logic Circuits For example, what are the following logic circuits?
Equivalent Logic Circuits For example, all of the following four logic circuits have the same truth table, and implement the XOR gate functionality.
Digital Building Blocks
All these logic circuits can be encapsulated into a block (XOR gate) and treated as a system.
Digital Building Blocks This XOR gate can be further used as a building block to build larger and more complicated logic circuit such as a “full adder”.
Digital Building Blocks A full adder can again be treated as a building block to build a larger logic circuit called Arithmetic-Logic Unit (ALU).
Digital Building Blocks ALU can again be treated as a building block to build a Central Processing Unit (CPU).
Digital Building Blocks This process can go on and on to build an Intel® Intel® Core™ i7 Processor with these digital logic building blocks. Intel Core i7 Processor
Digital Building Blocks The processor is so complicated at this level that it can contain hundreds of millions of basic logic gates.
XX Logic Gates & Boolean Algebra