LibKing » Книги » Компьютеры и Интернет » Все книги в жанре Компьютерное "железо" » Михаил Гук - Аппаратные интерфейсы ПК. Энциклопедия

Михаил Гук - Аппаратные интерфейсы ПК. Энциклопедия

Тут можно читать онлайн Михаил Гук - Аппаратные интерфейсы ПК. Энциклопедия - бесплатно полную версию книги (целиком). Жанр: Все книги в жанре Компьютерное "железо", издательство Издательский дом «Питер», год 2002. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте LibKing.Ru (ЛибКинг) или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Михаил Гук - Аппаратные интерфейсы ПК. Энциклопедия

Михаил Гук - Аппаратные интерфейсы ПК. Энциклопедия краткое содержание

Аппаратные интерфейсы ПК. Энциклопедия - описание и краткое содержание, автор Михаил Гук, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Книга посвящена аппаратным интерфейсам, использующимся в современных персональных компьютерах и окружающих их устройствах. В ней подробно рассмотрены универсальные внешние интерфейсы, специализированные интерфейсы периферийных устройств, интерфейсы устройств хранения данных, электронной памяти, шины расширения, аудио и видеоинтерфейсы, беспроводные интерфейсы, коммуникационные интерфейсы, вспомогательные последовательные интерфейсы. Сведения по интерфейсам включают состав, описание сигналов и их расположение на разъемах, временные диаграммы, регистровые модели интерфейсных адаптеров, способы использования в самостоятельно разрабатываемых устройствах. Книга адресована широкому кругу специалистов, связанных с эксплуатацией ПК, а также разработчикам аппаратных средств компьютеризированной аппаратуры и их программной поддержки.

Аппаратные интерфейсы ПК. Энциклопедия - читать онлайн бесплатно полную версию (весь текст целиком)

Аппаратные интерфейсы ПК. Энциклопедия - читать книгу онлайн бесплатно, автор Михаил Гук
Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать

4. АН=3 — установка времени в RTC, назначение регистров и признак результата аналогичен функции 2.

5. АН=4 — чтение даты из RTC. Возвращает в упакованном BCD-формате век (в регистре СН), две старшие цифры года ( CL), месяц ( DH) и день ( DL). Признаком успешной операции является флаг CF=0. Во избежание ошибок некоторых BIOS при вызове флаг CFдолжен быть сброшен.

6. АН=5 — установка даты в RTC, назначение регистров и признак результата аналогичен функции 4.

7. АН=6 — установка времени срабатывания будильника RTC. Возвращает в упакованном BCD-формате час (в регистре СН), минуту ( CL) и секунду ( DH). Если будильник уже установлен, переустановка не производится и возвращается флаг CF=1. При срабатывании будильник вызывает прерывание Int 4Ah.

8. АН=7 — отмена установки будильника.

Функции BIOS Int 15hпозволяют программировать таймер CMOS RTC — вводить задержку или запускать таймер установки флага, указывая время в микросекундах (СХ — старшее слово, DX — младшее). Нулевое значение интервала не вызывает никаких действий. Достижимое разрешение в зависимости от производительности ПК может достигать единиц миллисекунд, максимальная выдержка — около 70 часов. Перечисленные ниже номера функций указываются при вызове в регистре АНили АХ.

