bazilic.ru Веб-мастерская

Все, что мы делаем, мы делаем с душой, с хорошим настроением и глубоким уважением ко всем, кто к нам обращается.
Базилик - полезная травка! *

+7 (495) 517 7340

Советы на сайте bazilic.ru

Не удивляйтесь, встретив советы из прошлого. Они до сих пор актуальны, как показывает статистика посещений

Настройка компьютера

Настройки BIOS

Chipset Auto Configuration - этот режим во включенном состоянии (''Enabled'') позволяет системе самостоятельно определить оптимальную настройку параметров чипсета. Под оптимальной настройкой здесь подразумевается такая установка заранее определенных параметров чипсета, при которой максимально уменьшится возможность нестабильной работы компьютера, правда с возможной потерей в скорости. Кроме того, при активизации этого режима становятся недоступными для самостоятельного редактирования многие из опций ''BIOS Setup''.
При выборе значения ''Disabled'' поля этих же опций заполняются значениями, сохраненными в CMOS-памяти, но они уже доступны пользователю.

Chipset I/O Wait States - опция для установки n тактов ожидания в процессе взаимоотношений чипсета с устройствами ввода/вывода. Увеличение значения повышает надежность совместной работы устройств, но несколько снижает быстродействие. Вот один из вариантов ряда значений: ''2 WS'' (2T), ''4 WS'', ''5 WS'', ''6 WS''.

Chipset Special Features - (специальные возможности чипсета). Данный параметр разрешает/запрещает все новые функции, появившиеся в 430-х наборах Intel (HX, VX или TX) по сравнению с FX. Если установлено ''Disabled'', чипсет функционирует как 82430FX. Может принимать значения:
''Enabled'' - разрешено,
''Disabled'' - запрещено.
Какие же положительные преимущества могли быть утеряны при запрещении опции? Перечислим основные.
Чипсет i82430FX (январь 95г.) поддерживал спецификацию PCI 2.0. Все последующие (HX, VX - февраль 96, TX - февраль 97) были оптимизированы под спецификацию PCI 2.1, которая стала поддерживать параллельное выполнение операций на PCI-шине. Об остальных нюансах спецификации PCI 2.1 см.ниже.
Если ''южные'' мосты чипсетов FX, HX и VX поддерживали работу IDE-устройств в режиме ''bus-master'', то PIIX4 (PCI ISA IDE Xcelerator) чипсета 82430TX уже поддерживал новый интерфейс UDMA/33.
В чипсете 82430FX, в отличие от последующих, не была еще реализована поддержка USB-шины.
Чипсеты VX и TX, кроме FPM- и EDO-памяти, стали поддерживать SDRAM-память.

И, наконец, для чипсета 82430HX могла быть снята мультипроцессорная поддержка и поддержка контроля по четности и коррекции ошибок (ECC).
Command per Cycle - (команда за такт). Параметр разрешает или запрещает выполнение команд за один такт. Включение опции заметно повышает производительность системы, поэтому рекомендуемое значение - ''Enabled''.

