Информационные технологииStfw.Ru 🔍

Адреса портов ввода-вывода

Порты ввода-вывода позволяют установить связь между устройствами и программным обеспечением в компьютере. Они подобны двусторонним радиоканалам, так как обмен информацией в ту и другую сторону происходит по одному и тому же каналу.
🕛 23.10.2009, 14:09
В отличие от прерываний IRQ и каналов прямого доступа к памяти, в персональных компьютерах множество портов ввода-вывода. Существует 65 535 портов, пронумерованных от 0000h до FFFFh, и это, пожалуй, самый удивительный артефакт в процессоре Intel. Хотя многие устройства используют до восьми портов, все равно их количество более чем достаточное. Самая большая проблема состоит в том, чтобы двум устройствам случайно не назначить один и тот же порт.

Современные системы, поддерживающие спецификацию Plug and Play, автоматически разрешают любые конфликты из-за портов, выбирая альтернативные порты для одного из конфликтующих устройств.
Хотя порты ввода-вывода обозначаются шестнадцатеричными адресами, подобными адресам памяти, они не являются памятью, они - порты. Различие состоит в том, что данные, отправленные по адресу памяти 1000h, будут сохранены в модуле памяти SIMM или DIMM. Если вы посылаете данные по адресу 1000h порта ввода-вывода, то они попадают на этот “канал” шины и любое устройство, прослушивающее канал, может принять их. Если никакое устройство не прослушивает этот адрес порта, то данные достигнут конца шины и будут поглощены ее нагрузочными резисторами.
Специальные программы - драйверы - взаимодействуют прежде всего с устройствами, используя различные адреса портов. Драйвер должен знать, какие порты использует устройство, чтобы работать с ним. Обычно это не составляет проблемы, поскольку и драйвер и устройство, как правило, поставляются одним и тем же производителем.
Системная плата и набор микросхем системной логики обычно используют адреса портов ввода-вывода от 0h до FFh, а все другие устройства - от 100h до FFFFh. В табл. 4.82 приведены адреса портов ввода-вывода, обычно используемые системной платой и набором микросхем системной логики.
Таблица 4.82. Адреса портов, используемые устройствами системной платы и набором микросхем системной логики

000-000F
0020-0021
002E-002F
0040-0043
0048-004B
0060
0061
0064
0070, бит 7
0070, биты 6:0
0071
0078
0079
0080-008F
00A0-00A1
00B2
00B3
00C0-00DE
00F0
16 байт Набор микросхем системной логики - 8237 DMA 1
2 байт Набор микросхем системной логики - контроллер прерываний 8259 (1)
2 байт Регистры контроллера конфигурации Super I/O
4 байт Набор микросхем системной логики - счетчик/таймер 1
4 байт Набор микросхем системной логики - счетчик/таймер 2
1 байт Байт контроллера клавиатуры и мыши - Reset IRQ
1 байт Набор микросхем системной логики - NMI, динамик
1 байт Байт CMD/STAT контроллера клавиатуры и мыши
1 бит Набор микросхем системной логики - Enable NMI
7 бит MC146818 - часы реального времени, адрес
1 байт MC146818 - часы реального времени, данные
1 байт Зарезервирован - конфигурирование платы
1 байт Зарезервирован - конфигурирование платы
16 байт Набор микросхем системной логики - регистры страниц
2 байт Набор микросхем системной логики - контроллер прерываний 8259 (2) 1 байт Порт управления APM
1 байт Порт состояния APM
31 байт Набор микросхем системной логики - DMA 2
1 байт Восстановление при ошибках сопроцессора
Чтобы выяснить, какие адреса порта используются в вашей системной плате, загляните в прилагаемую к ней документацию или же воспользуйтесь диспетчером устройств Windows.

Устройства на шине, как правило, используют адреса, начиная с 100h. В табл. 4.83 приведены адреса, обычно используемые устройствами на шине и адаптерами.
Таблица 4.83. Адреса портов устройств на шине

