Lesson 1 - Evolution of Microprocessor PDF
Lesson 1 - Evolution of Microprocessor PDF
Lesson 1 - Evolution of Microprocessor PDF
requires space
generate tremendous heat
requires large amount of power.
act as a logical switches in digital circuits
replaced the vacuum tubes
Invented at Bell lab in 1947
in high, little power.
JACK KILBY (Texas instrument) used very small
wires to connect transistors (first IC), that was in
1958.
ROBERT NOYCE (Fairchild Semiconductor)
developed a method of evaporating aluminum in
specific places on a silicon wafer to connect transistors
first practical IC was developed in 1959.
ROBERT NOYCE and GORDON MOORE started
INTEL
develop integrated electronic structure and computer
memories. That was in 1968.
BUSICOM with the help of TED HOFF in 1971
First microprocessor
developed a single general-purpose chip that could be
programmed to carry out a calculators function.
BUSICOM was bankrupted and INTEL bought the right
to manufacture the said chip.
used in the first PC (ALTAIR)
created at MITS by ED ROBERTS
no keyboard and monitor
can only be programmed in straight binary
started out Microsoft.
first product of Microsoft was a BASIC interpreter for
ALTAIR.
Altair BASIC was an interpreter for the BASIC programming language
that ran on the MITS Altair 8800 and subsequent S-100 bus computers.
It was Microsoft's first product (as Micro-Soft), distributed by MITS
under a contract. Altair BASIC was the start of the Microsoft BASIC
product range.
INSTRUCTION UNIT
fetches and decodes the subsequent instruction of the program
being run.
ADDRESS UNIT
calculates the address (for memory location).
program data
storage storage
ALU
Control
unit
output input
unit unit
SYSTEM BUS
physical group of signal lines that has a related function
within a microprocessor system.
MICROCOMPUTER:
complete computing system consisting of a
microprocessor, a memory unit and an I/O unit
1. INPUT
consists of all the circuits needed to get programs and data
into the computer
2. MEMORY
stores program and data before the computer run/begins.
3. CONTROL
directs the operation of all other sections. It tells the other
sections what to do and when to do a certain task.
4. ALU
grids out answers of number and logic problems.
5. OUTPUT
passes answers and other processed data to the outside
world.
1. SMALL SCALE INTEGRATION
12 number of gates
2. MEDIUM SCALE INTEGRATION
12 to 100 number of gates
3. LARGE SCALE INTEGRATION
100plus number of gates
4. VERY LARGE SCALE INTEGRATION
5,000 TO 50,000 number of gates
for SSI and MSI because it is much faster but bulky
DTL diode transistor logic
Obsolete.
TTL transistor-transistor logic.
Popular family of SSI and MSI.
ECL emitter-coupled logic.
Fastest, used in high-speed application.
DTL
TTL
can be packed on the same chip
PMOS p-channel MOSFETS
oldest obsolete and slowest.
NMOS n-channel MOSFETS
dominates LSI
used for microprocessor and memories.
CMOS complementary MOSFETS
push-pull arrangement of n- and p- channel MOSFETS
used where low power consumption is needed.
1. DATA TRANFERS OPERATIONS
95% of its time transferring data
Transferring of data is to/from the memory in the
system.
Data is transferred to/from the I/O and passes around the
processor.
2. ARITHMETIC AND LOGIC OPERATIONS
4% is spent on simple ALU operations
Addition: most performed, through addition the
microprocessor can subtract using 2s complement.
3. DECISION-MAKING OPERATIONS
least used. Based upon numerical test.
The clock frequency of the microprocessor (MHz)
The number of instructions it can perform or execute
at a single time (Millions of Instructions per Second or
MIPS)
1. ARITHMETIC LOGIC UNIT (ALU)
made up of logic circuits whose primary function is to
process data.
All arithmetic and logical operations are performed here
in ALU.
2. CONTROL UNIT is made of the following:
INSTRUCTION DECODER
serves as the control logics intelligence (brain of the
microprocessor unit.)
Responsible for synthesis and decoding of the instructions
fed or received by the microprocessor.
TIMING
used to synchronize the operation of the different parts of the
control unit and the computer system.
Always in phase with the clock system of the microcomputer.
CONTROL LOGIC
responsible in the operation of the different parts of the
microprocessor unit and the microcomputer system
sends control signals flowing in the control
All operations to be performed by the microprocessor are
driven by the control logic.
All data and instruction that is sent to the
microprocessor are first stored in the registers.
Serves as temporary storage devices
7 Registers present in all MPU:
ACCUMULATOR (AX)
works very closely always with the ALU unit.
All results of the processes performed by the ALU are stored
at the accumulator.
In some case an operand is also stored in this register before
the ALU processes the operands. Its main purpose to
accumulate data. Only data is stored in this register that is
why this is considered as 8-bit register.
INSTRUCTION REGISTER
works very closely with the instruction decoder of the control
unit.
stores all instructions coming from the data bus.
Before the instruction decoder synthesizes the instruction, it
is first stored in this register. What is stored or placed in the
instruction decoder is the Opcode or Operation Code of
the instruction to be executed by the microprocessor. That is
used to specify what operation is to be performed by the
microprocessor.
PROGRAM COUNTER (PC)
responsible in tracking the address in memory of the
instructions to be executed by the microprocessor
As soon execution of the program starts, the first memory
location containing the instruction is stored to the program
counter. It automatically increments as soon it is finished
with the memory location.
Serves as the marker in memory of the instruction or data to
be fetched.
register within CPU
holds the address of the next instruction
to be fetched from memory
goes through step by step counting
sequence - causes the computer to read
successive instruction stored in memory
PC is modified with new address when
there is a jump or transfer or subroutine
call instruction
STATUS REGISTER
referred to as the Flag Register or Condition Code Register
term flag is used as an indicator of the status, which can be set
or reset
When the microprocessor is executing a program. Always, it
affects the status register. This register is composed of several
flags, which comprises the bits of the status register. Setting
the flag means placing a logic 1 and resetting means placing a
logic 0. The most flags in the microprocessor are the
following:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- NT IOPL OF DF IF TF SF ZF - AF - PF - CF
CARRY FLAG
HALF-CARRY FLAG
ZERO FLAG
SIGN FLAG/NEGATIVE FLAG
OVERFLOW FLAG
INTERRUPT FLAG
control flags and status flags
Control Flags
a. interrupt enable flag (IF)
b. direction flag (DF)
Status Flags
a. carry flag (CF)
b. parity flag (PF)
c. auxilliary flag (AF)
d. zero flag (ZF)
e. sign flag (SF)
f. overflow flag (OF)
g. nested task (NF)
h. input/output privilege level (IOPL)
Carry flag
00110101
01000011
001111000
Carry 0
10000010
10100011
100100101
Carry 1
STACK POINTER (SP)
point to the top of the stack (temporary storage of data or
instruction that is temporarily not in use)
stack uses a last-in-first-out (LIFO) algorithm
Placing information to the stack is also invoking a push operation
while retrieving the topmost information is invoking a pop
operation.
GENERAL PURPOSE REGISTER (BX,CX, DX, EX)
used to store data and are directly connected to the data bus of the
system. The use of this register varies depending on the purpose of
the user or programmer.
INDEX REGISTER (DI, SI)
used as an aid in accessing data found in tables stored in the
memory
can be incremented or decrements
normally do not have any other arithmetic or logical capability.
Index reg -holds a base address to be added to an offset
-base address and the offset (displacement) forms the
effective address
A
B
Status register
stack pointer
IX 0044 0044
SP 0045 0045
PC 0046 0046
stack pointer
0047 0047
0048 0048 0048
0049 0049 value #2
ALU 004A 004A value #1
Status register +
Base Stack
IX addres
s
SP
PC
Control unit
INDEX REG: almost all Ps have an index register holds
a base address to be added to an offset base address
and the offset (displacement) forms the effective
address
RESET
FETCH
DECODE
EXECUTE
FETCH
Processor loads an instruction from memory into its
internal instruction register
Advanced MPUs: load more than 1 instruction
DECODE
Determines the type of instruction has been fetched
EXECUTE
May need to read more data from memory or write
results to memory
Reset power on or reset signal is received
Fetch
1. Output instruction address onto address bus
2. Read instruction pattern from memory onto data bus
3. Increment instruction pointer
Execute
1. If possible, read data from memory
2. Execute instruction
3. If necessary, write results in memory
If interrupt signal arrives, the MPUs holds off the
processing of the interrupt until the current
instruction finishes execution.
monitors HOLD, WAIT, or READY for slower devices
(memory) to avoid data loss
Multiple processor system (parallel processing) allows
external circuitry to take over the bus