Title: LECTURE 13 DIGITAL ELECTRONICS
1LECTURE 13 DIGITAL ELECTRONICS
Dr Richard ReillyDept. of Electronic
Electrical EngineeringRoom 153, Engineering
Building
2Analysis of Combinational Logic
- Examples of combinational circuits
- decoders, encoders, multiplexers, adders,
subtractors, multipliers, comparators, etc. - Need to consider the implementation of
combinational systems with combinational logic
circuits. - Combinational logic deals with the method of
combining basic gates into circuits that carry
out a desired application.
3Combinational Circuits
- DEFINITION
- Logic circuits without feedback from output to
input, constructed from a functionality complete
gate set are said to be combinational . - Logic circuits that contain no memory (ability to
store information) are combinational. - Those that contain memory, including flip-flops
are said to be sequential
4Mathematical definition
- Let X be the set of all input variables
- and Y set of all output variables.
- ? The combinational function F operates on input
variables set X to produce output variable set Y - Output variables are not fed back to the input.
5General Logic Design Sequence
- Problem Statement
- Truth-Table Construction
- Switching Equations Written
- Equations Simplified
- Logic Diagram Drawn
- Decide on Logic Family for Implementation
- Logic Circuit Built
6Derivation of Switching Equation
- Logic can be described in several ways
- Truth Table
- Logic Diagram
- Boolean Equation
7Combinational Logic
- Each input variable group that produces a logical
1 in a truth table output column can form a term
in an Boolean Expression. - Each term is formed by ANDing input variables
- Each AND term is then ORed with other AND terms
to complete output Boolean Equation - NOTE
- Each AND term (also called a product term)
identified one input condition where the output
is a logical 1.
8Definitions
- Literal
- A Boolean variable or its complement.
- e.g. ? and are both literals
- Product Term
- A product term is a literal or the logical
product (AND) of multiple literals. - e.g. Let be binary variables
- ? a product term could be
9- Sum Term
- A sum term is a literal or the logical OR of
multiple literals. - e.g. Let be binary variables ? a sum
term could be - Sum of Products
- SOP is the logical OR of multiple product terms.
Each product term is the AND of binary literals. - e.g. is a SOP expression
- Products of Sums
- POS is the logical AND of multiple OR terms. Each
sum term is the OR of binary literals. - e.g.
is a POS expression
10Minterms and Maxterms
- Minterm
- A minterm is a special case product (AND) term.
- A minterm is a product term that contains all the
input variables (each literal no more than once)
that make up a Boolean expression. -
- Maxterm
- A maxterm is a special case (OR) term.
- A maxterm is a sum term that contains all the
input variables (each literal no more than once)
that make up a Boolean expression.
11Canonical Sum of Products
- A canonical SOP is a complete set of minterms
that defines when an output variable is a logical
1. - Each minterm corresponds to the row in the truth
table when the output function is 1.
12Canonical Product of Sums
- A canonical POS is a complete set of maxterms
that defines when an output variable is a logical
0. - Each maxterm corresponds to the row in the truth
table when the output function is 0.
13Canonical Forms
- Canonical defined as conforming to a general
rule. - The rule for switching logic in that each term
used in a switching equation must contain all of
the variables. - Two formats generally exist for expressing
switching equations in a canonical form. - Sum of minterms
- Product of maxterms
14Canonical Forms
- Canonical forms are not simplified
- Normally the opposite of simplification,
containing redundancies. - Use Boolean Theorems to simplify the expressions
- to eliminate redundancy
- lower cost of the final logic circuit
- Design may require converting to logic realised
in one form to another form - TTL NAND gates to ECL NOR gate
- Thus can be better to convert to canonical form
before simplification carried out
15(No Transcript)
16Generation of Switching Equations from Truth-Table
- What happens when we have a large number of
minterms or maxterms ? - Switching equations can be written more
conveniently by using minterm or maxterm
numerical designation. - where decimal equivalent value for the term can
be written directly.
17Generation of Switching Equations
- If decoded each of the minterms based on binary
weighting of each variable and produce a list of
decimal minterms, the result would be
18Generation of Switching Equations
- A canonical POS is representation by
19(No Transcript)
20Simplification of Boolean Expressions
- Prime Implicants
- Essential Prime Implicants
21Irish Times, Friday 9th January
Boolean Expression for such systems tend to be
composed for many variable.
22Simplification of Boolean Expressions
- For many applications the number of variables in
a problem is too large to simplify normally using
Karnaugh Maps. -
- When the number of variables approaches 6 or 7,
the map system becomes unworkable and prone to
errors. - Simplification means that the logic designer can
obtain more fundamental use from a given
component. - ? a software method would be more efficient when
the number of variable is large.
23The Quine-McCluskey method
- Algorithm that uses the same Boolean Algebra
postulates (as with Karnaugh Map) but in a form
suitable for a computer solution. -
- Large Karnaugh Maps require recognition of groups
of terms that may form essential prime
implicants. - Problem
- The larger the map the more difficult this
pattern recognition task becomes !!
24The Quine-McCluskey Example
- Minimise D using the Quine-McCluskey method
-
- Arrange all minterms in a list of increasing
order, so that groups of terms contain the same
number of 1s
25-
- Write out Binary Equivalent
- 0000
- 0001
- 0010
- 0011
- 0110
- 0111
- 1000
- 1001
- 1110
- 1111
26- Arrange all minterms in a list of increasing
order, so that groups of terms contain the same
number of 1s - Table-1
27 28The Quine-McCluskey method
- Group 0 contains no 1s
-
- Group 1 contains only minterms that have a single
1 1,2,8 - Group 2 contains only minterms that have a two
1s 3,6,9 - Group 3 contains only minterms that have a three
1s 7,14 - Group 4 contains only minterms that have a four
1s 15 -
-
29The Quine-McCluskey method
-
- The relation can be applied to
pairs of minterms where only one variable changes
value. - Candidates for this relationship can come from
adjacent groups of minterms
30Step 2
-
- Create a new table showing the minterms in group
that matched with those from group
such that they differ in only one
position.This is equivalent to or
Eliminated variable bit positions are
indicated by the - symbol. - Þ
31Step 2
- What do you do ?
- Compare minterm 0 group 0, with each minterms
in group 1. - Minterm 0 (group 0) and Minterm 1 (group 1)
differ by only one variable giving
- SimilarlyMinterm 0 (group 0) can combine with
minterms 2 and 8 in group 1, producing
(Minterms 0,2) (Minterms 0,8) - The combination of minterms (0,1)(0,2)(0,8)
forms group 0 in a new table, Table-2
32The Quine-McCluskey method
Table-2
33 Table-2
34The Quine-McCluskey method
- As each minterm, from a group in Table-1,
combines with a minterm in the next higher group
it is ticked off, indicating that it is now part
of a larger group. - If a minterm did not combine with another, then
no mark would be made. - If a term does not simplify it is a prime
implicant.
35No prime implicantsin this case
Table-1
36Step 3
- All of the adjacent minterm groups contained in
Table-2 are compared to see if groups of four can
be made..i.e. Table-3 - Criteria for forming groups of four
- Compare minterms in group that matched
with those in group . - Those that meet the criteria are combined in a
larger group. - Minterms 0,1 in group 0 combines with minterms
2,3 in group 1 to form a minterm 0,1,2,3
37Step 3
- If the symbols are in the same position and
only one other variable changes, then a new,
larger group is created and entered into a new
table, Table-3. - Table-3
38Table-2
39The Quine-McCluskey method
-
-
- Those minterm groups that are used in the
forming of larger groups are ticked off and any
unticked groups are prime implicants.
40The Quine-McCluskey method
- Repeat step 3, with the criteria that both
symbols must be in the same position with only
one variable allowed to change. - Same process repeated until no other combinations
of minterms is possible - 5. All unticked minterms are now considered to
be prime implicants - All prime implicants are formed into a
prime-implicant table, Table-4.
41The Quine-McCluskey method
42The Quine-McCluskey method
43The Quine-McCluskey method
x
x
x
x
44The Quine-McCluskey method
- Evaluate the prime implicants by circling those
minterms that are contained in only one prime
implicant - i.e. only one x in a column
- NOTE
- minterms (8,9,14,15) meet this condition
- circle i.e.
- Circled minterms are Essential prime implicants
45The Quine-McCluskey method
46What are the Essential Prime Implicants ?
- Minterms 0,1,8,9 and 6,7,14,15 are essential
prime implicants. - Minterms 2,3 are contained in two prime
implicants, 0,1,2,3 and 2,3,6,7. - Need to have one or the other of these prime
implicants but not both.Þ can choose either - or
47Dont Cares
- The same rules apply to the Quine-McCluskey
method with regard to Dont Cares as with the
Karnaugh map method.
Exercise Try Answer
48Hazards
- Boolean functions used to provide
- Description of the operation of circuits
- Minimisation of Boolean expressions to design
simpler circuits to implement the task in
question. -
- Under certain circumstances, a minimal gate
implementation of logic function may not be
satisfactory solution of a design problem.
49Hazards
- A glitch or logic-spike is an unwanted pulse at
the output of a combinational logic network. - A circuit with the potential for a glitch is said
to have a hazard. -
- A hazard is something intrinsic about a circuit.
- circuit with a hazard may or may not glitch
depending on the input patterns and the
electrical characteristics of the circuit. -
- Design of hazard free circuitry is critical.
50Hazards
- Hazards a problem for digital systems in two
cases -
- Time sensitive logic makes a decision based on
the output of a function without allowing the
output to settle to a final steady-state
value.Solution - increase interval between the time when inputs
first begin to change and the time when outputs
are examined by the decision making logic.I.e.
increase the system clock period.
51Hazards
- Hazardous circuits when connecting to a component
with asynchronous inputs (inputs take effect as
soon as they change rather then when sampled with
as reference signal).Solution - Avoid clocked parts with asynchronous inputs.
-
- Both solutions not always possible
- ? need methods for eliminating hazards.
52Static Hazards
- Occur when possible for an output to undergo a
momentary transition when it is expected to
remain unchanged. -
- Static-1 hazard
- occurs when output momentarily goes to 0 when it
should remain a 1. -
- Static-0 hazard
- occurs when output momentarily goes to 1 when it
should remain a 0.
53Dynamic hazards
- occurs when output signal has potential to change
more than once when it is expected to make a
single transition from 0?1 or 1?0. - Occur when there are multiple paths with
different delays from the inputs to the outputs - Difficult to eliminate.
54Dynamic hazards
- Example
- Consider the operation when B C 1 and A
changes state. -
- is slightly delayed from A because of inverter
gate.
55Dynamic hazards
- During a change from 1 ? 0
- extra gate causes both A and to be at a 0
transiently. - ? results in a transient 0 output.
56Removal of hazards
- Static hazards are eliminated as follows
- (assuming only one input changes).
- Function expanded using Canonical Expansion
- Mapped onto a Karnaugh Map
- Minterms are formed, to specify minimal
solution.
57Removal of hazards
- It can be observed that when A goes from 1 ?
0? a static-1 hazard occurs.
58Removal of hazards
-
- 4. Minterms that do not overlap any other minterm
groups are identified as potential hazards -
- 5. Additional minterms are introduced crossing
over the existing minterms so that no minterm
group is not overlapped by another group.
59Dynamic hazards
-
- Extra minterm BC is introduced between the two
original minterm groups, - So as to maintain a 1 output during A transition
60Dynamic hazards
- Implementation now has a new gate to eliminate
hazard.
61Dynamic hazards
- In general, all prime implicants must be included
in the solution to avoid static hazards. - Quine-McCluskey method best at identifying
potential static hazards.
62Dynamic hazards
- Exercise
- Obtain a hazard free realisation of the output
network given by the Karnaugh Map below. -
63Summary
- Need to have a Software based approach to
simplification of Boolean Expressions. - Need to be aware that the simplified solution may
not the what is required !