SlideShare a Scribd company logo
INTRODUCTION TO
MICROPROCESSORS
Compiled by: Seble N.
What is Microprocessor?
 Is a clock-driven semiconductor made of millions
of microscopic array of electronic
circuits and electronic components (resistors,
capacitors, inductors…) that are diffused or
implanted to surface of small silicon chip
 its basic purpose is to take input, process it and then
provide appropriate output
 Examples
 Intel processors, AMD , PowerPC …
2
Function of microprocessors
 A microprocessor performs three basic steps:
 First, it fetches an instruction from memory,
 Second, it uses decoding circuitry to determine what the
instruction means (i.e., identify the operations and the
devices involved in it) and
 Third, it executes the instruction
3
Components of microprocessor
 ALU (Arithmetic/Logic Unit)
 performs all arithmetic and logic operations
 Control Unit
 Interprets the instructions and generates various timing and
control signals
 it controls the flow of data between the μ-processor and
memory & peripherals
 Registers
 A register is a very small & very fast memory that is built
into the CPU in order to store the current data and
instructions which are being executed by the CPU
4
Modes of Processing
 Real Mode
 One program at a time
 Protected Mode
 Can run more than one program concurrently and protect them
from each other
 Virtual Mode
 The processor can swap portion of the memory to the hard disk;
in this way programs running concurrently will have more space
to operate
5
Characteristics of microprocessors
 Instruction set
 the set of instructions that a microprocessor can understand
or execute
 Word length
 refers to the number of bits a processor can process at a
time
 Eg. a 4-bit processor means the ALU can perform a 4-bit data
operation at a time
 the longer the word length is the more powerful the
processor is and can process data at a faster speed as
compared to processor with shorter word length
6
Characteristics of microprocessors
 Speed
 measured in HZ = 1cycle/second
 Some processors may complete a single instruction per
cycle, or may take one or more cycles
 a 2 GHZ CPU may compute 2 billion instructions per second,
if it is able to complete a single instruction in a single cycle
 but if it takes 2 cycles to complete a single instruction then it
is only able to compute 1 billion instructions per second
 Cache Size
 The size of the cache memory
7
Characteristics of microprocessors …
 Size of registers
 refers to the number of bits a microprocessor’s register can
hold at a time
 the size of addressable memory is often determined by the
width of registers
 Data bus width
 Refers to the number of bits a data bus can carry at a time
8
Classes of microprocessors
1. Complex instruction set computer (CISC)
 Often contain instructions that perform several different
tasks at a once
 Ex: Intel Processors
2. Reduced instruction set computer (RISC)
 are made according to the function in which the
microprocessor can carry out small things in a specific
command
 In this way these processors completes more commands at a
faster rate
 is simpler, smaller and faster
 Ex: PowerPC and ARM's Cortex chips
9
Evolution of Microprocessors
 Computing technologies based on vacuum tubes and transistors
 In 1959, Fair child semiconductors invented the first integrated circuit
 In 1968, Gordan Moore, Robert Noyce & Andrew Grove founded
Intel(Integrated Electronics)
 In 1971, the first microprocessor, Intel 4004 was released
 In 1972, Intel released the first 8-bit microprocessor Intel 8008
 In 1976, MOS technologies introduced the Motorola 6502 an 8-bit
processor, used in Apple I and II
 In 1981, the first PC was created by IBM using intel’s 8088 microprocessor
 Several companies like Intel, AMD, IBM, ARM, Motorola… make general
purpose processors that are designed for personal computers, laptops,
mobile devices and large central servers
10
Intel microprocessors
 Intel
 is generally regarded as the company that sets the
benchmark for others to follow
 From the earlier Pentium and Centrino microprocessors to the
Core 2, Core i series
 Atom chips for mobiles
 The high-end Itanium and Xeon processors for server
applications
 Over 90% of laptops use Intel microprocessors
 HP, Dell, Apple, Samsung, Sony, Toshiba …
11
Top CPU manufacturers
 Intel
 AMD
 Qualcomm
 Mediatek
 NVIDIA
 IBM
 Samsung
 Motorola
 Hewlett-Packard (hp)
 Dell
 Acer
 …
