Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






PCI BIOS. Для облегчения взаимодействия с устройствами PCI имеются дополнительные функции BIOS, доступные как из реального






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

Программы с помощью функций PCI BIOS могут искать интересующие их устрой­ства по идентификаторам или кодам класса. Если стоит задача «переучета» установ­ленных устройств, то она решается чтением конфигурационной информации по всем функциям всех устройств всех шин — это быстрее, чем перебирать все возмож­ные сочетания идентификаторов или классов кодов. Для найденных устройств программы должны определять реальные настройки чтением регистров конфигу­рационного пространства, учитывая возможность перемещения ресурсов по всему пространству и даже между пространствами памяти и ввода-вывода.

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

♦ АХ - BlOlh — проверка присутствия PCI BIOS;

♦ АХ - B102h — поиск устройства по идентификатору;

♦ АХ - ВЮЗЬ — поиск устройства по коду класса;

♦ АХ = В106h — генерация специального цикла PCI;

♦ АХ = BIOS, B109 и BlOAh — чтение байта, слова и двойного слова конфигура­ционного пространства устройства PCI;

♦ АХ = В10В, В10С, BlODh — запись байта, слова и двойного слова конфигурационного пространства устройства PCI.


6.3. Магистральный интерфейс AGP_________________________________ 211






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.