Что такое pci в биосе
Что такое pci в биосе
PCI Express, (или PCIe, или PCI-E) – это компьютерная шина расширения, предназначена для подключения периферийных устройств к системной плате персонального компьютера. PCI Express реализовывает программную модель интерфейса PCI и протокол последовательной передачи данных.
Данная шина пришла на смену интерфейсам AGP, PCI-X, PCI. Шина является локальной (внутренней). К преимуществам интерфейса PCI Express относиться поддержка горячей замены карт (под термином горячая замена подразумевают возможность отключать/подключать устройства во время работы компьютера, т.е., без отключения питания).
Главным отличием интерфейса PCI Express от PCI является использование двунаправленного последовательного соединения типа точка-точка (напомним, что в интерфейсе PCI используется 32-битная двунаправленная параллельная шина, к которой подключаются все PCI-устройства).
Шина PCI Express может использовать несколько последовательных соединений типа точка-точка (для данного интерфейса они называются линиями): x1 (одна линия), x2 (две линии), x4 (четыре линии), x8 (восемь линий), x12 (двенадцать линий), x16 (16 линий), x32 (32 линии). Другими словами соединение между картами PCI-Express состоит из одной (1x) или нескольких (2x, 4x, 8x, 12x, 16x, 32x) линий.
Например, если слот PCI Express имеет приставку x16 (PCI Express x16), это значит, что он 16-канальный (предназначен в первую очередь для карты PCI Express x16).
Любая карта расширения PCI Express может работать в любом из слотов шины PCI Express (x1, x2, x4, x8, x12, x16 и x32), при условии, что поместится в данный слот. Т.е, карта расширения с меньшим количеством линий (контактов) будет работать в слоте с большим количеством контактов, но при этом будет использоваться то количество линий, сколько разведено на карте.
Пропускная способность шины PCI Express зависит от количества используемых линий и режима передачи данных (дуплексный или полудуплексный):
Полудуплексный режим передачи данных, Гбит/с
Зачем нужен PCI Latency Timer и как его правильно настроить
BIOS содержит довольно много настроек, разобраться в которых не всегда просто, так как справочная информация по некоторым функциям иногда отсутствует или не помогает ясно понять принципы их работы. Поэтому многие пользователи задаются закономерным вопросом: PCI Latency Timer, что это такое? Давайте разберемся, зачем нужна эта функция и как ее правильно настроить.
Этот параметр BIOS определяет, как долго будет устройство, подключенное к шине PCI, удерживать ее для собственных нужд, для передачи по ней своих данных. До истечения этого времени (количества тактов) все другие устройства, которые используют шину PCI, не смогут ей воспользоваться. По умолчанию значение этой функции равно 32 или 64 тактам, и в большинстве случаев его можно безболезненно увеличить. Минимальная величина равна 32, при этом шаг используемого цикла может быть последовательно увеличен на 32 такта (64, 96 и так далее), вплоть до 224.
Возможные значения опции
Максимальное же значение этой функции можно установить равным 248.
Как правильно настроить этот параметр
Повышение значения PCI Latency Timer помогает увеличить эффективную пропускную способность одноименной шины, что в определенных случаях может привести к неправильной работе некоторых высокоскоростных устройств, которые передают и получают большие объемы информации. Например, подобные проблемы часто возникают у RAID-контроллеров.
Тем не менее рекомендуется попробовать увеличить значение этого параметра, особенно если в компьютере установлено немного карт расширения, использующих PCI-разъем. В этом случае стоит постепенно (на 32 такта) повышать значение PCI Latency Timer перед началом загрузки операционной системы, после чего внимательно отслеживать производительность работы компьютера и его программного обеспечения.
Если все функционирует нормально, тогда можно последовательно увеличивать значение PCI Latency Timer до, примерно, 160 тактов и даже выше, если в этом есть серьезная необходимость. С другой стороны, при возникновении неполадок в работе PCI-устройств следует уменьшить значение вышеуказанного параметра, вплоть до 64 или даже 32 тактов. Такая необходимость возникает, когда PCI шину использует много устройств, некоторые из которых нуждаются в приоритетном доступе к этой шине для безошибочной работы. Поэтому следует запомнить, что, установив параметр PCI Latency Timer равным 32, можно устранить подобные проблемы.
PCI BIOS
Перевод PCI BIOS SPECIFICATION
Revision 2.1
August 26, 1994
Перевод выполнил Pavia в 23:43, 21 февраля 2009 (UTC)
Содержание
Введение
Этот документ описывает программный интерфейс, представленный функциями PCI BIOS. Этот интерфейс предоставляет аппаратно независимый метод управления PCI устройствами компьютера.
Возможности
Этот документ предназначен для того чтобы снабдить достаточной информацией разработчиков программного обеспечения, которые собираются использовать PCI устройства компьютера, но не имеют знаний о том, как имеющееся оборудование выполняет желаемые функции. Этот документ создан и для того чтобы предоставить достаточно информации для осуществления или создания этих самых функций в BIOS для конкретной системе.
Вспомогательные документы
Термины и аббревиатуры
Bus Number | Номер шины | Число в диапазоне от 0 до 255 включительно, однозначно задающее одну из шин PCI. |
Configuration Space | Конфигурационное пространство | Отдельное для каждой из шин PCI адресное пространство. Используется для перечисления устройств и выделения для них диапазонов памяти и портов ВВ. |
Device ID | ID устройства | Поле в конфигурационном пространстве, вместе с ID поставщика однозначно идентифицирующее данное устройство. (Прим. переводчика: пары (Vendor ID, Device ID) регистрируются PCI-SIG, в интернете можно найти и скачать базу) |
Device Number | Номер устройства | Число в диапазоне от 0 до 31 включительно, однозначно задающее устройство на PCI-шине. |
Function Number | Номер функции | Число в диапазоне от 0 до 7 включительно, однозначно задающее функцию многофункционального PCI-устройства. |
Multi-function PCI device | Многофункциональное PCI-устройство | PCI-устройство, имеющее несколько функций. Например, PCI-устройство, совмещающее в себе функции LAN и SCSI и имеющее для каждой из них отдельное конфигурационное пространство, будет многофункциональным. |
PCI | PCI | Сокращение от Peripheral Component Interconnect bus (англ. шина связи периферийных устройств). |
Special Cycle | Особый цикл | Определённая команда шины PCI, служащая для оповещения всех устройств одновременно. |
Vendor ID | ID поставщика | Поле в конфигурационном пространстве, вместе с ID устройства однозначно идентифицирующее данное устройствоо. (Прим. переводчика: пары (Vendor ID, Device ID) регистрируются PCI-SIG, в интернете можно найти и скачать базу) |
Описание функционирования
Функции PCI BIOS предоставляют программный интерфейс для оборудования, используемого в системах, базирующихся на PCI. Их главное назначение для генерации операции в специальных арестных пространствах PCI (конфигурационное пространство, а также специальные циклы).
PCI BIOS функции определены, и должны быть реализованы, для работы во всех режимах x86 архитектуры. Это включает: реальный режим, 16:16 защищенный режим (также известен как 286 protect mode),  16:32 защищенный режим (введенный с 386), и 0:32 защищенный режим (также  известный как » плоский режим «, в котором все сегменты начинаются с линейного адреса 0 и охватывают всё 4  Гбайтное адресное пространство).
(прим. Переводчика о 64битом режиме тогда не знали. А с его введением решили отказаться от BIOS в сторону Firmware и портов в/в)
Доступ к PCI BIOS функциям для 16-битных вызовов осуществляется через Interrupt 1Ah. 32-битный (т.е. защищенный режим) доступ предоставляется при помощи вызова точки входа для 32-битного защищенного режима. Для PCI BIOS функция имеет код 0B1h. А конкретные функцииБИОСа вызываются с помощью кода подфункции. Пользователь просто устанавливает регистры процессора для выполнения желаемых функций иподфункций и вызывает программное обеспечение PCI BIOS. Статус возвращается при помощи флага переноса ([CF]) и регистров для конкретной вызываемой функции.
Предположения и Ограничения
Местоположение ROM BIOS
Функциям PCI BIOS суждено находиться в ROM BIOS для совместимости с IBM-PC.
Соглашения о вызовах
Функции PCI BIOS используют регистры х86 процессора для передачи аргументов и возврата статуса. Вызывающий должен использовать существующие коды подфункций.
Эти подпрограммы сохраняют все регистры и флаги за исключение тех, которые используются для возвращения параметров. Также флаг переполнения [CF] будет изменен для индикации статуса завершения. Вызываемые подпрограммы завершатся без изменения флага прерывания и прерывания не будут разрешены во время работы функции. Эти подпрограммы вызывают другие подпрограммы. Эти подпрограммы требуют наличия 1024 байт стека. Сегмент стека должен иметь такой же размер как и сегмент кода (т.е. 16-бит или 32-бита).
PCI BIOS обеспечивает: интерфейсы для 16-битного реального режима и защищенного режим, и интерфейс для 32-битого защищенного режима. 16-битный интерфейс обеспечивается при помощи программного прерывания PC/AT Int 1Ah. PCI BIOS Int 1Ah интерфейс работает со следующими режимами: реальный режим, виртуальный-86 режим или 16:16 защищенный режим. Функции BIOS’а также доступны через индустриальный стандарт для точки входа INT 1Ah (физический адрес 000FFE6Eh), для вызова использовать симуляцию INT инструкции. Примечание, такой доступ к функциям BIOS через индустриальный стандарт для точки входа, сможет обойти любой код который ”похукал” вектор INT 1Ah.
Точка входа INT 1Ah поддерживает только 16-бит код. При вызове из защищенного режима селектор CS должен иметь базу 0F000h.
Интерфейс для защищенного режима поддерживает 32-битные вызовые из защищенного режима. Защищенный режим интерфейса PCI BIOS доступен через вызов (не эмулируя INT) при помощи точки входа для защищенного режима PCI BIOS. Адрес точки входа и информация необходимая для создания сегментных дескрипторов описана в разделе Cервис директорий BIOS32. 32-битные подпрограммы PCI BIOS вызываются при помощи дальнего вызова CALL FAR.
Подпрограммы PCI BIOS (для обоих 16-битных и 32-битных вызывающих) должны вызываться с определенными привилегиями такими как доступ к портам в/в. Внедряющие PCI BIOS должны предполагать CS предназначен только для исполнения и DS только для чтения.
Cервис директорий BIOS32
Обнаружение отсутствия или присутствия 32-битного сервиса BIOS с использованием 32-разрядного кода может быть проблематичным. Стандартная точка входа в BIOS не может быть вызвана на всех машинах в 32-битном режиме, потому что BIOS платформы может не поддерживать 32-разрядные вызовы. В этом разделе описывается  механизм для определения присутствия в 32-битного сервиса BIOS’а. Несмотря на то, что механизм позволяет производить поиск PCI BIOS, он призван быть более широким, тем самым он позволяет находить любые / все возможные 32-битные сервисы BIOS’а.
Описание этого механизма, известного как сервис директорий BIOS32, представлен в трех частях: первая часть определяет алгоритм для определения существования сервиса директорий BIOS32 на данной платформе, вторая часть  определяет интерфейс для обращения с сервисом директорий BIOS32, и третья часть описывается, как сервис директорий BIOS32 реализует поддержку метода определения наличия PCI BIOS.
определение существования сервиса директорий BIOS32
смещение | размер | описание |
0h | 4 байта | Сигнатура, строка в ASCII кодах. Эта строка – ”_32_”. “_” смещение 0, “3” смещение 1, “2” смещение 2, “_” смещение 3. |
4h | 4 байта | Точка входа для сервиса директорий BIOS32. Это 32-битный физический адрес. |
8h | 1 байт | Версия. Эта версия составляет 00. |
9h | 1 байт | Длина структуры в параграфах (т.е. 16 байт). Для данной структуры 01h. |
0Ah | 1 байт | Контрольная сумма. Эта поле должно содержать число, так чтобы сумма всех 16 байт по модулю 255 равнялась нулю. |
0Bh | 5 байт | Резерв. Должно быть ноль. |
Клиенты сервиса директорий BIOS32 должны определить его существование путем сканирования диапазона 0E0000h к 0FFFF0h и поиска ASCII сигнатуры, а после проверка контрольной суммы. Если структура данных найдена, то сервиса директорий BIOS32 доступен через точку входа. Если структура не найдена, то сервиса директорий BIOS32 не поддерживается данной платформой (как следствие и PCI BIOS).
Интерфейс вызовов для службы директорий BIOS32
81h = Функция свободна для Сервиса Директорий BIOS (то есть. [BL] на входе содержит нераспознанное значение).
PCI BIOS 32-битный сервис
Сервис BIOS 32 может быть использован для определения присутствия PCI BIOS. Сервисный идентификатор для PCI BIOS это «$PCI» (049435024h).
32-битные функции PCI BIOS должны быть доступны при помощи дальнего вызова CALL FAR.
CS и DS дескрипторов должен быть настроены, так чтобы охватывать физические адреса, указанные Базой и Длиной, в параметрах возвращаемых сервисом каталогов BIOS32. CS и DS дескрипторы должны иметь ту самую Базу. Вызывающая среда должна разрешить доступ к портам в/в и должна обеспечивать, по крайней мере 1k стека. Программисты Platform BIOS должны предполагать, что CS предназначен только для исполнения и DS только для чтения.
Главный интерфейс
Определение ресурсов PCI
Следующая группа функций позволит пользователю определить: во-первых, проверить поддерживается PCI BIOS и он установлен, а во-вторых, если установлен, то определить конкретные PCI устройства, присутствующих в системе.
Определение наличия PCI BIOS
Эта функция позволяет пользователю определить, присутствует ли интерфейс PCI BIOS. И если присутствует тогда, позволяет определить какая это версия интерфейса. В ней также содержится информация о том, какой аппаратный механизм для доступа к конфигурации пространства поддерживается, а также поддерживается ли или не аппаратура генерацию специальных циклов PCI.
ENTRY: | |
AH | PCI_FUNCTION_ID=0B1h |
AL | PCI_BIOS_PRESENT=01h |
EXIT: | |
EDX | «PCI «, «P» в DL, «C» в DH, и тд. Также старший байты заполнены символами ’пробел’. |
AH | Статус наличия, 00h = BIOS присутствует т.т.т.к. EDX установлен должным образом. |
AL | Аппаратный механизм. |
BH | Версия интерфейса старшая часть версии |
BL | Версия интерфейса младшая часть версии |
CL | Номер последней PCI шины в системе. |
CF | Статус наличия, 1 = BIOS не присутствует, 0 = BIOS присутственный т.т.т.к. EDX установлен должным образом. |
Если ФЛАГ ПЕРЕПОЛНЕНИЯ[CF] очищен и АХ установлен в 00h, то все еще необходимо исследовать содержание [EDX] на присутствия последовательности «PCI» + (хвостовых пробелов), чтобы полностью подтвердить присутствие набора функций PCI. [BX] в дальнейшем должен содержать номер версии, с достаточной степенью детализации, чтобы учесть возрастающие изменения в коде, который не затрагивает интерфейс функций. Номера версии представлены как Двоично-десятичное числа (BCD). Например, Версия 2.10 была бы представлена как 02h в [BH] регистре и 10h в [BL] регистре. Реализация интерфейса BIOS этой версии спецификации будет иметь версию 2.10 (BX = 0210h).
Значение, возвращенное в [AL], идентифицирует, какие определенные аппаратные особенности данной платформы поддерживаются. А именно, доступу к конфигурационному пространству и генерацию специальных циклов PCI(см. иллюстрацию 1). Спецификация PCI определяет два аппаратных механизма для того, чтобы получить доступ к конфигурационному пространству. Биты 0 и 1 из значения, возвращенного в [AL], определяют, какой механизм поддерживаются этой платформой. Бит 0 будет установлен (1), если Механизм #1 будет поддерживаться, и сброшен (0) в противном случаи. Бит 1 будет установлен (1), если Механизм #2 будет поддерживаться, и сброшен (0) в противном случаи. Биты 2,3,6 и 7 зарезервированы и возвращены как нули.
Пожалуйста добавте сюда  иллюстрацию №1
Значение, возвращенное в [CL], определяет номер последней шины PCI в системе. Шины PCI пронумерованы, начиная от нуля и кончая значением полученным в CL.
Поиск PCI устройств по Device ID и Vender ID
Эта функция возвращает расположение PCI устройств, которые имеют конкретное ID устройства(Device ID) и ID поставщика(Vendor ID). Учитывая ID поставщика, ID устройства и индекса (N), функция возвращает номер шины, номер устройства, а также номер функция N-ого устройства / функции у которого ID поставщика и ID устройства совпадают с параметрами ввода.
ENTRY: | |
AH | PCI_FUNCTION_ID=0B1h |
AL | FIND_PCI_DEVICE=02h |
CX | ID устройства/Device ID (0. 65535) |
DX | ID поставщика/Vendor ID (0. 65534) |
SI | Индекс/Index (0. N) |
EXIT: | |
BH | Номер шины (0. 255) |
BL | Номер устройства в старших 5 битах Номер функции в младших 3 битах. |
AH | Возвращаемые коды: SUCCESSFUL DEVICE_NOT_FOUND |
CF | Статус завершения, 1 = ошибка, 0 = успешно. |
Вызывающее программное обеспечение может найти все устройства, имеющие одинаковые ID поставщика(Vendor ID) и ID устройства(Device ID) сделав несколько последовательных обращений к этой функции БИОСа. Начиная с индекса, установленного на нуль, а затем увеличивая его на один до возвращения кода ‘DEVICE_NOT_FOUND «. Код возврата  BAD_VENDOR_ID свидетельствует о том, что значение установленное в ID поставщика(в [DX]) было незаконными для всех.
Поиск PCI устройств по Class Code
Эта функция возвращает расположение PCI устройств, которые имеют конкретное значение Class Code. Учитывая Class Code и индекса (N), функция возвращает номер шины, номер устройства, а также номер функция N-ого устройства / функции у которого Class Code устройства совпадают с параметрами ввода.
ENTRY: | |
AH | PCI_FUNCTION_ID=0B1h |
AL | FIND_PCI_CLASS_CODE =03h |
ECX | Class Code (в младших трех байтах) |
SI | Индекс/Index (0. N) |
EXIT: | |
BH | Номер шины (0. 255) |
BL | Номер устройства в старших 5 битах Номер функции в младших 3 битах. |
AH | Возвращаемые коды: SUCCESSFUL |
CF | Статус завершения, 1 = ошибка, 0 = успешно. |
Вызывающее программное обеспечения можно найти все устройства, имеющие одинаковые Class Code сделав последовательно обращения к этой самой функции BIOS. Начиная с индекса, установленного на нуль, а также увеличивая его на один до возвращения кода ‘DEVICE_NOT_FOUND «.
Функции поддержки PCI
Следующие функции оказывают поддержку для нескольких определенных операций PCI.
Генерация специального цикла
Эта функция позволяет генерировать специальные циклы PCI. Сгенерированный специальный цикл будет передан по всем адресам конкретной PCI шине в системе.
ENTRY: | |
AH | PCI_FUNCTION_ID=0B1h |
AL | GENERATE_SPECIAL_CYCLE=06h |
BH | номер шины (0..255) |
EDX | Данные для специального цикла. |
EXIT: | |
AH | Возвращаемые коды: SUCCESSFUL |
CF | Статус завершения, 1 = ошибка, 0 = успешно. |
Получение параметров маршрутизации прерываний PCI
Описание:
Логические входные параметры:
RouteBuffer Указатель на буфер структуры данных
Функция описанная в этом разделе возвращает варианты маршрутизации прерываний PCI, доступные на материнской плате системы и также текущем состоянии того, как перерывы в настоящее время исключительно назначаются на PCI. Информация маршрутизации возвращается в буфере данных, который содержит маршрутизацию IRQ для каждого устройства PCI или слота. Формат элемент таблицы маршрутизации IRQ показывают в таблице 4-1.
Баты смещение | Размер в байтах | Имя |
0 | Byte | PCI Bus Number |
1 | Byte | PCI Device Number (в верхних пяти битах) |
2 | Byte | Link значение для INTA# |
3 | Word | Битовая карта IRQ для INTA# |
5 | Byte | Link начение для INTB# |
6 | Word | Битовая карта IRQ для INTB# |
8 | Byte | Link начение для INTC# |
9 | Word | Битовая карта IRQ для INTC# |
11 | Byte | Link начение для INTD# |
12 | Word | Битовая карта IRQ для INTD# |
14 | Byte | Slot Number |
15 | Byte | Резерв |
Значения номер слота «Slot Number» в конце структуры используется, чтобы сообщить, является ли запись в таблице для устройства материнской платы или для устройства вставленного в слот. Для устройств материнской платы Номер Слота должен быть выставлен в ноль. Для вставленных в слот устройств, Номер Слота должен иметь такое значение, которое соотноситься с физическим размещением слота на материнской плате. Это прямой способ определить физический номер щели с номером устройства PCI. Значения (за исключением 00h) OEM определенный. Для простоты в употреблении конечного пользователя, слоты в системе должны быть ясно маркированы (например, маска из припоя, задняя панель, и т.д.).
Например, система с 4 слотами ISA и 3 слотами PCI, устроенными как 3-ISA, 3-PCI, 1-ISA. Может быть выбран следующий способ нумерации: Первыми будут пронумерованы 3-ISA, после пойдут номера слотов PCI и они имели бы номера 4, 5 и 6. Если бы нумерация щели началась с 1-ISA, то затем числа слота PCI были бы 2, 3, и 4.
Эта подпрограмма требует одного параметра, RouteBuffer, который является дальним(FAR) указателем на структуру данных, показанную ниже.
typedef struct
<
WORD BufferSize;
BYTE FAR * DataBuffer;
> IRQRoutingOptionsBuffer;
Где:
BufferSize:Размером в слово(Word) значение, обеспечивающие размер буфера данных. Если буфер будет слишком маленьким, то подпрограмма вернется со статусом BUFFER_TOO_SMALL, и эта переменная будет обновлена и возвращена с необходимым размером. Чтобы указать, что у данной системы управления PCI нет никаких устройств PCI, эта функция установит поле BufferSize в ноль. На успешном завершении эта область будет содержать размер (в байтах) данных которые будут преданны в результате. DataBuffer: дальний указатель на буфер, содержащий информацию маршрутизации прерывания PCI для всех устройств материнской платы и слотов.
ENTRY: | |
AH | PCI_FUNCTION_ID=0B1h |
AL | GET_IRQ_ROUTING_OPTIONS=0Eh |
BX | Должен быть установлен в ноль 0000h |
DS | Сегмент или Селектор для данных BIOS. Для 16-бит кода : сегмент для реального режима или PM селектор должен ссылаться на физический адрес 0F0000h и иметь придел в 64K. |
BX | Битовый массив IRQ, указывающий, какие IRQ исключительно предназначены для устройств PCI. |
CF | Статус завершения, 1 = ошибка, 0 = успешно. |
Установка аппаратного прерывания PCI
Описание:
Эта функция предназначена, чтобы использоваться в масштабе конфигурации всей системы или OS PNP. Эта функция никогда не должна вызываться драйверами устройства или кодом ROM расширения.
Логические входные параметры:
Эта подпрограмма заставляет указанное аппаратное прерывание (IRQ) быть связанным с указанным контактом прерывания устройства PCI. Это достигается благодаря ниже следующим предположениям:
должен ссылаться на физический адрес 0F0000h и иметь придел в 64K.
Для 32-бит кода смотри секцию 3.4.
SUCCESSFUL
0 = успешно.
Доступ к конфигурационному пространству
Чтение байта(Byte) из конфигурационного пространства
Эта функция позволяет читать индивидуальные байты из конфигурационного пространства конкретных устройств:
ENTRY: | |
AH | PCI_FUNCTION_ID=0B1h |
AL | READ_CONFIG_BYTE=08h |
BH | номер шины (0..255) |
BL | Номер устройства в верхних 5 битах, номер функции в нижних 3 битах. |
DI | Номер регистра (0. 255) |
EXIT: | |
CL | Прочитанный байт. |
AH | Возвращаемые коды: SUCCESSFUL |
CF | Статус завершения, 1 = ошибка, 0 = успешно. |
Чтение слова(Word) из конфигурационного пространства
Эта функция позволяет читать индивидуальные слова из конфигурационного пространства конкретных устройств. Номера регистров в параметрах должны быть кратны двум (т.е. нулевой бит должен быть установлен в 0). :
0 = успешно.
Чтение двойного слова(DWord) из конфигурационного пространства
Эта функция позволяет читать индивидуальные двойные слова из конфигурационного пространства конкретных устройств. Номер регистров в параметрах должны быть кратными четырем (т.е. бит 0 и бит 1 должен быть установлены в 0). :
0 = успешно.
Запись байта(Byte) в конфигурационное пространство
Эта функция позволяет записать индивидуальные байты в конфигурационное пространство конкретных устройств:
ENTRY: | |
AH | PCI_FUNCTION_ID=0B1h |
AL | WRITE_CONFIG_BYTE=0Bh |
BH | номер шины (0..255) |
BL | Номер устройства в верхних 5 битах, номер функции в нижних 3 битах. |
DI | Номер регистра (0. 255) |
CL | Байт для записи. |
EXIT: | |
AH | Возвращаемые коды: SUCCESSFUL |
CF | Статус завершения, 1 = ошибка, 0 = успешно. |
Запись слова(Word) в конфигурационное пространство
Эта функция позволяет записать индивидуальные слова в конфигурационное пространство конкретных устройств. Номер регистра в параметрах должен быть кратным двум (т.е. нулевой бит должен быть установлен в 0). :
0 = успешно.
Запись двойного слова(DWord) в конфигурационное пространство
Эта функция позволяет записать индивидуальные двойные слова в конфигурационное пространство конкретных устройств. Номер регистра в параметрах должен быть кратным четырем (т.е. бит 0 и бит 1 должен быть установлен в 0). :