Аппаратные интерфейсы ПК - [222]

Шрифт
Интервал


Таблица 12.9. Расширенный заголовок ROM BIOS карт ISA PnP

СмещениеДлинаНазначение
0h4 байтаСигнатура, строка $PnP (символы ASCII)
04hбайтВерсия структуры (01h)
05hбайтДлина (в параграфах по 16 байт)
06hсловоСмещение следующего заголовка (0000h, если нет больше)
08hбайтРезерв(0)
09hбайтКонтрольная сумма
0Ahдвойное словоИдентификатор устройства PnP
0EhсловоУказатель на строку идентификатора производителя (0, если нет)
10hсловоУказатель на строку названия продукта (0, если нет)
12h3 байтКод типа устройства
15hбайтИндикаторы устройства
16hсловоВектор подключения BCV (Boot Connection Vector) — 0, если нет
18hсловоВектор отключения (Disconnect Vector) — 0, если нет
1AhсловоТочка входа для загрузки BEV (Bootstrap Entry Point) — 0, если нет
1ChсловоРезерв (0)
1EhсловоВектор получения информации о статических ресурсах (Static Resource Information Vector) — Real/Protected mode (0 если нет)

Расширенный заголовок позволяет определить идентификатор устройства PnP, его название и код производителя. Код типа состоит из байта общего типа, байта подтипа и байта идентификатора программного интерфейса, по которым система может узнать знакомые устройства.

Байт индикаторов устройства имеет следующее назначение битов:

♦ бит 7 — ПЗУ поддерживает модель инициализации устройства (Device Driver Initialization Model);

♦ бит 6 — ПЗУ может затеняться оперативной памятью;

♦ бит 5 — ПЗУ может кэшироваться по чтению;

♦ бит 4 — ПЗУ требуется лишь для загрузки с данного устройства;

♦ бит 3 — резерв (0);

♦ бит 2 — является устройством загрузки (IPL-устройство);

♦ бит 1 — устройство ввода (может заменять клавиатуру);

♦ бит 0 — устройство вывода (дисплей).

Вектор подключения>BCV (Boot Connection Vector, он же Interrupt Connection Vector) указывает смещение для процедуры, дальний вызов которой приведет к перехвату векторов прерываний первичных устройств ввода, вывода или загрузки (сервисов >Int 9h, >Int 10h или >Int 13h соответственно), в зависимости от параметров, переданных в регистрах процессора. При вызове этой процедуры в регистре >АХ единицы в битах 0, 1 и 2 запрашивают перехват сервисов >Int 9h, >Int 10h или >Int 13h соответственно (остальные биты нулевые), >ES:DI указывает на контрольную структуру PnP BIOS (System BIOS PnP Installation Check Structure), >BX содержит селективный номер (CSN) карты ISA PnP (для других карт FFFFh); >DX содержит адрес порта чтения ISA PnP (для других карт FFFFh).

Вектор отключения указывает на процедуру, восстанавливающую старое значение векторов при безуспешной попытке загрузки с данного устройства.

Точка входа для загрузки>BEV требуется, если устройство может использоваться в качестве загрузочного, но не обеспечивает блочных функций сервиса >Int 13h. Тогда системная микросхема BIOS может дальним вызовом вызвать эту процедуру вместо выполнения сервиса >Int 19h. Таким образом, например, может выполняться удаленная загрузка (Remote Programm Loading, RPL) по сети.

Вектор получения информации о статических ресурсах задает смещение процедуры, вызов которой выгрузит в память дескрипторы занимаемых ресурсов (в форматах, аналогичных структурам для ISA PnP). Адрес буфера размером не менее 1024 байт задается регистрами >ES: DI при вызове данной процедуры.

Процедура инициализации, которая начинается со смещения 3 в заголовке ПЗУ, для карт PnP должна подчиняться определенным требованиям (до этой спецификации специальных требований не было), принимать параметры и сообщать код возврата.

♦ При вызове процедуры >ЕS: DI указывает на контрольную структуру PnP BIOS, >BX содержит >CSN карты ISA PnP (для других карт FFFFh); >DX — адрес порта чтения ISA PnP (для других карт FFFFh).

♦ При исполнении процедура может переопределять любые векторы прерываний и изменять данные в >BDA и >EBDA, но перед возвратом она обязана восстановить прежние указатели для >Int 9h, >Int 10h, >Int 13h и все прежние значения связанных с ними переменных в >BDA и >EBDA.

