14.11.2012 Views

X86 Computer Bus Subsystems IBM PC/XT Architecture ('82, '83)

X86 Computer Bus Subsystems IBM PC/XT Architecture ('82, '83)

X86 Computer Bus Subsystems IBM PC/XT Architecture ('82, '83)

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>X86</strong> <strong>Computer</strong> <strong>Bus</strong> <strong>Subsystems</strong><br />

EXPANSION BUSSES – Allow Addition of System Devices “Adapters”<br />

ISA - Industry Standard <strong>Architecture</strong> (8,16-bit D-<strong>Bus</strong>)<br />

MCA - Microchannel <strong>Architecture</strong> (32-bit D-<strong>Bus</strong>)<br />

EISA - Extended ISA (32-bit D-<strong>Bus</strong>)<br />

LOCAL BUSSES – Connect Adapters Directly to x86 System <strong>Bus</strong><br />

VLB - VESA Local <strong>Bus</strong><br />

<strong>PC</strong>I - Peripheral Component Interconnect<br />

EISA - Advanced Graphics Port<br />

PERIPHERAL BUSSES – Dedicated to Peripheral Communication<br />

SCSI - Small <strong>Computer</strong> System Interface (parallel)<br />

USB - Universal Serial <strong>Bus</strong> (serial)<br />

<strong>IBM</strong> <strong>PC</strong>/<strong>XT</strong> <strong>Architecture</strong> (’82, ’83)<br />

(<strong>XT</strong> is “extended” <strong>PC</strong> – 4.77 MHz <strong>Bus</strong>)<br />

1


ISA (8-bit Version)<br />

(Typical 4.77 MHz <strong>Bus</strong> – <strong>IBM</strong> <strong>PC</strong>, <strong>IBM</strong> <strong>XT</strong>)<br />

<strong>IBM</strong> AT <strong>Architecture</strong> (’84)<br />

(AT is “advanced technology” – 6 MHz)<br />

ISA “Standard” was Modified to 16-bit <strong>Bus</strong><br />

2


ISA (16-bit Version)<br />

(aka The “AT <strong>Bus</strong>”)<br />

AT <strong>Bus</strong> Standard<br />

Due to “clones” became so common it is a “standard”<br />

• 16-bit Data <strong>Bus</strong><br />

• 24-bit Address <strong>Bus</strong><br />

• 11 Interrupt Request Lines<br />

– IRQ2-7, IRQ10-12, IRQ14, IRQ15<br />

• 7 DMA Channels<br />

• 8.33 MHz Max. <strong>Bus</strong> Frequency<br />

3


Plug and Play<br />

– Each New Adapter May Require:<br />

• DMA Channels<br />

• IRQ Lines<br />

• Parallel I/O Addresses<br />

– Adding New Adapter to ISA <strong>Bus</strong> Can Cause Conflicts<br />

1) User Must MANUALLY Change DIP Switch<br />

2) Automatic Configuration<br />

– “Plug and Play”<br />

• “Standard” Developed by Intel/Microsoft<br />

• Adapters Contain Special Registers for OS Query<br />

• Adapters Accept Commands to Change Values or Deselect<br />

• Need a PnP Aware ROM-BIOS (sequence during boot-time)<br />

Microchannel <strong>Architecture</strong> (MCA)<br />

Proprietary <strong>IBM</strong> Adapter <strong>Bus</strong> - 1987<br />

• 8.33 MHz, 16-bit AT <strong>Bus</strong> Causes Sever I/O Bottleneck<br />

– Lots’ of Graphics versus Character Mode Data<br />

– 25 MHz 80386DX Available – CPU BW Far Exceeds <strong>Bus</strong> BW<br />

• MCA – 10 MHz at Selectable 8, 16, 32 bits<br />

• Totally Incompatible with ISA<br />

• <strong>IBM</strong> Proprietary – Must License to Use<br />

– Pay <strong>IBM</strong> $$$$ to Make Adapters<br />

• 9 Popular <strong>Computer</strong> Manufacturers Form Consortium<br />

– “Gang of Nine” – EISA is Born!<br />

• MCA is no longer popularly used<br />

4


EISA<br />

• Compatible With ISA and an OPEN Standard<br />

• 32-bit Address and Data <strong>Bus</strong> Width<br />

• Supports Automatic Adapter Configuration<br />

