Chapt 02
Chapt 02
Chapter Overview
• General Concepts
• IA-32 Processor Architecture
• IA-32 Memory Management
• Components of an IA-32 Microcomputer
• Input-Output System
one cycle
• General Concepts
• IA-32 Processor Architecture
• IA-32 Memory Management
• Components of an IA-32 Microcomputer
• Input-Output System
• Fetch
• Decode
• Fetch operands
• Execute
• Store output
CLK
Address
ADDR
RD
Data
DATA
• Modes of operation
• Basic execution environment
• Floating-point unit
• Intel Microprocessor history
• Virtual-8086 mode
• hybrid of Protected
• each program has its own 8086 computer
Irvine, Kip R. Assembly Language for x86 Processors 6/e, 2010. 14
Basic Execution Environment
• Addressable memory
• General-purpose registers
• Index and base registers
• Specialized register uses
• Status flags
• Floating-point, MMX, XMM registers
• Protected mode
• 4 GB
• 32-bit address (4,294,967,295)
• P6 extended to 64 GB
• Real-address and Virtual-8086 modes
• 1 MB space
• 20-bit address (1,048,575)
• In protected mode running multiple programs,
each program has its own 1 MB memory area
EAX EBP
EBX ESP
ECX ESI
EDX EDI
EFLAGS CS ES
SS FS
EIP
DS GS
• General-Purpose
• EAX – accumulator
• ECX – loop counter
• ESP – stack pointer
• ESI, EDI – index registers
• EBP – extended frame pointer (stack)
• Should not be used for arithmetic or data transfer
• Segment
• CS – code segment
• DS – data segment
• SS – stack segment
• ES, FS, GS - additional segments
• Intel 80286
• 16 MB addressable RAM
• Protected memory
• several times faster than 8086
• introduced IDE (Integrated Drive
Electronics) bus architecture
• 80287 floating point unit
• Intel386
• 4 GB addressable RAM, 32-bit
registers, paging (virtual memory)
• Intel486
• instruction pipelining
• Pentium
• superscalar, 32-bit address bus, 64-bit
internal data path
Currently Used:
Lecture 2
• General Concepts
• IA-32 Processor Architecture
• IA-32 Memory Management
• Components of an IA-32 Microcomputer
• Input-Output System
• Real-address mode
• Calculating linear addresses
• Protected mode
• Multi-segment model
• Paging
8FFFF
Linear Address
linear addresses
one segment
80000
• 4 GB addressable RAM
• (00000000 to FFFFFFFFh)
• Each program assigned a memory partition which
is protected from other programs
• Designed for multitasking
• Supported by Linux & MS-Windows
Segment beginning at
3000 has size 2000h
and segment at 26000
has size 10000h
Lecture 3
• General Concepts
• IA-32 Processor Architecture
• IA-32 Memory Management
• Components of an IA-32 Microcomputer
• Input-Output System
• Motherboard
• Video output
• Memory
• Input-output ports
PCI slots
memory controller hub
Pentium 4 socket
AGP slot
dynamic RAM
Firmware hub
I/O Controller
Speaker Power connector
Battery
Diskette connector
Source: Intel® Desktop Board D850MD/D850MV Technical Product IDE drive connectors
Specification
• Collection of
processor chips
designed to work
together on a specific
type of motherboard
• P965 used in
desktop PC with
either a Core 2 Duo
or Pentium D
processor
• Some features of
P965
• Fast Memory
Access
• I/O Controller
Hub (ICH8/R/DH)
• Supports 10 USB
ports, six PCI
express slots and
networking
• High definition
audio chip
• Video controller
• on motherboard, or on expansion card
• AGP (accelerated graphics port technology)*
• Video memory (VRAM)
• Video CRT Display
• uses raster scanning
• horizontal retrace
• vertical retrace
• Direct digital LCD monitors
• no raster scanning required
• 128-bit 3D graphics
performance powered by
RAGE™ 128 PRO
• 3D graphics performance
• Intelligent TV-Tuner with
Digital VCR
• TV-ON-DEMAND™
• Interactive Program Guide
• Still image and MPEG-2 motion
video capture
• Video editing
• Hardware DVD video playback
• Video output to TV or VCR
Computer
A
B B
Scanner A
A B
Hub Printer
A
Camera
B
A B
Hub Device
Irvine, Kip R. Assembly Language for x86 Processors 6/e, 2010. 58
Input-Output Ports
• Parallel
• short cable, high speed
• common for printers
• bidirectional, parallel data transfer
• Intel 8255 controller chip
• Serial
• RS-232 serial port
• one bit at a time
• uses long cables and modems
• 16550 UART (universal asynchronous receiver
transmitter)
• programmable in assembly language
Lecture 4
• General Concepts
• IA-32 Processor Architecture
• IA-32 Memory Management
• Components of an IA-32 Microcomputer
• Input-Output System