12
Intel microprocessors
 Intel 4004
 Intel 8080
 Intel 8085
 Intel 8088
 Intel 8086
 Intel 80286
 Intel 80386
 Intel 80486
 Pentium
 Pentium II and III
 Dual Core/ Core
 Core i3, i5, i7
13
Intel microprocessors …
4-bits processors
 Intel 4004
 1971- the first commercially available
processor as well as the first complete
CPU on a single chip
 a 4-bit processor: able to operate on 4
bits of data at a time
 4-bit data bus
 had 2,300 transistors
 clock speed of 108KHZ
 640 bytes addressable memory
 was designed for use in calculator but also
used traffic light controller, Blood
analyzers …
14
Intel microprocessors …
8-bits processors
 Intel 8008
 first 8-bit microprocessor
 200KHz clock speed and 3,500 transistors,
 had 6 , 8-bit registers
 8-bit data bus
 can address up to 16KB
 Intel 8085
 was popular as an embedded controller
 ran at 5MHZ and contained 6500 transistors
15
Intel microprocessors …
16-bits processors
 Intel 8086
 1978,16-bit: all registers, internal and external buses
 Used 20-bit addressing
 Can address 1 million bytes of internal memory
 29,000 transistors, 5MHz initially
 Intel 8088
 was identical to the 8086 with the exception of its 8-bit
internal bus
 The IBM 5150, the first IBM PC, came with the 8088
16
Intel microprocessors …
16-bits processors
 Intel 80286
 can operate on real and protected mode
 134,000 transistors, 6M-8MHz initially
 can address up to 16 million bytes of internal memory
 was popular in IBM-PC AT and AT PC clones
17
Intel microprocessors …
32-bits processors
 Intel 80386
 the first 32-bit microprocessor
 32 bit registers & data bus
 can operate on protected mode and supports virtual
mode
 275,000 transistors, 12MHz initially, later 33MHz
 Intel continued to manufacture the 80386 family until
September of 2007
 Intel single-source production of 386 to AMD
 Later changed in 1991 by AMD as AM386
18
Intel microprocessors …
32-bits processors
 Intel 80486
 32 bit registers and data bus
 has a high speed cache memory, 8KB SRAM cache
 was launched with 25 to 50 MHz, included 1.2 million
transistors
19
Intel microprocessors …
32-bits processors
 Pentium (Pentium I)
 32 bit registers, 64 bit data bus
 Has a high speed cache memory
 It can execute more than one instruction per clock cycle
 Pentium II and III
 Have a dual independent bus that provides separate
path to the system cache and memory
 On-die L2 cache
20
Intel microprocessors …
64-bits processors
 New instruction set, not at all related to x86.
 Itanium
 Released May 29, 2001
 733 MHz to 800 MHz
 2MB cache
 Itanium 2
 Released July 2002
 900 MHz – 1.6 GHz
21
Intel microprocessors …
64-bits processors
 Intel core 2
 x86-64 microprocessor
 Two cores on one die
 Number of transistors: 291 million
 64 KB of L1 cache per core
 1.86-3.00 GHz
 Intel core i series
 Intel core i3, i5, i7
22
Reading Assignment 1
24
 Micro-processor vs micro-controller
 Multi-core processor vs multi-processor
 CPU vs GPU
 Multi-threading and hyper-threading
 Overclocking
What is an x86 architecture?
 x86 is a family of backward compatible instruction set
architectures based on the Intel 8086 CPU
 the term "x86" came into being because the names of
several successors to Intel's 8086 processor end in "86",
including the 80186, 80286, 80386 and 80486 processors
 all newer processors using Intel's x86 instruction set are still
referred to as x86, i386, or i686 compatible (which means
they all use extensions of the original 8086 instruction set)
25
Intel 8086
 1978, first x86 family microprocessor
 16-bit: all registers, internal and external buses
 can address 1 million bytes of internal memory
 used 20-bit addressing
 to date backward compatibility has been maintained
26
8086 Microprocessor Architecture
 The Basic Architecture of the Intel 8086
 The processor is partitioned into two logical units
 Execution Unit (EU)
 Bus Interface Unit(BIU)
 Why partition is needed?
 Because the processor runs considerably faster than
memory
27
Architecture of 8086
28
Execution Unit
 takes care of the processing including arithmetic and
logic operations
 its role is to execute instructions
 Contains
 ALU,
 Control Unit and
 Registers