– CFG (driver file) with each Adapter<br />

– Writes Special Information in CMOS RAM for boot time<br />

• 15 IRQs Supported<br />

• 7 (32-bit) DMA Channels Supported<br />

• 8.33 MHz <strong>Bus</strong> Speed<br />

EISA Structure<br />

5


EISA<br />

ISA ISA EISA<br />

EISA Pinout<br />

Local <strong>Bus</strong>ses – VLB, <strong>PC</strong>I, AGP<br />

• EISA BW Still Too Slow For Video<br />

• Need Direct Access to x86 System <strong>Bus</strong><br />

– for VRAM write/read<br />

• VESA Developed VLB (1992)<br />

– designed to operate “with” ISA or EISA or MCA<br />

– use IRQ and DMA support of Adapter <strong>Bus</strong><br />

– VLB portion operates at system bus speed (50 or 66 MHz)<br />

– no automatic configuration support<br />

– x86 only bus<br />

• <strong>PC</strong>I<br />

– developed with ISA Compatibility in mind<br />

– New <strong>Bus</strong> – Extension in the Sense of Compatibility<br />

– Requires a “Bridge” Circuit<br />

• AGP<br />

– Advanced Graphics Port<br />

– Extension to <strong>PC</strong>I Standard 66MHz<br />

6


<strong>PC</strong>I Based <strong>Computer</strong><br />

<strong>PC</strong>I Characteristics<br />

• 0-33 MHz (0 MHz Important for Laptops)<br />

• 32-bit OR 64-bit Data <strong>Bus</strong><br />

• Burst Mode Support<br />

– Northbridge Transforms Mult. Sys. Req. into <strong>PC</strong>I Burst<br />

• <strong>Bus</strong> Master Support<br />

– Similar to DMAC Capability<br />

• Sharable IRQs<br />

– ISRs (drivers) Chained Together<br />

– Each Checks to Determine Which Should Execute<br />

7


<strong>PC</strong>I Pinout<br />

I/O (Peripheral) <strong>Bus</strong>ses<br />

• NOT System <strong>Bus</strong> Adapters<br />

• SCSI (Small <strong>Computer</strong> System Interface)<br />

- high speed, parallel<br />

- HD, Tape Drive, CD-ROM, etc.<br />

• USB (Universal Serial <strong>Bus</strong>)<br />

- medium/low speed, serial<br />

- mice, keyboard, modems<br />

8


SCSI (“scuzzy”)<br />

• Many Versions – Original:<br />

– 8-bit Data<br />

– 1-bit Parity<br />

– 9-bit Control<br />

• Intelligent – SCSI Controller Accepts High Level<br />

Commands<br />

– e.g. HD can backup to Tape Drive while CPU does “other things”<br />

• Daisy Chained with Device IDs<br />

• Must Terminate – Prevent Reflections<br />

USB<br />

• 1.5 Mb/s and 12 Mb/s Data Rates<br />

• Simplifies Task of Connecting Peripherals<br />

• Uses Notions of “Nodes” and “Hubs”<br />

• Devices Connect to Nodes present at a Hub<br />

• All Hubs Daisy-Chained to “Host Root Hub”<br />

• Host Allows upto 127 Different USB Devices<br />

9


USB<br />

Typical <strong>PC</strong>I Based x86 <strong>Computer</strong> <strong>Architecture</strong><br />

L3<br />

Cache<br />

AGP SDRAM<br />

<strong>PC</strong>I Adapter 1 <strong>PC</strong>I Adapter 2<br />

XD <strong>Bus</strong> 8-bit<br />

EIDE 1<br />

EIDE 2<br />

Flash Mem BIOS RTC and CMOS<br />

System <strong>Bus</strong> 64-bit<br />

North Bridge<br />

<strong>PC</strong>I <strong>Bus</strong> 32-bit<br />

South<br />

Bridge<br />

L2<br />

Cache<br />

L1<br />

Cache<br />

ISA <strong>Bus</strong> 16-bit<br />

x86<br />

CPU<br />

Common Package<br />

<strong>PC</strong>I Adapter 3 <strong>PC</strong>I Adapter 4<br />

USB Root Hub 1<br />

USB Root Hub 2<br />

KBD, PS/2, LPT,<br />

UART1, UART2, Floppy<br />

ISA Adapter 1 ISA Adapter 2<br />

10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!