Page 1
Embedded Systems Design: A Unified
Hardware/Software Introduction
1
Chapter 3 General-Purpose Processors:
Software
Page 2
Embedded Systems Design: A Unified
Hardware/Software Introduction
1
Chapter 3 General-Purpose Processors:
Software
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
2
Introduction
• General-Purpose Processor
– Processor designed for a variety of computation tasks
– Low unit cost, in part because manufacturer spreads NRE
over large numbers of units
• Motorola sold half a billion 68HC05 microcontrollers in 1996 alone
– Carefully designed since higher NRE is acceptable
• Can yield good performance, size and power
– Low NRE cost, short time-to-market/prototype, high
flexibility
• User just writes software; no processor design
– a.k.a. “microprocessor” – “micro” used when they were
implemented on one or a few chips rather than entire rooms
Page 3
Embedded Systems Design: A Unified
Hardware/Software Introduction
1
Chapter 3 General-Purpose Processors:
Software
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
2
Introduction
• General-Purpose Processor
– Processor designed for a variety of computation tasks
– Low unit cost, in part because manufacturer spreads NRE
over large numbers of units
• Motorola sold half a billion 68HC05 microcontrollers in 1996 alone
– Carefully designed since higher NRE is acceptable
• Can yield good performance, size and power
– Low NRE cost, short time-to-market/prototype, high
flexibility
• User just writes software; no processor design
– a.k.a. “microprocessor” – “micro” used when they were
implemented on one or a few chips rather than entire rooms
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
3
Basic Architecture
• Control unit and
datapath
– Note similarity to
single-purpose
processor
• Key differences
– Datapath is general
– Control unit doesn’t
store the algorithm –
the algorithm is
“programmed” into the
memory
Processor
Control unit Datapath
ALU
Registers
IR PC
Controller
Memory
I/O
Control
/Status
Page 4
Embedded Systems Design: A Unified
Hardware/Software Introduction
1
Chapter 3 General-Purpose Processors:
Software
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
2
Introduction
• General-Purpose Processor
– Processor designed for a variety of computation tasks
– Low unit cost, in part because manufacturer spreads NRE
over large numbers of units
• Motorola sold half a billion 68HC05 microcontrollers in 1996 alone
– Carefully designed since higher NRE is acceptable
• Can yield good performance, size and power
– Low NRE cost, short time-to-market/prototype, high
flexibility
• User just writes software; no processor design
– a.k.a. “microprocessor” – “micro” used when they were
implemented on one or a few chips rather than entire rooms
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
3
Basic Architecture
• Control unit and
datapath
– Note similarity to
single-purpose
processor
• Key differences
– Datapath is general
– Control unit doesn’t
store the algorithm –
the algorithm is
“programmed” into the
memory
Processor
Control unit Datapath
ALU
Registers
IR PC
Controller
Memory
I/O
Control
/Status
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
4
Datapath Operations
• Load
– Read memory location
into register
• ALU operation
– Input certain registers
through ALU, store
back in register
• Store
– Write register to
memory location
Processor
Control unit Datapath
ALU
Registers
IR PC
Controller
Memory
I/O
Control
/Status
10
...
...
10
+1
11
11
Page 5
Embedded Systems Design: A Unified
Hardware/Software Introduction
1
Chapter 3 General-Purpose Processors:
Software
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
2
Introduction
• General-Purpose Processor
– Processor designed for a variety of computation tasks
– Low unit cost, in part because manufacturer spreads NRE
over large numbers of units
• Motorola sold half a billion 68HC05 microcontrollers in 1996 alone
– Carefully designed since higher NRE is acceptable
• Can yield good performance, size and power
– Low NRE cost, short time-to-market/prototype, high
flexibility
• User just writes software; no processor design
– a.k.a. “microprocessor” – “micro” used when they were
implemented on one or a few chips rather than entire rooms
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
3
Basic Architecture
• Control unit and
datapath
– Note similarity to
single-purpose
processor
• Key differences
– Datapath is general
– Control unit doesn’t
store the algorithm –
the algorithm is
“programmed” into the
memory
Processor
Control unit Datapath
ALU
Registers
IR PC
Controller
Memory
I/O
Control
/Status
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
4
Datapath Operations
• Load
– Read memory location
into register
• ALU operation
– Input certain registers
through ALU, store
back in register
• Store
– Write register to
memory location
Processor
Control unit Datapath
ALU
Registers
IR PC
Controller
Memory
I/O
Control
/Status
10
...
...
10
+1
11
11
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
5
Control Unit
• Control unit: configures the datapath
operations
– Sequence of desired operations
(“instructions”) stored in memory –
“program”
• Instruction cycle – broken into
several sub-operations, each one
clock cycle, e.g.:
– Fetch: Get next instruction into IR
– Decode: Determine what the
instruction means
– Fetch operands: Move data from
memory to datapath register
– Execute: Move data through the
ALU
– Store results: Write data from
register to memory
Processor
Control unit Datapath
ALU
Registers
IR PC
Controller
Memory
I/O
Control
/Status
10
...
...
load R0, M[500]
500
501
100
inc R1, R0 101
store M[501], R1 102
R0 R1
Read More