29
Bus Interface Unit (BIU)
 Its role is to deliver instructions and data to the EU
 Function
 to manage the bus control unit, segment registers and
instruction queue
 to provide access to instructions from memory and place
them in an instruction queue, which varies in size depending
on the processor
 This feature enables the BIU to look ahead and prefetch instructions
so that there is always a queue of instructions ready to execute
30
Internal Memory of 8086
 Memory consists of cells organized in 8-bit
groups
 Bytes in memory are numbered consecutively,
beginning with 00
 8086
 was able to address 1MB of memory
 has 20bits wide memory address
31
Intel 8086- Memory
 RAM
 From the 1MB of memory, the first
640K is base RAM
 is used for temporary program
storage
 ROM
 The 8086 Basic Input/Output System
(BIOS) begins at address 768K and
handles
 I/O devices, such as a hard disk
controller
 ROM beginning at 960K controls the
computer’s basic functions
 Power-On Self-Test, dot patterns for
graphics, and the disk self-loader
32
Memory Segments
 Memory segmentation is the division of computer's
primary memory into segments or sections
 Segments are special areas defined in a program for
containing the code, the data, and what is known as the
stack
 A segment begins on a paragraph boundary, that is, at
a location evenly divisible by 16, or hex 10.
33
Memory Segments …
 In real mode, the three main segments are code, data, and
stack
 Code Segment:
 Contains the machine instructions to be executed
 The first executable instruction is at the start of this segment, and the
operating system links to that location to begin program execution
 Data Segment:
 Contains a program’s defined data, constants, and work areas
 Stack Segment:
 Contains any data and addresses that the program needs to save
temporarily for use on subroutines
 A program may contain one or more segments, which may
vary in size, and can be defined in any sequence
34
8086/8088 Registers
 The registers are categorized into two sets:
 Data registers
 are for calculations
 Address registers
 used to store memory addresses that point to locations in
memory where data will be retrieved or stored
35
8086/8088 Data Registers
 aka general purpose registers, these are
 AX - Accumulator register
 BX - Base register
 CX - Counter register
 DX - Data register
 each are 16-bit long and can also be accessed as two 8-bit
registers
 AX  AH & AL
 BX  BH & BL
 CX  CH & CL
 DX  DH & DL
 The 80386 introduced an extended 32-bit general purpose
registers named EAX, EBX, ECX and EDX
36
8086/8088 Data Registers
 AX register
 is used for operations involving input/output and arithmetic
 BX register
 given the name base register because it is the only general
purpose register that can be used as an index in indirect
addressing
 can also be used for computations
 CX register
 usually used to control the number of times a loop is repeated or
a value to shift bits left or right in bit shifting operations
 can also be used for computations
 DX register
 is used for operations involving input/output and most arithmetic
37
8086/8088 Address Registers
 Segment registers: used to store starting address of memory segments
 Code Segment register
 Data Segment register
 Stack Segment register
 Extra Segment register
 Index registers: used for indexed addressing and string operations
 Source Index register
 Destination Index register
 Pointer registers: used to store offset address within memory segments
 Instruction Pointer register
 Stack Pointer register
 Base Pointer register
 All the above address registers are 16-bit long in 8086/8088
38
8086/8088 Segment Registers
 CS register: used to hold starting
address of program’s code segment
 DS register: used to hold starting
address of program’s data segment
 SS register: used to hold starting
address of program’s stack segment
 ES register: used to hold starting
address of programmers defined
extra data segment
 FS and GS registers: additional
extra segment registers introduced
by the 80386
39
8086/8088 Pointer Registers
 IP (Instruction Pointer) register
 used to locate a specific location within the code segment
 used to hold offset address of the next instruction to be
executed
 SP (Stack Pointer) register
 used to hold offset address of the top of the stack segment
 points to the current word being processed in the stack
 BP (Base Pointer) register
 used to point to a specific location in the stack
40
8086/8088 Index Registers
 SI (Source Index) & DI (Destination Index) registers
 are used to locate a specific location within the data
segment
 both are used in string handling operations. In this
context, SI is associated with the DS register while DI is
associated with the ES register
41
Flags Register
 Is the status register in Intel x86 microprocessors that shows the current
state of the processor
 In 8086 flags register is 16 bits wide, among which 9 are active
 They are modified automatically by the processor after instruction