♦ При возврате в >АХ возвращаются признаки проинициализированного устройства:

 • бит 8 — устройство начальной загрузки, поддерживающее блочные функции >INT 13h;

 • бит 7 — устройство вывода, поддерживающее символьный вывод («телетайпный» режим) >INT 10h;

 • бит 6 — устройство ввода, поддерживающее символьный ввод >INT 9h;

 • биты 5:4 — состояние подключения загрузочного устройства: 00 — не подключено, 01 — неизвестно, 10 — подключено (для устройства RPL соединение установлено), 11 — резерв;

 • биты 3:2 — состояние подключения устройства вывода (аналогично предыдущему);

 • биты 1:0 — состояние подключения устройства ввода (аналогично предыдущему).

Как видно из данного описания, расширенный заголовок и правила поведения процедуры инициализации позволяют системной BIOS более гибко пользоваться функциями дополнительных модулей BIOS — традиционные дополнительные модули со стороны системной BIOS были практически неуправляемыми. Заголовок данного вида может использоваться и картами ISA без поддержки PnP. Если эти карты будут передавать информацию о своих статических ресурсах, они окажут большую услугу для распределения ресурсов системой BIOS с поддержкой PnP. Таким образом, приспособить карту для работы в среде PnP можно всего лишь модификацией содержимого ее ПЗУ расширения BIOS.


Рекомендуем почитать
Программируем Arduino. Профессиональная работа со скетчами.

Arduino — стандартный микроконтроллер, получивший широкое признание у инженеров, мастеров и преподавателей благодаря своей простоте, невысокой стоимости и большому разнообразию плат расширения. Платы расширения, подключаемые к основной плате Arduino, позволяют выходить в Интернет, управлять роботами и домашней автоматикой.Простые проекты на основе Arduino не вызывают сложностей в реализации. Но, вступив на территорию, не охваченную вводными руководствами, и увеличивая сложность проектов, вы быстро столкнетесь с проблемой нехватки знаний — врагом всех программистов.Эта книга задумана как продолжение бестселлера «Programming Arduino: Getting Started with Sketches».


Импульсные блоки питания для IBM PC

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


Разработка устройств на основе цифровых сигнальных процессоров фирмы Analog Devices с использованием Visual DSP++

Книга предназначена для самостоятельного изучения и применения на практике цифровых сигнальных процессоров DSP (Digital Signal Processor). На примере популярной микросхемы ADSP2181 фирмы Analog Devices рассмотрены устройство, архитектура и технические характеристики цифрового сигнального процессора. Приведено описание вычислительных блоков процессора, средств разработки программного обеспечения, языка программирования и системы команд процессора. Разработанные автором книги практические схемы с применением сигнального процессора, исходные тексты программ и схемы вспомогательных устройств, полезных при отладке программ для процессора помогут получить необходимые практические навыки, с помощью которых читатель легко освоит другие типы сигнальных процессоров.


Работаем на нетбуке. Начали!

Вы приобрели нетбук? И теперь хотите понять, чем он отличается от привычного всем ноутбука? Тогда вы держите в руках действительно необходимую книгу. Прочитав ее, вы не только освоите все тонкости, относящиеся к работе с нетбуками, но и узнаете о том, как работать на компьютере. Вы научитесь выбирать мобильный компьютер и аксессуары к нему, узнаете, как установить и настроить операционную систему, научитесь пользоваться пакетом Microsoft Office, выясните, какие программы следует иметь на жестком диске, как защитить сам ноутбук и данные на нем, можно ли модернизировать нетбук и что делать в случае его поломки.


GPS: Все, что Вы хотели знать, но боялись спросить

Определение своего положения с помощью GPS навигатора, отдельного прибора, или устройства, встроенного в карманный компьютер или сотовый телефон, уже стало совершенно обычной вещью.Постепенно столь же привычным становится определение положения объекта с помощью систем телематики на основе GPS/GSM/GPRS, когда на мониторе компьютера или экранчике сотового телефона можно увидеть участок карты с отметкой, где находится другой человек или его автомобиль.«GPS» — это первые буквы английских слов «Global Positioning System» — глобальная система местоопределения.


Информатика: аппаратные средства персонального компьютера

Рассмотрены основы информатики и описаны современные аппаратные средства персонального компьютера. Сформулированы подходы к определению основных понятий в области информатики и раскрыто их содержание. Дана классификация современных аппаратных средств персонального компьютера и приведены их основные характеристики. Все основные положения иллюстрированы примерами, в которых при решении конкретных задач используются соответствующие программные средства.Рекомендуется для подготовки по дисциплине «Информатика».