2.1.Оптимизация функционирования PCI-интерфейса и ISA-шины

8 Bit I/O Recovery Time


- (время восстановления для 8-битных операций ввода/вывода). Параметр измеряется в системных тактах и определяет, какую задержку система будет устанавливать после выдачи запроса на чтение/запись устройства ввода/вывода до выдачи следующего аналогичного запроса. Т.е. речь идет о временной вставке задержки (интервала) между последовательными 8-битными операциями обращения к пространству ввода/вывода. Не совсем понятное "время восстановления" - это период гарантированной неактивности определенных сигналов ISA-шины. Еще в составе 8-битной ISA-шины (контакты B13 и B14 соответственно) были сигналы IOWR# (I/O Write) и IORD# (I/O Read), отвечающие за запись в порт и за чтение порта ввода/вывода. Уже понятно, что время восстановления - это управляемая пользователем пауза между повторяющимися упомянутыми сигналами.
Эта задержка необходима, так как цикл чтения/записи для устройств ввода/вывода существенно дольше, чем для памяти или других более скоростных устройств. Тем более, что в данной опции речь идет об устройствах на ISA-шине, работающей значительно медленее шины PCI, фактически PCI-периферии, и для правильной обработки сигналов ввода/вывода требуется вставлять паузы между последовательными PCI-циклами. Значение этого параметра по умолчанию равно одному такту (иногда двум), и его следует увеличивать только в случае установки в компьютер какого-либо медленного 8-битного устройства или устройства, вызвавшего проблемы. Может принимать значения от 1 до 8 тактов, с шагом в один такт, и "N/A" (Not Available). Некоторые источники указывали раньше о добавлении по умолчанию минимум 3,5 системных тактов при выборе значения "N/A"!? Если в системе ISA-устройство отсутствует, то необходимо установить "N/A". Оно же может оказаться оптимальным и для производительности системы.
С другой стороны, акцентирование внимания на ISA-шину может весьма озадачить неискушенного пользователя, обратившего внимание на такую же или подобную опцию в современной системе, напрочь лишенной какого-либо намека на ISA-шину. А ведь речь то идет не об ISA-устройствах, точнее, не только о них. Все, что было "южнее" ISA-шины, с ее исчезновением не исчезло. А это, напомним, и последовательные, и параллельный порты, и т.п. Поэтому при чтении нижеизложенных опций необходимо помнить и об этом.
К вышесказанному необходимо добавить упоминание еще о двух аналогичных опциях. "8-bit Recovery Delay" - явное указание на задержку, и "8-bit Recovery Enable" со значениями "No (3.5 SYSCLKs)" и "Delay As Below". ;

16 Bit I/O Recovery Time


- (время восстановления для 16-битных операций ввода/вывода). Все сказанное выше верно и для 16-битных операций ввода/вывода на ISA-шине, с той лишь разницей, что диапазон возможных значений - от 1 до 4 тактов и "N/A".
Ранее подобные функции носили названия: "16-bit Recovery Delay", "16-bit Recovery Enable", "16-Bit Recovery Time", и, как видим, аналогично и для 8 бит. Довольно разнообразны были и предлагаемые варианты параметров: 1 - 4, "3.5 SYSCLKs" и "Delay As Below", а также 2T - 5T. Для 8-битных устройств дополнительно можно добавить такие варианты: 0 - 7 (SYSCLKs) и еще такой ряд - 3T, 4T, 5T, 8T.
Ниже детально рассмотрена опция "I/O Recovery Time", несколько устаревшая, но представляющая несомненный интерес.

16 Bit ISA I/O Command WS


- данная опция используется для компенсации возможной разницы между скоростью работы системных устройств ПК и его периферии, и, как видно из наименования опции, речь идет о 16-битных операциях ввода/вывода. Подобная компенсация необходима, например, если в системе не выделено дополнительное время ожидания/ответа устройства. В таком случае система может решить, что какое-либо неуспевающее ответить устройство вообще не функционирует и перестанет давать запросы на ввод/вывод из этого устройства. Данную опцию необходимо отключать ("Disabled") для повышения быстродействия только в случае, когда все устройства в таком режиме нормально функционируют, в противном случае возможна потеря данных. Естественным является отключение опции при отсутствии в системе ISA-карт расширения.
Опция может называться "ISA 16-bit I/O Wait States". При этом появляется возможность установить количество тактов ожидания вручную: 0, 1, 2, 3.

16 Bit ISA Mem Command WS


- данная опция по назначению аналогична предыдущей, с той лишь разницей, что она позволяет нужным образом соотнести скорость работы памяти ISA-устройства с возможностью системы записывать/читать из этой памяти. Параметр может принимать значения:
"Enabled" - разрешено,
"Disabled" - запрещено.
Опция может называться "ISA 16-bit Mem Wait States". При этом появляется возможность установить количество тактов ожидания вручную: 0, 1, 2, 3.
Опция может носить и более общий характер - "16-bit Memory, I/O Wait State". И поскольку абсолютно те же задачи необходимо решать для 8-битных операций ввода/вывода, то на это направлена опция "8-bit Memory, I/O Wait State". С помощью этих опций количество тактов ожидания также устанавливается вручную.

AT Cycle Wait State


- по прочтении предыдущих опций данная опция уже не представляет сложности. Вставка дополнительных тактов ожидания в AT-циклах может понадобиться при использовании старых ISA-карт, особенно если они соседствуют с более быстрыми картами расширения (например, высокоуровневыми графическими картами). Понятно, что увеличение задержек снижает скоростные характеристики системы. Но подобная задержка могла понадобиться и для корректной работы DMA-каналов. Устаревшая опция.
Но был еще один важный аспект в процедуре установки тактов ожидания для некоторой карты расширения. Если карта обеспечивала 16-разрядную передачу данных, то выставив сигнал "MEMCS16" (Memory Cycle Select), такая карта сообщала процессору о своей "организации". К сожалению, некоторые карты по разным причинам "не успевали" выставить данный сигнал, и процессор инициировал 8-разрядный режим передачи данных. Потери производительности системы очевидны. В данном случае установка дополнительных тактов ожидания приводила к "своевременной" выдаче запроса о 16-разрядности.

Back to Back I/O Delay


- установка опции в "Enabled" ведет к вставке трех дополнительных AT-тактов в последовательные операции ввода/вывода, осуществляемые через AT-шину. Устаревшая опция.

Bus Request when FIFO is


- о FIFO-буферах чуть ниже. А данная опция позволяет отслеживать степень заполненности такого буфера, и который действует по принципу - "первым пришел, первым ушел". Если шинный FIFO-буфер заполнен на n%, то шина вынуждена сигнализировать об этом. Сама опция несколько необычна, столь же нестандартны и ее значения: "75% Full", "50% Full".

Byte Merge Support