execution, which allows to determine the type of the result and also
conditions to transfer control to other parts of the program
42
Flags Register …
 The flags bits has two groups
 Status flags: reflect the result of an operation executed
by the processor
 SF, ZF, AF, CF, PF & OF
 Control flags: enable or disable certain operations of
the processor
 Trap flag (TF)
 Interrupt flag (IF)
 Direction flag (DF)
43
Flags Register: Status Flags
 SF (Sign): Indicates the resulting sign of an arithmetic operation (0 =
positive and 1 = negative)
 ZF (Zero): Indicates the result of an arithmetic or comparison
operation (0 = nonzero and 1 = zero result)
 PF (Parity): indicates the number of 1-bits that result from an
operation. (0=even parity and 1 = odd parity)
 AF (Auxiliary Carry): contains a carry out of bit 3 into bit 4 in an
arithmetic operation
 OF (Overflow): indicates overflow of a high-order(leftmost) bit
following in a signed arithmetic operation
 CF(Carry): contains carries from a high-order bit following an
unsigned arithmetic operation; also contains the contents of the last bit
of a shift or rotate operation
44
Flags Register: control flags
 The Interrupt Flag
 Indicates that external interrupts, such as keyboard entry, are to be
processed or ignored
 Clearing IF (IF=0) disables interrupts
 The Direction Flag
 Determines left or right direction for moving or comparing string
(character) data
 If DF=1, the string instruction will automatically decrement the pointer
 The Trap Flag
 Permits operation of the processor in single-step mode
 Setting TF (TF=1) puts the processor into single step mode for
debugging, where the processor automatically generates an internal
interrupt after each instruction, allowing a program to be inspected as it
executes instruction by instruction
45

More Related Content

PPTX
Chapter 1 William stalling 10th edition basic computer organization and archi...
PPTX
Trends in computer architecture
PPTX
Evolution of processors
PPTX
Introduction to Computer Architecture and Organization
PPT
Coa module1
PDF
Question Bank Microprocessor 8085
PDF
Pipelining and ILP (Instruction Level Parallelism)
PDF
22CS201 COA
Chapter 1 William stalling 10th edition basic computer organization and archi...
Trends in computer architecture
Evolution of processors
Introduction to Computer Architecture and Organization
Coa module1
Question Bank Microprocessor 8085
Pipelining and ILP (Instruction Level Parallelism)
22CS201 COA

What's hot (20)

PPTX
Microprocessor Presentation
PPTX
80386 Architecture
PPT
Introduction to microprocessor
PPTX
Memory banking-of-8086-final
PPTX
Micro Programmed Control Unit
PPSX
Evolution of microprocessors
PPTX
Dsdco IE: RISC and CISC architectures and design issues
PPTX
Evolution of Microprocessor
PPT
History of processors
PPT
Control Memory
PPT
Risc and cisc eugene clewlow
PPTX
MicroProcessors
PDF
8086 architecture and pin description
PDF
Embedded C - Lecture 1
PPTX
Timer programming for 8051 using embedded c
PPT
Introduction to 8086 microprocessor
PPTX
General register organization (computer organization)
PPTX
PPTX
History Of Microprocessors
Microprocessor Presentation
80386 Architecture
Introduction to microprocessor
Memory banking-of-8086-final
Micro Programmed Control Unit
Evolution of microprocessors
Dsdco IE: RISC and CISC architectures and design issues
Evolution of Microprocessor
History of processors
Control Memory
Risc and cisc eugene clewlow
MicroProcessors
8086 architecture and pin description
Embedded C - Lecture 1
Timer programming for 8051 using embedded c
Introduction to 8086 microprocessor
General register organization (computer organization)
History Of Microprocessors
Ad

Similar to Introduction to Microprocessors (20)