0130-0133
0134-0137
0168-016F
0170-0177
01E8-01EF
01F0-01F7
0200-0207
0210-0217
0220-0233
0230-0233
0234-0237
0238-023B
023C-023F
0240-024F
0240-0253
0258-025F
0260-026F
0260-0273
0270-0273
0278-027F
0280-028F
0280-0293
02A0-02AF
02C0-02CF
02E0-02EF
02E8-02EF
02EC-02EF
02F8-02FF
0300-0301
0300-030F
0320-0323
0320-032F
0330-0331
0330-0333
0334-0337
0340-034F
0360-036F
0366
0367, биты 6:0
0370-0375
0376
0377, бит 7
0377, биты 6:0
0378-037F
0380-038F
0388-038B
03B0-03BB
03BC-03BF
03BC-03BF
03C0-03CF
03D0-03DF
4 байт Адаптер Adaptec SCSI (альтернативный)
4 байт Адаптер Adaptec SCSI (альтернативный)
8 байт Четвертый разъем IDE
8 байт Вспомогательный разъем IDE
8 байт Третий разъем IDE
8 байт Первичный контроллер жестких дисков IDE/AT (16 бит)
8 байт Адаптер игрового порта или джойстика
8 байт IBM XT Expansion Chassis
20 байт Creative Labs Sound Blaster 16 Audio (по умолчанию)
4 байт Адаптер Adaptec SCSI (альтернативный)
4 байт Адаптер Adaptec SCSI (альтернативный)
4 байт Мышь MS (альтернативный)
4 байт Мышь MS (по умолчанию)
16 байт Адаптер SMC Ethernet (по умолчанию)
20 байт Звуковая плата Creative Labs Sound Blaster 16 (альтернативный)
8 байт Intel Above Board
16 байт Адаптер SMC Ethernet (альтернативный)
20 байт Звуковая плата Creative Labs Sound Blaster 16 (альтернативный)
4 байт Порты ввода-вывода (для чтения) Plug and Play
8 байт Параллельный порт 2 (LPT2)
16 байт Адаптер SMC Ethernet (альтернативный)
19 байт Звуковая плата Creative Labs Sound Blaster 16 (альтернативный)
16 байт Адаптер SMC Ethernet (альтернативный)
16 байт Адаптер SMC Ethernet (альтернативный)
16 байт Адаптер SMC Ethernet (альтернативный)
8 байт Последовательный порт 4 (COM4)
4 байт Стандартные порты видеоадаптера, 8514 или ATI
8 байт Последовательный порт 2 (COM2)
2 байт Порт MPU-401 MIDI (вторичный)
16 байт Адаптер SMC Ethernet (альтернативный)
4 байт Контроллер жесткого диска XT (8 бит)
16 байт Адаптер SMC Ethernet (альтернативный)
2 байт Порт MPU-401 MIDI (по умолчанию)
4 байт Адаптер Adaptec SCSI (по умолчанию)
4 байт Адаптер Adaptec SCSI (альтернативный)
16 байт Адаптер SMC Ethernet (альтернативный)
16 байт Адаптер SMC Ethernet (альтернативный)
1 байт Четвертый порт IDE (управление)
7 бит Четвертый порт IDE (статус)
6 байт Вторичный контроллер гибких дисков 1 байт Вторичный порт IDE (управление)
1 бит Вторичный контроллер гибких дисков (изменение)
7 бит Вторичный порт IDE (состояние)
8 байт Параллельный порт 1 (LPT1)
16 байт Адаптер SMC Ethernet (альтернативный)
4 байт FM-синтезатор
12 байт Стандартные порты видеоадаптера, Mono/EGA/VGA
4 байт Параллельный порт 1 (LPT1) в некоторых системах
4 байт Параллельный порт 3 (LPT3)
16 байт Стандартные порты видеоадаптера, EGA/VGA
16 байт Стандартные порты видеоадаптера, CGA/EGA/VGA

03E6
03E7, биты 6:0
03E8-03EF
03F0-03F5
03F6
03F7, бит 7
03F7, биты 6:0
03F8-03FF
04D0-04D1
0530-0537
0604-060B
0678-067F
0778-077F
0A20-0A23
0A24-0A27
0CF8-0CFB
0CF9
0CFC-0CFF
FF00-FF07
FF80-FF9F
FFA0-FFA7
FFA8-FFAF
1 байт Третий порт IDE (команды)
7 бит Третий порт IDE (статус)
8 байт Последовательный порт 3 (COM3)
6 байт Первичный контроллер гибких дисков 1 байт Первичный порт IDE (команды)
1 бит Первичный контроллер гибких дисков (изменение)
7 бит Состояние первичного порта IDE
8 байт Последовательный порт 1 (COM1)
2 байт Контроллер уровня прерываний PCI
8 байт Звуковая система Windows (по умолчанию)
8 байт Звуковая система Windows (альтернативный)
8 байт LPT2 в режиме ECP
8 байт LPT1 в режиме ECP
4 байт Адаптер IBM Token Ring (по умолчанию)
4 байт Адаптер IBM Token Ring (альтернативный)
4 байт Регистры конфигурации адресов PCI
1 байт Turbo и регистр сброса управления (Reset Control Register)
4 байт Регистры данных конфигурации PCI
8 байт Регистры Bus Master IDE
32 байт Universal Serial Bus (USB)
8 байт Регистры первичного Bus Master IDE
8 байт Регистры вторичного Bus Master IDE

Чтобы точно выяснить, какие адреса используют ваши устройства, настоятельно рекомендую обратиться к документации или просмотреть информацию об устройстве в диспетчере устройств Windows.
В действительности все устройства на системных шинах используют адреса портов ввода-вывода. Большинство из них стандартизировано, поэтому, как правило, не возникает каких-либо конфликтов или проблем с адресами портов для этих устройств.

Устройство компьютера   Теги:

Читать IT-новости в Telegram
Информационные технологии
Мы в соцсетях ✉