Professional Documents
Culture Documents
Course Contents
Introduction to microprocessor organization and assembly language
programming
Microprocessor architecture, programming model, addressing modes,
instruction set architecture, assembly language and programming,
exception/interrupt processing, subroutine and parameter handling,
memory system, I/O interfacing, a single board computer.
Course Goals
Ability to (assembly) program for microprocessors and peripheral
devices, and to design and implement memory subsystem, I/O
subsystem and a working single board computer
Course Administration
Instructor:
Textbook:
Slides:
Evolution of Computers
First generation (vacuum tubes), 1946-1958
features huge, slow, expensive, and undependable
Examples:
ENIAC (Electronic Numerical Integrator and Computer), 1946
EDVAC (Electronic Discrete Variable Automatic Computer), 1947
UNIVAC I (UNIVersal Automatic Computer), 1951
Evolution of Computers
ENIAC (Electronic Numerical Integrator and Computer),
1946, UPenn
2300 transistors
13.5 mm2
108k Hz
PMOS Technology
General-purpose register
architecture
Loosely based on PDP-11
minicomputer
Per Second)
Used in
Apple Mac
Sun , Silicon Graphics, & Apollo
workstations
1.8 Ghz
58 M
118 mm2
Apple Power G5, the fastest
PC in 2003, has dual PPC 970
CPU
Intel i7
11/01/2008
IC Evolution
https://www.youtube.com/watch?
v=AjE_wGSL1VA
IC Design Process
https://www.youtube.com/watch?
v=GdqbLmdKgw4
https://www.youtube.com/watch?v=qm67wbB5GmI
Microcomputer vs Microcontroller vs
Microprocessor
Microprocessor :- A CPU that combine ALU and
control unit in a single IC
Microcontroller :- Chip or device that contain
MPU, memory and I/O circuitry.
Microcomputer :- A computing device that utilizes
microprocessor as its CPU
Parallel I/O
Serial I/O
Interrupt
Circuitry
CPU
Memory
System Bus
Timing
Timing unit
generates clock signals and is responsible for the proper operation of all
system hardware
crystal oscillator and timing circuitry
Memory
stores both program code and data
ROM (read-only memory), RAM (random access memory)
Interrupt circuitry
mechanism for the processor to respond to special external events
I/O, peripherals
monitor, keyboard, mouse, printer,
Microprocessor Operation
Start here at power-on or when a reset signal is
received
Reset
Fetch
Decode
Execute
2. Execute instruction
3. if necessary, write results to memory
Processor
68000
Keyboard
I/O Interface
6522
Modem Printer
Realtime
clock
Serial I/O
8530
Disk drive
Floppy disk
controller
System bus
System
ROM
RAM buffers
and Mux
Dynamic
RAM
512KB
PAL
decoders
Sound
logic
Video
logic
Speaker
Control
signals
Video
display
Results
Data structures
& algorithms
for solution
programming
load
Program
code in HLL
or Assembly
Machine
code
translating
HLL
HLL
HLL
compiler
assembly
assembly
assembly
code
assembler
object
assembly
assembly
code
loader
executable
linker
Programming Languages
print out Hello! on the display screen.
Programming Languages
Machine languages: recognized and executed by the
hardware
e.g.,
00008000
00008000
00008006
00008100
00008100
00008106
0000810A
0000810A
0000810C
00008110
00008112
memory
address
48 65 6C 6C 6F 21
00
227C 00008000
103C 000E
4E4F
103C 0009
4E4F
binary code
shown in Hex
ORG
$8000
HMSG
DC.B
'Hello!'
DC.B
0
ORG
$8100
START MOVEA.L #HMSG,A1
MOVE.B #14, D0
TRAP
MOVE.B
TRAP
END
#15
#9,D0
#15
START
After-Class Practice
Install Easy68K IDE tool
Repeat the HELLO.X68 program