SlideShare a Scribd company logo
1 of 39
Download to read offline
1
1
CSE 320
Computer Organization
and Architecture
2
Course organization
Computing environment
Overview of course topics
Today’s Lecture
2
3
Course website
http://www.cse.msu.edu/~cse320/
Syllabus and calendar
Enrollment
Course Organization
4
Hardware: array of ARM processors
o pi1.cse.msu.edu
.
.
o pi22.cse.msu.edu
Operating system: Linux
Accounts
Computing Environment
3
5
Due Thursday, 9/5 (by 11:59 PM)
Focuses on computing environment:
o UNIX tutorial
o Using the "vim" editor
o Using the "handin" system
Computer Project #1
6
The Information Revolution
Computers have led to a third revolution for
civilization, with the information revolution taking its
place alongside the agricultural and industrial
revolutions.
This race to innovate has led to unprecedented
progress since the inception of electronic computing
in the late 1940s. Had the transportation industry
kept pace with the computer industry, for example,
today we could travel from New York to London in
a second for a penny. (Patterson and Hennessy)
4
7
The Information Revolution
Driven by rapid innovation in technology
Complex applications now feasible
• World Wide Web
• Cell phones
• Computers in automobiles
• Human genome project
8
Computer architecture focuses on the functional
behavior of a computing system as viewed by
the programmer (such as the size of an integer
data object in bytes).
Computer organization focuses on the structural
relationships which are not visible to the
programmer (such as the clock frequency or the
total size of RAM).
Architecture and Organization
5
9
We can view a computing
system at several levels,
from the highest level (users
running programs) to the
lowest level (transistors
operating according to the
laws of physics).
Levels of Abstraction
10
The von Neumann
model consists of five
major components:
1) input unit
2) output unit
3) arithmetic logic unit
4) memory unit
5) control unit
The von Neumann Model
6
11
Refinement of the von Neumann model
Communication between components handled by the
system bus
The System Bus Model
12
Fetch Phase:
o RAM[ PC ] ==> IR
Execute Phase:
o decode IR
o take appropriate action
o update PC
The Fetch-Execute Cycle
7
13
Assume each instruction is 4 bytes long
Assume PC: 00010700
Fetch phase:
o access RAM[ 00010700 ]
o copy 4 bytes (E0827003) to IR
IR now contains: E0827003
Example
14
Assume IR: E0827003
Execute phase:
o decode IR
ADD instruction on ARM
o take appropriate action
R[2] + R[3] ==> R[7]
o update PC
PC + 4 ==> PC
Example (continued)
8
15
RAM
Address
Data
00000000
00000001
00000002
.
.
.
.
00010700 E0
. 82
. 70
. 03
.
.
FFFFFFFD
FFFFFFFE
FFFFFFFF
CPU
PC: 00010700
E0827003IR:
16
CPU
PC: 00010700
IR: E0827003
ADD
R[2]
R[3]
R[7]
9
17
Must be able to convert between bases:
Machines use base 2 (binary)
Humans use base 10 (decimal)
Humans abbreviate base 2 using base 16
(hexadecimal) or base 8 (octal)
Number Systems
18
Decimal Hexadecimal Octal Binary
0 0 0 0000
1 1 1 0001
2 2 2 0010
3 3 3 0011
4 4 4 0100
5 5 5 0101
6 6 6 0110
7 7 7 0111
8 8 10 1000
9 9 11 1001
10 A 12 1010
11 B 13 1011
12 C 14 1100
13 D 15 1101
14 E 16 1110
15 F 17 1111
10
19
Powers of Two
• 20 = 1
• 21 = 2
• 22 = 4
• 23 = 8
• 24 = 16
• 25 = 32
• 26 = 64
• 27 = 128
• 28 = 256
• 29 = 512
• 210 = 1024
• 211 = 2048
• 212 = 4096
• 213 = 8192
• 214 = 16384
• 215 = 32768
20
Base 16 often used instead of base 2
Example:
0100101101111100 = 4b7c
Groups of four bits (from right):
0100 1011 0111 1100 = 4b7c
Shorthand for Binary
11
21
Base 8 sometimes used instead of base 2
Example:
010010110111110 = 22676
Groups of three bits (from right):
010 010 110 111 110 = 22676
Shorthand for Binary
22
Example: ASCII characters
A 1000001 100 0001 41
B 1000010 100 0010 42
C 1000011 100 0011 43
.
.
.
X 1011000 101 1000 58
Y 1011001 101 1001 59
Z 1011010 101 1010 5a
12
23
Example: UNIX file permissions
Permissions for each file:
rwx rwx rwx (owner, group, world)
Make directory public:
chmod 755 my_directory
Make file private:
chmod 600 my_file
24
Example: 2756 base 8 ==> base 10
2756 base 8 = 2 * 83 + 7 * 82 + 5 * 81 + 6 * 80
= 1518 base 10
Nested form:
2756 base 8 = (((((((2) * 8) + 7) * 8) + 5) * 8) + 6)
= 1518 base 10
Convert Other Base to Decimal
13
25
Algorithm:
answer = 0
iterate over digits in original number
answer = answer * base + current digit
Convert Other Base to Decimal
26
2756 base 8 ==> base 10
answer = 0
= (0 * 8) + 2 = 2
= (2 * 8) + 7 = 23
= (23 * 8) + 5 = 189
= (189 * 8) + 6 = 1518
2756 base 8 = 1518 base 10
Convert Other Base to Decimal
14
27
Example: 44 base 10 ==> base 2
44 / 2 = 22 R 0
22 / 2 = 11 R 0
11 / 2 = 5 R 1
5 / 2 = 2 R 1
2 / 2 = 1 R 0
1 / 2 = 0 R 1
44 base 10 = 101100 base 2
Convert Decimal to Other Base
28
Example: 44 base 10 ==> base 8
44 / 8 = 5 R 4
5 / 8 = 0 R 5
44 base 10 = 54 base 8
Convert Decimal to Other Base
15
29
Algorithm:
value = original number
loop until value == 0
current digit = value % base
value = value / base
Convert Decimal to Other Base
30
Base 2 ==> Base 16: group digits
ex: 1100011 base 2 ==> 63 base 16
Base 16 ==> Base 2: decompose digits
ex: 5C base 16 ==> 1011100 base 2
Other Base ==> Base 10: multiply and add
Base 10 ==> Other Base: repeated division
Summary: base conversions
1
1
Today: Combinational Circuits
(H&H 2.1-2.9)
Next: continued
Handouts
Syllabus (old)
Lecture Topics
2
Self-study module #1 (this week)
Consulting hours posted
Project #1 (due no later than 9/5)
Reminder: check account password
Reminder: use Pi array
Announcements
2
3
Due Thursday, 9/5 (by 11:59 PM)
Focuses on computing environment:
o UNIX tutorial
o Using the "vim" editor
o Using the "handin" system
Computer Project #1
4
Circuit design based on Boolean algebra
Three equivalent representations
o algebraic expressions
o truth tables
o circuit diagram
Combinational Circuits
3
5
Expression in Boolean algebra:
F(A,B) = A'B + AB'
Truth table:
Example: Exclusive OR
A B F(A,B)
0 0 0
0 1 1
1 0 1
1 1 0
6
Circuit diagram:
A B
F(A,B)
4
7
Boolean algebra
8
All possible functions on two inputs
5
9
Basic Logic Gates
10
Other Logic Gates
6
11
Any circuit can be defined using only:
{ NOT, AND, OR }
Other complete gate sets:
{ NAND }
{ NOR }
Complete Gate Sets
12
Useful to define gates which have more
than 2 inputs.
AND: output is 1 if all inputs are 1
OR: output is 1 if any input is 1
Not meaningful for NOT
More Than Two Inputs
7
13
Can be implemented using cascading:
Can also be implemented directly
(more efficient)
More Than Two Inputs
14
Canonical Sum-of-Products Form:
F(A,B) = A'B + AB'
The expression is the sum of a series of
products, where each product is a minterm
A minterm is a product where each
variable is present (complemented or
uncomplemented)
Standard Forms
8
15
For a function with two inputs, there are
four possible minterms:
m0: A'B'
m1: A'B
m2: AB'
m3: AB
Canonical SOP form has a subset of all
possible minterms
Minterms
16
For a function with three inputs, there are
eight possible minterms:
m0: A'B'C' m4: AB'C'
m1: A'B'C m5: AB'C
m2: A'BC' m6: ABC'
m3: A'BC m7: ABC
For a function with four inputs, there are
sixteen possible minterms
Minterms
9
17
The following are in canonical SOP form:
F(A,B) = A'B' + A'B + AB'
G(A,B,C) = A'BC + AB'C + ABC' + ABC
H(A,B,C,D) = A'B'C'D' + A'B'CD + ABCD'
Examples
18
The following are equivalent:
F(A,B) = A'B' + A'B + AB'
F(A,B) = m0 + m1 + m2
F(A,B) = minterms( 0, 1, 2 )
Alternate notation (minterm lists)
10
19
G(A,B,C) = A'BC + AB'C + ABC' + ABC
= minterms( 3, 5, 6, 7 )
H(A,B,C,D) = A'B'C'D' + A'B'CD + ABCD'
= minterms( 0, 3, 14 )
Additional Examples:
20
Canonical Sum-of-Products Form:
F(A,B) = A'B + AB' = minterms( 1, 2 )
Truth table:
Truth tables and minterms
A B F(A,B)
0 0 0 m0
0 1 1 m1
1 0 1 m2
1 1 0 m3
11
21
Canonical Sum-of-Products form makes it
easy to convert between representations:
Given: G(A,B,C) = minterms( 3, 5, 6, 7 )
G(A,B,C) = A'BC + AB'C + ABC' + ABC
truth table has 1's in rows m3, m5, m6, m7
circuit diagram has four AND gates (one
for each minterm) and one OR gate
22
Ideally, a Boolean expression will be as simple as
possible and still generate the correct values
Note that there are an infinite number of Boolean
expressions that represent the same function:
F(A,B) = A'B + AB'
= A'B + AB' + AB'
= A'B + AB' + AB' + AB'
Minimization
12
23
The minimized (optimal, simplified) Boolean
expression is the one which has:
the fewest number of gates
the fewest number of inputs to gates
Reminder: we’re working with the complete
gate set { NOT, AND, OR }
Minimization Criteria
24
Three techniques:
Algebraic manipulation
Karnaugh map
Quine-McCluskey algorithm
Minimization Techniques
13
25
Apply the postulates and theorems of
Boolean algebra:
AB' + AB = A(B' + B) (distributive law)
= A(1) (complement law)
= A (identity law)
Algebraic Manipulation
26
F(A,B,C) = A'BC' + A'BC + ABC' + ABC
= A'B(C' + C) + ABC' + ABC
= A'B(1) + ABC' + ABC
= A'B + ABC' + ABC
= A'B + AB(C' + C)
= A'B + AB(1)
= A'B + AB
= (A' + A)B
= (1)B
= B
14
27
Fill in the entries in a K-map, then inspect it
to identify the optimal expression
Karnaugh map is rectangular and has one
entry for each minterm – adjacent minterms
can be combined (same rules as algebraic
manipulation)
Karnaugh Map
28
K-map for function with 2 inputs
A' A
B' m0 m2
B m1 m3
A
0 1
B
0 m0 m2
1 m1 m3
15
29
Minimized function: F(A,B) = A
Example: F(A,B) = AB' + AB
A' A
B' 0 1
B 0 1
A
0 1
B
0 0 1
1 0 1
30
Minimized function: F(A,B) = AB' + A'B
Example: F(A,B) = AB' + A'B
A' A
B' 0 1
B 1 0
A
0 1
B
0 0 1
1 1 0
16
31
K-map for function with 3 inputs
A'B' A'B AB AB'
C' m0 m2 m6 m4
C m1 m3 m7 m5
32
K-map for function with 3 inputs
AB
00 01 11 10
C
0 m0 m2 m6 m4
1 m1 m3 m7 m5
17
33
F(A,B,C) = minterms( 2, 3, 6, 7 )
= A'BC' + A'BC + ABC' + ABC
= A'B(C' + C) + ABC' + ABC
= A'B + ABC' + ABC
= A'B + AB(C' + C)
= A'B + AB
= (A' + A)B
= B
Ex: Algebraic Manipulation
34
F(A,B,C) = B
Ex: Karnaugh Map
A'B' A'B AB AB'
C' 0 1 1 0
C 0 1 1 0
18
35
F(A,B,C) = B
Ex: Karnaugh Map
AB
00 01 11 10
C
0 0 1 1 0
1 0 1 1 0
36
The majority function is true when more than half
of the inputs are true.
Majority function
on 3 inputs:
Application: Majority Function
19
37
F(A,B,C) = minterms( 3, 5, 6, 7 )
= A'BC + AB'C + ABC' + ABC
Gates: 8
Inputs: 19
38
F(A,B,C) = minterms( 3, 5, 6, 7 )
= A'BC + AB'C + ABC' + ABC
= A'BC + AB'C + ABC' + ABC + ABC + ABC
= (A'+A)BC + AC(B'+B) + AB(C'+C)
= BC + AC + AB
= AB + AC + BC
20
39
F(A,B,C) = minterms( 3, 5, 6, 7 )
AB
00 01 11 10
C
0 0 0 1 0
1 0 1 1 1
40
F(A,B,C) = minterms( 3, 5, 6, 7 )
Minimized function: F(A,B,C) = AB + AC + BC
AB
00 01 11 10
C
0 0 0 1 0
1 0 1 1 1
21
41
Minimized function: F(A,B,C) = AB + AC + BC
Gates: 4 Inputs to gates: 9
42
K-map for function with 4 inputs
A'B' A'B AB AB'
C'D' m0 m4 m12 m8
C'D m1 m5 m13 m9
CD m3 m7 m15 m11
CD' m2 m6 m14 m10
22
43
K-map for function with 4 inputs
AB
00 01 11 10
CD
00 m0 m4 m12 m8
01 m1 m5 m13 m9
11 m3 m7 m15 m11
10 m2 m6 m14 m10
44
F(A,B,C,D) =
AB' +
AC'D' +
B'CD' +
A'BC'D
Ex: F(A,B,C,D) = minterms( 2, 5, 8, 9, 10, 11, 12 )
AB
00 01 11 10
CD
00 0 0 1 1
01 0 1 0 1
11 0 0 0 1
10 1 0 0 1
23
45
F(A,B,C,D) =
BD +
A'BC' +
AC'D +
ABC +
A'CD
Ex: F(A,B,C,D) = minterms( 3,4,5,7,9,13,14,15 )
AB
00 01 11 10
CD
00 0 1 0 0
01 0 1 1 1
11 1 1 1 0
10 0 0 1 0
46
F(A,B,C,D) =
A'BC' +
AC'D +
ABC +
A'CD
Ex: F(A,B,C,D) = minterms( 3,4,5,7,9,13,14,15 )
AB
00 01 11 10
CD
00 0 1 0 0
01 0 1 1 1
11 1 1 1 0
10 0 0 1 0
24
47
Start with 1’s which are isolated
Find 1’s that can only be included in 2-cover
Find 1’s that can only be included in 4-cover
Find 1’s that can only be included in 8-cover
Continue until all 1’s covered at least once
Order is important!
48
K-maps are "circular":

More Related Content

What's hot

A109211002 switchingtheoryandlogicdesign1
A109211002 switchingtheoryandlogicdesign1A109211002 switchingtheoryandlogicdesign1
A109211002 switchingtheoryandlogicdesign1jntuworld
 
Stdlib functions lesson
Stdlib functions lessonStdlib functions lesson
Stdlib functions lessonteach4uin
 
Introduction to NumPy for Machine Learning Programmers
Introduction to NumPy for Machine Learning ProgrammersIntroduction to NumPy for Machine Learning Programmers
Introduction to NumPy for Machine Learning ProgrammersKimikazu Kato
 
Seminar PSU 09.04.2013 - 10.04.2013 MiFIT, Arbuzov Vyacheslav
Seminar PSU 09.04.2013 - 10.04.2013 MiFIT, Arbuzov VyacheslavSeminar PSU 09.04.2013 - 10.04.2013 MiFIT, Arbuzov Vyacheslav
Seminar PSU 09.04.2013 - 10.04.2013 MiFIT, Arbuzov VyacheslavVyacheslav Arbuzov
 
Presentation 2(power point presentation) dis2016
Presentation 2(power point presentation) dis2016Presentation 2(power point presentation) dis2016
Presentation 2(power point presentation) dis2016Daniel Omunting
 
Efficient Random-Walk Methods forApproximating Polytope Volume
Efficient Random-Walk Methods forApproximating Polytope VolumeEfficient Random-Walk Methods forApproximating Polytope Volume
Efficient Random-Walk Methods forApproximating Polytope VolumeVissarion Fisikopoulos
 
Volume and edge skeleton computation in high dimensions
Volume and edge skeleton computation in high dimensionsVolume and edge skeleton computation in high dimensions
Volume and edge skeleton computation in high dimensionsVissarion Fisikopoulos
 
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by OraclesEfficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by OraclesVissarion Fisikopoulos
 
Lab 2-Simple Combinational Logic
Lab 2-Simple Combinational LogicLab 2-Simple Combinational Logic
Lab 2-Simple Combinational LogicKatrina Little
 
Lab 3 Multi-Function Gate
Lab 3   Multi-Function GateLab 3   Multi-Function Gate
Lab 3 Multi-Function GateKatrina Little
 
Ece 465 project_1_report_vishesh_shravan
Ece 465 project_1_report_vishesh_shravanEce 465 project_1_report_vishesh_shravan
Ece 465 project_1_report_vishesh_shravanVishesh Chanana
 
CUDA First Programs: Computer Architecture CSE448 : UAA Alaska : Notes
CUDA First Programs: Computer Architecture CSE448 : UAA Alaska : NotesCUDA First Programs: Computer Architecture CSE448 : UAA Alaska : Notes
CUDA First Programs: Computer Architecture CSE448 : UAA Alaska : NotesSubhajit Sahu
 

What's hot (20)

Scala.io
Scala.ioScala.io
Scala.io
 
A109211002 switchingtheoryandlogicdesign1
A109211002 switchingtheoryandlogicdesign1A109211002 switchingtheoryandlogicdesign1
A109211002 switchingtheoryandlogicdesign1
 
Cs101 endsem 2014
Cs101 endsem 2014Cs101 endsem 2014
Cs101 endsem 2014
 
Stdlib functions lesson
Stdlib functions lessonStdlib functions lesson
Stdlib functions lesson
 
Seminar psu 20.10.2013
Seminar psu 20.10.2013Seminar psu 20.10.2013
Seminar psu 20.10.2013
 
Introduction to NumPy for Machine Learning Programmers
Introduction to NumPy for Machine Learning ProgrammersIntroduction to NumPy for Machine Learning Programmers
Introduction to NumPy for Machine Learning Programmers
 
CLIM Undergraduate Workshop: Tutorial on R Software - Huang Huang, Oct 23, 2017
CLIM Undergraduate Workshop: Tutorial on R Software - Huang Huang, Oct 23, 2017CLIM Undergraduate Workshop: Tutorial on R Software - Huang Huang, Oct 23, 2017
CLIM Undergraduate Workshop: Tutorial on R Software - Huang Huang, Oct 23, 2017
 
Seminar PSU 09.04.2013 - 10.04.2013 MiFIT, Arbuzov Vyacheslav
Seminar PSU 09.04.2013 - 10.04.2013 MiFIT, Arbuzov VyacheslavSeminar PSU 09.04.2013 - 10.04.2013 MiFIT, Arbuzov Vyacheslav
Seminar PSU 09.04.2013 - 10.04.2013 MiFIT, Arbuzov Vyacheslav
 
Numpy Talk at SIAM
Numpy Talk at SIAMNumpy Talk at SIAM
Numpy Talk at SIAM
 
Presentation 2(power point presentation) dis2016
Presentation 2(power point presentation) dis2016Presentation 2(power point presentation) dis2016
Presentation 2(power point presentation) dis2016
 
Efficient Random-Walk Methods forApproximating Polytope Volume
Efficient Random-Walk Methods forApproximating Polytope VolumeEfficient Random-Walk Methods forApproximating Polytope Volume
Efficient Random-Walk Methods forApproximating Polytope Volume
 
Volume and edge skeleton computation in high dimensions
Volume and edge skeleton computation in high dimensionsVolume and edge skeleton computation in high dimensions
Volume and edge skeleton computation in high dimensions
 
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by OraclesEfficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
 
Lab 2-Simple Combinational Logic
Lab 2-Simple Combinational LogicLab 2-Simple Combinational Logic
Lab 2-Simple Combinational Logic
 
Lab 3 Multi-Function Gate
Lab 3   Multi-Function GateLab 3   Multi-Function Gate
Lab 3 Multi-Function Gate
 
Ece 465 project_1_report_vishesh_shravan
Ece 465 project_1_report_vishesh_shravanEce 465 project_1_report_vishesh_shravan
Ece 465 project_1_report_vishesh_shravan
 
Compiling fµn language
Compiling fµn languageCompiling fµn language
Compiling fµn language
 
Python (1)
Python (1)Python (1)
Python (1)
 
GNU octave
GNU octaveGNU octave
GNU octave
 
CUDA First Programs: Computer Architecture CSE448 : UAA Alaska : Notes
CUDA First Programs: Computer Architecture CSE448 : UAA Alaska : NotesCUDA First Programs: Computer Architecture CSE448 : UAA Alaska : Notes
CUDA First Programs: Computer Architecture CSE448 : UAA Alaska : Notes
 

Similar to Chapter 1

Ec2203 digital electronics questions anna university by www.annaunivedu.org
Ec2203 digital electronics questions anna university by www.annaunivedu.orgEc2203 digital electronics questions anna university by www.annaunivedu.org
Ec2203 digital electronics questions anna university by www.annaunivedu.organnaunivedu
 
Digital logic design1
Digital logic design1Digital logic design1
Digital logic design1jntuworld
 
Sp 1418794917
Sp 1418794917Sp 1418794917
Sp 1418794917lakshmi r
 
Compiler worksheet
Compiler worksheetCompiler worksheet
Compiler worksheetArthyR3
 
Comparison among Different Adders
Comparison among Different Adders Comparison among Different Adders
Comparison among Different Adders iosrjce
 
FPGA based BCH Decoder
FPGA based BCH DecoderFPGA based BCH Decoder
FPGA based BCH Decoderijsrd.com
 
ECE 2103_L6 Boolean Algebra Canonical Forms.pptx
ECE 2103_L6 Boolean Algebra Canonical Forms.pptxECE 2103_L6 Boolean Algebra Canonical Forms.pptx
ECE 2103_L6 Boolean Algebra Canonical Forms.pptxMdJubayerFaisalEmon
 
ECE 2103_L6 Boolean Algebra Canonical Forms [Autosaved].pptx
ECE 2103_L6 Boolean Algebra Canonical Forms [Autosaved].pptxECE 2103_L6 Boolean Algebra Canonical Forms [Autosaved].pptx
ECE 2103_L6 Boolean Algebra Canonical Forms [Autosaved].pptxMdJubayerFaisalEmon
 
B61301007 matlab documentation
B61301007 matlab documentationB61301007 matlab documentation
B61301007 matlab documentationManchireddy Reddy
 
Sample Exam Questions on Python for revision
Sample Exam Questions on Python for revisionSample Exam Questions on Python for revision
Sample Exam Questions on Python for revisionafsheenfaiq2
 
Sample quizz test
Sample quizz testSample quizz test
Sample quizz testkasguest
 
A109210503 digitallogicdesign1
A109210503 digitallogicdesign1A109210503 digitallogicdesign1
A109210503 digitallogicdesign1jntuworld
 
important C questions and_answers praveensomesh
important C questions and_answers praveensomeshimportant C questions and_answers praveensomesh
important C questions and_answers praveensomeshpraveensomesh
 

Similar to Chapter 1 (20)

Ec2203 digital electronics questions anna university by www.annaunivedu.org
Ec2203 digital electronics questions anna university by www.annaunivedu.orgEc2203 digital electronics questions anna university by www.annaunivedu.org
Ec2203 digital electronics questions anna university by www.annaunivedu.org
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
Digital logic design1
Digital logic design1Digital logic design1
Digital logic design1
 
Digital Basics
Digital BasicsDigital Basics
Digital Basics
 
Computational Assignment Help
Computational Assignment HelpComputational Assignment Help
Computational Assignment Help
 
Sp 1418794917
Sp 1418794917Sp 1418794917
Sp 1418794917
 
Compiler worksheet
Compiler worksheetCompiler worksheet
Compiler worksheet
 
Comparison among Different Adders
Comparison among Different Adders Comparison among Different Adders
Comparison among Different Adders
 
Digital Logic
Digital LogicDigital Logic
Digital Logic
 
CA.ppt
CA.pptCA.ppt
CA.ppt
 
FPGA based BCH Decoder
FPGA based BCH DecoderFPGA based BCH Decoder
FPGA based BCH Decoder
 
ECE 2103_L6 Boolean Algebra Canonical Forms.pptx
ECE 2103_L6 Boolean Algebra Canonical Forms.pptxECE 2103_L6 Boolean Algebra Canonical Forms.pptx
ECE 2103_L6 Boolean Algebra Canonical Forms.pptx
 
ECE 2103_L6 Boolean Algebra Canonical Forms [Autosaved].pptx
ECE 2103_L6 Boolean Algebra Canonical Forms [Autosaved].pptxECE 2103_L6 Boolean Algebra Canonical Forms [Autosaved].pptx
ECE 2103_L6 Boolean Algebra Canonical Forms [Autosaved].pptx
 
B61301007 matlab documentation
B61301007 matlab documentationB61301007 matlab documentation
B61301007 matlab documentation
 
Adobe
AdobeAdobe
Adobe
 
Sample Exam Questions on Python for revision
Sample Exam Questions on Python for revisionSample Exam Questions on Python for revision
Sample Exam Questions on Python for revision
 
Sample quizz test
Sample quizz testSample quizz test
Sample quizz test
 
Revision1 C programming
Revision1 C programmingRevision1 C programming
Revision1 C programming
 
A109210503 digitallogicdesign1
A109210503 digitallogicdesign1A109210503 digitallogicdesign1
A109210503 digitallogicdesign1
 
important C questions and_answers praveensomesh
important C questions and_answers praveensomeshimportant C questions and_answers praveensomesh
important C questions and_answers praveensomesh
 

More from EasyStudy3

2. polynomial interpolation
2. polynomial interpolation2. polynomial interpolation
2. polynomial interpolationEasyStudy3
 
Chapter2 slides-part 2-harish complete
Chapter2 slides-part 2-harish completeChapter2 slides-part 2-harish complete
Chapter2 slides-part 2-harish completeEasyStudy3
 
Chapter 12 vectors and the geometry of space merged
Chapter 12 vectors and the geometry of space mergedChapter 12 vectors and the geometry of space merged
Chapter 12 vectors and the geometry of space mergedEasyStudy3
 
Chapter 5 gen chem
Chapter 5 gen chemChapter 5 gen chem
Chapter 5 gen chemEasyStudy3
 
Topic 4 gen chem guobi
Topic 4 gen chem guobiTopic 4 gen chem guobi
Topic 4 gen chem guobiEasyStudy3
 
Gen chem topic 3 guobi
Gen chem topic 3  guobiGen chem topic 3  guobi
Gen chem topic 3 guobiEasyStudy3
 
Gen chem topic 1 guobi
Gen chem topic 1 guobiGen chem topic 1 guobi
Gen chem topic 1 guobiEasyStudy3
 

More from EasyStudy3 (20)

Week 7
Week 7Week 7
Week 7
 
Chapter 3
Chapter 3Chapter 3
Chapter 3
 
Week 6
Week 6Week 6
Week 6
 
2. polynomial interpolation
2. polynomial interpolation2. polynomial interpolation
2. polynomial interpolation
 
Chapter2 slides-part 2-harish complete
Chapter2 slides-part 2-harish completeChapter2 slides-part 2-harish complete
Chapter2 slides-part 2-harish complete
 
L6
L6L6
L6
 
Chapter 5
Chapter 5Chapter 5
Chapter 5
 
2
22
2
 
Lec#4
Lec#4Lec#4
Lec#4
 
Chapter 12 vectors and the geometry of space merged
Chapter 12 vectors and the geometry of space mergedChapter 12 vectors and the geometry of space merged
Chapter 12 vectors and the geometry of space merged
 
Week 5
Week 5Week 5
Week 5
 
Chpater 6
Chpater 6Chpater 6
Chpater 6
 
Chapter 5
Chapter 5Chapter 5
Chapter 5
 
Lec#3
Lec#3Lec#3
Lec#3
 
Chapter 16 2
Chapter 16 2Chapter 16 2
Chapter 16 2
 
Chapter 5 gen chem
Chapter 5 gen chemChapter 5 gen chem
Chapter 5 gen chem
 
Topic 4 gen chem guobi
Topic 4 gen chem guobiTopic 4 gen chem guobi
Topic 4 gen chem guobi
 
Gen chem topic 3 guobi
Gen chem topic 3  guobiGen chem topic 3  guobi
Gen chem topic 3 guobi
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
Gen chem topic 1 guobi
Gen chem topic 1 guobiGen chem topic 1 guobi
Gen chem topic 1 guobi
 

Recently uploaded

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...M56BOOKSTORE PRODUCT/SERVICE
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 

Recently uploaded (20)

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 

Chapter 1

  • 1. 1 1 CSE 320 Computer Organization and Architecture 2 Course organization Computing environment Overview of course topics Today’s Lecture
  • 2. 2 3 Course website http://www.cse.msu.edu/~cse320/ Syllabus and calendar Enrollment Course Organization 4 Hardware: array of ARM processors o pi1.cse.msu.edu . . o pi22.cse.msu.edu Operating system: Linux Accounts Computing Environment
  • 3. 3 5 Due Thursday, 9/5 (by 11:59 PM) Focuses on computing environment: o UNIX tutorial o Using the "vim" editor o Using the "handin" system Computer Project #1 6 The Information Revolution Computers have led to a third revolution for civilization, with the information revolution taking its place alongside the agricultural and industrial revolutions. This race to innovate has led to unprecedented progress since the inception of electronic computing in the late 1940s. Had the transportation industry kept pace with the computer industry, for example, today we could travel from New York to London in a second for a penny. (Patterson and Hennessy)
  • 4. 4 7 The Information Revolution Driven by rapid innovation in technology Complex applications now feasible • World Wide Web • Cell phones • Computers in automobiles • Human genome project 8 Computer architecture focuses on the functional behavior of a computing system as viewed by the programmer (such as the size of an integer data object in bytes). Computer organization focuses on the structural relationships which are not visible to the programmer (such as the clock frequency or the total size of RAM). Architecture and Organization
  • 5. 5 9 We can view a computing system at several levels, from the highest level (users running programs) to the lowest level (transistors operating according to the laws of physics). Levels of Abstraction 10 The von Neumann model consists of five major components: 1) input unit 2) output unit 3) arithmetic logic unit 4) memory unit 5) control unit The von Neumann Model
  • 6. 6 11 Refinement of the von Neumann model Communication between components handled by the system bus The System Bus Model 12 Fetch Phase: o RAM[ PC ] ==> IR Execute Phase: o decode IR o take appropriate action o update PC The Fetch-Execute Cycle
  • 7. 7 13 Assume each instruction is 4 bytes long Assume PC: 00010700 Fetch phase: o access RAM[ 00010700 ] o copy 4 bytes (E0827003) to IR IR now contains: E0827003 Example 14 Assume IR: E0827003 Execute phase: o decode IR ADD instruction on ARM o take appropriate action R[2] + R[3] ==> R[7] o update PC PC + 4 ==> PC Example (continued)
  • 8. 8 15 RAM Address Data 00000000 00000001 00000002 . . . . 00010700 E0 . 82 . 70 . 03 . . FFFFFFFD FFFFFFFE FFFFFFFF CPU PC: 00010700 E0827003IR: 16 CPU PC: 00010700 IR: E0827003 ADD R[2] R[3] R[7]
  • 9. 9 17 Must be able to convert between bases: Machines use base 2 (binary) Humans use base 10 (decimal) Humans abbreviate base 2 using base 16 (hexadecimal) or base 8 (octal) Number Systems 18 Decimal Hexadecimal Octal Binary 0 0 0 0000 1 1 1 0001 2 2 2 0010 3 3 3 0011 4 4 4 0100 5 5 5 0101 6 6 6 0110 7 7 7 0111 8 8 10 1000 9 9 11 1001 10 A 12 1010 11 B 13 1011 12 C 14 1100 13 D 15 1101 14 E 16 1110 15 F 17 1111
  • 10. 10 19 Powers of Two • 20 = 1 • 21 = 2 • 22 = 4 • 23 = 8 • 24 = 16 • 25 = 32 • 26 = 64 • 27 = 128 • 28 = 256 • 29 = 512 • 210 = 1024 • 211 = 2048 • 212 = 4096 • 213 = 8192 • 214 = 16384 • 215 = 32768 20 Base 16 often used instead of base 2 Example: 0100101101111100 = 4b7c Groups of four bits (from right): 0100 1011 0111 1100 = 4b7c Shorthand for Binary
  • 11. 11 21 Base 8 sometimes used instead of base 2 Example: 010010110111110 = 22676 Groups of three bits (from right): 010 010 110 111 110 = 22676 Shorthand for Binary 22 Example: ASCII characters A 1000001 100 0001 41 B 1000010 100 0010 42 C 1000011 100 0011 43 . . . X 1011000 101 1000 58 Y 1011001 101 1001 59 Z 1011010 101 1010 5a
  • 12. 12 23 Example: UNIX file permissions Permissions for each file: rwx rwx rwx (owner, group, world) Make directory public: chmod 755 my_directory Make file private: chmod 600 my_file 24 Example: 2756 base 8 ==> base 10 2756 base 8 = 2 * 83 + 7 * 82 + 5 * 81 + 6 * 80 = 1518 base 10 Nested form: 2756 base 8 = (((((((2) * 8) + 7) * 8) + 5) * 8) + 6) = 1518 base 10 Convert Other Base to Decimal
  • 13. 13 25 Algorithm: answer = 0 iterate over digits in original number answer = answer * base + current digit Convert Other Base to Decimal 26 2756 base 8 ==> base 10 answer = 0 = (0 * 8) + 2 = 2 = (2 * 8) + 7 = 23 = (23 * 8) + 5 = 189 = (189 * 8) + 6 = 1518 2756 base 8 = 1518 base 10 Convert Other Base to Decimal
  • 14. 14 27 Example: 44 base 10 ==> base 2 44 / 2 = 22 R 0 22 / 2 = 11 R 0 11 / 2 = 5 R 1 5 / 2 = 2 R 1 2 / 2 = 1 R 0 1 / 2 = 0 R 1 44 base 10 = 101100 base 2 Convert Decimal to Other Base 28 Example: 44 base 10 ==> base 8 44 / 8 = 5 R 4 5 / 8 = 0 R 5 44 base 10 = 54 base 8 Convert Decimal to Other Base
  • 15. 15 29 Algorithm: value = original number loop until value == 0 current digit = value % base value = value / base Convert Decimal to Other Base 30 Base 2 ==> Base 16: group digits ex: 1100011 base 2 ==> 63 base 16 Base 16 ==> Base 2: decompose digits ex: 5C base 16 ==> 1011100 base 2 Other Base ==> Base 10: multiply and add Base 10 ==> Other Base: repeated division Summary: base conversions
  • 16. 1 1 Today: Combinational Circuits (H&H 2.1-2.9) Next: continued Handouts Syllabus (old) Lecture Topics 2 Self-study module #1 (this week) Consulting hours posted Project #1 (due no later than 9/5) Reminder: check account password Reminder: use Pi array Announcements
  • 17. 2 3 Due Thursday, 9/5 (by 11:59 PM) Focuses on computing environment: o UNIX tutorial o Using the "vim" editor o Using the "handin" system Computer Project #1 4 Circuit design based on Boolean algebra Three equivalent representations o algebraic expressions o truth tables o circuit diagram Combinational Circuits
  • 18. 3 5 Expression in Boolean algebra: F(A,B) = A'B + AB' Truth table: Example: Exclusive OR A B F(A,B) 0 0 0 0 1 1 1 0 1 1 1 0 6 Circuit diagram: A B F(A,B)
  • 19. 4 7 Boolean algebra 8 All possible functions on two inputs
  • 21. 6 11 Any circuit can be defined using only: { NOT, AND, OR } Other complete gate sets: { NAND } { NOR } Complete Gate Sets 12 Useful to define gates which have more than 2 inputs. AND: output is 1 if all inputs are 1 OR: output is 1 if any input is 1 Not meaningful for NOT More Than Two Inputs
  • 22. 7 13 Can be implemented using cascading: Can also be implemented directly (more efficient) More Than Two Inputs 14 Canonical Sum-of-Products Form: F(A,B) = A'B + AB' The expression is the sum of a series of products, where each product is a minterm A minterm is a product where each variable is present (complemented or uncomplemented) Standard Forms
  • 23. 8 15 For a function with two inputs, there are four possible minterms: m0: A'B' m1: A'B m2: AB' m3: AB Canonical SOP form has a subset of all possible minterms Minterms 16 For a function with three inputs, there are eight possible minterms: m0: A'B'C' m4: AB'C' m1: A'B'C m5: AB'C m2: A'BC' m6: ABC' m3: A'BC m7: ABC For a function with four inputs, there are sixteen possible minterms Minterms
  • 24. 9 17 The following are in canonical SOP form: F(A,B) = A'B' + A'B + AB' G(A,B,C) = A'BC + AB'C + ABC' + ABC H(A,B,C,D) = A'B'C'D' + A'B'CD + ABCD' Examples 18 The following are equivalent: F(A,B) = A'B' + A'B + AB' F(A,B) = m0 + m1 + m2 F(A,B) = minterms( 0, 1, 2 ) Alternate notation (minterm lists)
  • 25. 10 19 G(A,B,C) = A'BC + AB'C + ABC' + ABC = minterms( 3, 5, 6, 7 ) H(A,B,C,D) = A'B'C'D' + A'B'CD + ABCD' = minterms( 0, 3, 14 ) Additional Examples: 20 Canonical Sum-of-Products Form: F(A,B) = A'B + AB' = minterms( 1, 2 ) Truth table: Truth tables and minterms A B F(A,B) 0 0 0 m0 0 1 1 m1 1 0 1 m2 1 1 0 m3
  • 26. 11 21 Canonical Sum-of-Products form makes it easy to convert between representations: Given: G(A,B,C) = minterms( 3, 5, 6, 7 ) G(A,B,C) = A'BC + AB'C + ABC' + ABC truth table has 1's in rows m3, m5, m6, m7 circuit diagram has four AND gates (one for each minterm) and one OR gate 22 Ideally, a Boolean expression will be as simple as possible and still generate the correct values Note that there are an infinite number of Boolean expressions that represent the same function: F(A,B) = A'B + AB' = A'B + AB' + AB' = A'B + AB' + AB' + AB' Minimization
  • 27. 12 23 The minimized (optimal, simplified) Boolean expression is the one which has: the fewest number of gates the fewest number of inputs to gates Reminder: we’re working with the complete gate set { NOT, AND, OR } Minimization Criteria 24 Three techniques: Algebraic manipulation Karnaugh map Quine-McCluskey algorithm Minimization Techniques
  • 28. 13 25 Apply the postulates and theorems of Boolean algebra: AB' + AB = A(B' + B) (distributive law) = A(1) (complement law) = A (identity law) Algebraic Manipulation 26 F(A,B,C) = A'BC' + A'BC + ABC' + ABC = A'B(C' + C) + ABC' + ABC = A'B(1) + ABC' + ABC = A'B + ABC' + ABC = A'B + AB(C' + C) = A'B + AB(1) = A'B + AB = (A' + A)B = (1)B = B
  • 29. 14 27 Fill in the entries in a K-map, then inspect it to identify the optimal expression Karnaugh map is rectangular and has one entry for each minterm – adjacent minterms can be combined (same rules as algebraic manipulation) Karnaugh Map 28 K-map for function with 2 inputs A' A B' m0 m2 B m1 m3 A 0 1 B 0 m0 m2 1 m1 m3
  • 30. 15 29 Minimized function: F(A,B) = A Example: F(A,B) = AB' + AB A' A B' 0 1 B 0 1 A 0 1 B 0 0 1 1 0 1 30 Minimized function: F(A,B) = AB' + A'B Example: F(A,B) = AB' + A'B A' A B' 0 1 B 1 0 A 0 1 B 0 0 1 1 1 0
  • 31. 16 31 K-map for function with 3 inputs A'B' A'B AB AB' C' m0 m2 m6 m4 C m1 m3 m7 m5 32 K-map for function with 3 inputs AB 00 01 11 10 C 0 m0 m2 m6 m4 1 m1 m3 m7 m5
  • 32. 17 33 F(A,B,C) = minterms( 2, 3, 6, 7 ) = A'BC' + A'BC + ABC' + ABC = A'B(C' + C) + ABC' + ABC = A'B + ABC' + ABC = A'B + AB(C' + C) = A'B + AB = (A' + A)B = B Ex: Algebraic Manipulation 34 F(A,B,C) = B Ex: Karnaugh Map A'B' A'B AB AB' C' 0 1 1 0 C 0 1 1 0
  • 33. 18 35 F(A,B,C) = B Ex: Karnaugh Map AB 00 01 11 10 C 0 0 1 1 0 1 0 1 1 0 36 The majority function is true when more than half of the inputs are true. Majority function on 3 inputs: Application: Majority Function
  • 34. 19 37 F(A,B,C) = minterms( 3, 5, 6, 7 ) = A'BC + AB'C + ABC' + ABC Gates: 8 Inputs: 19 38 F(A,B,C) = minterms( 3, 5, 6, 7 ) = A'BC + AB'C + ABC' + ABC = A'BC + AB'C + ABC' + ABC + ABC + ABC = (A'+A)BC + AC(B'+B) + AB(C'+C) = BC + AC + AB = AB + AC + BC
  • 35. 20 39 F(A,B,C) = minterms( 3, 5, 6, 7 ) AB 00 01 11 10 C 0 0 0 1 0 1 0 1 1 1 40 F(A,B,C) = minterms( 3, 5, 6, 7 ) Minimized function: F(A,B,C) = AB + AC + BC AB 00 01 11 10 C 0 0 0 1 0 1 0 1 1 1
  • 36. 21 41 Minimized function: F(A,B,C) = AB + AC + BC Gates: 4 Inputs to gates: 9 42 K-map for function with 4 inputs A'B' A'B AB AB' C'D' m0 m4 m12 m8 C'D m1 m5 m13 m9 CD m3 m7 m15 m11 CD' m2 m6 m14 m10
  • 37. 22 43 K-map for function with 4 inputs AB 00 01 11 10 CD 00 m0 m4 m12 m8 01 m1 m5 m13 m9 11 m3 m7 m15 m11 10 m2 m6 m14 m10 44 F(A,B,C,D) = AB' + AC'D' + B'CD' + A'BC'D Ex: F(A,B,C,D) = minterms( 2, 5, 8, 9, 10, 11, 12 ) AB 00 01 11 10 CD 00 0 0 1 1 01 0 1 0 1 11 0 0 0 1 10 1 0 0 1
  • 38. 23 45 F(A,B,C,D) = BD + A'BC' + AC'D + ABC + A'CD Ex: F(A,B,C,D) = minterms( 3,4,5,7,9,13,14,15 ) AB 00 01 11 10 CD 00 0 1 0 0 01 0 1 1 1 11 1 1 1 0 10 0 0 1 0 46 F(A,B,C,D) = A'BC' + AC'D + ABC + A'CD Ex: F(A,B,C,D) = minterms( 3,4,5,7,9,13,14,15 ) AB 00 01 11 10 CD 00 0 1 0 0 01 0 1 1 1 11 1 1 1 0 10 0 0 1 0
  • 39. 24 47 Start with 1’s which are isolated Find 1’s that can only be included in 2-cover Find 1’s that can only be included in 4-cover Find 1’s that can only be included in 8-cover Continue until all 1’s covered at least once Order is important! 48 K-maps are "circular":