1/15/2010
Lecture 1:
Introduction to Microcomputers
Today’s Topics
• What is a microcomputers?
• Why
Wh do we
e st
study
d microcomp
microcomputers?
ters?
• Two basic types of microcomputer architectures
• Internal components of a microcomputers
1
1/15/2010
Microcomputer
• Major components of the computer - the processor, the control unit,
one or more memory ICs, one or more I/O ICs, and the clock
• A single printed circuit board usually connects the ICs, making a
computer called a microcomputer
Address/Control
Memory
Data/Instructions
Microprocessor
Input
Data
Input / Processor Control
Output (ALU) Unit
Output
Status/Control
Clock
Another definitions
Microcomputers, Microcontrollers, and Microprocessors
• Microcomputer
– Relatively small and inexpensive computer that is contained on
one or a few chips
• Microcontroller
– A single-chip microcomputer
• Microprocessor
– The processor and control unit part of the single-chip
computer(=microcontroller) is called microprocessor.
There is no single and clear
definition of these terms.
2
1/15/2010
Why do we study Microcomputers?
• Embedded systems use microcontrollers or microcomputers.
• Some interesting statistics (from a few
fe years
ears ago)
– An average American interacts with 300 or more embedded
systems every day.
– 95% of all microprocessor will be sold each year for embedded
systems.
– IEEE estimated that over 700,000 people worldwide were
employed writing code for embedded system in 2007.
Basic Architecture What are ….?
Princeton and Harvard
• There are many other architectures in use. They will be
discussed in a computer architecture course.
• Here, we will cover two major architecture of microcomputers.
– Princeton and Harvard architecture
– The main difference is the memory structure
• Princeton Architecture*
– Known as Von Neumann architecture
– Single memory contains both the program code and the data
data.
• Harvard Architecture
– Two separate memories. One contains only data while the other
is containing only program code.
3
1/15/2010
Princeton Architecture
Known as Von Neumann
• No separate memory space for program code and data
Address/Control
Memory
Data/Instructions
Microprocessor
Input
D t
Data
Input / Processor Control
Output (ALU) Unit
Output
Status/Control
Clock
Harvard Architecture OK.. I see. One clear
distinction of these two is
whether two separate
memory units exist or not.
• Two separate memory units
• The length of an instruction could be different from the data size
• Both data and a program instruction can be read at the same time
Data Code
Memory Memory
Data Instructions Address
/Control
Microprocessor
Input
D t
Data
Input / Processor Control
Output (ALU) Unit
Output
Status/Control
Clock
4
1/15/2010
Major components
1. Processor
• Also called an arithmetic logic unit (ALU).
• Operations ssuch
ch as addition
addition, s
subtraction,
btraction bit-wise
bit ise AND and
OR, shift operations.
• The processor has registers (groups of D flip-flops used to
store binary values).
• Many microcontrollers perform operations on data that is
located in a register. This requires the microcontroller to load
the
h data
d from
f memory into a register in the
h processor,
manipulate the data, then store the new value back to
memory.
• The processor also generates signals that indicates when
values are negative, zero, or when arithmetic overflow occurs.
Major components
2. Control Unit
• A synchronous sequential machine that coordinates the flow
of data between the other units and operations of the other
bl k
blocks.
• The sequence of states and control output of the unit depend
on the inputs: the current program instruction, the status
outputs of the other blocks, and the input/output block.
• Generally speaking, central processing unit (CPU) refers to not
only the processor but also the control unit.
5
1/15/2010
A Quick Introduction of HCS12 Microcontroller
HCS12 (=68HC12 or 9S12) family microprocessor
• The Motorola 68HC12 was introduced in 1996 as an upgrade
for the 68HC11.
• Features
– 16-bit CPU
– Standard 64-KB address space support
– Multiplexed (address and data) external bus.
– 0 to 4 KB of on-chip EEPROM
– 2 KB to 14 KB of on-chip SRAM
– 10 bit A/D converter
10-bit t
– 16 KB to 512 KB of on-chip flash memory (or ROM)
– Etc. etc. etc.
Major components
3. Memory
• Memory is the place where program code and data are stored.
• A sequence
seq ence of directl
directly addressable ‘locations.’
‘locations ’
• Therefore, the number of addresses available in a memory is
limited by the number of bits used to represent the address.
• If 16 bits are used for the address, there are 65,536 (=216)
different addresses available.
6
1/15/2010
Major components
3. Memory - continued
• A memory location is referred to as an information unit which
has two components: its address and its contents.
Address bus lines
CPU Memory
Data bus lines
• The content indicated by an address can be interpreted by the
microprocessor as one of ttwo
o things
things.
– Instruction code are used as inputs into the control unit and
determine how it operates. A group of instruction is called a
program.
– Data are the numbers to be processed or the results of
operations in the processor.
Major components
4. Clock
• A periodic signal for the sequential machine in the control
unit.
• Also used by other blocks to synchronize operations
7
1/15/2010
Major components
5. Input/Output
• The Input/Output (I/O for short.) block represents the
interface between the internals of the microcomputer and the
outside
d world.
ld
• Keyboard, LED and LCD display, printers for example.
Instruction Codes
• Instruction codes consist of Operation Code and Operand
• Operation Code (Op Code for short)
– This tells the microcomputer what action to perform and how to
interpret the operand. All instructions must have an op code.
• Operand
– The operand contains the data that microcontroller will perform
the action on.
– Some operands include several numbers for op codes that
specify more complex actions.
– Some operation codes that perform simple tasks do not need to
have operands.
8
1/15/2010
Instruction Length
Fixed and Variable-length
• Fixed length
– Each instruction is the same number of bits as all others.
Op Code 1 Operand
Op Code 2 Operand
Op Code 3 Operand
• Variable length*
– The length of each instruction may be different.
Op Code 1 Operand
Op Code 2 Operand
Op Code 3 Operand
Questions?
9
1/15/2010
Wrap-up
What we’ve learned
• The definitions of microcomputers, microcontroller, and
microprocessor
• The importance of microcomputers in the real world
• Princeton* and Harvard architectures
• Processor, control unit, memory, clock, and I/O are the major
components of microcomputers.
Now.. I get the clear picture what the
microcomputers are.
And I feel like that this is going to
be really fun.
What to Come
• Review number systems
• Introduction
Introd ction to the HCS12/9S12
10