PPTX
Genesis & Progression of Processors in CPU
PDF
MICROPROCESSOR & MICROCONTROLLER 8086,8051 Notes
PDF
EE6502 Microprocessor & Microcontroller Regulation 2013
PPTX
Fundamentals of Microcontrollers CHAPTER 1.pptx
PDF
chapter 1-part 1 introduction o microprocessor.pdf
PPTX
TOPIC 2 - Evolution of Microprocessors.pptx
PPT
DOC
8085 micro processor- notes
PPT
Journey of Microprocessors By Basit Ali
DOCX
Microprocessors and Applications
PPSX
Evolution Of Microprocessors
PPTX
Evolution of microprocessors
PPTX
Evolution of microprocessors
PDF
Microprocessor and Positive and Negative Logic
DOCX
MICROPROCESSORS BASICS
PPTX
Introduction to microcomputer by VU.pptx
PPTX
History of microprocessors copy
PPTX
History of processor
PPTX
Microprocessor and assembly language.pptx
Genesis & Progression of Processors in CPU
MICROPROCESSOR & MICROCONTROLLER 8086,8051 Notes
EE6502 Microprocessor & Microcontroller Regulation 2013
Fundamentals of Microcontrollers CHAPTER 1.pptx
chapter 1-part 1 introduction o microprocessor.pdf
TOPIC 2 - Evolution of Microprocessors.pptx
8085 micro processor- notes
Journey of Microprocessors By Basit Ali
Microprocessors and Applications
Evolution Of Microprocessors
Evolution of microprocessors
Evolution of microprocessors
Microprocessor and Positive and Negative Logic
MICROPROCESSORS BASICS
Introduction to microcomputer by VU.pptx
History of microprocessors copy
History of processor
Microprocessor and assembly language.pptx
Ad

More from Seble Nigussie (9)

PDF
Fundamentals of programming with C++
PDF
Introduction to JSON & Ajax
PDF
Introduction to jQuery
PDF
Introduction to Javascript
PDF
Introduction to Bootstrap
PDF
Flexbox, Grid and Sass
PDF
Introduction to CSS3
PDF
Introduction to HTML
PDF
Introduction to HTTP
Fundamentals of programming with C++
Introduction to JSON & Ajax
Introduction to jQuery
Introduction to Javascript
Introduction to Bootstrap
Flexbox, Grid and Sass
Introduction to CSS3
Introduction to HTML
Introduction to HTTP

Recently uploaded (20)

PDF
Anesthesia in Laparoscopic Surgery in India
PPTX
Week 4 Term 3 Study Techniques revisited.pptx
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
PPH.pptx obstetrics and gynecology in nursing
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PPTX
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
PPTX
Cell Structure & Organelles in detailed.
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
Business Ethics Teaching Materials for college
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
VCE English Exam - Section C Student Revision Booklet
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
Classroom Observation Tools for Teachers
Anesthesia in Laparoscopic Surgery in India
Week 4 Term 3 Study Techniques revisited.pptx
O5-L3 Freight Transport Ops (International) V1.pdf
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPH.pptx obstetrics and gynecology in nursing
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
Cell Structure & Organelles in detailed.
Abdominal Access Techniques with Prof. Dr. R K Mishra
Pharmacology of Heart Failure /Pharmacotherapy of CHF
Business Ethics Teaching Materials for college
STATICS OF THE RIGID BODIES Hibbelers.pdf
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
102 student loan defaulters named and shamed – Is someone you know on the list?
Renaissance Architecture: A Journey from Faith to Humanism
O7-L3 Supply Chain Operations - ICLT Program
VCE English Exam - Section C Student Revision Booklet
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Classroom Observation Tools for Teachers