- при стандартных операциях чтения/записи данные, направляемые от центрального процессора к PCI-шине, могут удерживаться некоторое время в специализированном буфере и накапливаться там (аккумулироваться). Для применения такой буферизации данная опция должна быть включена ("Enabled"). Но речь в данном случае идет не просто о разрешении или выполнении каких-то действий, речь идет о механизме (алгоритме), который, кроме всего прочего, реализован также во многих операциях конвейеризации, например, "PCI Pipeline". Такой механизм называется "Byte merging", или, дословно, - "байт слияние".
Если взять, например, техническое описание материнской платы на базе чипсета i430HX, то среди перечисления возможностей данного продукта можно найти такие пункты:
- Write-Back Merging for PCI to DRAM Writes
- 8-QWord Deep Merging DRAM Write Buffer
Но сразу необходимо отметить, что не все чипсеты содержат в себе такие буфера "слияния". В более современных системах термин "merging" может отсутствовать вовсе, а речь может идти только о буферах "с отложенной записью", о предварительном "пакетировании", т.п.
Вернемся к механизму "слияния". В указанном выше буфере, а в этой роли может выступать и буфер с "отложенной" записью, 8- или 16-битные последовательные данные "сливаются" до размеров двойного слова (dword - double word, или 32 бита) и сопровождаются одним адресом (по сути функция "пакетирования"). Возможности накапливать некий объем данных зависят от размеров такого буфера, размер которого может варьироваться, хотя стандартно используются 32-битные циклы записи. Далее чипсет направляет данные во внутренний буфер PCI-шины в наиболее благоприятный момент. Повышение производительности явным образом проистекает из уменьшения числа PCI-транзакций и возможности использовать всю пропускную способность PCI-шины. Что же касается упомянутого варьирования размера буфера, то его размер может составлять и 64 бита. При этом системный контроллер способен "отследить" до восьми последовательных управляющих сигналов "CPU Byte Enable", приостанавливая пересылку данных к месту назначения до слияния пакетов.
Ранее любое расширение возможностей для передачи потоковой информации предназначалось прежде всего для повышения производительности трансляции видеоданных. Но потребность в механизме "byte merging" несколько шире. Речь может идти и о "слиянии" последовательных адресов и их данных в одну "PCI-to-memory"-операцию. А в наименовании вынесенной выше опции как раз и содержится поддержка "byte merging" со стороны всей системы. Но особый смысл и эффект от применения данного механизма заключен в "слиянии" данных в одну операцию для адресов памяти, не представляющих собой непрерывного адресного пространства.
Возвращаясь к упомянутой "PCI-to-memory"-операции, необходимо отметить значительное повышение производительности с применением "byte merging" для "старых" программных продуктов, осуществлявших циклы записи в видеопамять в виде отдельных байтов. Но такая трансляция, естественно, не поддерживается всеми PCI-графическими картами. И, тем не менее, установка опции в "Enabled" допустима, если при этом не происходит ухудшения видеоряда ("Frame Buffer Byte Merging").
Но проблема затрагивает не только графические карты. Речь может идти и о некоторых сетевых PCI-картах, в частности 3Com 3C905-серии от "noname"-производителей, установленных в определенные системные платы, например "ASUS P3V4X".
Опция может носить множество различных наименований. "Byte Merging" ("Byte Merge") предназначена для системной поддержки и неявным образом для PCI-операций, "PCI Write-byte-Merge" и "CPU to PCI Byte Merge" - уже явным образом предназначены для поддержки буферизации-"слияния" в цепочке "процессор - шина PCI". Опция "Word Merge" предлагает нечто другое. Речь уже идет о слиянии в пакеты отдельных слов, но по прежнему о трансляции данных в кадровый буфер (более чем конкретно указывает на это опция "Frame Buffer Word Merging"). Поэтому иногда в литературе можно встретить указание, что "байт слияние" производится только для VGA-диапазона в области адресов (0A0000-0BFFFF).
О системной поддержке говорит и опция "Linear Merge". Но при ее включении "слиянию" могут быть подвергнуты только последовательные, т.н. "линейные" адреса процессора. Это физические адреса, начиная с нулевого и заканчивая максимально возможным для данного типа процессора. Данная опция учитывает особенности процессоров Cyrix, и в свое время была введена в BIOS для поддержки, например, процессоров Cyrix M1/M2 (и тут есть дополнительный пример - "Frame Buffer Linear Merging").
Приведем названия еще некоторых опций: "PCI Byte Merging", "Write Merging", "PCI Single Write Merge", "Pipelining With Byte Merge", "Write Gathering".

CPU Dynamic-Fast-Cycle


- опция, позволяющая ускорить доступ к ISA-шине. Когда центральный процессор инициирует новый шинный цикл, PCI-шина вынуждена исследовать "адресность" команд на предмет принадлежности информации одному из своих устройств. Если такая принадлежность не определена, инициируется ISA-шинный цикл. Когда опция включена ("Enabled"), доступ к шине ISA ускоряется за счет уменьшения задержек между выдачей процессором оригинальной команды и началом ISA-цикла. Процедурное "упрощение" осуществляется при этом на уровне "северного" моста чипсета. См. также выше опцию "Fast Decode Enable".

CPU Read PCI Retry


- чуть ниже детально рассмотрены процедуры повтора инициированных центральным процессором циклов. В данной же опции речь идет о возможности повторения чипсетом ("Disabled"/"Enabled") инициированных циклов чтения из PCI-шины.

CPU-to-PCI 6 DW FIFO


- опция включения/отключения специального буфера, позволяющего устройствам обращаться к PCI-шине и считывать до 6 двойных слов (Double Word). Работа с буфером построена по принципу "первым пришел - первым ушел" (First Input - First Output). Естественно, что буферизация передачи информации повышает быстродействие системы, но в таком виде эта опция встречается уже редко.

CPU-to-PCI Bridge Retry


- когда установлено значение "Enabled", контроллер мостовой схемы сможет, взяв на себя инициативу, повторить инициированные процессором циклы записи в PCI-шину. Но должны быть соблюдены определенные условия. При включенном значении опции функции "Passive Release" и "Delayed Transaction" должны быть также включены. При этом речь идет о т.н. "nonLOCK#" PCI-циклах. Что это такое?
LOCK# (Bus Lock) - это сигнал монополизации управления шиной. При активном состоянии сигнала во время транзакции блокируется доступ к шине других абонентов. Этот сигнал используется для захвата шины задатчиком, что является одним из процедурных моментов режима "bus-master". Этот сигнал является выходным для процессоров, активно используется на PCI-шине для установки, обслуживания и освобождения требуемого ресурса.
Теперь понятно, что "nonLOCK#" PCI-циклы не связаны с захватом шины PCI-устройством, тем более, что под упомянутым "контроллером мостовой схемы" подразумевается контроллер "южного" моста, а значит получателями информации могут быть и периферийные устройства. В данном случае задатчиком является центральный процессор. Поэтому возможна ситуация, когда некоторое устройство на PCI-шине или "южнее" не получило "своей" информации, и она "залежалась", например, в упоминавшемся выше буфере "отложенной" записи.
Опция может называться "Host-to-PCI Bridge Retry", а для опции "CPU-to-PCI Bridge Retry" значениями могут быть также "No Retry" и "Retry First". Последние параметры несколько подтверждают то, что чипсет без инициативы "свыше" сам может выступить инициатором пересылки задержанных ранее данных в PCI-шину.

