Аппаратные интерфейсы ПК

         

Пространство ввода-вывода


Пространство ввода-вывода в IBM PC, как и в процессорах х86, отделено от про­странства памяти. У всех этих процессоров, в том числе и 32-разрядных, в про­странстве ввода-вывода используется 16-разрядная адресация (диапазон адресов О-FFFFh). Для дешифрации адресов портов в оригинальном PC из 16 бит исполь­зовались только младшие 10 (А0-А9), что обеспечивает обращением портам в диа­пазоне адресов 0-3FFL Старшие биты адреса, хотя и поступают на шину, устройства­ми игнорируются. В результате обращения по адресам, к примеру 378h, 778h, B78h и F78h, будут восприниматься устройствами одинаково. Это упрощение, нацелен­ное на снижение стоимости как системной платы, так и схем плат адаптеров, для шины ISA никто не отменял. Традиционные адаптеры для шины ISA, называемые Legacy Card («наследие тяжелого прошлого»), для старших бит адреса не имеют

1 Для пока еще экзотических вариантов системных плат с памятью более 4 Гбайт и 36-разрядной физи­ческой адресацией последних моделей процессоров PCI может использовать двухадресные циклы об­ращения с 64-битным адресом.

456

Глава 12. Архитектурные компоненты IBM PC-совместимого компьютера

1 даже печатных ламелей на своем краевом разъеме. Впоследствии перешли к 12-бит­ной адресации устройств шины ISA, но ее приходится применять £ оглядкой на возможное присутствие устройств с 10-битной адресацией. В адаптерах для шин МСА и PCI и во всех современных системных платах используются все 16 бит адреса. Карта распределения адресов ввода-вывода стандартных устройств PC при­ведена в табл. 12.1. Эта карта подразумевает 10-битную дешифрацию адреса. Есте­ственно, что в конкретном компьютере реально присутствуют не все перечисленные устройства, но в то же время там могут оказаться другие, не попавшие в таблицу.

Таблица 12.1. Стандартная карта портов ввода-вывода AT и PS/2    PC/XT        Назначение

000-OOF

000-OOF

Контроллер DMA #1 8237



010-01F

PS/2 — расширение DMA#1

020-021

020-021

Контроллер прерываний #1 — 8259А

040-05F

040-043

Таймер (PC/XT: 8253, AT: 8254)

060

060

Диагностический регистр POST (только запись)

060-063

Системный интерфейс 8255

060,064

Контроллер клавиатуры AT 8042

061

Источники NMI и управление звуком

070-07F

Память CMOS и маска NMI

080

Диагностический регистр-

080-08F

080-083

Регистры страниц DMA

090-097

PS/2 микроканал, арбитр

ОАО

Маска NMI

OAO-OBF

Контроллер прерываний #2 — 8259А

OCO-ODF

Контроллер DMA #2 8237А-5

OFO-OFF

Сопроцессор 80287

100-1EF

PS/2 управление микроканалом

170-177

Контроллер НЖМД #2 (IDE#2)

1FO-1F7

Контроллер НЖМД #1 (IDE#1)

200-207

200-20F

Игровой адаптер

210-217

Блок расширений

238-23F

COM4

278-27F

278-27F

Параллельный порт LPT2 (LPT3 при наличии MDA)

2А2-2АЗ

4acbiMSM48321RS

2CO-2DF

2CO-2DF

EGA #2

2ЕО-2Е7

COM4

2E8-2EF

COM4

2F8-2FF

2F8-2FF

COM2

300-31F

ПлатЬ прототипа

320-32F

Жесткий диск XT

338-33F

COM3               <,

370-377

Контроллер НГМД #2

376-377

Порты комайд IDE#2

378-37F

378-37F

Параллельный порт LPT1 (LPT2 при наличии MDA)

<
12.3. Аппаратные прерывания

457

AT и PS/2    PC/XT

Назначение

380-38F        380-38F          Синхронный адаптер SDLC/BSC #2

3AO-3AF      ЗАО-ЗА9        Синхронный адаптер BSC#1

ЗВО-ЗВВ      ЗВО-ЗВВ         Монохромный адаптер (MDA)

ЗВ4-ЗС9                               PS/2 видеосистема

3BC--3BF      3BC-3BF         Параллельный порт LPT1 платы MDA

3CO--3CF     3CO-3CF         EGA#1

3CO-3DF      3CO-3DF         VGA

3DO-3DF      3DO-3DF        CGA/EGA

ЗЕО-ЗЕ7                              COM3

3E8-3EF                               COM3

3FO-3F7       3FO-3F7          Контроллер НГМД #1

3F6-3F7                                Порты команд IDE*1

3F8-3FF        3F8-3FF          СОМ1

Каждой шине назначается своя область адресов ввода, поэтому дешифратор адре­сов, расположенный на системной плате, при чтении открывает соответствующие буферы данных, так что реально считываться будут данные только с одной шины. При записи в порты данные (и сигнал записи) могут распространяться по всем шинам компьютера. В стандартном распределении адреса Oh-OFFh отведены для устройств системной платы. При наличии (и разрешении работы) периферийных устройств на системной плате чтение по этим адресам не распространяется на шины расширения. Для современных плат со встроенной периферией и несколь­кими шинами (ISA, PCI) распределением адресов управляет BIOS через регист­ры конфигурирования чипсета.


Содержание раздела