Extended I/O Decode - опция разрешения расширенного декодирования шины адреса при операциях ввода/вывода. Стандартный диапазон адpесов устpойств ввода/вывода - 0...0х3FF, что является следствием 10-pазpядного адpесного пpостpанства ввода/вывода, принятого еще в PC AT. Расшиpенное декодиpование позволяет получить более шиpокий диапазон адpесов, снимая при этом очень давние и жесткие ограничения. Ведь центральный процессор может поддеpживать 16 адpесных линий, что расширяет диапазон устройств ввода/вывода до 64К-адресного пpостpанства. Необходимо отметить, что большинство ''старых'' материнских плат и адаптеров ввода/вывода могли декодировать только 10 адресных линий, тем самым ограничивая количество используемых портов ввода/вывода.
Если речь идет о PCI-шине, то порты ввода/вывода шины PCI могут быть как 8-, так и 16-битными. Для адресации портов на шине PCI доступны все 32 бита адреса, но процессоры x86 могут использовать только младшие 16 бит. Кроме того, на адресное пространство PCI влияет и 10-битное декодирование адреса, принятое в традиционной шине ISA. В результате каждый адрес порта на шине ISA, в случае расширенного декодирования и использования сконфигурированных ISA-устройств, имеет 64 ''псевдонима'', смещенных друг от друга на 1К (40h). Последний факт означает, что и при расширенном декодировании, и при наличии ISA-карт возможности адресации для устройств PCI оказываются также ограниченными.
Но речь может идти не только об ограничениях. Возможны конфликты, особенно в тех случаях, когда программы (драйвера) и сами устройства работают с различными адресными форматами. В одном случае, с адресами в шестнадцатеричной форме, в другом, в двоичной. В одном случае, адрес читается слева направо, в другом, справа налево. Такое тоже случается!
Вернемся к декодированию и возможным конфликтам, к вопросу о 16- и 10-битном декодировании. В качестве примера можно привести ''смешивание'' адресов для COM4 и некоторых S3-видеокарт. И напоследок немножко арифметики. Стандартный адрес ''Sound Blaster'' - 220h (10 0010 0000). Для карты с адресом 2A20h (10 1010 0010 0000) имеем полное совпадение с 220h по младшим десяти разрядам.
Смотри дополнительно главу ''Порты''.
Fast Decode Enable
- (pазpешение быстpого декодиpования). В этой опции речь идет об аппаратном (выполняемом специальной логикой) декодировании команды формирования сигнала сброса процессора. А точнее об аппаpатных сpедствах, контpолиpующих команды, пеpедаваемые на контpоллеp клавиатуpы.
Первоначально в PC AT использовались специальные коды, необpабатываемые клавиатуpой, для упpавления пеpеключением 286-го пpоцессоpа из защищенного pежима в реальный. 286-й пpоцессоp не имел для этого встроенных аппаpатных сpедств, поэтому фактически должен был пеpезапускаться для такого пеpеключения. Естественно, что подобная опеpация очень тормозила работу системы. Поскольку это было недостатком разработок IBM, не предполагавшей что операционным системам могут потребоваться пеpеходы между защищенным и pеальным pежимами, то пpоизводители ''клонов'' (аналогов IBM PC) добавили несколько интегральных микросхем (PLD chips) для контpоля за командами, пеpедаваемыми на чип контpоллеpа клавиатуpы. И когда обнаpуживался код ''пеpезапуск CPU'' (''reset CPU''), то ''новые'' чипы выполняли немедленный пеpезапуск процессора вместо длительной процедуры опроса контpоллеpом клавиатуpы своего pегистpа ввода, pаспознавания кода и затем кратковременной остановки CPU. Это ''быстpое декодиpование'' команды пеpезапуска позволило ''современным'' ''OS/2'' и ''Windows'' пеpеключаться между защищенным и pеальным pежимом быстpее и дало более высокую пpоизводительность.
Впервые такая возможность включения и отключения логики быстpого декодиpования была реализована в клонах ''Compaq'' с ''Phoenix BIOS''. Для пpоцессоpов 386 и выше такая проблематика была снята, т.к. сами процессоры стали содержать встроенные средства для пеpеключения между pежимами.
На 286-х и 386-х системах такая функция могла относиться и к настройке декодирования адреса ISA-шины, что позволяло ускорить обмен с периферией. В данном случае речь уже шла о совместном функционировании 8-ми и 16-битных устройств, к тому же имевших на ''своем борту'' 8-ми или 16-разрядные RAM- или ROM-память. Примером тому был 8-битный BIOS ROM на VGA-карте, к адресному пространству которого (C000-Dfff) могли обращаться другие 8-разрядные периферийные утройства. И скорее ''раннее'' декодирование адресных линий позволяло избежать возможных конфликтов.
Опция могла называться и ''Fast Decode'', и с теми же значениями: ''Enabled'' и ''Disabled''.
ICH Decode Select
- опция для установки используемого интегрированным контроллером (ICH - см. ниже) типа декодирования. Значения могут быть следующие: ''Subtractive'' (метод с вычитанием) или ''Positive'' (позитивный).
PIIX4 SERR#
- данная опция ''AMI BIOS'' позволяет системе осуществлять дополнительный контроль над сигналом SERR# (System Error). Для этого опция должна быть включена (''Enabled''). Детально об этом сигнале рассказано в разделе, посвященном PCI-шине (см. ниже). Что касается PIIX4, то это PCI ISA IDE Xcelerator чипсета i430TX (и выше).
Pipelined Function
- эта опция во включенном состоянии разрешает использование (включение) специального конвейера, или просто механизма конвейеризации, который позволяет чипсету (системному контроллеру) сигнализировать центральному процессору об инициировании следующего адресного цикла еще до того, как обработаны все данные текущего цикла. В итоге процессор начинает следующий цикл еще до завершения предыдущего. Понятно, что данная опция имеет интегрированный характер, т.к. речь идет о системной поддержке конвейеризации. Включение режима конвейеризации повышает производительность системы. Его отключение (''Disabled'') имеет смысл разве что при сбоях системы.
То же содержание заключено в опциях ''CPU Pipeline Function'', ''CPU Pipelined Function'', ''CPU Addr. Pipelining''.
Опция ''P5 Piped Address'' предназначена для системной поддержки механизма конвейеризации для процессоров AMD пятого поколения. По умолчанию опция устанавливается в ''Disabled''.
System Performance
- эта нестандартная опция ''Phoenix BIOS'' имеет два варианта использования. ''Standard'' предлагает загрузку системы с обычными установками многих параметров, нечто наподобие загрузки по умолчанию. ''Fast'' же дает возможность использовать автоматическую настройку параметров памяти, жесткого диска, других элементов системы, приводящую к максимальной производительности.
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''. Оно же может оказаться оптимальным и для производительности системы.
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), 1 - 8, ''3.5 SYSCLKs'' и ''Delay As Below'' и еще один ряд - 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-тактов в последовательные операции ввода/вывода. Устаревшая опция.
Bus Request when FIFO is
- о FIFO-буферах чуть ниже. А данная опция позволяет отслеживать степень заполненности такого буфера. Если шинный FIFO-буфер заполнен на n%, то шина вынуждена сигнализировать об этом. Сама опция несколько необычна, столь же нестандартны и ее значения: ''75% Full'', ''50% Full''.
Если не знать об изложенном, то о чем идет речь в следующей опции? Приведем ''сухую'' информацию. Опция ''Early PCI Bus Request'' имеет следующие значения: ''Disabled'', ''2 Bytes Early'', ''4 Bytes Early'', ''6 Bytes Early''. Уже не так страшно! В данной опции фиксируется остающееся свободное пространство буфера, т.е. устанавливается объем свободной памяти буфера, при достижении которой выдается ''request'' (запрос). Установка в ''Disabled'' снимает возможность посылки запроса.
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-транзакций.
Ранее любое расширение возможностей для передачи потоковой информации предназначалось прежде всего для повышения производительности трансляции видеоданных. Но потребность в механизме ''byte merging'' несколько шире. Речь может идти и о ''слиянии'' последовательных адресов и их данных в одну ''PCI-to-memory''-операцию. А в наименовании вынесенной выше опции как раз и содержится поддержка ''byte merging'' со стороны всей системы. Но особый смысл и эффект от применения данного механизма заключен в ''слиянии'' данных в одну операцию для адресов памяти, не представляющих собой непрерывного адресного пространства.
Возвращаясь к упомянутой ''PCI-to-memory''-операции, необходимо отметить значительное повышение производительности с применением ''byte merging'' для ''старых'' программных продуктов, осуществлявших циклы записи в видеопамять в виде отдельных байтов. Но такая трансляция, естественно, не поддерживается всеми PCI-графическими картами. И, тем не менее, установка опции в ''Enabled'' допустима, если при этом не происходит ухудшения видеоряда. Но проблема затрагивает не только графические карты. Речь может идти и о некоторых сетевых PCI-картах, в частности 3Com 3C905-серии от ''noname''-производителей, установленных в определенные системные платы, например ''ASUS P3V4X''.
Опция может носить множество различных наименований. ''Byte Merging'' (''Byte Merge'') предназначена для системной поддержки, ''PCI Write-byte-Merge'' и ''CPU to PCI Byte Merge'' - для поддержки буферизации в цепочке ''процессор - шина PCI''. Опция ''Word Merge'' предлагает нечто большее. Речь уже идет о слиянии в пакеты отдельных слов, но по прежнему о трансляции данных в кадровый буфер.
О системной поддержке говорит и опция ''Linear Merge''. Но при ее включении ''слиянию'' могут быть подвергнуты только последовательные, т.н. ''линейные'' адреса процессора. Это физические адреса, начиная с нулевого и заканчивая максимально возможным для данного типа процессора. Данная опция учитывает особенности процессоров Cyrix, и в свое время была введена в BIOS для поддержки, например, процессоров Cyrix M1/M2.
Приведем названия еще некоторых опций: ''PCI Byte Merging'', ''Write Merging'', ''PCI Single Write Merge'', ''Pipelining With ByteMerge'', ''Write Gathering''.
CPU Dynamic-Fast-Cycle
- опция, позволяющая ускорить доступ к ISA-шине. Когда центральный процессор инициирует новый шинный цикл, PCI-шина вынуждена исследовать ''адресность'' команд на предмет принадлежности информации одному из своих устройств. Если такая принадлежность не определена, инициируется ISA-шинный цикл. Когда опция включена (''Enabled''), доступ к шине ISA ускоряется за счет уменьшения задержек между выдачей процессором оригинальной команды и началом ISA-цикла. Процедурное ''упрощение'' осуществляется при этом на уровне ''северного'' моста чипсета. См. также выше опцию ''Fast Decode Enable''.
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/PCI Burst Mem. Write'', ''CPU to PCI Burst Write'', ''CPU-to-PCI Write Bursting'', ''PCI Burst Write Combine'', ''PCI Fast Back to Back Wr'', ''PCI Write Burst'', ''PCI Write Burs'', ''PCI Burst Write'', ''PCI Burst Write Combining'', ''CPU Burst Write'', ''Burst Write Combining'', ''Write Combining''.
И напоследок еще одна и совсем необычная опция - ''Max. Burstable Range'' (другие вариации: ''Max, Burstable Range'' и ''Max burstable Range''). Этой опцией устанавливается максимальный размер непрерывной памяти, адресуемой как единый пакет из PCI-шины, сопровождаемый при этом тем же сигналом FRAME# (pin A34). Параметр имеет два значения: ''0.5Kb'' и ''1Kb''.
В дополнение к вышеизложенному необходимо отметить следующее! ''Ассемблирование'' чипсетом пакетов в направлении к 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''. Столь необычные значения (''разрешить''-''не разрешить'') по сути аналогичны блокировке режима пакетирования или его включению.
CPU-to-PCI Write Buffer
- во включенном состоянии опции процессор сможет записывать по 4 слова за один такт в буфер записи шины PCI еще до завершения цикла PCI-шины, т.е. циклы записи в PCI-шину буферизируются, чтобы компенсировать разницу в скоростных характеристиках между CPU и PCI-шиной. Буферизированные данные будут записаны в PCI-шину, когда стартует новый цикл чтения шины. Иногда можно встретить информацию, что такой внутренний буфер чипсета построен на микросхеме 82C586B.
При установке параметра в ''Disabled'' циклы записи не буферизируются, и процессор будет находиться в ожидании после каждого цикла записи и до тех пор, пока шина PCI не сообщит процессору о своей готовности к приему данных.
Опция может называться также просто ''CPU to PCI Buffer''. В этом случае речь идет уже об интегрированной функции с теми же параметрами: включен буфер/отключен буфер.
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 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/PCI Post Write Delay''.
В завершение обзора опция ''PPro to PCI Write Posting''. Ничего особенного в использовании процессора Pentium Pro нет, только желательно данную опцию запретить, если речь идет о серверной системе.
  ''Оптимизация функционирования PCI-интерфейса и ISA-шины''
