EE222: Microprocessor Systems
Spring
2021
Lecture
01
Introduction
Muhammad Jameel <muhammad.jameel@seecs.edu.pk>
Outline
• Instructor
• Course Learning Outcomes
• Course Books and Grading Scheme
• Introduction to the Microprocessor and Computer
2
Instructor: Jameel Malik
• PhD from TU Kaiserslautern, Germany.
– Google Scholar: https://bit.ly/3pFkWfB
• I joined NUST-SEECS in Fall 2011.
• Contact:
– muhammad.jameel@seecs.edu.pk
– Office: will be communicated later
• Office hours: through email
3
Outline
• Instructor
• Course Learning Outcomes
• Course Books and Grading Scheme
• Introduction to the Microprocessor and Computer
4
Course Learning Outcomes
1. Understand the basic concepts of microprocessor/
microcontroller systems.
2. Learn memory interfacing, input and output (I/O)
interfacing, and interrupts.
3. Use Assembly and C language for
microprocessor/microcontrollers.
4. Design and implement real time systems using
microcontrollers.
5
Outline
• Instructor
• Course Learning Outcomes
• Course Books and Grading Scheme
• Introduction to the Microprocessor and Computer
6
Course Books
• Text Books
– The Intel Microprocessors, 8086/8088, 80XXX & Pentium
series - Architecture, Programming and Interfacing by Barry
B. Brey, 8th edition.
– The 8051 Microcontroller and Embedded Systems using
Assembly and C by Mazidi.
– Assembly Language for x86 Processors by Kip R. Irvine, 6th
edition.
7
Course Books
• Reference Books
– Computer Organization and Design The Hardware/Software
Interface (RISC-V Edition) by Hennessy and Patterson,
Morgan Kaufmann.
– Computer Organization & Architecture by William Stallings.
– 8051 Microcontroller by Machenzie.
8
Grading Scheme
• Final 35%
• OHTs 25%
• Quizzes 10%
• Assignments 5%
• Labs + Project (15+10)%
9
Outline
• Instructor
• Course Learning Outcomes
• Course Books and Grading Scheme
• Introduction to the Microprocessor and Computer
10
Where this course fits in
11
Computers Now
12
Brief Historical Background
• Programming Advancements
– Machine Language - binary codes (e.g., 0100 0111 for
addition) stored in computer memory.
– Assembly Language - Instructions (mnemonic codes such as
ADD for addition) stored in computer memory.
– FORTRAN - allows programmers to use formulas
– COBOL, BASIC, C/C++, JAVA, Python etc.
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 13
Programming and Interfacing by Barry B. Brey, 8th edition.
Brief Historical Background
• The Microprocessor Age
– In 1971, the world’s 1st microprocessor, the Intel 4004 was
introduced
• 4-bit microprocessor
• 45 instructions
• Addresses only 4096 x 4bit memory
• 50KIPs (kilo-instructions per second)
• Still used in microwave ovens,
small control systems, calculators …
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 14
Programming and Interfacing by Barry B. Brey, 8th edition.
Brief Historical Background
• The Microprocessor Age
– Later in 1971, 8008 was released
• 8-bit version of the 4004
• It addressed a 16K byte memory
– In 1973, 8080 was introduced
• limitations of the speed and instruction set of 8008 were
addressed and improved
• It addressed a 64K bytes memory
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 15
Programming and Interfacing by Barry B. Brey, 8th edition.
Brief Historical Background
• The Microprocessor Age
– 8-bit Microprocessors
Table: Early 8-bit microprocessors
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 16
Programming and Interfacing by Barry B. Brey, 8th edition.
Brief Historical Background
• The Microprocessor Age
– 8-bit Microprocessors
100% of
the market
Table: Early 8-bit microprocessors
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 17
Programming and Interfacing by Barry B. Brey, 8th edition.
Brief Historical Background
• Intel Microprocessors
– In 1978-79, 8086 and 8088 were introduced
• 16-bit microprocessors (8 bit external data bus for 8088)
• Addresses 1M byte of memory.
• 2.5 million instructions per second
• Multiply and divide instructions included
• International Business Machines(IBM) used the 8088
in its first ever PC in 1981.
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 18
Programming and Interfacing by Barry B. Brey, 8th edition.
Brief Historical Background
• Intel´s 80x86 Family
– The 80286, 16-bit microprocessor
• Addresses a 16 M byte memory.
• Speed4 MIPs
– The 80386 was introduced in 1986
• It was the first 32-bit microprocessor that contained a 32-
bit data bus and a 32-bit address bus.
– The 80486 was introduced in 1989
• It had an 8K byte cache memory in addition to being
faster than the 80386.
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 19
Programming and Interfacing by Barry B. Brey, 8th edition.
Brief Historical Background
• Intel´s Pentium Microprocessors
– Introduced in 1993
– 16K byte Cache Memory
– 4G Bytes of Memory Addressing
– Speed150 MIPs
– Data bus width increased to 64-bit
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 20
Programming and Interfacing by Barry B. Brey, 8th edition.
Brief Historical Background
• Intel´s Pentium Microprocessors
– Introduced in 1993
– 16K byte Cache Memory
– 4G Bytes of Memory Addressing
– Speed150 MIPs
– Data bus width increased to 64-bit
• Later Pentium versions are up-gradations of above
specifications (Table 1-2 of the reference below)
• Multiple Core Processors – use multithreading for
faster program execution
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 21
Programming and Interfacing by Barry B. Brey, 8th edition.
Microprocessor-based Computer System
Figure: Block diagram of microprocessor-based computer system
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 22
Programming and Interfacing by Barry B. Brey, 8th edition.
The Microprocessor
• The microprocessor - Central Processing Unit (CPU)
– controls memory and I/O through a series of connections
called buses.
– Three main tasks of the microprocessor:
• Data transfer b/w itself and memory and I/O systems
• Arithmetic and logic operations
• Program flow via simple decisions
– capability to execute billions of millions of instructions per
second from a program or software.
-- The Intel Microprocessors, 8086/8088, 80XXX & Pentium series - Architecture, 23
Programming and Interfacing by Barry B. Brey, 8th edition.