Introduction to Microprocessors

  • 2. What is Microprocessor?  Is a clock-driven semiconductor made of millions of microscopic array of electronic circuits and electronic components (resistors, capacitors, inductors…) that are diffused or implanted to surface of small silicon chip  its basic purpose is to take input, process it and then provide appropriate output  Examples  Intel processors, AMD , PowerPC … 2
  • 3. Function of microprocessors  A microprocessor performs three basic steps:  First, it fetches an instruction from memory,  Second, it uses decoding circuitry to determine what the instruction means (i.e., identify the operations and the devices involved in it) and  Third, it executes the instruction 3
  • 4. Components of microprocessor  ALU (Arithmetic/Logic Unit)  performs all arithmetic and logic operations  Control Unit  Interprets the instructions and generates various timing and control signals  it controls the flow of data between the μ-processor and memory & peripherals  Registers  A register is a very small & very fast memory that is built into the CPU in order to store the current data and instructions which are being executed by the CPU 4
  • 5. Modes of Processing  Real Mode  One program at a time  Protected Mode  Can run more than one program concurrently and protect them from each other  Virtual Mode  The processor can swap portion of the memory to the hard disk; in this way programs running concurrently will have more space to operate 5
  • 6. Characteristics of microprocessors  Instruction set  the set of instructions that a microprocessor can understand or execute  Word length  refers to the number of bits a processor can process at a time  Eg. a 4-bit processor means the ALU can perform a 4-bit data operation at a time  the longer the word length is the more powerful the processor is and can process data at a faster speed as compared to processor with shorter word length 6
  • 7. Characteristics of microprocessors  Speed  measured in HZ = 1cycle/second  Some processors may complete a single instruction per cycle, or may take one or more cycles  a 2 GHZ CPU may compute 2 billion instructions per second, if it is able to complete a single instruction in a single cycle  but if it takes 2 cycles to complete a single instruction then it is only able to compute 1 billion instructions per second  Cache Size  The size of the cache memory 7
  • 8. Characteristics of microprocessors …  Size of registers  refers to the number of bits a microprocessor’s register can hold at a time  the size of addressable memory is often determined by the width of registers  Data bus width  Refers to the number of bits a data bus can carry at a time 8
  • 9. Classes of microprocessors 1. Complex instruction set computer (CISC)  Often contain instructions that perform several different tasks at a once  Ex: Intel Processors 2. Reduced instruction set computer (RISC)  are made according to the function in which the microprocessor can carry out small things in a specific command  In this way these processors completes more commands at a faster rate  is simpler, smaller and faster  Ex: PowerPC and ARM's Cortex chips 9
  • 10. Evolution of Microprocessors  Computing technologies based on vacuum tubes and transistors  In 1959, Fair child semiconductors invented the first integrated circuit  In 1968, Gordan Moore, Robert Noyce & Andrew Grove founded Intel(Integrated Electronics)  In 1971, the first microprocessor, Intel 4004 was released  In 1972, Intel released the first 8-bit microprocessor Intel 8008  In 1976, MOS technologies introduced the Motorola 6502 an 8-bit processor, used in Apple I and II  In 1981, the first PC was created by IBM using intel’s 8088 microprocessor  Several companies like Intel, AMD, IBM, ARM, Motorola… make general purpose processors that are designed for personal computers, laptops, mobile devices and large central servers 10
  • 11. Intel microprocessors  Intel  is generally regarded as the company that sets the benchmark for others to follow  From the earlier Pentium and Centrino microprocessors to the Core 2, Core i series  Atom chips for mobiles  The high-end Itanium and Xeon processors for server applications  Over 90% of laptops use Intel microprocessors  HP, Dell, Apple, Samsung, Sony, Toshiba … 11
  • 12. Top CPU manufacturers  Intel  AMD  Qualcomm  Mediatek  NVIDIA  IBM  Samsung  Motorola  Hewlett-Packard (hp)  Dell  Acer  … 12
  • 13. Intel microprocessors  Intel 4004  Intel 8080  Intel 8085  Intel 8088  Intel 8086  Intel 80286  Intel 80386  Intel 80486  Pentium  Pentium II and III  Dual Core/ Core  Core i3, i5, i7 13
  • 14. Intel microprocessors … 4-bits processors  Intel 4004  1971- the first commercially available processor as well as the first complete CPU on a single chip  a 4-bit processor: able to operate on 4 bits of data at a time  4-bit data bus  had 2,300 transistors  clock speed of 108KHZ  640 bytes addressable memory  was designed for use in calculator but also used traffic light controller, Blood analyzers … 14
  • 15. Intel microprocessors … 8-bits processors  Intel 8008  first 8-bit microprocessor  200KHz clock speed and 3,500 transistors,  had 6 , 8-bit registers  8-bit data bus  can address up to 16KB  Intel 8085  was popular as an embedded controller  ran at 5MHZ and contained 6500 transistors 15
  • 16. Intel microprocessors … 16-bits processors  Intel 8086  1978,16-bit: all registers, internal and external buses  Used 20-bit addressing  Can address 1 million bytes of internal memory  29,000 transistors, 5MHz initially  Intel 8088  was identical to the 8086 with the exception of its 8-bit internal bus  The IBM 5150, the first IBM PC, came with the 8088 16
  • 17. Intel microprocessors … 16-bits processors  Intel 80286  can operate on real and protected mode  134,000 transistors, 6M-8MHz initially  can address up to 16 million bytes of internal memory  was popular in IBM-PC AT and AT PC clones 17
  • 18. Intel microprocessors … 32-bits processors  Intel 80386  the first 32-bit microprocessor  32 bit registers & data bus  can operate on protected mode and supports virtual mode  275,000 transistors, 12MHz initially, later 33MHz  Intel continued to manufacture the 80386 family until September of 2007  Intel single-source production of 386 to AMD  Later changed in 1991 by AMD as AM386 18
  • 19. Intel microprocessors … 32-bits processors  Intel 80486  32 bit registers and data bus  has a high speed cache memory, 8KB SRAM cache  was launched with 25 to 50 MHz, included 1.2 million transistors 19
  • 20. Intel microprocessors … 32-bits processors  Pentium (Pentium I)  32 bit registers, 64 bit data bus  Has a high speed cache memory  It can execute more than one instruction per clock cycle  Pentium II and III  Have a dual independent bus that provides separate path to the system cache and memory  On-die L2 cache 20
  • 21. Intel microprocessors … 64-bits processors  New instruction set, not at all related to x86.  Itanium  Released May 29, 2001  733 MHz to 800 MHz  2MB cache  Itanium 2  Released July 2002  900 MHz – 1.6 GHz 21
  • 22. Intel microprocessors … 64-bits processors  Intel core 2  x86-64 microprocessor  Two cores on one die  Number of transistors: 291 million  64 KB of L1 cache per core  1.86-3.00 GHz  Intel core i series  Intel core i3, i5, i7 22
  • 23. Reading Assignment 1 24  Micro-processor vs micro-controller  Multi-core processor vs multi-processor  CPU vs GPU  Multi-threading and hyper-threading  Overclocking
  • 24. What is an x86 architecture?  x86 is a family of backward compatible instruction set architectures based on the Intel 8086 CPU  the term "x86" came into being because the names of several successors to Intel's 8086 processor end in "86", including the 80186, 80286, 80386 and 80486 processors  all newer processors using Intel's x86 instruction set are still referred to as x86, i386, or i686 compatible (which means they all use extensions of the original 8086 instruction set) 25
  • 25. Intel 8086  1978, first x86 family microprocessor  16-bit: all registers, internal and external buses  can address 1 million bytes of internal memory  used 20-bit addressing  to date backward compatibility has been maintained 26
  • 26. 8086 Microprocessor Architecture  The Basic Architecture of the Intel 8086  The processor is partitioned into two logical units  Execution Unit (EU)  Bus Interface Unit(BIU)  Why partition is needed?  Because the processor runs considerably faster than memory 27
  • 28. Execution Unit  takes care of the processing including arithmetic and logic operations  its role is to execute instructions  Contains  ALU,  Control Unit and  Registers 29
  • 29. Bus Interface Unit (BIU)  Its role is to deliver instructions and data to the EU  Function  to manage the bus control unit, segment registers and instruction queue  to provide access to instructions from memory and place them in an instruction queue, which varies in size depending on the processor  This feature enables the BIU to look ahead and prefetch instructions so that there is always a queue of instructions ready to execute 30
  • 30. Internal Memory of 8086  Memory consists of cells organized in 8-bit groups  Bytes in memory are numbered consecutively, beginning with 00  8086  was able to address 1MB of memory  has 20bits wide memory address 31
  • 31. Intel 8086- Memory  RAM  From the 1MB of memory, the first 640K is base RAM  is used for temporary program storage  ROM  The 8086 Basic Input/Output System (BIOS) begins at address 768K and handles  I/O devices, such as a hard disk controller  ROM beginning at 960K controls the computer’s basic functions  Power-On Self-Test, dot patterns for graphics, and the disk self-loader 32
  • 32. Memory Segments  Memory segmentation is the division of computer's primary memory into segments or sections  Segments are special areas defined in a program for containing the code, the data, and what is known as the stack  A segment begins on a paragraph boundary, that is, at a location evenly divisible by 16, or hex 10. 33
  • 33. Memory Segments …  In real mode, the three main segments are code, data, and stack  Code Segment:  Contains the machine instructions to be executed  The first executable instruction is at the start of this segment, and the operating system links to that location to begin program execution  Data Segment:  Contains a program’s defined data, constants, and work areas  Stack Segment:  Contains any data and addresses that the program needs to save temporarily for use on subroutines  A program may contain one or more segments, which may vary in size, and can be defined in any sequence 34
  • 34. 8086/8088 Registers  The registers are categorized into two sets:  Data registers  are for calculations  Address registers  used to store memory addresses that point to locations in memory where data will be retrieved or stored 35
  • 35. 8086/8088 Data Registers  aka general purpose registers, these are  AX - Accumulator register  BX - Base register  CX - Counter register  DX - Data register  each are 16-bit long and can also be accessed as two 8-bit registers  AX  AH & AL  BX  BH & BL  CX  CH & CL  DX  DH & DL  The 80386 introduced an extended 32-bit general purpose registers named EAX, EBX, ECX and EDX 36
  • 36. 8086/8088 Data Registers  AX register  is used for operations involving input/output and arithmetic  BX register  given the name base register because it is the only general purpose register that can be used as an index in indirect addressing  can also be used for computations  CX register  usually used to control the number of times a loop is repeated or a value to shift bits left or right in bit shifting operations  can also be used for computations  DX register  is used for operations involving input/output and most arithmetic 37
  • 37. 8086/8088 Address Registers  Segment registers: used to store starting address of memory segments  Code Segment register  Data Segment register  Stack Segment register  Extra Segment register  Index registers: used for indexed addressing and string operations  Source Index register  Destination Index register  Pointer registers: used to store offset address within memory segments  Instruction Pointer register  Stack Pointer register  Base Pointer register  All the above address registers are 16-bit long in 8086/8088 38
  • 38. 8086/8088 Segment Registers  CS register: used to hold starting address of program’s code segment  DS register: used to hold starting address of program’s data segment  SS register: used to hold starting address of program’s stack segment  ES register: used to hold starting address of programmers defined extra data segment  FS and GS registers: additional extra segment registers introduced by the 80386 39
  • 39. 8086/8088 Pointer Registers  IP (Instruction Pointer) register  used to locate a specific location within the code segment  used to hold offset address of the next instruction to be executed  SP (Stack Pointer) register  used to hold offset address of the top of the stack segment  points to the current word being processed in the stack  BP (Base Pointer) register  used to point to a specific location in the stack 40
  • 40. 8086/8088 Index Registers  SI (Source Index) & DI (Destination Index) registers  are used to locate a specific location within the data segment  both are used in string handling operations. In this context, SI is associated with the DS register while DI is associated with the ES register 41
  • 41. Flags Register  Is the status register in Intel x86 microprocessors that shows the current state of the processor  In 8086 flags register is 16 bits wide, among which 9 are active  They are modified automatically by the processor after instruction execution, which allows to determine the type of the result and also conditions to transfer control to other parts of the program 42
  • 42. Flags Register …  The flags bits has two groups  Status flags: reflect the result of an operation executed by the processor  SF, ZF, AF, CF, PF & OF  Control flags: enable or disable certain operations of the processor  Trap flag (TF)  Interrupt flag (IF)  Direction flag (DF) 43
  • 43. Flags Register: Status Flags  SF (Sign): Indicates the resulting sign of an arithmetic operation (0 = positive and 1 = negative)  ZF (Zero): Indicates the result of an arithmetic or comparison operation (0 = nonzero and 1 = zero result)  PF (Parity): indicates the number of 1-bits that result from an operation. (0=even parity and 1 = odd parity)  AF (Auxiliary Carry): contains a carry out of bit 3 into bit 4 in an arithmetic operation  OF (Overflow): indicates overflow of a high-order(leftmost) bit following in a signed arithmetic operation  CF(Carry): contains carries from a high-order bit following an unsigned arithmetic operation; also contains the contents of the last bit of a shift or rotate operation 44
  • 44. Flags Register: control flags  The Interrupt Flag  Indicates that external interrupts, such as keyboard entry, are to be processed or ignored  Clearing IF (IF=0) disables interrupts  The Direction Flag  Determines left or right direction for moving or comparing string (character) data  If DF=1, the string instruction will automatically decrement the pointer  The Trap Flag  Permits operation of the processor in single-step mode  Setting TF (TF=1) puts the processor into single step mode for debugging, where the processor automatically generates an internal interrupt after each instruction, allowing a program to be inspected as it executes instruction by instruction 45