digital logic review: part ii ece511: digital system & microprocessor
Post on 21-Dec-2015
231 views
TRANSCRIPT
Digital Logic Review: Part II
ECE511: Digital System & Microprocessor
What we will learn in this session:
Negative number representation: 2’s Complement method.
Minimizing Boolean expressions:K-mapBoolean algebra.
Comparison between Active High, and Active Low signals.
2’s Complement Representation
2’s Complement
Used by M68k to represent negative numbers. Advantages:
Simple representation, conversion method. Can perform arithmetic operations directly. Can use existing circuits.
MSB regarded as sign bit. If 0, then positive number. If 1, then negative number.
Max value for 8-bits -128 to 127
2’s Complement
+34 (decimal)
00100010
-54 (decimal)
11001010
Sign bit Value
Sign bit Value
Converting to 2’s Complement
Converting 10 to -10:
10 (decimal) = 00001010 (binary)
1. Start with positive number
2. Invert all the bits
00001010(invert) 11110101
3. Add 1 to inverted result
11110101+ 1
11110110 2’s Complement (-10)
Converting 2’s Complement Back
Converting -5 to 5:
-5 (decimal) = 11111011 (binary)
1. The 2’s complement representation:
2. Invert all the bits
11111011(invert) 00000100
3. Add 1 to inverted result
00000100+ 1
00000101 Positive value (+5)
Max Value +127
0 1 1 1 1 1 1 1
Sign bitValue
-127 = 10000001
Min Value -128
1 0 0 0 0 0 0 0
Sign bitValue
+128 = ???
What about zero?0 0 0 0 0 0 0 0
Sign bitValue
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
invert
+1
1 carried out, not counted.
Calculating the Maximum Range
Calculated using the following formula:
-(2n-1)< x < +(2n-1-1)
Where n is number of bits.
Example: Calculating 2’s Complement Range What is the range for 32-bit in 2’s
complement representation?
n = 32
-(232-1+1) < x < 232-1
-2,147,483,649 < x < 2,147,483,648
Active High vs. Active Low
Active High and Active Low
Some signals are active lows.They are active when they are low.Marked with bar:
BRBERRWR /
Active High and Active Low
5V
0V
5V
0V
A
Active High5 V is ACTIVE0 V is INACTIVE
Active Low5 V is INACTIVE0 V is ACTIVE
TRUE
FALSE TRUE
FALSE
A
Why are active low signals preferred in control? More noise immunity:
All electronic circuits affected by noise.Less likely to false trigger.Not affected by voltage surge.
Noise Immunity
RESETExample:
Resets system when active (pulled high).
RESET
+
0V 0V
=
0V
5V 5V5V
False Triggering, system reset accidentally.
Signal Noise New Signal
Noise Immunity
RESETExample:
Resets system when active (pulled low).
RESET
+
0V 0V
=
0V
5V 5V5V
No effect, since RESET is active low.
Signal Noise New Signal
Noise Immunity
WR /Example:
Reads from memory when low, writes to memory when high.
WR /
+
0V 0V
=
0V
5V 5V5V
False Triggering, memory contents will be lost.
Signal Noise New Signal
Noise Immunity
WR /Example:
Reads from memory when high, writes to memory when low.
WR /
+
0V 0V
=
0V
5V 5V5V
No data lost even when false triggering occurred.
Signal Noise New Signal
Logic Minimization
Importance of Minimization In electronics, we want:
Functionality – desired objective. Minimal circuit area – wafers, board space. Minimal cost – more IC, more $$$. Maximum reliability – more components, more fail.
Logic minimization + good design achieves all this.
2 popular methods: Boolan Algebra. Karnaugh Map.
Boolean Algebra
Boolean Algebra
Named after George Boole. Based on set theory and algebra. Application to electronics – C. Shannon. Application to computers: J. V. Atanasoff. Important in computer emergence.
Boolean Identities
Set of fundamental rules:Defines Boolean behaviors.Mathematics and Set Theory.Used for minimization.
No set guideline for minimization:When to use what.Depends on luck, experience.Better to use K-Map.
Boolean Identities
Identity Law Dominance Law Idempotent Law Inverse Law Commutative Law
Associative Law Distributive Law Absorption Law De Morgan Law Double Complement
Law
*You don’t have to memorize all these, you just have to know about them. Just use K-Map for minimization.
Identity Law + Dominance Law
1x = x 0 + x = x
0x = 0 1 + x = 1
Idempotent Law + Inverse Law
xx = x x + x = x
xx = 0 x + x = x
Commutative Law + Associative Law
xy = yx x + y = y + x
(xy)z = x(yz) (x + y) + z = x + (y + z)
Distributive Law
x + yz = (x + y) (x + z)
x(y + z) = xy + xz
Absorption Law
x (x + y) = x x + xy = x
Double Complement Law
x = x
De Morgan’s Law
A . B = A + B A + B = A . B
A . B
A . B
A + B
. = + A + B
A + B
A . B
+ = .
De Morgan’s Law
A . B = A + B A + B = A . B
A . B
A + B
A . B . = +
A + B
A . B
A + B + = .
Example 1
Z = ABC + ABC + ABC
Z = ABC + B(AC + AC)
Z = ABC + BC(A + A)
Z = ABC + BC
Distributive Law
Distributive Law
Inverse Law
Minimize: Z = ABC + ABC + ABC
What if…
Z = ABC + ABC + ABC
Z = A(BC + BC) + ABC
Distributive Law
Minimize: Z = ABC + ABC + ABC
* Can never get the answer!
Stuck here…
Karnaugh Map
Karnaugh Maps
To simplify Boolean expressions. Invented by Maurice Karnaugh. Simpler than Boolean Algebra. Principles:
Group together common factors.Delete unwanted variables.
Works best for two to four variables.
Table Layout – 2 Variables
1
0
0 1
B
A
Table Layout – 3 Variables
110100 10
C
AB
1
0
Table Layout – 4 Variables
110100 10
CD
AB
11
01
00
10
How to Construct the K-Map
1. Analyze function, create Truth Table (TT).
2. Draw K-Map based on no. of variables.3. Fill the K-Map with values from TT.4. Group 1’s together.5. Extract simplified expression.
Rules110100 10
CD
AB
01 0
10
11
00 1 1
0
1
0
0
0
0
0
0
0
0
1
1
1
×
√
2. You can go right-left or up-down, but you cannot go diagonal.
1. You must not miss any 1’s.
Rules
3. You can only have 1, 2, 4, 8, …, 2n elements in a group.
110100 10
CD
AB
01 0
10
11
00 1 1
0
0
1
0
0
0
0
0
0
0
0
1
1×
110100 10
CD
AB
01 0
10
11
00 1 1
0
1
1
0
1
1
0
1
1
1
0
0
1
√
Rules
110100 10
CD
AB
01 0
10
11
00 1 1
0
0
1
1
1
1
0
0
0
0
1
0
1
×
√
4. Try to cover all 1’s using the minimum number of groups..
110100 10
CD
AB
01 0
10
11
00 1 1
0
0
1
1
1
1
0
0
0
0
1
0
1
2 groups
6 groups
Rules
110100 10
CD
AB
01 0
10
11
00 1 1
0
0
1
0
1
0
0
0
0
1
0
1
0
√5. Overlapping groups are allowed.
√
110100 10
CD
AB
01 0
10
11
00 0 0
0
1
0
1
0
1
0
0
0
0
1
0
0
√
Rules
6. Wrap-around is allowed.
110100 10
CD
AB
01 0
10
11
00 1 0
0
1
0
0
1
0
0
0
1
0
0
0
0
110100 10
CD
AB
01 0
10
11
00 1 0
1
1
0
0
1
0
0
1
1
0
0
0
0
√ √Corner wrap Side wrap
Rules
110100 10
CD
AB
01 0
10
11
00 1 0
0
1
1
0
1
1
0
0
1
0
0
0
0
√Top-down wrap
Rules
6. Don’t cares (X) can be grouped with 1’s if they help.
110100 10
CD
AB
01 0
10
11
00 0 X
0
X
0
0
0
0
0
0
0
1
X
1
1
110100 10
CD
AB
01 0
10
11
00 0 X
0
X
0
0
0
0
0
1
0
1
X
1
1
√Don’t cares can help make the group larger(1 group).
Not selecting don’t cares (2 groups) ×
Extracting the Results
110100 10
CD
AB
01 0
10
11
00 1 1
0
0
1
1
1
1
0
0
0
0
1
0
1
110100 10
00
10
11
1101
CD
CD
AB
AB*A and D cancel out, onlyB and C are left.
*All AB cancel out, onlyC and D are left.
BCDCY Answer:
Example
Minimize this logic equation:
ACCABBACBAZ
Solution
ACCABBACBAZ
A B C Z
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
Solution
110100 10
C
AB
1
0 111 0
110 1
Values of Z (from TT)
Solution
110100 10
C
AB
1
0 111 0
110 1
Solution
110100 10
C
AB
1
0 111 0
110 1
ACBCAZ
Example 1Minimize: Z = ABC + ABC + ABC
AB
110100 10
1
0 0 11
00 10
0
C
Z = ABC + BC
A B C Z0 0 0 00 0 1 00 1 0 10 1 1 01 0 0 01 0 1 11 1 0 11 1 1 0
Truth Table:
Example 2Minimize: Z = ABCD + ABCD + ABCD + ABCD
B C D Z0 0 0 00 0 1 00 1 0 00 1 1 11 0 0 01 0 1 01 1 0 01 1 1 0
A00000000
B C D Z0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 01 0 1 11 1 0 01 1 1 0
A11111111
Truth Table:
Example 2
110100 10
CD
AB
01 0
10
11
00 0 0
1
0
0
0
0
0
1
0
1
0
0
1
0
Z = ACD + ABCD + ABCD
Conclusion
Conclusion
Active low signals are active when they are low.
2’s Complement represents negative numbers in µP.
Boolean Logic and K-Map minimize equations.K-Map simpler, less errors.Both should have same answers.
The End
Please read:http://computerscience.jbpub.com/ecoa/2e/Null03.pdf
http://en.wikipedia.org/wiki/Two's_complement
http://en.wikipedia.org/wiki/Active_low.
http://www.ee.surrey.ac.uk/Projects/Labview/minimisation/karnaugh.html