9. AH=86h — задержка на заданное время. Управление будет возвращено вызвавшему процессу только через указанный интервал. По окончании задержки будет установлен бит 7 в ячейке BDA 0040:00A0. Таймер может оказаться занятым, тогда вызов сразу возвратит флаг CF=1 (при успехе CF=0, а в ALокажется маска, записанная в 8259А#2).

10. AX=8300h — запуск таймера, устанавливающего флаг после указанной задержке бит 7 в ячейке, заданной регистрами ES: BX. При успешном запуске CF=0; если таймер занят (он один) — CF=1 и AL=0. Управление возвращается процессу сразу, а флаг будет установлен через заданное время. Перед завершением программа, запускавшая таймер, должна его сбросить функцией 8301h (во-первых, чтобы освободить; во-вторых, чтобы снять «адскую машинку», которая неожиданно сама может изменить значение ячейки памяти, вполне возможно уже задействованную другим, ничего не «подозревающим» процессом).

11. AX=8301h — сброс того же таймера.

12.8.7. PCI BIOS

Функции PCI BIOS используются только для поиска и конфигурирования устройств PCI — процедур, требующих доступа к их конфигурационному пространству (см. п. 8.2). Регулярная работа с этими устройствами выполняется через обращения к регистрам устройств по адресам, полученным при конфигурировании, и обработке известных номеров прерываний от этих устройств. Для 16-битного интерфейса реального режима , V86 и 16-битного реального режима, функции PCI BIOS вызываются через прерывание Int 1Ah; номер функции задается при вызове в регистре АХ. Возможна и программная имитация прерывания дальним вызовом по физическому адресу 000FFE6EH (стандартная точка входа в обработчик Int 1Ah) с предварительным занесением в стек регистра флагов.

Признаком нормального выполнения является CF=0 и АН=0; при CF=1 АНсодержит код ошибки :

♦ 81h — неподдерживаемая функция;

♦ 83h — неправильный идентификатор производителя;

♦ 86h — устройство не найдено;

♦ 87h — неправильный номер регистра PCI.

Вызовы требуют глубокого стека (до 1024 байт). Для 32-разрядных вызовов защищенного режима все эти же функции вызываются через точку входа, найденную через каталог 32-разрядных сервисов (см. выше), при этом назначение входных и выходных регистров и флага CFсохраняется. До использования 32-разрядного интерфейса следует сначала найти его каталог и убедиться в наличии сервисов PCI. Функции PCI BIOS перечислены ниже:

АХ= B101h — проверка присутствия PCI BIOS . При наличии PCI BIOS возвращает CF=0, АН=0 и EDX=20494350h (строка символов "PCI "); проверяться должны все три признака. При этом в ALнаходится описатель аппаратного механизма доступа к конфигурационному пространству и генерации специальных циклов PCI:

• Бит 0 — поддержка механизма № 1 для доступа к конфигурационному пространству;

• Бит 1 — поддержка механизма № 2 для доступа к конфигурационному пространству;

• Биты 2:3=00 (резерв);

• Бит 4 — поддержка генерации специального цикла по механизму № 1;

• Бит 5 — поддержка генерации специального цикла по механизму № 2;

• Биты 6:7=00 (резерв).

В регистрах ВНи BLвозвращается старший и младший номер версии (BCD-цифры), в CL— максимальный номер шины PCI, присутствующий в системе (число шин +1, поскольку они нумеруются с нуля последовательно). В регистре EDIможет возвращаться линейный адрес точки входа 32-разрядных сервисов BIOS. Этот адрес возвращается не всеми версиями BIOS (некоторые не изменяют EDI); для проверки можно при вызове обнулять EDIи проверять на нуль возвращенное значение.

АХ= B102h — поиск устройства по идентификатору . При вызове в СХуказывается идентификатор устройства, в DX— идентификатор производителя, в SI— индекс (порядковый номер) устройства. При успешном возврате в ВН— номер шины, в BL[7:3]— номер устройства, BL[2:0]— номер функции. Для нахождения всех устройств с указанными идентификаторами вызовы выполняют, последовательно инкрементируя SIот 0 до получения кода возврата 86h.

AX= B103h — поиск устройства по коду класса . При вызове в ЕСХ[23:16]указывается код класса, в ЕСХ[15:8]— подкласса, в ЕСХ[7:0]— интерфейс, в SI — индекс устройства (аналогично предыдущему). При успешном возврате в ВН— номер шины, в BL[7:3]— номер устройства, BL[2:0]— номер функции.

АХ= B106h — генерация специального цикла PCI . При вызове в BLуказывается номер шины, в EDX— данные специального цикла.

АХ= В108h — чтение байта конфигурационного пространства устройства PCI . При вызове в ВН— номер шины, в BL[7:3]— номер устройства, BL[2:0]— номер функции, в DI— номер регистра (0-FFh). При успешном возврате в CL— считанный байт.

АХ= B109h — чтение слова конфигурационного пространства устройства PCI . При вызове в ВН— номер шины, в BL[7:3]— номер устройства, BL[2:0]— номер функции, в DI— номер регистра (0-FFh, четный). При успешном возврате в СХ— считанное слово.

АХ= В10Ah — чтение двойного слова конфигурационного пространства устройства PCI . При вызове в ВН— номер шины, в BL[7:3] — номер устройства, BL[2:0]— номер функции, в DI— номер регистра (0-FFh, кратный 4). При успешном возврате в ЕСХ— считанное двойное слово.

Читать дальше
Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать


Михаил Гук читать все книги автора по порядку

Михаил Гук - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Аппаратные интерфейсы ПК. Энциклопедия отзывы


Отзывы читателей о книге Аппаратные интерфейсы ПК. Энциклопедия, автор: Михаил Гук. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
Большинство книг на сайте опубликовано легально на правах партнёрской программы ЛитРес. Если Ваша книга была опубликована с нарушениями авторских прав, пожалуйста, направьте Вашу жалобу на PGEgaHJlZj0ibWFpbHRvOmFidXNlQGxpYmtpbmcucnUiIHJlbD0ibm9mb2xsb3ciPmFidXNlQGxpYmtpbmcucnU8L2E+ или заполните форму обратной связи.
img img img img img