CPU to PCI Burst Memory Write


- включение данного режима позволяет компоновать (ассемблировать) последовательные циклы записи процессора в пакетные (burst) PCI-циклы записи. Иногда можно встретить в описаниях термин "интерпретация циклов чтения CPU шиной PCI". Это не совсем корректно, поскольку речь идет о предварительной аппаратной буферизации данных. В противном случае ("Disabled") каждый одиночный цикл записи в PCI-шину будет представлять собой связанную FRAME#-последовательность.
Сам процесс формирования пакетов происходит во внутренних буферах PCI-шины с отложенной записью, и, что также немаловажно, без участия процессора. Таких буферов может быть четыре (чипсет Orion, например, содержал как раз 4 таких буфера). Применение буферирования, как и во множестве других случаев, позволяет не прерывать передачу данных при занятости системной или локальной шин. При включении опции ("Enabled") данный режим повышает производительность системы, однако возможны и проблемы, если в системе установлены нестандартные PCI-карты (прежде всего VGA) или устаревшие карты, не поддерживающие пакетный обмен данными.
Несколько слов о сути пакетного режима и повышении производительности. В обычном режиме на каждое считываемое или записываемое слово выдается отдельный адрес, в блочном режиме адрес выдается на весь пакет данных, затем без задержек непрерывно выполняется серия циклов чте­ния/записи, что и делает пакетный режим максимально эффективным.
Одно пояснение! В данном случае, если циклы записи не являются пакетными, буфер записи может и не заполняться при незанятости PCI-шины, он естественно может заполниться при занятости шины, ведь речь не идет о разрешении или запрещении использования буфера записи. Но его "освобождение" в любом случае будет происходить в виде одиночных операций, как было указано выше.
Опция может носить множество названий: "CPU Burst Write Assembly", "CPU-to-PCI Bursting", "CPU/PCI Burst Mem. Write", "CPU to PCI Burst Write", "CPU-to-PCI Write Bursting", "PCI Burst Write Combine", "PCI Write Bursting", "PCI Write Burst", "PCI Write Burs", "PCI Burst Write", "PCI Burst Write Combining", "CPU Burst Write", "Burst Write Combining", "Write Combining", "PCI Burst", "PCI Bursting", "PCI Chaining", "Burst Write Cycles", ну и "CPU-To-PCI Burst Mem. WR.".
В дополнение к вышеизложенному необходимо отметить следующее! "Ассемблирование" чипсетом пакетов в направлении к PCI-шине является одним из примеров подобного пакетирования. Инициатором может быть и сам процессор. Поскольку применение подобных механизмов практически всегда имело целью повышение производительности системы со стороны передачи видеоданных, то такие процессоры, как Pentium Pro, Celeron, Pentium II и III имели и имеют внутренний 32-байтный буфер, который позволяет осуществить в одном цикле 32 операции записи, обеспечивая при этом передачу информации в видеопамять графической карты в 8-битном цвете. Кстати, не все программные среды позволяли использовать имеющиеся возможности процессоров для такого пакетирования. Возможности процессоров Athlon "раскрылись" в "Windows NT" только после обновления SP6 (Service Pack 6).

CPU-to-PCI FIFO Cleaning


- включение данной опции ("Enabled") позволит принудительно очищать упомянутый выше буфер FIFO ("сбрасывать инфомацию") при задержках в освобождении системной или локальной шины, а также при заполнении полностью данного буфера. Устаревшая опция.

CPU-to-PCI IDE Posting


- включение данного режима позволяет оптимизировать циклы записи из CPU в интерфейс PCI IDE путем предварительной буферизации с отложенной записью. Параметр рекомендуется устанавливать в состояние "Enabled". Может принимать значения:
"Enabled" - разрешено,
"Disabled" - запрещено.
Опция может носить название "CPU-to-IDE Posting".

CPU to PCI POST/BURST


- данные, переданные от центрального процессора к PCI-шине, могут быть буферизированы (буферы PCI-шины с отложенной записью - "posted") и собраны в пакеты, или нет. Возможны следующие методы:
"POST/CON.BURST" - буферизация и стандартное пакетирование,
"POST/Agg.BURST" - буферизация и активное пакетирование,
"NONE/NONE" - буферизация и пакетирование не установлены,
"POST/NONE" - буферизация установлена, пакетирование нет.

CPU-to-PCI Read Buffer


- опция включения/отключения специального буфера, позволяющего устройствам обращаться к PCI-шине и считывать до 4-х двойных слов, не прерывая при этом работу процессора. Процессор может работать в это время над другой задачей, что повышает общую производительность. Эта опция должна быть включена обязательно ("Enabled"). В отключенном же состоянии опции буфер не будет использоваться, и циклы чтения процессора не будут полностью укомплектованы до тех пор, пока шина PCI не подаст сигнал о готовности принимать данные.

CPU to PCI Read Burst


- включение данной опции ("Enabled") позволит компоновать последовательные циклы чтения центрального процессора в пакетные (burst) PCI-циклы. Все сказанное выше в опции "CPU to PCI Burst Memory Write" верно и для данной опции, ибо речь идет о тех же самых буферах записи. Поэтому представленные ниже вариации наименования опции могут указывать явно на процедуру "чтения", а могут носить и интегрированный характер:
"CPU-to-PCI Bursting", "PCI Read/Write Burs", "PCI Read/Write Burst", "PCI Bursting", "PCI Burst", "PCI Dynamic Bursting", "Dynamic Bursting", "Dynamic PCI Bursting", "PCI Streaming".
И еще одна опция. "PCI Burst Interrupting". А значения ее "Allowed" и "Not Allowed". Столь необычные значения ("разрешить"-"не разрешить") по сути аналогичны блокировке режима пакетирования или его включению. Стоит напомнить, что не все транзакции на PCI-шине являются пакетными. И если рассматриваемые опции отключены, то при занятости шины эти транзакции будут также накапливаться в буфере. Но освобождаться они будут в виде одиночных циклов.

CPU-to-PCI Write Buffer


