Title: Digital Logic Circuit Design Putting logic to use
1Digital Logic Circuit DesignPutting logic to use
2Introduction
- So you know and love the fundamental logic gates
- But why are they good for?
- How are they used in real life?
3Digital Design
- When we teach combinational circuits, often, the
circuit comes before the truth table
- But this is backwards to reality
- In circuit design, we develop a truth table and
then use it to determine the circuit needed
4The Design Process
- Suppose you want to design an electronic circuit
for a 2-person voting system that determines if
there is a consensus - How do you go about this?
- What steps are involved?
5Step 1 Declaring Variables(the hard part)
- When working with digital logic we must use
Boolean values (on/off or 0/1) - The first step is to model the systems inputs
and outputs as Boolean values - Each input will be a separate variable
- The output will be a separate variable
- The variables must be chosen so they can be
represented as Boolean values
6Step 1 Declaring Variables(the hard part)
- Inputs will be
- The first voter, call it A
- The second voter, call it B
- Either of which can be either yes/no values
- The output can be called Y, with yes meaning a
consensus and no meaning not a consensus
7Step 2 Determine the Truth Table
- The next step is to determine the truth table -
that is, what combinations of inputs make our
output(s) true (i.e. 1) - In our case the truth table is as follows
8Step 2 Determine the Truth Table
Two different versions of the truth table
9Step 3 Write the Expression
- Logic functions derived from a truth table can be
very complex - The Boolean logic functions derived are called
minterm expressions - These functions are the sum of products of
Boolean variables that have an output value of
true
10Step 3 Write the Expression
- Only rows with the output 1 have minterms written
- The minterms are summed together to give an
expression for Y
11Step 3 Write the Expression
- In this case our Boolean expression would be
- The 2 values added (that is ored) together
correspond to the expressions for the rows in the
truth table with 1s - These expressions are called minterms
- http//doyle.wcdsb.ca/ICE4MI/digitial_electronics/
minterms.htm
12Step 4 Simplification
- Minterm expressions can be simplified using
Boolean Algebra Laws or Karnaugh Maps (Kmaps) - For example, the expressionsimplifies to
- This is because it is true only in all of the
cases when B is true - Advantages to simplification include economics,
clarity and aesthetics
13Step 4 Simplification with Boolean Algebra Laws
- And Laws
- A1A
- A00
- AAA
- AA0
- ABBA
- (AB)CA(BC)
- A(BC)(AB)(AC)
- (AB)AB
- Or Laws
- A11
- A00
- AAA
- AA1
- ABBA
- (AB)CA(BC)
- A(BC)(AB)(AC)
- (AB)AB
- http//doyle.wcdsb.ca/ICE4MI/digitial_electronics/
boolean_algebra_laws.htm
14Step 4 Simplification with Boolean Algebra
- Using the rules on the last slide show that
- AB AB B
- Left Side
- AB AB
- (A A) B
- 1 B
- B
- http//doyle.wcdsb.ca/ICE4MI/digitial_electronics/
boolean_simplification.htm
15Step 4 Simplification with K-map
- A K-map is an alternate format for a truth table
- Simplification becomes mechanical, easy
- Step 1 draw a k-map
- Variables go on sides
- Place outputs of 1 at intersections
16Step 4 Simplification with K-map
- Step 2 draw loops
- All 1s must be in at least one loop
- Loops can contain 1, 2, 4, 8 1s
- Loops may be created by going off the side, top
or bottom of the k-map (the k-map wraps around) - Any variable that appears with its complement in
a loop is eliminated - Write a minterm for each loop
17Step 4 Simplification with K-map
- Step 2 draw loops
- One loop contains 2 1s
- The variable A and its complement appear in the
loop, so they are eliminated - The expression is
18Step 4 Simplification continued
- Complex Boolean expression simplification can
also be done using software - http//doyle.wcdsb.ca/ICE4MI/digitial_electronics/
karnaugh_maps.htm - Simple Kmap programs exist as well
- http//doyle.wcdsb.ca/ICE4MI/digitial_electronics/
KarnaughExplorer.htm
19Step 5 Build or Prototype the circuit
- At this point you are ready to simulate the
circuit using software or create your circuit
using logic chips and input/output components - For the voting system
- Simplification does not yield anything simpler
- inputs can be simple solid state, on/off switches
- the logic is a combination of AND and OR gates
- outputs can be shown with LEDs
- http//doyle.wcdsb.ca/ICE4MI/LearnAndOrNot/index.h
tml
20Step 5 Creating the circuit
- You could have students build their circuits into
a working model - Ideas include traffic light systems, voting
systems, games, alarm/sensor systems - Individualized assignments (with the same answers
for easy evaluation) - Turn on motor to close the garage door when the
sun sets or its raining and the door is up - Give a parking ticket when the meter has run out
or car not parked correctly and the car is red
21Your Turn
- In a group of 2-4 people, design the logic
circuit for one of the following - A 2 person voting system with 3 outputs majority
for, against and tie - A 3 person voting system with 2 outputs for and
against - A walk signal for a standard traffic light
- A circuit that compares two 2-bit values and
outputs if they are the same
22Design Resources
- Reid, Neal E. and Wilson, Stanley L. Computer
Science Program Design and Technology. Toronto
John Wiley Sons, 1985, pp 334-365.
23Minterm Resources
- Minterms http//doyle.wcdsb.ca/ICE4MI/digitial_el
ectronics/minterms.htm - Simplification with Karnaugh maps ( minterms)
http//doyle.wcdsb.ca/ICE4MI/digitial_electronics/
karnaugh_maps.htm - Karnaugh map explorer http//doyle.wcdsb.ca/ICE4M
I/digitial_electronics/KarnaughExplorer.htm
24Boolean Algebra Resources
- Boolean algebra laws http//doyle.wcdsb.ca/ICE4MI
/digitial_electronics/boolean_algebra_laws.htm - Boolean algebra simplification
http//doyle.wcdsb.ca/ICE4MI/digitial_electronics/
boolean_simplification.htm - Logic gate simulator http//doyle.wcdsb.ca/ICE4MI
/LearnAndOrNot/index.html