Delayed Transaction
- (задержанная транзакция на PCI). Присутствие этого параметра в BIOS означает, что на материнской плате (в составе чипсета) есть встроенный 32-битный буфер с задержанной (иногда говорят, отложенной) записью для поддержки удлиненного цикла обмена на PCI-шине. Если этот параметр разрешен, то доступ к шине PCI разрешен во время доступа к более медленным устройствам на шине ISA. Это означает, что при обслуживании устройств на шине ISA или периферии система не будет прерывать PCI-транзакций, временно буферизируя данные. Это существенно увеличивает производительность системы, так как цикл такого обращения на ISA-шине занимает 50-60 тактов шины PCI. Если компьютер укомплектован системной платой, не поддерживающей спецификацию PCI 2.1, этот параметр следует запретить, поскольку данная опция включает режим совместимости со спецификацией PCI версии 2.1 с одновременным включением в ''северном'' мосте упомянутого выше специального буфера. Отключение опции может потребоваться и при использовании какой-нибудь старой PCI-карты, не поддерживающей спецификации PCI 2.1. Может принимать значения:
''Enabled'' - разрешено,
''Disabled'' - запрещено.
Опция может называться также ''PCI Delayed Transaction'', ''PCI Delay Transaction'', ''Delayed Transaction Optimization'' или ''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-шина и вся возможная периферия. Что же мы видим? Привычное место PCI-шины заняла ускоренная шина с 66 МГц, сама же PCI-шина заняла место ''ушедшей в прошлое'' ISA-шины. Теперь уже для Accelerated Hub, ICH и периферийных каналов надо решать вопросы не только совместной работы, но и производительной работы. Тем более, что такие устройства как клавиатура, мышь, порты, все дисководы подсоединяются к интегрированному контроллеру через высокопроизводительную кэш-память. Остается установить ''Enabled''.
DRAM-to-PCI 24 DW FIFO
- по аналогии смотри вышепредставленные опции. Хотя стоит подчеркнуть, что речь идет о буфере емкостью в 24 двойных слова.
DRAM to PCI RSLP
- когда опция включена (''Enabled''), чипсет допускает режим предвыборки на двух линиях данных от системной памяти к PCI-шине.
Extra AT Cycle WS
- установка опции в ''Enabled'' разрешала вставить дополнительный цикл ожидания в стандартный цикл AT-шины. Это могло понадобиться для улучшения распознавания ответа (реакции) несколько устаревшей периферии. Осталось отметить, что и сама опция уже достаточно устарела.
По сути аналогична данной другая опция - ''ISA Command Delay'', определяющая задержку перед передачей данных для ISA-шины. Эта старенькая опция позволяла выбрать стандартный режим работы для ISA-устройств (''Normal Delay'') и со вставкой дополнительного такта ожидания (''Extra Delay'').
Fast AT Cycle
- (быстpый AT-цикл). Пpи установке опции в ''Enabled'' может быть ускоpена пеpедача данных для ISA-карт, особенно пpи pаботе с видеопамятью. Ускорение, а отсюда и повышение производительности, связано с укорочением циклов на системной шине. Понятно, что опция эта также устарела.
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 Recovery Time
- (время восстановления для 8/16-битных операций ввода/вывода). Данная опция - ''прародительница'' опций, изложенных выше. Ее время ушло с появлением EIDE-интерфейса и ''привязкой'' последнего к PCI-интерфейсу. Поэтому естественным стало и последующее разделение на две самостоятельных опции. Но и для ''нашей'' опции время восстановления означало число тактов ожидания, вставляемых между двумя последовательными (''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''.
L2 to PCI Read Buffer
- чипсет содержит свой собственный внутренний буфер для циклов записи в PCI-шину со стороны внешнего кэша. Когда этот буфер включен (''Enabled''), циклы записи из кэш-памяти второго уровня в PCI-шину предварительно буферизируются. При этом каждое устройство на PCI-шине ''получит'' свои собственные циклы полностью укомплектованными и без состояния ожидания.
Passive Release
- (пассивное разделение). Эта опция включает/выключает механизм параллельной работы шин ISA и PCI. Если этот параметр разрешен (''Enabled''), то доступ процессора к шине PCI позволен во время ''пассивного разделения'' или, как говорят иногда, ее ''освобождения''. Проще говоря, включение данного режима позволяет шине PCI продолжать работу даже тогда, когда происходит передача данных от ISA-устройств, которые в обычном режиме могут тормозить работу более скоростной PCI-шины. Арбитр чипсета как бы выравнивает работу двух шин с учетом задержек ISA-шины. Технологически ''пассивное разделение'' осуществляется за счет применения встроенного в чипсет 32-битного буфера ''отложенной'' записи, где буферируются при необходимости PCI-циклы записи. Дальнейшая запись в PCI-шину происходит при ее ''освобождении'' от ISA-циклов, транслируемых через PCI-интерфейс.
Эта опция появилась в свое время в ''BIOS Setup'' одновременно со способностью арбитра чипсетов Intel Triton VX/HX отбирать шину у ''master''-устройств при отсутствии в течение какого-то времени запросов на передачу с их стороны. Рассматривая шире возможности арбитража применительно к данной опции, получаем следующее: - арбитр может передать другому ''master''-устройству доступ к локальной памяти, - доступ к PCI-шине в качестве ''master''-устройства может получить также карта расширения, а не центральный процессор, - арбитр получает возможность регулировать задержки (состояния ожидания) как для ''ISA bus master''-, так и для ''PCI bus master''-устройств. Необходимость запрещения данного параметра может возникнуть при использовании либо ''проблемных'' ISA-карт, либо плат ISA, активно использующих каналы DMA (звуковые карты, устройства ''Arvid'', предназначенные для хранения информации). Запрещение также уместно при отсутствии 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-шины. Возможна ситуация, когда при функционировании буфера произошел сбой. Это не связано никак с ''переполнением'' буфера, сбой мог произойти в процессе записи данных. При этом должна быть повторена процедура записи данных или передано сообщение назад для арбитража. Если опция включена, то будет повторена некоторая транзакция, и последующая запись в шину закончится успешно. Если установлено ''Disabled'', буфер принудительно сбросит свое содержание, при этом состояние регистров транзакции будет нарушено. Центральный процессор вынужден будет повторить снова цикл записи полностью. Рекомендуется включить данную опцию. Запрещение же опции может понадобиться при наличии в системе нескольких ''медленных'' PCI-устройств. В противном случае количество повторов может заметно снизить производительность системы.
PCI Pipeline
- данная функция BIOS объединяет PCI- или CPU-конвейеризации с ''byte merging''. ''Байт слияние'' используется для повышения производительности графических карт. И представленная функция контролирует механизм ''byte-merge'' для циклов записи во frame-буфер. Когда опция включена (''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-шина сможет продолжать процесс записи в то время, как CPU занят другой задачей. Когда установлено ''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 FIFO Cleaning
- см. аналогичное выше.
PCI-to-DRAM Pipeline
- (конвейеризация передачи данных от PCI-шины к основной памяти). Установка опции в ''Enabled'' позволяет включить конвейер записи. В этом случае буферы чипсета хранят данные, записанные из 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
- опция включения режима ''предвыборки'', значительно ускоряющего операции работы с памятью. Подробнее об этом режиме читай в разделе ''CPU''.
Опция может называться ''PCI-to-DRAM Read Prefetch''.
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''.
Write Post During I/O Bridge Access
- в таком виде данная опция уже не встречается, хотя и затрагивает весьма ответственный момент в работе системы, а именно, совместную работу PCI-шины и устройств ввода/вывода, ''привязанных'' к ''южному'' мосту. Включение опции (''Enabled'') позволяет осуществлять предварительную буферизацию циклов записи из PCI-шины в моменты обращения центрального процессора к периферийным устройствам. Включение опции, хотя и ''притормаживает'' работу PCI-устройств, тем не менее повышает общую производительность системы.
Опция может называться ''Write Posting During I/O'', а также иметь следующие названия: ''I/O Cycle Post-Write'', ''PCI I/O Cycle Post Write'', ''Posted I/O Write''.
Значительный по объему и дополняющий все вышеизложенное (и нижеизложенное тоже) материал расположен в разделах, посвященных PCI-шине, арбитражу, а также ISA-шине.

Оптимизация работы основной и видеопамяти
CPU-to-DRAM 8 QW FIFO
- в опции речь идет об использовании буфера объемом в 32 байта. Остальное по аналогии см. выше.
CPU-to-DRAM Buffer Timing
- выше в опции ''PCI-to-DRAM Buffer Timing'' мы вкратце затронули временные характеристики обмена с памятью. Естественно, что такой обмен с памятью у центрального процессора происходит быстрее, пусть даже и с предварительной буферизацией. Поэтому и время, затрачиваемое на запись одного слова, на несколько системных тактов меньше: ''x-2-2-2'', ''x-1-1-1''. Последнее значение предпочтительнее. Подробнее временные характеристики обмена будут рассмотрены ниже.
CPU-to-DRAM Byte Merging
- см. выше.
CPU-to-DRAM FIFO Cleaning
- см. аналогичное выше.
CPU-to-DRAM Posting
- опция включения/отключения предварительного буфера с отложенной записью. Когда буферизация включена, центральный процессор может инициировать новый цикл записи в память еще до окончания предыдущего цикла. Не все чипсеты содержали в себе такой специализированный буфер, ''похвастаться'' наличием такого буфера мог разве что чипсет 440LX. Отсюда и ограниченность применения этой опции.
Опция может называться ''DRAM Posted Write'' или ''DRAM Posted Write Buffer''.
Gate A20 Option
- (выбор способа включения вентиля линии A20). Параметр позволяет управлять способом включения адресной линии A20, которая отвечает за доступ к памяти, физические адреса которой превышают 1 Мбайт. Стоит напомнить, что 20-разрядная адресная шина (A0 - A19) позволяла адресоваться в пределах первого мегабайта памяти. Если быть более точным, то эта линия отвечает за доступ к первым 64 килобайтам верхней памяти, известным как область HMA (High Memory Area). Доступ к HMA требует управления специальным аппаратным узлом, работа которого может быть блокирована или активизирована. При установке опции ''Gate A20 Option'' в состояние ''Fast'' работа линии будет контролироваться специальным набором микросхем на системной плате. Если линия А20 деблокирована, то HMA-область доступна для любой программы, функционирующей в реальном режиме работы процессора. Обычно эта область памяти отдается под MS-DOS, а для деблокирования линии используется драйвер HIMEM.SYS.
Может принимать значения:
''Fast'' - управление осуществляется чипсетом, что повышает скорость работы,
''Normal'' - управление осуществляется через контроллер клавиатуры.
В некоторых версиях BIOS опция может называться ''Fast Gate A20 Option'', а параметрами будут стандартные ''Enabled''/ ''Disabled''. Иногда в старых версиях BIOS можно встретить опцию с почти романтическим названием ''LOWA20# Select''. А речь идет о том, какое устройство управляет низким уровнем сигнала на линии A20: чипсет или контроллер клавиатуры.
Достаточно редко, но все же можно встретить в литературе в отношении управления линии A20 такой термин, как ''эмуляция''. В данном случае имеется ввиду, что стандартный способ управления ''вентилем'' осуществляется через контроллер клавиатуры. А чипсет заменяет, подменяет это управление, ''эмулирует'' его (дополнительно см. ниже). И следующая опция очень хорошо показывает это. ''Keyboard Emulation'' имеет два значения. ''Enabled'' соответствует ''Fast'', а ''Disabled'' - ''Normal''. Следующая опция ''Gate A20 Emulation'' (или ''Fast Gate A20 Emulation'') уже не должна вызывать вопросов. Правда, опций с такими названиями, пожалуй, уже не встретишь. Иногда в литературе можно найти трактовку опции ''Turbo Switch Function'' как аналога ''Fast Gate A20 Option'', подразумевая функцию переключения, но это не совсем корректно.
Пользователям, умеющим работать с командной строкой, можно порекомендовать внешнюю команду DOS MEM /A, показывающую стандартную информацию о памяти и дополнительную информацию о сегменте HMA. Команда работает и в среде ''Windows 9x''.
Ну и наконец, опция ''Cyrix A20M Pin'', применявшаяся во времена 386-х процессоров. Процессоры Cyrix уже тогда были ''особенными''. Речь идет о дополнительной поддержке со стороны BIOS. Ведь в отличие от процессоров Intel, 386-е процессоры Cyrix имели собственный кэш. Такие процессоры могли иметь проблемы с обновленными комплектующими, поддерживающими кэш-память. Вероятны были и другие системные конфликты. Чтобы обеспечить управление линии A20 контроллером клавиатуры, BIOS через включение опции (''Enabled'') сообщал центральному процессору о состоянии вентиля. И еще о кэше. Установка ''BIOS Setup'' позволяла процессору через внутренний кэш кэшировать первые 64 КБ каждого (!) мегабайта памяти в реальном режиме (вентиль всегда был открыт в защищенном режиме работы процессора), и это было достаточно эффективным.

Логически память разбивается на сегменты размером по 64 КБ, что соответствует 2^16. В совсем ''стареньких'' машинах с 16-разрядными процессорами физически адрес не мог перейти ограничение в 64 КБ. 20-разрядная адресация, т.е. использование 20-разрядной адресной шины, достигалась благодаря тому, что при формировании 20-разрядного физического адреса использовалось суммирование со смещением в 4 разряда двух адресов: адреса сегмента и исполнительного адреса.
При вычислении физических адресов в системах с 8086/88-ми процессорами могла иметь место вполне стандартная ситуация, а именно адресное переполнение, которое при наличии 20-разрядной шины адреса приводило к сворачиванию адресного пространства в т.н. кольцо. А это и происходило как раз в процессе упомянутого суммирования.
В процессорах следующего поколения (в 286-х был преодолен предел в 1 МБ адресного пространства) на его выходе A20 устанавливалось значение ''1'', что соответствовало адресу из второго мегабайта памяти. При разработке процессоров и чипсетов машин класса IBM PC/AT) в схему чипсета был введен специальный вентиль Gate A20. В то время его появление в наборе логики было прежде всего связано с обеспечением полной программной совместимости с предыдущим классом машин. Вентиль принудительно устанавливал нулевое значение на линии A20 адресной шины.
На первых машинах, где был реализован контроль и управление линией A20, управление последней осуществлялось через программно управляемый бит чипа контроллера клавиатуры 8042 (или 8742) (см. дополнительно раздел ''Keyboard''). Позднее эта функция была возложена и на чипсет, что значительно ускорило скоростные характеристики (''Gate A20 Fast Control'') системы.
В итоге это означало, что появление 32-разрядных процессоров не вызвало заметных изменений по данной теме, поскольку специальный вход процессоров (A20M - A20 Mask) остался. Упомянутый вход современного процессора есть не что иное, как маскирование бита A20 физического адреса для эмуляции адресного пространства 8086 в реальном режиме работы процессора. А это связано и с тем, адресная линия A20 используется также для переключения из реального режима в защищенный, что сразу нашло применение в многозадачных и сетевых средах. Иногда можно встретить в описаниях и такие пояснения. Что существует категория пользователей, использующих старое программное обеспечение. Для таких и предназначена эта опция. Это означает, что наличие такой опции связано с совместимостью со старым ПО. Правда, фразы о категориях пользователей встречаются все реже и реже, но опция по прежнему входит в ''стандартный'' набор ''BIOS Setup''. Необходимо также отметить, что некоторые старые драйверы MS-DOS, например VDISK.SYS, могут блокировать линию А20, входя в конфликт с драйвером HIMEM.SYS (это опять таки из далекого прошлого).
Уточним вопрос об ''эмуляции'' и переключении процессора. Обычным образом программы для A20-операций используют обращения через BIOS или порты 60/64h, предназначенные для контроллера клавиатуры. Чипсет перехватывает эти обращения, тем самым эмулируя контроллер клавиатуры и разрешая дальнейшую генерацию соответствующих сигналов. Последовательность при этом следующая. В порт 64h записывается значение D1h, а затем в порт 60h - 02h. Если же в порт 64h затем записать значение FEh, то можно произвести ''теплый'' рестарт процессора. В обычном режиме работы процессора контроль линии A20, как ''Fast'', осуществляется через порт 92h, который программы используют для BIOS-вызовов. Возможна ситуация, когда контроль одновременно осуществляется и контроллером клавиатуры, и чипсетом. В этом случае линия A20 контроллируется через порты 60/64h.

Graphic Posted Write Buff
- чипсет может поддерживать собственный внутренний буфер для циклов записи графической памяти. Когда этот буфер включен, т.е. опция установлена в ''Enabled'', циклы записи процессора в графическую память попадают в буфер отложенной записи. При этом центральный процессор может начать новый цикл передачи данных еще до того, как графическая память закончит предыдущий цикл. При установке параметра в ''Disabled'' буфер не будет использоваться, и процессор будет находиться в ожидании в течение каждого цикла записи.
Turn-Around Insertion
- (вставка между циклами). Если этот параметр разрешен (''Enabled''), то между двумя последовательными (back-to-back) циклами обращения к памяти чипсет вставляет один дополнительный такт на MD-линиях (Memory Data). Это происходит после установки сигнала MWE# (''Memory Write Enable'') и перед включением буферирования на линиях данных. Если параметр запрещен (''Disabled''), чипсет контролирует DRAM-циклы обычным методом, т.е. аналогично как в чипсетах 82430FX, первых наборах с поддержкой EDO-памяти. Вставка дополнительного такта конечно уменьшает быстродействие, но увеличивает достоверность при операциях чтения/записи.
Опция ''SDRAM Write-to-Read Turnaround'' явным образом предлагает установить продолжительность такой вставки (в системных тактах): 1T, 2T.
Аналогичная опция появилась несколько ранее и для той же EDO-памяти. Она называлась ''EDO MD Timing'', а значения параметра уже тогда были ''1T'' и ''2T''.
Несколько слов о Back-to-Back. За включение режима ''Back-to-Back'' (''спина к спине'') отвечают, как правило, конфигурационные регистры PCI Command и Host-контроллера. Режим ''Back-to-Back'' позволяет быстро выполнять последовательности циклов на PCI-шине с минимальной межцикловой паузой. Интерфейс используется для работы процессора в качестве управляющего шиной устройства. При включенном режиме последовательные шинные операции чтения/записи будут специальным образом преобразовываться (иногда говорят - ''интерпретироваться'') как во время высокопроизводительного пакетного режима процессора. Проще говоря, шина PCI будет ''интерпретировать'' циклы чтения процессора в скоростные PCI-циклы пакетной (burst) памяти. Поскольку в качестве задатчика шины (''master''-устройства) могут работать и другие системные устройства, то применение интерфейса ''back-to-back'' носит более широкий характер.

VGA 128k Range Attribute
- во включенном состоянии (''Enabled'') к адресам VGA-памяти (A0000H-BFFFFH) чипсетом могут быть применены свойства, подобные функциям ''CPU-TO-PCI Byte Merge'' или ''CPU-TO-PCI Prefetch'', т.е. стандартным режимам буферизации записи от CPU в PCI-интерфейс. Это повышает быстродействие системы, в противном случае используется стандартный VGA-интерфейс.
Этот же смысл характерен для множества функций с непохожими наименованиями: ''VGA Performance Mode'', ''Turbo VGA (0 WS at A/B)'', ''VGA Frame Buffer'', хотя в некоторых случаях ''оперативный'' диапазон сужается до первых 64 кБ (A0000-B0000).
Опция ''ISA VGA Write Combining'' в общем-то аналогична вышеприведенным, но она выделена отдельно. С одной стороны, речь идет о диапазоне B0000h - BFFFFh, верхних 64 КБ привычного ''VGA frame buffer'', а с другой, в наименование опции вынесен режим работы с кэш-памятью - WC (write combine - объединенная запись), позволяющий значительно ускорить доступ к буферу видеопамяти и вывод данных на видеокарту. Подробнее об этом в следующих разделах.
Из ''карты'' памяти первого мегабайта системного ОЗУ, что жестко ''привязано'' к архитектуре IBM PC-совместимых компьютеров, хорошо известно, что адресная область A0000-C7FFF традиционно принадлежит видеопамяти графического адаптера и видео BIOS системы. Собственно под видео BIOS (или, как иногда говорят, ПЗУ видеоадаптера) выделяется 32 кБ памяти в области C0000- C7FFF. Это 768-й - 799-й килобайты памяти. Эта адресная область, в зависимости от установок ''BIOS Setup'', может и не использоваться.
Область в 128 кБ (A0000-BFFFF, или 640-й - 767-й килобайты) отведена под видеопамять графической карты расширения. В ''древние'' времена этого объема хватило бы на размещение в памяти одного графического кадра, пусть и с разрешением 320х200. По аналогии с 64-мя килобайтами верхней памяти область видеопамяти в 128 кБ стала тем ''окошком'' (или фрэйм-буфером), через которое стал возможным доступ ко всей адресуемой памяти. В свое время использование фрэйм-буферизации активно использовалось такими играми, как ''DOOM''.
Для справки! Frame Buffer (буфер кадра) - область памяти видеосистемы, в которой временно хранятся данные, необходимые для отображения одного кадра (в простейшем случае).

Специальные команды чипсета

Drive NA before BRDY - когда выбрано ''Enabled'', сигнал NA (читай ниже) устанавливается на один такт раньше последнего сигнала BRDY# в каждом цикле чтения/записи, таким образом, вызывая генерацию процессором сигнала ADS# в следующем цикле после BRDY#, устраняя один потерянный цикл. С помощью сигнала BRDY# (Bus Ready) чипсет (точнее, т.н. ''северный мост'') сообщает процессору о том, что данные доступны для чтения или есть готовность для приема данных для их записи.

Extended CPU-PIIX4 PHLDA# - при установке значения ''Enabled'' системный контроллер, входящий в состав ''северного'' моста, увеличивает на один такт (в тактах шины PCI) длительность сигнала PHLDA# и оставляет его активным в двух случаях:

  • в течение адресной фазы в начале PCI-цикла чтения/записи,

  • сопровождая адресную фазу ''LOCK''-цикла центрального процессора.

 

При включенном значении опции функции ''Passive Release'' и ''Delayed Transaction'' должны быть также включены.
Сигнал PHLDA# (PCI Hold Acknowledge) применяется, в частности, для управления работой ''арбитра'' PCI-шины. Тема арбитража будет рассмотрена отдельно.

IBC DEVSEL# Decoding - (декодирование адреса устройства). Сигнал DEVSEL (Device Select) означает ''выбор устройства''. Эта опция позволяет установить тип декодирования, используемый IBC (ISA Bridge Controller) для определения выбранного устройства. Чем дольше длится цикл декодирования, тем выше шанс корректного декодирования команд. Для отбора представлены следующие значения: ''Fast'', ''Medium'' и ''Slow'' (по умолчанию).

LOCK Function - поскольку в данной опции идет речь об использовании сигнала LOCK#, то отключение опции (''Disabled'') приведет к отказу от применения режима ''bus-master'' в системе.

NA Delay - данная опция позволяет регулировать задержку (в системных тактах) перед выдачей сигнала NA# (Next Address). Меньшее значение повышает скоростные характеристики системы, но... Возможные значения опции: ''0T'', ''1T'', ''2T''.

NA# Enable - опция включения/отключения сигнала NA#. Установив ''Enabled'', мы включаем механизм конвейеризации, при котором чипсет сигнализирует центральному процессору о выдаче нового адреса памяти еще до того, как все данные, переданные в текущем цикле, будут обработаны. Следующий адрес (вместе со стробом EADS#) появится через два такта после NA#. Естественно, что включение такого режима повышает производительность системы.

То же содержание заключено в опциях ''NA# Pin Assertion'' и ''Chipset NA# Asserted''.

NA# On Single Write Cycle - возвращаясь к предыдущей опции, необходимо отметить, что центральный процессор может держать на внешней шине до нескольких незавершенных циклов. Данная опция позволяет ''избавиться'' от незавершенных циклов, вызванных неоптимальной частотой выдачи адресной информации и сбоями в конвейере. Включение данной опции фактически ведет к отказу от конвейеризации, что действительно может потребоваться при сбоях в системе.

Negate LOCK# - (отрицание сигнала LOCK#). Напомним, что сигнал LOCK# (Bus Lock) - это сигнал монополизации управления шиной, сигнал блокировки доступа к шине других абонентов. При установке опции в ''Enabled'' ранее некэшируемые ''locked'' циклы будут исполняться как ''незакрытые'' циклы, и поэтому они могут быть кэшированы. Повышение производительности очевидно.

Single ALE Enable - (pазpешение одиночного сигнала ALE). Немножко информации. Пин B28 на шине ISA - это сигнал BALE (Bus Adress Latch Enable - разрешение защелкивания адреса). Это сигнал стробирования адресных разрядов. Может использоваться устройствами ввода/вывода для заблаговременной подготовки к предстоящему обмену информацией. Эта линия становится активной всякий pаз пpи появлении на адресной шине информации. Можно было встретить даже такую информацию об этом сигнале: ''...показывает, что действительный адрес отложен (posted) на шине''. Стоит добавить, что этот сигнал использовался еще во времена 808x-х процессоров. По некоторой информации сигнал этот мог использоваться DMA-контроллерами для сообщений центральному процессору о передаче данных. Его применение было связано с программированием устройств, поэтому использование сигнала было крайне редким.
Устанавливая ''Enabled'', активизируем одиночный сигнал ALE вместо множественных сигналов-стробов во время ISA-циклов. В какой-то степени выбор параметра был привязан и к скорости системной шины, т.е. пропускной способности системы. Поэтому установка в ''Enabled'' могла привести к замедлению быстpодействия видеоканала. Эта функция всегда оставалась достаточно ''темной'' функцией ''BIOS Setup''. ''Disabled'' рекомендовано.
Опция может называться также ''ALE During Bus Conversion'' с возможными вариантами выбора: ''Single'' (одиночный) или ''Multiple'' (множественный). Естественно, что при потоковой работе ISA-шины (т.е. множественных циклов чтения/записи) предпочтительнее была бы установка опции в ''Multiple''. Но какой правильный выбор должен был сделать пользователь, всегда оставалось загадкой.
Некоторые чипсеты имели поддержку усовершенствованного режима, при котором выдача множественных сигналов ALE производилась во время одиночных циклов шины. Функция BIOS при этом называлась ''Extended ALE'', а параметрами служили ''Disabled'' и ''Enabled''. Встречая данную опцию в более современных системах, естественно при наличии ISA-шины, необходимо понимать, что присутствие оной связано только с совместимостью со спецификациями AT-шины.
В наиболее ''древних'' версиях BIOS весь смысл сказанного выше был заключен в опции под названием ''Quick Mode''.
Stop CPU when PCI Flush - при установке опции в ''Enabled'' центральный процессор, получив по своей входной линии (FLUSH) активный сигнал низкого уровня FLUSH#, вынужден будет приостановиться до тех пор, пока PCI-шина не закончит передачу данных. Запрещение опции не позволит процессору входить в режим ожидания, что естественно более приемлемо для системы. ''Disabled'' устанавливается и по умолчанию.
Опция может называться ''Stop CPU When Flush Assert''.

BIOS

BIOS - настройки чипсета

Ошибки BIOS

Настройки BIOS для старых компьютеров

Важное примечание: автор - категорический противник разгона (overclocking)!

Покупка компьютера - советы бывалого