- в данной опции речь идет об использовании буфера записи данных, поступающих из центрального процессора на шину PCI. При установке параметра в "Disabled" циклы записи не буферизируются (буфер отключен) и направляются непосредственно на PCI-шину. Может возникнуть предположение, что такой способ передачи данных более эффективен. Но, как всегда, возникает проблема компенсирования разницы в скоростных характеристиках между CPU и PCI-шиной. И в этом случае процессор будет постоянно находиться в состоянии ожидания после начала каждого цикла записи и до тех пор, пока шина PCI не сообщит процессору о своей готовности к приему следующих данных. Фактически центральный процессор будет "простаивать", не имея возможности решать другие задачи вплоть до завершения текущего цикла записи.
При включении буфера (опция включена) процессор сможет записывать в буфер записи шины PCI по 4 слова данных за один цикл, не ожидая завершения текущего цикла PCI-шины. Буферизированные данные могут быть записаны в PCI-шину с началом нового цикла чтения шины либо в момент готовности шины к приему данных.
Очевидно, что применение такого буферирования положительно сказывается на производительности системы. Иногда можно встретить информацию, что такой внутренний буфер чипсета построен на микросхеме 82C586B.
Опция может называться просто - "CPU to PCI Buffer". В этом случае речь может идти уже об интегрированной функции (т.к. буферизация носит двунаправленный характер - чтение/запись) с теми же параметрами: включены буферы/отключены буферы. Но в данном случае надо посмотреть соседние опции. Если есть опция с указанием буфера чтения, то понятно, что имеем дело с буфером записи. Хотя такая неоднозначность в названиях пары опций еще не встречалась.
Упомянем еще одну аналогичную опцию - "CPU-to-PCI Uses Write Buffer". Ее значения - "No" и "Yes".

CPU-to-PCI Write Latency


- опция установки времени задержки перед операцией записи данных из процессора в шину (в тактах системной шины). Установка меньшего значения позволяет увеличить производительность, однако при этом возможно увеличение нестабильности работы системы. Тогда необходимо будет вернуться к большему значению. Возможный ряд значений: 1T, 2T, 3T.
Опция может называться также "Latency for CPU to PCI write", "CPU-to-PCI Write Delay" или "CPU-to-PCI Write Waits". Значения последней опции: "0T", "1T". И речь в ней, явным образом, идет о тактах ожидания.

CPU-to-PCI Write Posting


- содержание этой опции, естественно, окажется читателю уже знакомым. Но! В некоторых чипсетах, например, в том же наборе Orion, используются специальные внутренние буферы отложенной записи (Posted Write Buffers), которые используются для того, чтобы компенсировать разницу в скоростях процессора и шины PCI. Когда эта опция включена ("Enabled"), данные, записываемые из процессора в шину, будут вначале буферизироваться (до 4 двойных слов) и записываться без ожидания инициирования процессором следующего цикла. В отключенном же состоянии ("Disabled" - по умолчанию) циклы записи буферизироваться не будут, и процессору придется все время ожидать окончания предыдущего цикла записи перед началом нового, т.е. пока не закончится обработка запроса в PCI-шину. Такой режим, конечно же, снижает производительность. Но отключение опции может потребоваться и при использовании некоторых видеокарт, а также при работе процессора на определенных скоростях. Это может быть связано как с аппаратными особенностями, так и с процедурами "разгона".
Опция может носить множество названий: "CPU-to-PCI Posting", "CPU-to-PCI Write Post", "CPU-to-PCI Post Write", "CPU to PCI post memory write", "CPU/PCI Post Mem. Write", "PCI Posted Write Buffer", "PCI Post Write", "CPU-to-PCI Post Writes". Последняя опция может также предложить вариант с установкой времени задержки: "3T", "4T". Такие же значения (имеются ввиду временные параметры) предлагают и опции "PCI Post Write Timing", "CPU-to-PCI Post Write Timing". В некоторых случаях наличие возможности задержать циклы записи в PCI-шину является конечно более предпочтительным, чем полный отказ от использования буферирования с "отложенной" записью.
Еще конкретнее на временные характеристики (при задержке циклов записи) указывает опция "CPU/PCI Post Write Delay".
В завершение обзора опция "PPro to PCI Write Posting". Ничего особенного в использовании процессора Pentium Pro нет, только желательно данную опцию запретить, если речь идет о серверной системе.

Delayed Transaction


- (задержанная транзакция на PCI). Присутствие этого параметра в BIOS означает, что на материнской плате (в составе чипсета) есть встроенный 32-битный буфер с задержанной (чаще говорят, отложенной) записью для поддержки удлиненного цикла обмена на PCI-шине. Если этот параметр разрешен, то доступ к шине PCI, например, собственно PCI-устройств, разрешен во время доступа к более медленным устройствам на шине ISA, т.е. во время занятости PCI-шины. Это означает, что при обслуживании устройств на шине ISA (или периферии) система не будет прерывать PCI-транзакций, временно буферизируя данные, что и есть суть "задержанной транзакции". Это существенно увеличивает производительность системы, так как цикл такого обращения на ISA-шине занимает 50-60 тактов шины PCI. Понятно, что отключение опции (а значит и буфера) вызвало бы значительное замедление функционирования PCI-устройств (карты расширения, EIDE-интерфейс) в процессе завершения циклов чтения/записи от самых "южных" устройств ввода/вывода. Понятно также, что указанное "замедление" было бы вызвано элементарным простоем PCI-интерфейса.
Если компьютер укомплектован системной платой, не поддерживающей спецификацию PCI 2.1, этот параметр следует запретить, поскольку данная опция включает режим совместимости со спецификацией PCI версии 2.1 с одновременным включением в "северном" мосте упомянутого выше специального буфера. Правда, данная рекомендация по сути является избыточной. Выше уже акцентировалось внимание на однозначности соответствия пары "опция BIOS - буфер". Отключение опции может потребоваться при использовании какой-нибудь старой PCI-карты, не поддерживающей спецификации PCI 2.1. Может принимать значения:
"Enabled" - разрешено,
"Disabled" - запрещено.
Стоит отметить еще одну важную особенность! Если включены упоминавшиеся выше опции по "слиянию" (merging) отдельных байтов, слов, т.п., то данный буфер будет использован для объединения одиночных циклов записи в пакетные.
Опция может называться также "PCI Delayed Transaction", "PCI Delay Transaction", "Delayed Transaction Optimization", "Delayed Transactions" или "Delayed Transaction Timer" с теми же значениями ("включено"/"отключено").
Опция может называться и "PIIX4 Delayed Transaction" (т.е. с указанием наименования "моста"). Поддержка PCI-спецификации "видна" из наименования опции. "PIIX4" - принадлежность чипсетов i430TX и выше, а поддержка спецификации PCI 2.1 была введена "Intel" немного раньше.
Очень похожа на предыдущие, но только по названию, опция "ICH Delayed Transaction". Она "пришла" к нам из чипсетов Intel 810 и более поздних. В этих чипсетах отсутствует привычное большинству наличие конструктивных компонент, "северного" и "южного" мостов, присутствует новая шина. Но если абстрагироваться, то некоторая структурная похожесть все же есть! Процессор через системную шину соединяется с Graphics Memory Controller Hub. Последний с помощью интерфейса Accelerated Hub подключается к Integrated Controller Hub (ICH). К последнему подключается PCI-шина и через LPC-интерфейс вся возможная периферия. Что же мы видим? Привычное место PCI-шины заняла ускоренная шина с 66 МГц (магистральный канал трансляции данных), сама же PCI-шина заняла место "ушедшей в прошлое" ISA-шины. Теперь уже для ICH-"моста", LPC-интерфейса и периферийных каналов надо решать вопросы не столько совместной работы, сколько производительной работы. Тем более, что такие устройства как клавиатура, порты, все дисководы и т.п. подсоединяются к интегрированному контроллеру через высокопроизводительную кэш-память. Остается установить "Enabled".

