80x86 Architecture Basic Architecture Basic components Memory

advertisement
Systems Design & Programming
80x86 Architecture
CMPE 310
Basic Architecture
Basic components
Microprocessor
Memory
DRAM
SRAM
Cache
ROM
Flash
EEPROM
Memory
Bus
8086
through
Pentium IV
I/O System
VESA
PCI
EISA
ISA
Bus
Serial
Plotter
Keyboard
Floppy
Tape
Hard Drive
Mouse
Scanner
DVD
CDROM
Monitor
Printer
1
80x86 Architecture
Systems Design & Programming
CMPE 310
Basic Architecture
Bus Architecture:
Address bus
Microprocessor
Data bus
MWTC
MRDC
IORC
IOWC
ROM
DRAM
Keyboard
Printer
The Pentium bus architecture is not this simple.
We will elaborate on this later.
2
Systems Design & Programming
80x86 Architecture
CMPE 310
Basic Bus Architecture
Bus Architecture:- Three buses:
P Address:
If I/O, a value between 0000H and FFFFH is issued.
If memory, it depends on the architecture:
20-bits (8086/8088)
24-bits (80286/80386SX)
25-bits (80386SL/SLC/EX)
32-bits (80386DX/80486/Pentium)
36-bits (Pentium Pro/II/III)
P Data:
8-bits (8088)
16-bits (8086/80286/80386SX/SL/SLC/EX)
32-bits (80386DX/80486/Pentium)
64-bits (Pentium/Pro/II/III)
P Control:
Most systems have at least 4 control bus connections (active low).
MRDC (Memory ReaD Control), MWRC, IORC (I/O Read Control), IOWC.
3
Systems Design & Programming
80x86 Architecture
CMPE 310
Basic Bus Architecture
Bus Standards:
P ISA (Industry Standard Architecture): 8 MHz
8-bit (8086/8088)
16-bit (80286-Pentium)
P EISA: 8 MHz
32-bit (older 386 and 486 machines).
P PCI (Peripheral Component Interconnect): 33 MHz
32-bit or 64-bit (Pentiums)
New: PCI Express and PCI-X 533 MTS
P VESA (Video Electronic Standards Association): Runs at processor speed.
32-bit or 64-bit (Pentiums)
Only disk and video. Competes with the PCI but is not popular.
4
Systems Design & Programming
80x86 Architecture
CMPE 310
Basic Bus Architecture
Bus Standards:
P USB (Universal Serial Bus): 1.5 Mbps,12 Mbps and now 480 Mbps.
Newest systems.
Serial connection to microprocessor.
For keyboards, the mouse, modems and sound cards.
To reduce system cost through fewer wires.
P AGP (Advanced Graphics Port): 66MHz
Newest systems.
Fast parallel connection: Across 64-bits for 533MB/sec.
For video cards.
To accommodate the new DVD (Digital Versatile Disk) players.
Latest AGP 3.0 with peak bandwidth of 2.1GB/s.
5
Systems Design & Programming
80x86 Architecture
CMPE 310
Basic Memory Architecture
Bank layout
FFFFF
FFFFE
FFFFFF
FFFFFD
8 bits
1 MB
00002
00001
00000
g
8 bits
8 bits
Odd bytes
Even bytes
8 MB
8 MB
000005
000003
000001
D7-D0
8088
FFFFFE
FFFFFC
000004
000002
000000
D15-D8
D7-D0
8086 (1MB only), 80286, 80386SX
80386SL/SLC(32MB)
6
80x86 Architecture
Systems Design & Programming
CMPE 310
Basic Memory Architecture
Bank layout
Bank 3
Bank 2
FFFFFFFE
FFFFFFFA
FFFFFFFF
FFFFFFFB
Bank 1
Bank 0
FFFFFFFC
FFFFFFF8
FFFFFFFD
FFFFFFF9
8 bits
8 bits
8 bits
8 bits
1 GB
1 GB
1 GB
1 GB
0000000A
00000006
00000002
0000000B
00000007
00000003
D31-D24
00000009
00000005
00000001
D23-D16
D15-D8
80386DX, 80486
00000008
00000004
00000000
D7-D0
7
80x86 Architecture
Systems Design & Programming
CMPE 310
Basic Memory Architecture
Bank layout
FFFFFFFF
FFFFFFF7
00000017
0000000F
00000007
FFFFFFFB
FFFFFFF3
00000013
0000000B
00000003
Bank 7
FFFFFFFE
FFFFFFF6
Bank 6
FFFFFFFD
FFFFFFF5
Bank 5
FFFFFFFC
FFFFFFF4
Bank 4
8 bits
8 bits
8 bits
8 bits
512 MB
512 MB
512 MB
512 MB
D63-D56
Bank 3
00000016
0000000E
00000006
FFFFFFFA
FFFFFFF2
D55-D48
Bank 2
00000015
0000000D
00000005
FFFFFFF9
FFFFFFF1
D47-D40
Bank 1
00000014
0000000C
00000004
FFFFFFF8
FFFFFFF0
D39-D32
Bank 0
8 bits
8 bits
8 bits
8 bits
512 MB
512 MB
512 MB
512 MB
D31-D24
00000012
0000000A
00000002
D23-D16
00000011
00000009
00000001
D15-D8
Pentium/Pro/II/III
00000010
00000008
00000000
D7-D0
8
80x86 Architecture
Systems Design & Programming
CMPE 310
Basic I/O Architecture
DRAM (Main Memory)
Active
Processes
ISR NIC
ISR sound
Other OS code
NIC
I/O Space
Interrupt Vectors
FFFF
0000
Ports
Mem
Bus
Data/Address Bus
Bus
Micro
IRQs
processor INTR
0 1 2 ... 7
PIC
Sound card
Ports
9
80x86 Architecture
Systems Design & Programming
CMPE 310
Interrupt Vectors (DOS PC)
BIOS Data area
Available Int. vectors
(DOS int #s 20H-3FH)
Interrupt Vectors
DRAM (Main Memory)
00500H
64 long words
00400H
224 long words
00080H
32 long words
00000H
Interrupt #
Video Graphic Chars
Diskette Parameters
Video Initialization
Timer Tick (18.2/sec)
Keyboard Break
Time of Day
Bootstrap
Resident BASIC
Printer
Keyboard
Cassette
Communications
Diskette/Disk
Memory
Equipment Check
Video
Printer
Diskette
Disk
Communications
Communications
Reserved
Keyboard
Time of Day
Reserved
Reserved
Print Screen
Overflow
Breakpoint
Non-maskable
Single Step
Divide by zero
(CPU)
(CPU)
(8087)
(CPU)
(CPU)
Pts to
Data
7C-7F
78-7B
74-77
70-73
6C-6F
68-6B
64-67
60-63
5C-5F
58-5B
54-57
50-53
4C-4F
48-4B
44-47
40-43
3C-3F
38-3B
34-37
30-33
2C-2F
28-2B
24-27
20-23
1D-1F
18-1B
14-17
10-13
C-F
8-B
4-7
0-3
Software Interrupts
Synchronous
Read-Only Memory
Address
1FH
1EH
1DH
1CH
1BH
1AH
19H
18H
17H
16H
15H
14H
13H
12H
11H
10H
FH
EH
DH
CH
BH
AH
9H
8H
7H
6H
5H
4H
3H
2H
1H
0H
Hardware Interrupts
Asynchronous
Microprocessor
Interrupts
8259A
BIOS Program Area
FFFFFH
10
Systems Design & Programming
80x86 Architecture
CMPE 310
I/O Space
It is important to notice that these I/O addresses are NOT memory-mapped addresses on the
80x86 machines.
I/O Device Space
FFFF
I/O Expansion Area
COM1
Floppy Disk Controller
CGA Adapter
64K 8-bit I/O devices
LPT1
Hard Disk Controller
COM2
8255 (PIA)
Timer (8253)
Interrupt Controller
DMA Controller
03F8
03F0
03D0
0378
0320
02F8
0060
0040
0020
0000
Special instructions (IN/OUT) are used to communicate to the I/O devices.
11
Download