DRAM-to-PCI 24 DW FIFO


- по аналогии смотри вышепредставленные опции. Хотя стоит подчеркнуть, что речь идет о буфере емкостью в 24 двойных слова.

DRAM to PCI RSLP


- когда опция включена ("Enabled"), чипсет допускает режим предвыборки на двух линиях данных от системной памяти к PCI-шине.

Early PCI Bus Request


- чуть выше была рассмотрена опция "Bus Request when FIFO is". Поэтому настоятельная рекомендация ее еще раз просмотреть. Если же ничего не знать об уже изложенном, то о чем идет речь в данной опции? Приведем "сухую" информацию о ее значениях: "Disabled", "2 Bytes Early", "4 Bytes Early", "6 Bytes Early". Пока не совсем ясно! В данной опции фиксируется остающееся свободное пространство шинного буфера, т.е. устанавливается объем свободной памяти буфера, при достижении которой выдается "request" (запрос) о его заполнении. Установка в "Disabled" снимает возможность посылки запроса.

Extra AT Cycle WS


- установка опции в "Enabled" разрешала вставить дополнительный такт ожидания в стандартный цикл AT-шины. Это могло понадобиться для улучшения распознавания ответа (реакции) несколько устаревшей периферии. Осталось отметить, что и сама опция уже достаточно устарела. Установка же значения "Disabled" вела к отказу от такта ожидания, а значит и повышению производительности.
По сути аналогична данной другая опция - "ISA Command Delay", определяющая задержку перед передачей данных для ISA-шины. Эта старенькая опция позволяла выбрать стандартный режим работы для ISA-устройств ("Normal Delay") и со вставкой дополнительного такта ожидания ("Extra Delay").

Fast AT Cycle


- (быстpый AT-цикл). Пpи установке опции в "Enabled" может быть ускоpена пеpедача данных для ISA-карт, особенно пpи pаботе с видеопамятью. Ускорение, а отсюда и повышение производительности, связано с укорочением циклов на системной шине. Понятно, что опция эта также устарела.

Fast Back-to-Back


- в опции, представленной выше ("CPU to PCI Burst Memory Write"), уже затрагивалась тема компоновки (правильнее сказать, ассемблирования) последовательных циклов записи процессора в пакетные (burst) PCI-циклы записи. Необходимо отметить, что такой механизм функционирования PCI-шины носит двунаправленный характер, т.е. это все справедливо как для циклов записи, так и для циклов чтения. Вот эта "интерпретация" последовательных циклов ("back-to-back"), или еще транслирование, в пакетные циклы зачастую называется преобразованием в "быстрые" ("fast") "PCI burst memory cycles". Отсюда и появление в названии опции двух терминов: "быстрый" и "последовательный". Естественно, что для повышения производительности системы опцию надо включить. Значение "Enabled" устанавливается и по умолчанию.
Как видим, данная опция ничем не отличается от множества опций, упомянутых выше. Просто был сделан дополнительный акцент. Приведем названия других возможных опций, предназначенных для решения этой же задачи: "Fast Back-to-Back Cycle", "Fast Back-to-Back Capability", "PCI Fast Back to Back Wr", "PCI Fast Back-to-Back", "Fast PCI Cycles".
Ну а об упомянутой двунаправленности говорят следующие две опции: "Fast Back-to-Back Read" и "Fast Back-to-Back Write".
Нет смысла выделять отдельно следующие две опции, хотя в них вроде бы и не идет речь о "быстрых" циклах, а о возможности чтения/записи последовательных циклов вообще: "Back-to-Back Write", "Back-to-Back Read".
;
Fast Frame Generation
- (быстрая генерация кадра). Выше была изложена целая "низка" опций, рассматривающих процессы буферирования транзакций от центрального процессора в PCI-шину. Данная опция направлена на оптимизацию тех же процессов, поскольку речь также идет о быстром "CPU-to-PCI"-буфере. Включение опции ("Enabled") позволяет процессору при использовании данного буфера завершать циклы записи даже, если данные в шину PCI еще не доставлены. То есть можно говорить об "отложенной" записи, что позволяет сократить общее количество циклов процессора.
В таком виде приведенная опция появилась во времена VLB-шины, предназначенной прежде всего для ускорения вывода графики. Но применение опции и тогда касалось оптимизации функционирования PCI-шины. В роли "PCI Master" выступал "PCI-VL bus bridge", и включение опции позволяло задействовать принадлежащий мосту указанный быстрый буфер.
Времена локальной шины VESA прошли, но и в более современных системах можно "встретить" указанную опцию. А у нее с самого начала были и свои "сородичи". "Quick Frame Generation" абсолютно идентична. "FRAMEJ generation" имела значения "Normal" (буферизация не используется) и "Fast". Опция "Frame Generation Delay" предлагала устанавливать задержку перед операцией записи данных из процессора в шину ("1T", "0T"). Фактически аналогична последней была опция "Reduce 1T for FRAME Generation", для которой "Enabled" означало снятие задержки в один такт.
;
I/O Posted Write Buffer
- опция отключения/включения (соответственно "Disabled" и "Enabled") специализированного буфера "отложенной" записи, предназначенного для оптимизации совместного сосуществования PCI-шины и устройств ввода/вывода при обращении к последним центрального процессора (см. дополнительно далее опцию "Write Post During I/O Bridge Access").
;
I/O Recovery Time
- (время восстановления для 8/16-битных операций ввода/вывода). Данная опция - "прародительница" опций, изложенных выше. Ее время ушло с появлением EIDE-интерфейса и "привязкой" последнего к PCI-интерфейсу, а также, что оказалось более естественным, с появлением различных устройств ввода/вывода, использующих 16-разрядный обмен данными. Поэтому естественным стало и последующее разделение на две самостоятельных опции. Но и для "нашей" опции время восстановления означало число тактов ожидания, вставляемых между двумя последовательными ("back-to-back") I/O-операциями.
Иногда в литературе, а также и некоторых версиях BIOS, можно встретить трактовку данной опции, как "AT Bus (I/O) Command Delay", что четко указывает на происхождение опции. Но при этом надо учитывать один нюанс. Речь все таки идет не о задержках между двумя последовательными обращениями, а о вставке тактов ожидания перед началом следующей I/O-операции. Хотя понятно, что в итоге сути это не меняет.
Нет ничего удивительного, что при рассмотрении данной опции мы можем сталкиваться и с работой жесткого диска. Передача данных от IDE-диска в основную память происходит без подтверждения приема информации (т.н. квитирования). Достаточно желания процессора прочитать дисковую информацию из дискового кэша, обращаясь через I/O-порт. Это т.н. PIO (Programmed I/O - программируемый ввод/вывод) и работает он с REP INSW-ассемблерными инструкциями. С помощью рассматриваемой опции возможно было добавить несколько тактов ожидания между инструкциями при работе с жестким диском. Но и тут был свой нюанс. Несомненной была тесная связь между опциями "I/O Recovery Time" и "AT BUS Clock Selection" (см. далее). Например, если системная AT-шина работала на частоте 8 МГц и к жесткому диску не было претензий, "I/O Recovery Time" могло быть отключено.
Если говорить о возможных значениях, то они могли быть выражены в тактах PCI-шины (bus clock - BCLK): "2 BCLK" (по умолчанию), "4", "8", "12". При запрещении опции ("Disabled") тот же жесткий диск будет работать производительнее. Рост производительности заметно увеличивается и при сокращении паузы. Необходимо отметить, что в предложенном виде данная опция довольно долго уживалась с PCI-шиной. В качестве значения опции могло также фигурировать выражение, например, типа "5/3". Первое значение определяло число тактов для 8-битных операций, второе - 16-битных. Приведенное значение ("5/3") являлось рекомендованным, хотя к предложенному могли быть добавлены и такие значения: "3T/2T", "4T/3T", "Disabled", "Enabled".
В "дописишные" времена задержка измерялась в тактах AT-шины (читай, ISA-шины), и в качестве значений мог фигурировать такой ряд: "1 CLK", "2 CLKs", "4 CLKs", "8 CLKs", "16 CLKs", "32 CLKs", "64 CLKs", "128 CLKs", "No Delay". Опция может (точнее, могла) называться также "I/O Recovery Period", а значения ее менялись от 0 до 1,75 мкс с шагом в 0,25 микросекунд. Опция могла называться и "I/O Cycle Recovery" со значениями "Enabled" и "Disabled". Такие же значения предлагали опции "On-Chip I/O Recovery" и "ISA I/O Recovery". Запрещение опции рекомендовалось только в случае, если устройства ввода/вывода могли поддержать скоростной обмен. Опция "ISA I/O Recovery" могла предложить и другой набор значений: "0 CLKs", "3 CLKs", "12 CLKs", "Slow".
Напоследок значения опции "I/O Recovery Time", "снятые" с системы "Anigma LP486i" много лет назад: "Short" и "Long".
;
L2 to PCI Read Buffer
- чипсет содержит свой собственный внутренний буфер для циклов записи в PCI-шину со стороны внешнего кэша. Когда этот буфер включен ("Enabled"), циклы записи из кэш-памяти второго уровня в PCI-шину предварительно буферизируются. При этом каждое устройство на PCI-шине "получит" свои собственные циклы полностью укомплектованными и без состояния ожидания.
;
Max PCI Burst Size
- (максимальный размер пакета на PCI-шине). Выше уже были рассмотрены вопросы, связанные с созданием и "движением" пакетов на PCI-шине. Но в качестве единого пакета может выступать объем информации, значительно превышающий несколько байт. Возможно ли такое? Вполне! Но есть факторы, могущие повлиять на размер PCI-пакета. Это непрерывность адресного пространства передаваемых данных, а также период полного "властвования" над системой, устанавливаемый для "мастер"-устройств. Отсюда и весьма "солидный" ряд значений опции: "256 Bytes", "512 Bytes", "1k Bytes", "2k Bytes", "4k Bytes". Последнее значение равно стандартному размеру страницы памяти. Неспроста!
И напоследок еще одна необычная опция - "Max. Burstable Range" (другие вариации: "Max, Burstable Range" и "Max burstable Range"). Этой опцией устанавливается максимальный размер непрерывной памяти, адресуемой как единый пакет на PCI-шине, сопровождаемый при этом уже знакомым нам сигналом FRAME# (pin A34). Параметр имеет два значения, и они не столь привлекательны: "0.5Kb" и "1Kb".
;
Passive Release
- (пассивное разделение). Эта опция включает/выключает механизм параллельной работы шин ISA и PCI. Если этот параметр разрешен ("Enabled"), то доступ процессора к шине PCI позволен во время "пассивного разделения" или, как говорят иногда, ее "освобождения". Проще говоря, включение данного режима позволяет шине PCI продолжать работу даже тогда, когда происходит передача данных от ISA-устройств, которые в обычном режиме могут тормозить работу более скоростной PCI-шины. Арбитр чипсета как бы выравнивает работу двух шин с учетом задержек ISA-шины. Технологически "пассивное разделение" осуществляется за счет применения встроенного в чипсет 32-битного буфера "отложенной" записи, где буферируются при необходимости PCI-циклы записи. Дальнейшая запись в PCI-шину происходит при ее "освобождении" от ISA-циклов, транслируемых через PCI-интерфейс.
К тому же несложно заметить, что опции "Passive Release" и "Delayed Transaction", несмотря на некоторые протокольные различия аппаратного функционирования, всегда находятся рядом в "BIOS Setup". Их использование непосредственно связано с одним и тем же буфером. Включение одной из них при отключенном состоянии другой бессмысленно!
Эти опции появились в свое время в "BIOS Setup" одновременно со способностью арбитра чипсетов Intel Triton VX/HX отбирать шину у "master"-устройств при отсутствии в течение какого-то времени запросов на передачу с их стороны. Рассматривая шире возможности арбитража применительно к данной опции, можно выделить следующее:
- арбитр может передать другому "master"-устройству доступ к локальной памяти,
- доступ к PCI-шине в качестве "master"-устройства может получить также другая карта расширения, а не только центральный процессор,
- арбитр получает возможность регулировать задержки (состояния ожидания) как для "ISA bus master"-, так и для "PCI bus master"-устройств.
Необходимость запрещения данного параметра может возникнуть при использовании либо "проблемных" ISA-карт, либо плат ISA, активно использующих каналы DMA (звуковые карты, устройства "Arvid", предназначенные для хранения информации). Запрещение также уместно при отсутствии ISA-карт в системе, хотя необходимо помнить, что системная периферия, даже при отсутствии ISA-карты, по сути подключается к той же ISA-шине. Вопросы арбитража подробно рассмотрены далее.
Опция может называться "PCI Passive Release".
Опция может называться и "PIIX4 Passive Release", но ее включение требует поддержки спецификации шины PCI 2.1.
Необходимо отметить, что механизм "пассивного разделения" в последние годы вышел за рамки взаимоотношения PCI- и ISA-шин. Затронуло сие и USB-интерфейс. Обычные PCI-циклы состоят из 8 тактов. Интерфейс шины USB допускает более короткие циклы, освобождая ведущую шину в середине обычного цикла. Это ускоряет доступ к шине других устройств. Опция "AMI BIOS" может называться "USB Passive Release".
;
PCI1 to PCI0 Access
- присутствие данной опции в "BIOS Setup" обычного (скажем, массового) компьютера вряд ли возможно. Речь может идти о мультипроцессорной либо серверной системах, для которых в свое время был разработан набор логики Intel 440NX. Данный набор включал в себя два специализированных расширителя мостов PCI с поддержкой четырех 32-разрядных или двух 64-разрядных PCI-шин. Включение такой опции ("Enabled") позволяло устройствам на разных шинах иметь доступ к локальной памяти "друг друга" и обмениваться данными между собой.
;
PCI#2 Access #1 Retry
- "деятельность" данной опции связана с функционированием "CPU to PCI Write Buffer" и опции, отвечающей за управление указанным буфером. Обычно, такой буфер записи включен, что позволяет процессору не ожидать освобождения PCI-шины. Далее данные могут быть переданы либо в наиболее благоприятный момент, либо перед началом следующего PCI-цикла.
Но возможна ситуация, когда при функционировании буфера произошел сбой. Это не связано никак с "переполнением" буфера, сбой мог произойти в процессе записи данных. При этом должна быть повторена процедура записи данных или передано сообщение "назад" для арбитража. Если опция включена, то будет повторена некоторая транзакция, и последующая запись в шину закончится успешно. Если установлено "Disabled", буфер принудительно сбросит свое содержание, при этом состояние регистров транзакции будет нарушено. Центральный процессор вынужден будет повторить снова цикл записи полностью. Рекомендуется включить данную опцию. Запрещение же опции может понадобиться при наличии в системе нескольких "медленных" PCI-устройств. Если же при этом опция будет включена, количество повторов циклов записи может заметно снизить производительность системы через замедление функционирования PCI-шины.
;
PCI Pipeline
- данная функция BIOS объединяет PCI- или CPU-конвейеризацию с механизмом "byte merging". "Байт слияние" используется для повышения производительности графических карт. И представленная функция контролирует механизм "byte-merge" для циклов записи в линейный кадровый буфер. Когда опция включена ("Enabled"), системный контроллер определенным образом проверяет состояние восьми линий процессора, являющихся сигналами "разрешения использования байт" ("BE[7:0]#" - "Byte Enable"). Эти линии контролируются всегда и независимо от установок "BIOS Setup", так как они могут быть непосредственно связаны с функционированием 64-битной шины данных. Рекомендованное включение опции может оказаться полезным не только для графических карт. "Простые" PCI-карты также могут получить "свое" ускорение от применения конвейеризации.
Опция может называться "PCI Pipelining".
;
PCI Post-Write Fast
- эта опция от "соседних" опций по работе буфера "отложенной" записи отличается только тем, что при циклах записи в PCI-шину будет использоваться буфер с более быстродействующей памятью.
;
PCI-to-CPU Write Buffer
- см. аналогичную информацию выше.
;
PCI to CPU Write Pending
- с помощью этой опции устанавливается режим работы системы при заполнении буфера записи полностью. По умолчанию, система будет вынуждена немедленно повторить цикл записи, что более предпочтительнее ожидания очистки буфера. Однако если установить некоторый тайм-аут для ожидания, то система будет некоторое время ожидать перед повтором цикла, пока буфер записи из PCI-шины не очистится, а это снижает производительность.
Опция может называться "Action When W_Buffer Full".
;
PCI-To-CPU Write Posting
- при установке опции в "Enabled" циклы записи центрального процессора, обращенные к PCI-шине (речь идет о чтении данных с локальной шины), завершаются предварительной буферизацией в буфере отложенной записи чипсета. При этом PCI-шина, не прерываясь, сможет продолжать процесс передачи данных в то время, когда центральный процессор переключился на выполнение другой задачи. Когда установлено "Disabled", буферизация отсутствует, и PCI-шина будет ожидать, пока CPU не освободится для другого цикла записи.
Опция может называться "PCI-to-CPU Posting".
;
PCI-to-DRAM 24 DW FIFO
- см. по аналогии вышеизложенное.
;
PCI to DRAM Buffer
- данная опция во включенном состоянии ("Enabled") увеличивает производительность совместной работы PCI-шины и памяти, позволяя временно хранить передаваемые данные в буфере (с последующей их передачей), если какое либо из устройств занято в данный момент. Наличие буфера предназначено, прежде всего, для компенсации работающих с разными скоростями системных компонент. Если опцию отключить, то PCI-шина будет ожидать, пока не будет закончен предыдущий цикл передачи данных от одного из устройств на шине PCI в системную память.
Опция может называться и проще - "PCI-to-DRAM Write", но ее содержание соответствует изложенному. Правда, ее значения несколько иные: "Faster", "Slower".
Последние значения, хотя и понятны пользователю, но достаточно абстрактны. Во всяком случае, должно быть понятно, что значение "Faster" более приемлемо для системы. Опция же "PCI-to-DRAM Buffer Timing" более конкретна, и значения ее: "x-3-3-3", "x-2-2-2". Последнее значение (временная характеристика обмена) соответствует более скоростному взаимодействию. О подобных временных диаграммах мы поговорим чуть ниже.
;
PCI-to-DRAM Bursting
- данная опция во включенном состоянии ("Enabled") позволяет оптимизировать совместную работу PCI-шины и основной памяти, а значит повысить общую производительность системы. Нетрудно увидеть, что речь идет о пакетном режиме передачи данных. О сути пакетной передачи информации см. выше.
;
PCI-to-DRAM FIFO Cleaning
- см. аналогичное выше.
;
PCI-to-DRAM Pipeline
- (конвейеризация передачи данных от PCI-шины к основной памяти). Установка опции в "Enabled" позволяет включить конвейер записи в основную память для PCI-циклов. В этом случае буферы чипсета хранят данные, записанные из PCI-шины, сам же чипсет запускает при доступе к памяти несколько циклов подряд, что повышает скорость обращения к памяти. При отключенном состоянии опции операции записи из PCI в DRAM ограничены до одного перемещения за цикл записи.
Опция может называться и "PCI-to-DRAM Pipelining".
;
PCI-to-DRAM Posting
- в данной опции речь идет также о буфере отложенной записи. Когда опция включена ("Enabled"), циклы записи из PCI-шины в основную память предварительно буферизируются. При этом передача данных от центрального процессора наиболее "благоприятным" образом чередуется с операциями "PCI-to-DRAM" при дополнительно включенном буфере отложенной записи в цепочке "CPU-to-DRAM".
Опция может называться "PCI-to-DRAM Post Write", "Posted PCI Memory Writes", "Posted Write Enable" или "Post Memory Writes".
;
PCI-to-DRAM Prefetch
- опция включения режима "предвыборки", значительно ускоряющего операции работы PCI-устройств с основной памятью. Достаточно подробно об этом режиме изложено в разделе "CPU". Но в данном случае присутствуют очень важные нюансы функционирования устройств, которые обязательно необходимо осветить уже сейчас.
При изучении множества изложенных выше опций (типа "N-to-M") могла да и пожалуй должна была выработаться у читателя уверенность, что речь всегда идет о направлении передачи данных. Но режим "предвыборки" представляет собой, прежде всего, оптимизацию механизма выдачи инструкций чтения (обращений к памяти), т.е. командной (адресной) информации. А значит, в данной опции мы говорим о направленности командной информации, предназначенной для чтения данных из основной памяти в сторону конечного получателя - PCI-устройства.
Приведем сразу несколько примеров аналогичных опций, подтверждающих сказанное: "PCI-to-DRAM Read Prefetch", "PCI Memory Read Prefetch", "PCI Read Command Prefetch". Все опции предлагают стандартные значения: "Disabled" и "Enabled".
Обратимся к аппаратной информации и поступим также, как сделали ранее. Возьмем техническое описание материнской платы на базе чипсета i430HX и обнаружим такой пункт -
22-DWord PCI-to-DRAM Read Prefetch Buffer.
Эта информация означает, что чипсет содержит специализированный буфер (размером в 22 двойных слова), предназначенный для динамического хранения запросов чтения данных из основной памяти - упомянутых инструкций чтения. Использование режима "предвыборки", а значит и буфера, основным образом предназначено для PCI-устройств, работающих в режиме захвата шины (режим "Bus Mastering"). В этом случае наиболее эффективно функционирует собственно PCI-шина и оптимально обеспечивается доступ к памяти устройств ввода/вывода. Уже чипсет берет на себя функцию управления запросами карты расширения. Применение режима наилучшим образом сказывается на производительности звуковых карт и PCI-карт с FireWire-интерфейсом (стандарт IEEE 1394). Блокировка режима ("Disabled") ведет к одиночным циклам чтения, число которых всегда ограничено сверху временными установками для функционирования "master"-устройств в системе (см. раздел "PCI").

PCI to ISA Write Buffer
- когда опция включена ("Enabled"), система временно будет хранить циклы записи в буфере, не прерывая при этом работу процессора. Если опция отключена, процессор должен будет "проследить" прохождение данных через PCI-шину и завершение цикла на медленной ISA-шине, что менее эффективно.
;
PCI-to-L2 Checkpoint
- данная опция, исходя из возможных значений ("2T", "3T"), может показаться аналогичной приведенной ниже "PCI-to-L2 Write Wait States". Но она устанавливает время (в тактах системной шины) от момента выдачи адресной информации контроллером PCI-шины до завершения ее декодирования контроллером кэш-памяти. Меньшее значение дает более высокую скорость, но при возникновении сбойных ситуаций значение необходимо увеличить.
;
PCI-to-L2 Read Wait States
- данная опция позволяет оптимизировать циклы чтения из внешнего кэша процессора в PCI-шину, устанавливая определенное количество тактов ожидания (в тактах системной шины). Оптимальный вариант выбирается путем опытной проверки. Значений всего два: "1T", "2T".
;
PCI to L2 Write Buffer
- чипсет может включать в себя собственный внутренний буфер для PCI-циклов записи во внешний кэш. Когда этот буфер включен ("Enabled"), циклы записи из PCI-шины во внешний кэш предварительно буферизируются во внутреннем буфере отложенной записи, так как в это время центральный процессор может быть занят "обслуживанием" какого-либо устройства ввода/вывода, например. При отключении буфера ("Disabled") шина PCI вполне может оказаться в состоянии простоя из-за ожидания завершения предыдущего системного цикла, что естественно снижает общую производительность системы.
;
PCI-to-L2 Write Wait States
- данная опция позволяет оптимизировать циклы записи из PCI-шины во внешний кэш процессора, устанавливая определенное количество тактов ожидания (в тактах системной шины). Оптимальный вариант выбирается, как и в большинстве подобных случаев, путем опытной проверки. Значений всего два: "1T", "2T".
;
PCI-to-PCI Posting
- поскольку PCI-шина обладает собственными буферами "отложенной" записи, то включение данной опции ("Enabled") позволит включить в работу данный буфер при обмене данными между устройствами на самой PCI-шине. Конечно, данная опция позволяет значительно оптимизировать функционирование PCI-шины, поскольку, а это стоит напомнить, обмен данными по ней идет как для самих PCI-устройств, так и для всех "нижестоящих". А тут еще и обмен друг с другом. Последнее, а также применение данной опции вообще, в большей степени указывает на оптимизацию работы "master"-устройств на PCI-шине. Нет сомнения, "хорошая" опция! Только встретить ее в "BIOS Setup" можно крайне редко.
;
ROM Wait States
- необычная и не совсем ясная опция, встретившаяся в системе на чипсете AMD645. Можно предположить, что речь идет о вставке дополнительного такта ожидания при доступе к системному BIOS. Но может быть суть в другом, например, при доступе к ПЗУ карт расширения. Значения опции: "1 WS" и "0 WS".
;
USB Passive Release
- см. выше опцию "Passive Release".
;
Write Post During I/O Bridge Access
- в таком виде данная опция уже не встречается, хотя и затрагивает весьма ответственный момент в работе системы, а именно, совместную работу PCI-шины и устройств ввода/вывода, "привязанных" к "южному" мосту. Включение опции ("Enabled" - по умолчанию) позволяет осуществлять предварительную "отложенную" буферизацию циклов записи PCI-шины в моменты обращения центрального процессора к периферийным устройствам. Чипсет может содержать специализированный буфер, предназначенный для "отложенной" записи. Аналогичная заглавной опция может называться "I/O Posted Write Buffer" с теми же значениями: "Disabled" и "Enabled". Включение опции, хотя и "притормаживает" работу PCI-устройств, тем не менее повышает общую производительность системы.
Опция может называться "Write Posting During I/O", а также иметь следующие названия: "I/O Cycle Post-Write", "PCI I/O Cycle Post Write", "Posted I/O Write".
Значительный по объему и дополняющий все вышеизложенное (и нижеизложенное тоже) материал расположен в разделах, посвященных PCI-шине, арбитражу, а также ISA-шине.