КомпьютерМастер КомпьютерМастер
Программы

  Услуги   Цены   Гарантии Вызов мастера Всё о компьютерах   Полезные ссылки

Структура и опции BIOS


1. Boot & POST

При включении ПК автоматически запускается находящаяся в BIOS программа загрузки BOOT-ROUTINE. Эта программа вызывает подпрограмму самопроверки POST (Power-On Self Test), проверяющую процессор, микросхемы ROM, оперативную память, вспомогательные элементы материнской платы, жесткий диск и другую основную периферию. Далее программа загрузки разыскивает другие BIOS-чипы, которые могут быть встроены, к примеру, в платы расширения. SCSI-контроллеры при этом будут запускать свои собственные тестовые программы. После этого BIOS берется уже конкретно за платы расширения и расстановку и проверку распределения ресурсов (IRQ, DMA, I/O). Далее с загрузочных секторов жесткого диска в дело вступает начальный загрузчик, BOOTSTRAP LOADER, - программа, знающая файловую структуру носителя данных. Начальный загрузчик вызывает загрузку загрузочных программ операционной системы. Этот стандартный алгоритм значительно дополнился и модернизировался с внедрением PnP-технологии и новой PCI-шины, а позже с появлением операционных систем, разработанных с учетом внедрения новейших технологий. Но более подробно об этом будет сказано ниже.

(В зависимости от версии BIOS) LOAD SETUP DEFAULTS, LOAD FAIL-SAFE, ORIGINAL или AUTO CONFIGURATION WITH POWER-ON DEFAULTS - включение этих "безопасных" режимов имеет смысл только тогда, когда система либо вообще не запускается, либо при определенных конфигурациях зависает, сбоит, т.п. При включении таких режимов BIOS пеpеводит систему в самое "консеpвативное" состояние, отключит внутреннюю и внешнюю кэш-память, переведет видео-кэш в значение "Disabled", задаст максимально возможные режимы ожидания (Waitstates) и т.п. В результате такого выбора увеличивается вероятность включения системы и ее дальнейшей настройки.

Above 1 MB Memory Test

- при установке опции в "Enabled" в процессе тестирования ОЗУ проверяется область памяти свыше 1 Мб (область памяти XMS - Extended Memory Specification). На это расходуется дополнительное время в процессе загрузки, тем более такой тест является излишним, так как драйвер-менеджер памяти HIMEM.SYS сам осуществляет проверку оперативной памяти и предпочтительнее использовать именно этот тест, так как он работает в реальном рабочем окружении. При запрете опции расширенная память не тестируется, а только инициализируется.

BIOS Update

- (обновление BIOS). Процессоры семейства P6 (Pentium Pro, Pentium II, Celeron, Xeon), а ныне и процессоры следующих поколений имеют особый механизм, называемый "программируемым микрокодом", который позволяет исправить некоторые виды ошибок, допущенных при разработке и/или изготовлении процессоров, за счет изменения микрокода. Обновления микрокода хранятся в BIOS и загружаются в процессор в процессе выполнения инструкций BIOS. Именно поэтому BIOS для материнских плат с указанными выше процессорами необходимо регулярно обновлять. Может принимать значения: "Enabled" - разрешено, "Disabled" - запрещено. В "AMI BIOS" была встречена аналогичная опция под названием "CPU MicroCode Updation". Опция может называться "Pentium II Microcode" или "Microcode Update".

В процессоры 6-го поколения, начиная с первого Pentium Pro, было встроено новое средство, которое позволяет исправлять многие ошибки процессоров, изменяя микропрограмму в самом процессоре. Это средство называется "перепрограммируемой микропрограммой". Модификации микропрограмм постоянно находятся в системной ROM BIOS (их объем составляет до двух килобайт) и загружаются в процессор системой BIOS во время выполнения POST-теста. Чтобы можно было установить новую модификацию микропрограммы, BIOS системной платы должен содержать подпрограммы поддержки модификации микропрограмм, т.е. API (Application Program Interface - программный интерфейс приложений) обновления микрокода. Фактически все BIOS плат для Pentium Pro и Pentium II такие подпрограммы имеют. С помощью программы модификации процессора ("Processor Update Utility") фирмы "Intel", поставляемой обычно с т.н. "боксированными" процессорами, можно также определить, присутствует ли необходимый код в BIOS, сравнить номер версии процессора с номером версии микропрограммы модификации, загруженной в текущий момент, или установить новую микропрограмму модификации, если это необходимо. Указанная программа определяет используемый процессор во время выполнения POST (с помощью инструкции CPUID) и ищет соответствующее ему обновление в своей базе. Если найдена более новая версия микрокода, утилита локально перепрошивает блок данных в BIOS, не затрагивая остальные участки. Естественно, что для выполнения перепрошивки предварительно нужно разрешить перезапись флэш-памяти соответствующей перемычкой или опцией в "BIOS Setup" (см. отдельно). Несколько слов о термине "Stepping" (см. также "CPUID Instruction"). Чем выше Stepping процессора, тем меньше процессор содержит ошибок. Первый символ Stepping - это имя модели (k - ядро Katmai, c - Coppermine), второй символ указывает на серьезные изменения микрокода процессора (для процессоров Pentium III это буквы A, B или С), а последний - на незначительные изменения.

Boot From LAN First

- при установке опции в "Enabled" BIOS предпримет попытку первоначальной загрузки из сетевого загрузочного модуля, прежде чем пытаться загрузиться с локального носителя. Понятно, что данная опция по сути дает разрешение на использование удаленной загрузки.

Boot Sequence

- (последовательность начальной загpузки системы). Определяется последовательность опроса различных накопителей для загрузки операционной системы, можно сказать, поиска загрузочных файлов на устройствах в последовательности, указанной пользователем. Понятно, что, если в качестве первичного загрузочного устройства установлен жесткий диск, и обычно система с него и загружается, то выбор следующих носителей не имеет никакого значения. Все эти устройства обозначаются либо буквами для физических жестких дисков и обычных дисководов, либо названием устройства, например, "CDROM" для накопителей CD-ROM. Поддерживаются устройства LS-120, Iomega ZIP, ATAPI CD-ROM, IDE- и SCSI-диски. Может принимать значения:

"A,C" - такой выбор оправдан только для случая загрузки с дискеты и встречался в старых моделях ПК, "A,C,SCSI", "A,SCSI,C", "C only", "C,A", "C,A,SCSI", "C,CDROM,A", "CDROM,C,A", "D,A,SCSI" (предназначено при использовании минимум двух IDE-жестких дисков), "E,A,SCSI" (аналогично для 3-х дисков), "F,A,SCSI" (аналогично для 4-х дисков), "LS/ZIP,C", "SCSI,A,C", "SCSI,C,A".

Теперь заглянем в не такое уж и далекое прошлое. Очень непривычный вариант загрузки в свое время предлагал "Phoenix BIOS" с опцией "System Load". Опция имела два параметра: "Standard" - ОС могла быть загружена (по умолчанию) либо с флоппика, либо с жесткого диска, "Diskette Lock" - только с жесткого диска. Понятно, что это было давненько. Один из ветеранов - опция "Boot devices". В ней явным образом указывалась не последовательность загрузочных устройств, а ...дисковод-загрузчик. Ну а в более современных версиях BIOS опция "Boot Sequence" трансформировалась в несколько самостоятельных опций, естественно с большей возможностью отбора и большей гибкостью. Это выглядит следующим образом, например, у "AMI BIOS":

"First Boot Device" "Second Boot Device" "Third Boot Device" "Boot Other Device" (или "Fourh Boot Device")

Параметры могут принимать следующие значения: "Floppy", "HDD-0", "HDD-1", "HDD-2", "HDD-3", "LAN" (или "Network"), "SCSI", "LS/ZIP", "CD-ROM", "Enable", "Disabled". Конечно, не все перечисленные устройства могут быть первичными загрузочными, перечислен весь перечень устройств для всех четырех опций. А один из вариантов "AMI BIOS" содержит те же опции, но со значениями "Floppy", "Floptical" (RS 120), "CD ROM", "SCSI Device", "Network", "IDE0", "IDE1", "IDE2", а опция "Try Other Boot Devices" через значение "Yes" дает возможность не дополнительного выбора варианта загрузки, а по сути, определяет, поддерживает ли BIOS загрузку системы со второго или третьего загрузочного устройства, если система не была найдена на первом. Более современный вариант "AMI BIOS" выглядит совсем необычно: "Disabled", "1st IDE-HDD", "2nd IDE-HDD", "3rd IDE-HDD", "4th IDE-HDD", "Floppy", "ARMD-FDD", "ARMD-HDD", "ATAPI CDROM", "SCSI" (только в качестве первого или второго загрузочного устройства), "NETWORK" и "I2O" (Intelligent Input Output) (последние два параметра только в качестве первого загрузочного устройства). Об ARMD (ATAPI Removable Media Disks) смотри подробнее в разделе "Peripherals & Resources", а также чуть ниже в опции "Support Removable Disks under BIOS as Fixed Disks".

Необходимо также отметить, что не всегда рекомендуется значение "Network" указывать в качестве первого загрузочного устройства. При этом могут возникнуть проблемы "арбитража" между сетевым адаптером и другим устройством в процессе загрузки системы.

Другое возможное название опции - "System Boot Sequence".

Необходимо еще отметить следующее. Все перечисленные варианты опций не охватывают всех возможных нюансов загрузки, предлагаемых различными версиями BIOS. Поэтому пользователь должен быть всегда готов к встрече с нестандартной ситуацией. Подтверждение тому - BIOS материнских плат от "ABIT" (BE6 и BP6), которые содержали дополнительный (extra) IDE-контроллер. Тогда в "BIOS Setup" указание на SCSI заменяется на "SCSI/EXT". Но самое главное это то, что система может быть загружена с IDE-диска на третьем или четвертом каналах IDE-интерфейса, ну и естественно со SCSI-диска и первых двух IDE-каналов. Правда, ситуация "усложняется" тем, что пользователю придется дополнительно повозиться с опцией

x Boot Sequence EXT Means

- (последовательность загрузки с дополнительных устройств) со значениями "IDE", "SCSI". Для того, чтобы грузиться с 3-го или 4-го IDE-каналов, надо в основной опции выбрать расширение "SCSI/EXT", а затем в дополнительной - значение "IDE".

В дополнение ко всему вышесказанному! Правда, это касается некоторых старых системных плат. Если система не может найти загрузочной области на "первом" устройстве, хотя она присутствует на последующих (или следующем), система может прекратить загрузку с выводом сообщения "No Operating System Found". Понятно, что в этом случае надо исправить последовательность загрузки в "Boot Sequence". Дополнительно смотри ниже опцию "HDD Sequence SCSI/IDE First".

Boot Up Floppy Seek

- (поиск дисковода при загрузке компьютера). Так можно перевести название этой функции. Но смысл функции значительно шире, поскольку BIOS проверяет, есть ли дисковод для дискет, и идет ли речь при этом о 40- или 80-тидорожечном дисководе. Производится также проверка первоначального позиционирования головок (поиск нулевой дорожки), т.е. в итоге обеспечивается функционально достаточная проверка работоспособности дисководов гибких дисков при проведении теста самотестирования системы. Поскольку все современные дисководы имеют 80 дорожек (с 1993 года дисководы на 40 дорожек не выпускаются; они поддерживали формат в 360 КБ), то выполнение этой функции является необязательным. Необходимо заметить, что BIOS не может определить разницу между 720K, 1.2M, 1.44M или 2.88M типами дисководов, т.к. все они имеют 80 дорожек. Имеет смысл установить эту опцию в "Disabled" (иначе - "Enabled"), что позволит сократить общее время тестирования ПК после его включения. Разрешение опции имеет смысл только в случае, когда загрузка системы производится с дискеты, да и то... Другое название опции - "Floppy Drive Seek At Boot". "Phoenix BIOS" содержит подобную опцию под названием "Fast Boot". Речь в ней идет о возможности пропустить проверку флоппи-дисковода. Уже из наименования опции становится понятным, какой смысл вкладывается в значения "Disabled"/"Enabled". Подобную задачу решает и опция "Phoenix BIOS" под названием "Floppy Check".

Boot Up Numlock Status

- опция, определяющая, в каком режиме после включения компьютера ("Num Lock After Boot") должна работать дополнительная цифровая клавиатура (Numeric Keyboard). Разрешение этого параметра включает индикатор "Num Lock", и цифровая клавиатура становится "генератором" кодов цифр и знаков. В противном случае генерируются коды стрелок, INS, DEL и т.д., т.е. цифровая клавиатура функционирует в режиме управления курсором. Может принимать значения: "On" (иногда "Enabled" или "Yes") - включено, "Off" (иногда "Disabled" или "No") - отключено. В некоторых версиях BIOS может появиться и значение "Auto", оно и будет устанавливаться по умолчанию. Другие названия опции: "System Boot Up Numlock Status", "System Boot Up Num Lock". "AMI BIOS" предлагает свое название - "Boot Up Num-Lock", хотя ясно, что полет фантазии для данной функции весьма ограничен. Подтверждение тому - опции "Numlock" и "Num Lock (n/a)". Одним же из самых "старинных и красивых" вариантов была опция "Numlock enabled at boot". Режим работы в любой момент времени меняется кнопкой NumLock.

Дополнительная информация представлена в разделе Keyboard.

Когда в 1986 г. появилась расширенная клавиатура, то многих пользователей стало раздражать то, что функция "Num Lock" после загрузки системы включалась автоматически. Поэтому со временем во многих системах стали предусматривать возможность управления первоначальным состоянием "Num Lock" через BIOS. Затем опция управления состоянием "Num Lock" стала стандартной функцией BIOS. Ну и параллельно расширенным аппаратным возможностям функция управления была введена в некоторые операционные системы (речь идет о файле CONFIG.SYS). Кстати, если в "BIOS Setup" соответствующая опция отключена, а в конфигурационном файле CONFIG.SYS указана директива "NUMLOCK=ON", то такое сочетание вполне может вызвать конфликтную ситуацию.

Boot Up System Speed

- опция выбора тактовой частоты процессора при загрузке. Значение "Low" переводит процессор в режим работы с половинной тактовой частотой и без использования внутренней кэш-памяти. Правда, в некоторых случаях тактовая частота системы может быть установлена на уровне AT-шины, т.е. около 8 МГц. Естественно, что изначально понижается пропускная способность системной и локальных шин, работы памяти и видеоканала, т.п. Такой режим может потребоваться при работе со старыми программами или платами расширения, а также при возможных проблемах при запуске системы. По умолчанию всегда устанавливается значение "High". Несмотря на кажущуюся архаичность данной опции, Вы ее найдете в самых современных системах. Опция может носить название "System Boot Up CPU Speed". Тот же "AMI BIOS" мог предложить возможность смены тактовой частоты процессора с помощью набора клавиш - ++<+> (или <->).

Boot Virus Detection

- (определение вируса в загрузочном секторе). Смысл этого параметра отличается от "Virus Warning" и заключается он в следующем. Если этот параметр запрещен ("Disabled"), то до загрузки операционной системы BIOS переписывает загрузочный сектор во флэш-память и сохраняет его там. Но при этом никаких последствий для системы и пользователя не возникает. При установке параметра в "Enabled" BIOS не будет загружать систему с жесткого диска, если содержимое boot-сектора будет отличаться от сохраненного в памяти. При этом система выводит сообщение, и пользователю далее предоставляется возможность либо загрузить систему с жесткого диска, либо с дискеты. Опция может носить название "BootSector Virus Detection".

CPUID Instruction

- не совсем ясная опция. С одной стороны, в процессе проведения POST-теста на одном из его этапов выполняется команда CPUID для получения т.н. "CPU Vendor String" и параметров Family/Model/Stepping. Т.е. речь идет об идентификации процессора. Естественно, что этот этап POST никак не связан с присутствием в BIOS рассматриваемой опции. С другой стороны, можно было встретить и такое разъяснение. При установке значения "Enabled" программы могут распознавать действующий процессор, например, 486-й, как процессор следующего поколения и даже...

Процессорная инструкция CPUID не имеет таких "древних" корней, как многие представленные здесь опции. Инструкция CPUID стала доступна у процессоров, начиная с некоторых моделей 486-х и затем с Pentium. Необходимость в идентификации процессоров вызревала постепенно, по мере их развития. И была она связана прежде всего с не совсем полной совместимостью (точнее, обратной совместимостью) старших моделей процессоров семейства x86 с младшими. Эти различия связаны не только с программным обеспечением и процедурами вычислительных операций, но и с управлением различным системным оборудованием или внешними устройствами, определяемым, прежде всего, временными характеристиками, последовательностью взаимодействия, т.п. К тому же программное обеспечение в процессе своего совершенствования, среди прочих аппаратных нюансов, должно учитывать и процедуры обращения к портам ввода/вывода, к BIOS компьютера и т.д. Да и процессоры старших поколений имеют такие архитектурные особенности и расширения, использование которых без предварительной идентификации типа процессора может оказаться невозможным. Достаточно вспомнить о дополнительных процедурах, связанных с процессорами Cyrix. В процессе идентификации процессора может быть считана различная информация: "тип" процессора (OEM-версия, Overdrive, Dual), "семейство", "модель", "степпинг" (специальная дополнительная информация производителя). Процедура идентификации процессора стала просто необходимой для выполнения другой важной задачи, а именно, "обновления микрокода" (см. выше).

Cyrix 6x86 / MII CPU ID

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

Daylight Saving

- во включенном состоянии ("Enabled") эта опция позволяет автоматически добавлять или вычитать один час при весеннем или осеннем переводе времени (последнее воскресенье апреля и аналогично в октябре). Этот параметр можно отключить, если установлена "Windows 9x" (или выше), самостоятельно регулирующая этот процесс.

Delay IDE Initial

- (задержка инициализации IDE-устройства). В данном параметре устанавливается интервал времени (в секундах), в течение которого IDE-устройство не будет опрашиваться BIOS после включения питания. Ненулевое значение параметра рекомендуется устанавливать только в случае применения старых жестких дисков. Не все старые приводы способны были достичь номинальной скорости вращения за время, которое при включении ПК проходит до начала тестирования жесткого диска. При этом неверно могли быть определены параметры диска или даже пройти его инициализация. Продолжения загрузки системы при этом далее могло и не быть. Опция была введена первоначально в "AMI BIOS" для использования старых накопителей и позднее была оставлена для совместимости. В различных версиях BIOS могут встретиться абсолютно идентичные функции: "Hard Disk Pre-Delay", "Delay For HDD (Secs)" и "Delay IDE Initial (Sec)". Хотя при этом могут несколько варьироваться значения параметров: от "0" до "15", от "0" до "30", от "1" до "15" и "Disabled". Возможен также и такой подбор значений: 3, 6, 9, 12, 15, 21, 30 и "Disabled" (по умолчанию). "Disabled" означает, что задержка не устанавливается для всех дисков в системе. Есть еще одна интересная опция с названием "Delay for SCSI/HDD (Secs)". Все сказанное выше справедливо и для SCSI-дисков. Только речь здесь идет уже о PCI SCSI BIOS и о правильном определении параметров диска через BIOS SCSI-контроллера. Для этого и задается задержка от 0 до 60 сек.

Deturbo Mode

- при разрешении этого параметра сигнал FLUSH# процессора становится активным, и никакие данные после этого не кэшируются в свой внутренний кэш процессорами архитектуры Pentium Pro (Pentium II, Celeron и т.п.). Разрешение этого параметра ("Enabled") следует использовать только при необходимости сознательно замедлить работу компьютера. "Disabled" устанавливается по умолчанию. Опция "AMI BIOS", "Boot Speed", аналогична предыдущей и предлагает следующие значения: "Deturbo" и "Turbo" (по умолчанию). Стоит напомнить, что снижение скоростных характеристик может понадобиться и для старых карт расширения. Опции могут носить название "Turbo Switch", "Turbo Switch Function" и "Turbo/Deturbo Switch", хотя в некоторых случаях речь может идти только о разрешении работы переключателя . А в некоторых случаях, что естественно связано с реализацией чипсета и маркой процессора, возможно также периодически приостанавливать конвейер процессора. Некоторые из этих опций уже изъяты "из обращения".

В давние времена в компьютерах Turbo XT и ранних AT кнопка на передней панели ПК была предназначена для повышения тактовой частоты процессора сверх номинальной с целью ускорения его работы. При этом устойчивая работа на этой частоте не гарантировалась. Появление компьютерных систем с тактовыми частотами, превысившими характеристики предыдущих (4,77 и 8 МГц), сопровождалось далее не только сохранением переключателя , а и, можно сказать, совершенствованием turbo-режимов. Прежде всего пришлось решать проблемы совместимости со "старым" программным обеспечением, у которого какие-либо временные характеристики, задержки формировались путем подсчета циклов процессора. Проблема заключалась в том, что многие старые программы пользовались для измерения времени скоростными параметрами XT, отчего на AT-моделях работали с ошибками. Поэтому на более поздних и быстрых AT-286 и ранних 386-х компьютерах кнопка стала использоваться для понижения частоты. В режиме "Turbo" процессор работал на своей максимальной частоте (читай, оптимальной), а при отжатой кнопке - на пониженной. Естественно, что при этом менялась частота синхронизации. В компьютерах AT-286 и 386, у которых входная системная частота делилась внутри процессора пополам, входной сигнал синхронизации назывался "CLK2IN". В начале 90-х годов, на последних 286-х и 386/486-х компьютерах был введен другой способ управления скоростью: частота системного генератора была постоянной, а при замыкании контактов кнопки принудительно замедлялась работа с внешним кэшем и памятью. Для большинства программ это не давало заметного эффекта, поскольку сам процессор и его внутренний кэш (не в 286-х моделях) продолжали работать с обычной скоростью. В последних 486-х моделях и первых "пентиумных" кроме обычного отключения внешнего кэша стал использоваться режим прерывистой синхронизации. Каким образом это решалось аппаратно? В некоторых реализациях системных плат класса 386/486 порт вывода контроллера клавиатуры 8042, кроме участия в формировании сигналов Gate A20 и Soft CPU Reset, стал формировать также сигналы управления режимом "Turbo" и включения кэш-памяти. Эти сигналы нашли применение и в процедурах POST. На одном из этапов POST порт вывода программировался так, чтобы режим "Turbo" был включен (Hi-Speed), кэш L1 и L2 выключен (Cache-off). Дальнейшее развитие компьютерных технологий привело к изменению и роли многострадальной кнопки . На большинстве современных системных плат кнопка , если она присутствует конечно, нынче участвует в реализации функций режима "Suspend". Режим "Suspend" обычно может быть запрещен опцией в "BIOS Setup", тогда кнопка не влияет на работу системы. На некоторых новых платах замыкание контактов кнопки снова понижает частоту системного генератора. Об использовании кнопки в реализации режимов энергосбережения - в соответствующем разделе.

Drive A Drive B

- с помощью данных опций пользователь устанавливает спецификацию, формат, можно сказать, стандарт применяемых в системе флоппи-дисководов. Не имеет значения, присутствует второй "флоппик" в ПК или нет, процедуры инсталляции и установки параметров дисководов в "BIOS Setup" попросту стандартизованы, поскольку предложить еще что-либо по данной теме вряд ли возможно. Несколько обобщая возможные варианты параметров установки, имеем следующее:

"None" (или "Disabled", или "Not Installed") - дисковод отсутствует либо запрещен доступ к нему, "360K, 5.25 in" - 5-1/4 - дюймовый стандарт дисковода, емкостью в 360 КБ, "1.2M, 5.25 in" - 5-1/4 - дюймовый AT-стандарт высокой плотности, емкостью 1,2 МБ, "720K, 3.5 in" - 3-1/2 - дюймовый стандарт, емкостью 720 КБ, "1.44M, 3.5 in" - аналогично для емкости 1,44 МБ, "2.88M, 3.5 in" - аналогично для емкости 2,88 МБ.

Опции, предназначенные для флоппи-дисководов, также могут носить разные наименования, хотя возможности здесь явно ограничены: "Floppy Drive A:/B:", "Diskette A:/B:", "Legacy Diskette A:/B:".

Flash BIOS Protection

- включение опции запрещает доступ к Flash BIOS вирусам и... неопытным пользователям. При этом не может быть произведено обновление содержимого Flash BIOS. Для обновления функцию надо отключить. На некоторых материнских платах функция реализована не в виде опции "BIOS Setup", а в виде перемычки, либо не реализована вовсе. Желательно функцию включить. Может принимать значения: "Enabled" - защита установлена, "Disabled" - доступ разрешен. Естественно, что такая же функция присутствует и в "Phoenix BIOS". Только в "Flash Write" (это видно по названию) все наоборот: "Disabled" делает невозможной перезапись BIOS, "Enabled" допускает такую операцию. В любом случае более серьезного отношения к себе потребует документация на материнскую плату и знание самого процесса обновления Flash, если в этом будет необходимость. Естественно, что после перезаписи BIOS защита должна быть установлена снова. Несколько слов о необходимости перепрошивки BIOS! В связи с чем может возникнуть потребность решать такую задачу? Как правило, это связано с правильным распознаванием новых процессоров, поддержкой нового оборудования, т.п. Зачастую производители системных плат, выпуская новый продукт, заведомо идут на некоторое сокращение пользовательских установок "BIOS Setup", лишая конечного пользователя возможности полноценно настраивать систему. Позднее, а это происходит не всегда, такой производитель все же подготавливает обновления BIOS, размещая их на своем сайте. Что касается оборудования, то достаточно вспомнить о различных ограничениях и поддержке жестких дисков большой емкости, о поддержке различных устройств в качестве загрузочных и т.д. Достаточно также вспомнить о полноценной поддержке стандарта ACPI со стороны BIOS и о многом другом. Все эти вопросы значительно полнее рассматриваются в литературе, посвященной модернизации BIOS, поэтому большей детализации здесь не требуется.

Floppy 3 Mode

- еще одна, не так уж и редко встречающаяся, опция по установке параметров флоппи-дисководов. Во включенном состоянии ("Enabled") опция позволяет системе, как это не тривиально, поддерживать 3,5-дюймовые дисководы с возможностью читать дискеты емкостью 1,2 МБ. Хитрость в том, что этот режим является японским стандартом для флоппи-дисководов и естественно не применяется, за исключением некоторых стран Юго-Восточной Азии и собственно Японии, во всем остальном мире. А по техническим параметрам совместное использование опции и таких "японских" дисководов позволяет достичь скорости передачи в 1 Мб/сек. Так что эта совместимость "в наших условиях" имеет мало смысла. Опция может называться и "Floppy 3 Mode Support".

Halt On

- сразу после включения ПК, во время теста самопроверки POST, при нахождении какой-либо аппаратной ошибки система прекращает загрузку и выводит наименование устройства, вызвавшего сбой. Будет ли произведена остановка, и в каких случаях это произойдет, как раз и определяет параметр опции "Halt On". Возможными параметрами являются:

"No Errors" - POST никогда не прерывает работу, какая бы нефатальная для системы ошибка не была обнаружена (нарушение работы устройства или даже его отсутствие),

"All Errors" - остановка работы при возникновении любой критической, тем более фатальной, ошибки. Интегрированная опция,

"All, But Keyboard" - остановка при любой критической ошибке, кроме ошибки клавиатуры,

"All, But Diskette" - аналогично, только с игнорированием ошибок дисководов,

"All, But Disk/Key" - игнорирование ошибок клавиатуры и дисководов.

"Phoenix BIOS" содержит аналогичную опцию под названиями "Error Halt", "POST Error Halt" или "POST Errors", правда, с заметно ограниченными возможностями: "Halt On All Errors" (также "Enabled") и "No Halt On Any Errors" (также "Disabled").

HDD Sequence SCSI/IDE First

- в представленной уже опции "Boot Sequence" (или аналогичной) пользователь может выбрать в качестве загрузочного любое мыслимое и немыслимое устройство. Но так было не всегда. И это касается также SCSI- и IDE-дисководов. При размещении устройств IDE и SCSI в одной и той же системе загрузочным устройством мог быть основной (master) жесткий диск на первичном канале IDE. Обычно загрузка с диска SCSI при смешанной конфигурации была невозможна. Но это, прежде всего, было связано с возможностями системной платы. В современных материнских платах возможность загрузки с дисководов SCSI предусмотрена. В BIOS материнской платы ASUS P/I-P55T2P4 (1996 г.) был предусмотрен параметр "HDD Sequence SCSI/IDE First". Аналогичные опции появились затем в BIOS системных плат других производителей. Благодаря такой возможности стало вполне реальным помещать загрузочную запись для операционной системы не только на диск IDE, но и на диск SCSI. А это позволяет загружать несколько ОС, не используя специальных программных средств. Возможными значениями параметра являются: "SCSI", "IDE".

Keyboard

- (клавиатура). Значение "Installed" не вызывает вопросов. Если установить "Not-installed", эта опция укажет BIOS на отмену пpовеpки клавиатуpы во вpемя стаpтового теста, что позволяет пеpезапускать ПК с отключенной клавиатуpой без выдачи сообщения об ошибке теста клавиатуpы. Это может оказаться необходимым при работе файл-сервера, сервера печати, в т.ч. из соображений безопасности. Аналогичную задачу решает опция "System Keyboard" (AMI BIOS) с параметрами "Present" (по умолчанию) и "Absent".

LAN Remote Boot

- эта опция "Phoenix BIOS" заметно отличается от приведенной выше "Boot From LAN First", поскольку речь идет не о порядке подключения загрузочных модулей или разрешении удаленной загрузки. Данная опция предназначена для установки режима такой загрузки и носит протокольный характер. Функция удаленной загрузки может использоваться, с одной стороны, в специальных сетевых средах, когда ни флоппи-дисковод, ни жесткий диск не установлены в системе или опциально отключены. С другой стороны, удаленная загрузка может функционировать в локальном компьютере и при наличии других средств загрузки операционной системы. При удаленной загрузке могут быть реализованы два различных протокола загрузки: BootP и LSA. Отсюда и возможные значения: "BootP" - "BootP" сетевой BIOS активизирован и операционная система может быть загружена с сервера посредством BootP-протокола, "LSA" - аналогично для LSA-протокола, "Disabled" - удаленная загрузка невозможна. Сетевой BIOS не активизирован.

Через "BIOS Setup" можно также включить поддержку "Intel Boot Agent", что позволит загрузить ПК по сети с использованием протоколов PXE и RPL. Так что возможны и другие вариации подобных опций.

Поскольку затронута тема использования такого программного продукта, как "Intel Boot Agent", то имеет смысл остановиться на некоторых вопросах подробнее. "Intel Boot Agent" интегрирован во флэш-память сетевого адаптера. Он обеспечивает настройку параметров сетевого устройства, являясь конфигурационной программой. "Boot Agent Setup" подобен "BIOS Setup" системной платы. После включения ПК и успешного завершения POST-тестирования на экран монитора выводится сообщение:

Initializing Intel Boot Agent Version x.x

Press Ctrl+S to enter into the Setup Program.. Вывод этого сообщения означает, что пользователю предлагается войти в установочное меню "Boot Agent". После некоторого периода неактивности автоматически включаются установки, сохраненные ранее, и далее производится либо удаленная загрузка, либо локальная. А установочное меню может выглядеть следующим образом:

Intel (R) Boot Agent Version 3.0.00 Setup Menu Network Boot Protocol PXE Boot Order Try network first, then local drives Show Setup Prompt Enable Setup Menu Wait Time 8 seconds

Legacy OS Wakeup Support Disable

Сетевые протоколы удаленной загрузки: PXE (Pre-boot eXecution Environment) - современный протокол, используемый с WfM-совместимым сетевым ПО. WfM - это спецификация "Wired for Management Baseline". Этой спецификации соответствуют современные сетевые адаптеры серии "Intel PRO/100" или адаптеры, основанные на наборах 82559 или выше, RPL (Remote Program Load) - используется для стандартного режима удаленной загрузки. Не все версии "Boot Agent" включают в себя поддержку RPL-протокола, BootP (Bootstrap Protocol).

Пользователь уже привык к малозаметному, но постоянно изменяющемуся содержанию системного BIOS. Точно также, мало-помалу, совершенствуются конфигурационные установки "Intel Boot Agent". "Исчезла" малопонятная для пользователя опция "PnP/BEV Boot", где BEV - BIOS Entry Vector. Опция "Setup Menu Wait Time" ранее называлась "Prompt Time", но сохранила свое назначение - время ожидания действий пользователя после вывода на экран вышеприведенного сообщения (2, 3, 5 или 8 сек.). Опция "Show Setup Prompt" ранее называлась "Setup Message", но также сохранила свое назначение - показывать или нет вторую строчку выводимого сообщения с указанием правила входа в установочное меню. Опция "Boot Order" по сути вобрала в себя две "старые" ("Default Boot" и "Local Boot") и предложила целый ряд значений на выбор: "Try local drives first, then network", "Try network only", "Try local drives only" и приведенное выше. Опция "Legacy OS Wakeup Support" заметно отличается от прежней "Power Mgmt" (значения "ACPI", "APM") и имеет значения: "Disable" - для операционных систем, использующих технологии ACPI, "Enable" - для не-"Windows" систем, таких как DOS или Nowell Netware. Дополнительная информация об удаленной загрузке находится, как это ни странно, в сообщениях об ошибках системы при ее включении.

Language Support

- опция по установке языка интерфейса "BIOS Setup". Возможных значений, как правило, пять: "English (US)" (по умолчанию), "Francais", "Italiano", "Deutsch", "Espanol". Данная опция предложена "Phoenix BIOS". Он же предлагает и опцию "Language". "AMI BIOS" представил опцию "Change Language Setting".

Memory Test

- (тест памяти). Эта старенькая опция "Phoenix BIOS" (почти аналог "Quick Power On Self Test") позволяла пропустить ("Disabled") тест памяти при проведении POST-теста. Тест памяти, как нетрудно догадаться, проводился при выборе значения "Enabled".

Memory Test Tick Sound

- опция, позволяющая сопровождать тест памяти периодическими звуковыми сигналами. Рекомендуется устанавливать в "Enabled" для озвучивания пpоцесса загpузки, косвенной оценки объема инсталлированной памяти и дополнительного подтверждения, в частности, правильности установок "CPU clock speed/Turbo switch". Последнее может удивить пользователя! А дело в том, что по высоте тона (будем считать, что каждый наделен музыкальным слухом) можно, опять-таки несколько субъективно, оценить быстродействие загружаемой системы. На это как раз и влияют определенные опции "BIOS Setup", о них уже сказано выше, а также положение переключателя . Данная опция в новых системах практически уже не встречается.

Numeric Processor Test

- (тест цифрового пpоцессоpа). Речь в данной опции идет о проверке математического сопроцессора (FPU - Floating Point Unit). Хотя эта опция и устарела, но тем не менее парк стареньких ПК еще не исчез бесследно. Устанавливается в "Disabled", если сопроцессор отсутствует (386SX, 386DX, 486SX, 486SLC, 486DLC, более низкие модели). Пpи отключении этого теста сопpоцессоp, если он даже и пpисутствует в системе, не pаспознается и считается отсутствующим.

Option ROM Scan

- (сканирование необязательного (опциального) ПЗУ). "Необязательное" ПЗУ - это фрагмент BIOS, который может располагаться на платах адаптеров и вызываться через системный BIOS для инициализации платы. Сканирование такого необязательного ПЗУ применяется в основном только к контроллеру SCSI. Параметр опции включает ("Enabled") или отключает ("Disabled") выполнение инициализации ПЗУ. Инициализация ПЗУ включает в себя сканирование шины SCSI на предмет наличия устройств, содержащих дополнительный BIOS. Но речь может идти и о системной загрузке через сеть. Тогда поиск дополнительного BIOS будет вестись и на специализированных сетевых картах расширения. Следующая опция, "Delay on Option ROMs", решает еще одну задачу. Если опция включена, BIOS будет делать краткую задержку в конце каждого сканирования необязательного ПЗУ. Задержка предоставляет аппаратуре платы некоторое время, чтобы она пришла в устойчивое состояние после инициализации. Задержка несколько замедляет начальную загрузку, но ее имеет смысл включать, если во время начальной загрузки инициализация оборудования выполняется неустойчиво. Еще одну дополнительную опцию предложил "AMI BIOS". В опции "Display Mode at Add-On ROM Init" также речь идет об инициализации дополнительного BIOS, но уже о том, в какой форме процесс инициализации "Add-On ROM" будет отображаться на системном мониторе во время проведения POST. Значения опции: "Force BIOS" ("принудительный вывод на дисплей процесса инициализации") и "Keep Current" ("сохранение текущего состояния" - не совсем ясный момент).

Overclock Warning Message

- при установке опции в "Enabled" в процессе самотестирования системы выводится соответствующее сообщение, если процессор разогнан. Столь замечательная опция принадлежит "AMI BIOS".

Quick Power On Self Test

- (быстрый тест компьютера после включения питания). Разрешение этого параметра приводит к некоторому сокращению времени, затрачиваемого на начальное самотестирование компьютера (POST), особенно при значительных объемах оперативной памяти. Следует только учесть, что память, например, в этом случае не тестируется, а только проверяется ее размер. Сокращение времени тестирования происходит также за счет пропуска некоторых пунктов проверки (например, упрощенно фиксируется готовность жесткого диска, без специальной паузы ожидания на "разгон" двигателя). Если при работе ПК возникают какие-либо проблемы, то лучше при его включении осуществлять полный тест. Хотя надо отметить, что часто встречающиеся рекомендации по сокращению времени загрузки ПК не дают особенного эффекта, а вот проблем перед пользователями ставят достаточно. Поэтому к советам специалистов необходимо подходить дифференцировано, т.е. решать в каждом конкретном случае "свою" маленькую проблему. Но однозначно, если система работает длительное время стабильно и без сбоев, то опцию имеет смысл все же включить. Возможные проблемы, связанные уже с функционированием операционной системы, должны рассматриваться отдельно и не в связи с состоянием данной опции. Может принимать значения: "Enabled" - разрешено, "Disabled" - запрещено (по умолчанию). "AMI BIOS" может содержать аналогичную опцию под названием "Quick Boot" или "Quick Boot Mode". "Phoenix BIOS" предложил опцию "Fast Boot" со значениями "Auto" (разрешение "быстрого" теста) и "Disabled". Напоследок несколько слов о самом тесте, хотя эта тема будет рассматриваться отдельно. Во время выполнения POST-теста проверяются все системные компоненты и устройства. Проверяются регистры чипсета, инициализируется и тестируется основная память, видеоканал, идентифицируется центральный процессор, идентифицируются устройства IDE-интерфейса, порты, в том числе такая стандартная периферия, как клавиатура и мышь, т.п. При всем этом составляются контрольные суммы (см. следующий раздел) конфигурации системы, которые могут затем сверяться со значениями, хранящимися в памяти, и иногда быть поводом для беспокойства. Включение вышеприведенной опции не затрагивает большинства подтестов и поэтому не должно вызывать тревоги при стабильной работе системы.

1.2. Errors (продолжение) Keyboard

K/B Interface Error, Keyboard/Interface Error

- ошибка связи с клавиатурой. Проверить подсоединение клавиатуры, проверить положение переключателя XT/AT на клавиатуре, а также поэкспериментировать с опцией "Halt On". В противном случае возможно неисправен контроллер клавиатуры.

Keyboard controller error

- ошибка контроллера клавиатуры. Необходимо вначале подключить другую клавиатуру.

Keyboard Error

- ошибка клавиатуры. Проверить подключение клавиатуры и соответствие типа клавиатуры контроллеру. А также необходимо проверить "временные" установки в "BIOS Setup". Можно попытаться отключить тестирование клавиатуры при загрузке. Keyboard error nn - ошибка клавиши на клавиатуре. В шестнадцатеричном виде указан ее код. KEYBOARD ERROR OR NO KEYBOARD PRESENT - ошибка инициализации клавиатуры или клавиатура отсутствует. Все действия аналогичны. Необходимо также удостовериться, что во время включения ПК не нажата какая-либо клавиша, а также проверить соответствие наличия клавиатуры и установок в "BIOS Setup". Keyboard failure, press [F1] to continue - причиной такого сообщения могут быть неконтакт (обрыв) кабеля клавиатуры, заедание какой-либо наиболее часто используемой клавиши. Но прежде всего необходимо проверить установки опций "Typematic Rate" и "Typematic Delay", так как может иметь место несовместимость установок клавиатуры в "BIOS Setup". Keyboard is locked ... Unlock it

- необходимо разблокировать клавиатуру. Причиной такого сообщения может быть блокировка клавиатуры защитным ключом. Возможно потребуется проверить правильность подсоединения ключа к разъему материнской платы.

Keyboard is locked out - Unlock the key, Keyboard Stuck Key Failure - "Phoenix BIOS" сообщает о залипании клавиши. Вполне возможно случайное удержание какой-либо клавиши (клавиш) во время тестирования системы.

PS/2 Keyboard Interface Error - необходимо проверить правильность подсоединения клавиатуры, возможна неисправность контроллера клавиатуры или интерфейсной схемы ввода/вывода. PS/2 Keyboard Error or Keyboard Not Connected - необходимо проверить правильность подсоединения клавиатуры. Floppy Diskette drive A/B error, Incorrect Drive A/B - run SETUP

- необходимо проверить правильность установок в "BIOS Setup", а также правильность подсоединения дисководов. FDD Controller Failure, Floppy Disk Controller Error, FLOPPY DISK CNTRLR ERROR OR NO CNTRLR PRESENT

- ошибка связи с контроллером гибких дисков, невозможность инициализации контроллера, ошибка контроллера. Проверить подсоединение дисковода и его разрешенность на мультикарте (для устаревших систем). Floppy disk(s) fail

- нельзя найти или инициализировать контроллер или сам флоппи-дисковод. Действия аналогичны. Floppy disk(s) fail (40)

- это сообщение в конце теста ПК говорит о возможной ошибке в подключении шлейфа. Непрерывно светящийся индикатор также свидетельствует о неправильном подключении. Ошибка может заключаться и в несоответствии типа флоппи-дисковода, установленного в "BIOS Setup". HD ERROR ENCOUNTERED INITIALIZING HARD DRIVE, Failure Fixed Disk 0/1, Fixed Disk 0/1 Failure, Hard disk(s) diagnosis fail, C:/D: Drive Error, C:/D: Drive Failure, Hard Disk(s) fail (20)

- не инициализируется жесткий диск (жесткие диски). Проверить установку контроллера жестких дисков (для устаревших систем), соединительные кабеля, проверить установку джамперов на жестком диске, а также параметры "BIOS Setup". Но причина может заключаться и в неисправности диска, и жесткий диск может оказаться неформатированным. ERROR INITIALIZING HARD DRIVE CONTROLLER, HARD DISK INSTALL FAILURE, HDD Controller Failure, Hard Disk Controller Failure, Fixed Disk Controller Failure, Hard Disk(s) fail (40)

- ошибка связи с контроллером жестких дисков, контроллер жестких дисков не инициализируется, неисправность контроллера. Проверить установку контроллера, подсоединение дисковода, подключение соединительных кабелей к системной плате, т.п. и параметры жесткого диска в "BIOS Setup". Также стоит проверить установку джамперов на жестком диске. Причина может быть и в том, что в ПК имеется диск SCSI, но BIOS материнской платы ожидает также наличия диска IDE. Надо войти в "BIOS Setup" и отключить жесткий диск. HARD DISK initializing Please wait a moment

- некоторые старые диски требовали дополнительного времени для инициализации. Понятно, что это сообщение не об ошибке. HARD DISK INSTALL FAILURE

- нельзя найти или инициализировать контроллер или сам жесткий диск. Действия те же, т.е. проверить все механические установки и подключения, а также правильность установок в "BIOS Setup". Primary IDE channel no 80 conductor cable installed - "современное" сообщение, и вывод его связан с подключением обычного 40-жильного соединительного кабеля к разъему контроллера с интерфейсом UDMA/66 и выше. Primary/Secondary master/slave hard disk fail, Pri/Sec master/slave HDD Error, IDE Primary/Secondary Channel Master/Slave Drive Error

- POST определил ошибку в первичном/вторичном "master"/"slave" IDE-жестком диске. Pri/Sec Master/Slave Drive - POST сообщает, что устройство несовместимо с интерфейсом ATAPI. Необходимо проверить правильность установок в "BIOS Setup". Resuming from disk, Press TAB to show POST screen

- это сообщение от "Phoenix Technologies" и оно характерно для систем, использующих функцию "save-to-disk" при выключении компьютера. Такое сообщение может быть выведено при рестарте системы, а нажатие указанной клавиши позволяет вывести дополнительную информацию на экран. EISA EISA Configuration is Not Complete

- информация о конфигурации EISA-шины и устройств на ней задана не полностью. Система может быть загружена без расширений EISA, т.е. как ISA-система, но это даст возможность выполнить полноценно все процедуры конфигурирования с помощью EISA Configuration Utility (ECU). EISA CMOS Inoperational

- ошибка доступа (в процессе чтения/записи) к дополнительной CMOS-памяти, предназначенной для хранения конфигурации EISA-устройств. Одной из причин может быть неисправность батареи. Здесь и далее основная рекомендация - запуск ECU-утилиты. EISA CMOS Checksum Failure, EISA Configuration Checksum Error

- контрольная сумма энергонезависимой памяти EISA некорректна или нельзя прочитать информацию об EISA-слоте. Возможно плата в слот установлена неправильно. Причиной также может быть неисправность батареи. Expansion Board not ready at Slot X

- BIOS не может инициализировать плату расширения в слоте X. Проверить саму плату и ее конфигурацию. ID information mismatch for Slot X Wrong Board in Slot X, Wrong Board In Slot

- идентификатор установленной платы расширения EISA не совпадает с записью в CMOS для этого слота. Возможно установлена плата с ошибочным ID. Invalid Configuration Information for Slot X

- недействительна конфигурационная информация для платы расширения в слоте X. Invalid EISA Configuration

- недействительна конфигурационная информация EISA. Конфигурация могла быть неправильно запрограммирована, или имеет место ее нарушение. Slot X Not Empty, Slot X Should Be Empty But EISA Board Found

- слот X, записанный в конфигурации как пустой, занят платой расширения. Slot X Should Have EISA Board But Not Found

- слот X сконфигурирован под плату расширения, но она не обнаружена. SCSI Device connected, but not ready

- "ultra-wide SCSI"-контроллер не получил ответ при запросе данных от инсталлированного SCSI-устройства. Необходимо установить "Send Start Unit Command" в "Yes" в SCSI-конфигурационной программе. Start unit request failed

- BIOS не может отправить "Start Unit Command" в SCSI-устройство. Необходимо в SCSI-конфигурационной программе "Send Start Unit Command" установить в "No". Time-out failure during...

- необходимо проверить терминирование SCSI-шины и правильность кабельных подсоединений. Возможно одно из устройств на SCSI-шине неисправно. Server Service Processor not properly installed - неправильно инициализируется контроллер управления сервером. Storage Extension Group = xy Configuration error, x Storage Extensions(s) found, configured are y SE(s). Device List: k1, k2 ... - несоответствие установок "Server menu - Storage Extensions" найденным коммуникационным устройствам, где: SEs - storage expansion units (устройства расширения хранения информации). Несоответствие их установленному числу, xy - номер группы, x - число SEs, найденных на коммуникационной шине, y - число SEs, введенных в конфигурацию, k1, k2 ... - идентификаторы устройств хранения. Необходимо проверить и исправить установки в "BIOS Setup". 2. 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).

Опция могла называться и "Chipset Global Features".

Command per Cycle

- (команда за такт). Параметр разрешает или запрещает выполнение команд за один такт. Включение опции заметно повышает производительность системы, поэтому рекомендуемое значение - "Enabled".

Delayed Read Request Expiration

- довольно необычная опция, предложенная в свое время для некоторых серверных систем на чипсетах i450NX. Временными параметрами опции можно было установить (дословно) "истечение срока задержки для запроса на чтение". Еще более необычными были сами значения (в системных тактах): "16 Clocks", "64 Clocks", "128 Clocks" и (!) "2^15 clocks". К сожалению, ничего более к этой опции добавить нельзя.

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".

Host Bus Fast Data Ready

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

Опция может иметь название и без ссылки на системную шину - "Fast Data Ready". Эти опции встречались довольно часто во времена 440-х чипсетов.

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". Оно же может оказаться оптимальным и для производительности системы.

С другой стороны, акцентирование внимания на 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", несколько устаревшая, но представляющая несомненный интерес.

2.1. Оптимизация функционирования PCI-интерфейса и ISA-шины (продолжение) 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", ну и "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 нет, только желательно данную опцию запретить, если речь идет о серверной системе.

2.1. Оптимизация функционирования PCI-интерфейса и ISA-шины (продолжение) 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-шины и основной памяти, а значит повысить общую производительность системы. Нетрудно увидеть, что речь идет о пакетном режиме передачи данных. О сути пакетной передачи информации см. выше.

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

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-шине.

2.2. Специальные функции чипсета

Drive NA before BRDY

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

В данной опции речь фактически идет о механизме конвейеризации, об "ускоряющих" возможностях сигнала "Next Address".

Extended CPU-PIIX4 PHLDA#

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

  • в течение адресной фазы в начале PCI-цикла чтения/записи,
  • сопровождая адресную фазу "LOCK"-цикла центрального процессора.

    При включенном значении опции функции "Passive Release" и "Delayed Transaction" должны быть также включены.

    Сигнал PHLDA# (PCI Hold Acknowledge) применяется, в частности, для управления работой "арбитра" PCI-шины. Тема арбитража будет рассмотрена отдельно.

    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" буфер не будет использоваться, и процессор будет находиться в ожидании в течение каждого цикла записи.

    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#. Естественно, что включение такого режима повышает производительность системы. Запрещение опции ("Disabled") вовсе не означает отказ от использования сигнала "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".

    3. CPU

    Backoff Processor

    - очень редкая опция и не совсем однозначно трактуемая. BOFF# (Back Off) - сигнал безусловного отключения процессора от шины. По этому сигналу процессор отдает управление шиной в следующем же такте с прерыванием текущего цикла. По окончании действия сигнала "BOFF#" процессор рестартует прерванный шинный цикл. Возможные значения опции: "Disabled" (или "No"), "Enabled" (или "Yes").

    Исходя из всего изложенного, можно предположить, что в опции речь идет о безусловной передаче управления шиной другому устройству, т.е. без установок различных интервалов ожидания, определенных условий передачи управления и т.п. Об этом будет подробно изложено далее (тема "арбитража"). Понятно, что для использования указанного сигнала опцию необходимо включить.

    Опция может называться "Backoff CPU".

    Base I/O Address

    - опция установки базового адреса устройства. I/O-адреса - это адреса ввода/вывода, называемые также портами системных и периферийных устройств. По сути, это "почтовые ящики", через которые программы и устройства обмениваются сообщениями, данными. Каждому адресу отведен один байт системной памяти. Начиная с 386-х систем таких адресов имеется в наличии 65536, хотя большинство из них никогда не используется.

    Базовый I/O-адрес - это первый адрес из того адресного пространства, что предоставлен данному устройству. Например, большинство сетевых адаптеров использует адресный диапазон в 20h, а для COM 1 резервируется диапазон с адресами от 3F8h по 3FFh, которые используются для различных задач, например, установки скорости, четности, т.п. Весь адресный диапазон ввода/вывода - 0000-FFFFh.

    Для данной опции не приводятся конкретные значения. Да и по содержанию опция в большей степени "подходит" материалам, посвященным распределению ресурсов различных устройств. Но опция помещена в данном месте умышленно, чтобы подчеркнуть принадлежность адресов ввода/вывода не только памяти, а и центральному процессору. Ведь от него то и начинаются управляющие процедуры, и производятся они через порты ввода/вывода.

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

    Рассмотренная выше опция "Extended I/O Decode" показала нам некоторые нюансы и даже сложности декодирования адресов ввода/вывода. Опция "PCI I/O Start Address", предназначенная в общем-то для PCI-устройств, тем не менее позволяет для ISA-устройств создать дополнительную область адресов и тем самым избежать "неприятных накладок".

    Branch Target Buffer

    - просто редчайшая функция, скорее в смысле уникальности, а не частоты появления в различных версиях BIOS. О чем идет речь? BTB (Branch Target Buffer - буфер адресов перехода) - блок центрального процессора, отвечающий за динамическое предсказание переходов. При этом принимается во внимание, какие адреса переходов были выбраны ранее. Это важнейший узел современного процессора (см. специальную литературу). Получается, что с помощью данной опции можно отказаться ("Disabled") от использования механизма предсказания переходов, ветвлений команд процессора или включить его ("Enabled"). Остается добавить, что включение опции повышает производительность системы.

    CPU ADS# Delay 1T or Not

    - опция установки задержки для сигнала ADS#. Несколько предваряющих слов. ADS# (Address Status) - строб адреса, вводимый инициатором обмена как индикатор действительности адреса. Сигнал действует на системной шине и может быть выходным как стороны процессора, так и со стороны чипсета. Передача адреса и адресного строба происходит одновременно, поскольку для адресного строба системная шина имеет свою выделенную линию. Понятно, что ADS# - это стандартный сигнал процессоров.

    Представленная опция указывает и на возможность отсутствия задержки, что повышает скоростные характеристики обмена данными в системе. Фактически данная опция позволяет устанавливать время, в течение которого процессор (или чипсет, контроллер памяти) будет ждать от чипсета (процессора) сигнал статуса адреса данных, который определяет скорость отложенной записи на системной шине. Понятно, что речь также идет о передаче данных в PCI-интерфейс. Значение, устанавливаемое по умолчанию, менять нет необходимости. Однако при установке более скоростного процессора скорость можно и увеличить, т.е. снять задержку. Вынесенная в заголовок опция имеет два значения: "1T", "No Delay".

    А вот опция "Cyrix M2 ADS# delay" предложила стандартные "Enabled" и "Disabled". Опция "Latency from ADS# status" предложила числовые значения в тактах системной шины: "2T" (по умолчанию), "3T".

    Необходимо понимать, что устанавливая "время задержки", мы тем самым определяем временные характеристики циклов записи. И с учетом того, что использование буфера отложенной записи ведет, как правило, к формированию небольших пакетов (двойными словами или в два DW). Поэтому установив значение "3T", мы получаем 5 системных тактов для каждого двойного слова. Арифметика тут простая. 3 такта задержки, один адресный такт и один такт на считывание данных.

    CPU BIST Enable

    - в некоторых чипсетах, начиная с 430-й серии, нашли применение специализированные BIST-регистры. Большой нагрузки они не несли. Если система (чипсет + процессор) поддерживает функцию встроенного самотестирования (Built-In Self Test), то BIST-регистр хранит в своих разрядах команды "Start BIST" или "Completion Code". Если "система" не поддерживает BIST-функции, то установка опции в "Enabled" не даст эффекта, а в соответствующих разрядах регистра будут установлены "0".

    Встроенный и, что немаловажно, полноценный механизм самотестирования BIST был реализован в процессорах Pentium III. Он обеспечивал постоянный контроль над зависаниями и сбоями в микрокоде, больших программируемых логических матрицах, а также обеспечивал тестирование кэша команд (инструкций) и кэша данных, буферов TLB (Translation Lookaside Buffer - буфера страничной переадресации) и сегментов памяти ROM. В течение 10-30 мсек (время связано с внутренней частотой ядра процессора) внутренним тестированием охватывается около двух третей всех внутренних блоков процессора. Лишь только после завершения теста процессор переходит в рабочий режим, результаты же теста фиксируются в регистре EAX.

    CPU Drive Strength

    - данная и не совсем ясная опция определяет интенсивность (strength), а точнее длительность действия сигналов при передаче данных от чипсета к процессору. Параметр измеряется в системных тактах. Чем выше значение параметра, тем выше длительность сигналов, а применение этой опции "BIOS Setup" может оказаться полезным для процедур "разгона" процессоров. Но не для всякой системы увеличение значений опции может привести к сохранению стабильности "разогнанного" процессора. Значения опции следующие: 0, 1, 2, 3. Осталось добавить, что данная опция требует дополнительного уточнения.

    CPU Fast String

    - (быстрые операции со строками). Разрешение этого параметра ("Enabled") позволяет использовать некоторые специфические особенности архитектуры семейства процессоров Pentium Pro (Pentium II, Deschutes и т.п.), в частности, возможность кэширования операций со строками. Надо только понимать, что и в самой пользовательской программе должны быть выполнены условия для включения этого механизма. Эти условия указаны в документации на любой процессор данного семейства. Параметр рекомендуется оставлять в состоянии "Разрешено".

    CPU Line Read Multiple

    - в данной опции речь идет о чтении процессором т.н. "full cache"-линии. Когда "cache"-линия заполнена данными, то их объем составляет 32 байта (восемь двойных слов). Поскольку линия "полная", система точно знает, как долго данные на линии будут считываться. На это системе потребуется 4 такта, после чего будет выставлен новый адрес. Поэтому системе не требуется сигнал об окончании передачи данных, и система не будет находиться в ожидании такого сигнала, будучи свободной для решения других задач. Когда опция включена ("Enabled"), процессор сможет считывать данные одновременно с нескольких "full cache"-линий. По умолчанию - "Disabled".

    Опция может называться "CPU Multiple Reads".

    Перечисленные ниже функции не содержат свойств множественности, но их размещение в данном месте более чем оправдано. Вот их наименования: "Allow Full Line Reads", "Full Cache Line Reads", "CPU Line Read". Каждая из них через "Disabled" или "Enabled" запрещает или разрешает использование "полных" линий чтения.

    Опция "CPU-to-PCI Read-Line" имеет значения "On" и "Off", но различия на этом не заканчиваются. Опция под таким наименованием была введена и оптимизирована для работы с процессорами Intel OverDrive. Поэтому повышение эффективности использования CPU может быть достигнуто только с указанными процессорами. В противном случае опция должна быть отключена.

    CPU Read Multiple Prefetch

    - опция включения/отключения режима множественной предвыборки. Смысл процесса предвыборки (prefetch) заключается в том, что процессор, выбирая нужную инструкцию (например, из PCI-шины или памяти), одновременно начинает читать следующую, тем самым инициируя следующий процесс. Этому "способствует" то, что чипсет может иметь четыре линии чтения. Например, первые наборы логики с поддержкой процессоров Pentium Pro (Intel 450KX/GX, оба с кодовым названием Orion) как раз имели 4 такие линии чтения. Множественная же предвыборка позволяет выполнять одновременно несколько операций выборки инструкций, что существенно повышает быстродействие системы. По умолчанию устанавливается "Disabled".

    Опция может называться и "CPU Multiple Read Prefetch".

    Если же речь не идет о "множественных" операциях, то опция может называться "CPU Line Read Prefetch", "CPU Read Prefetch".

    I/O Space Access

    - данная опция через "Enabled" разрешает доступ ко всему пространству адресов ввода/вывода. Редкий BIOS обходится без странных опций.

    Linear Burst

    - на материнских платах, предназначенных также для для использования семейства процессоров Cyrix 6x86/L/MX, обычно используется джампер для переключения между процессорами семейств "Pentium" и "AMD", с одной стороны, и "Cyrix", с другой. Этот джампер, как правило, носит название "CPU Burst Mode", что говорит об особенностях архитектуры данных процессоров. Естественно, что при установке "Cyrix"-процессоров в слот Socket 7 опция должна быть включена ("Enabled"), так как она и была введена в BIOS для поддержки, например, процессоров Cyrix M1/M2.

    Опция может называться "Linear Burst (LINBRST)", "M1 Linear Burst Mode" или "M1/M2 Linear Burst".

    M1/M2 Burst & K6 Write Alloc.

    - данная опция предназначена для поддержки не только процессоров семейства "Cyrix", но и процессоров "AMD K6". О функции "K5/K6 Write Allocation" детально рассказано в разделе "Кэширование памяти". Поэтому необходимо упомянуть только значения опции: "Disabled", "Enabled".

    Processor Number Feature

    - опция для установки автоматического считывания и вывода информации о встроенном серийном номере процессора Pentium III в BIOS материнских плат, поддерживающих его установку. Для реализации такой возможности, естественно, требуется значение параметра как "Enabled". Во всех остальных случаях устанавливается значение "Disabled". Оно же устанавливается по умолчанию.

    Опция может носить название "Processor S/N". В "Phoenix BIOS" встречена аналогичная опция с названием "CPU Serial Number", а в "AMI BIOS" - "Processor Serial Number".

    Зачем нужна информация о серийном номере? Скажем, для внешних программ. Один из примеров - считывание информации о процессоре при работе в Интернет. Естественно, что при этом нарушаются конфиденциальность и права пользователя. В свое время эта проблема достаточно бурно обсуждалась.

    3.1. CPU Speed

    Материал данного подраздела построен в соответствии со стандартными действиями пользователя: установка тактовой частоты системной шины + установка множителя (коэффициента перемножения) = установка внутренней частоты (частоты ядра) процессора. В большинстве современных версий BIOS опции установки частот системной шины, процессора вынесены, как правило, в отдельное меню, которое может называться, например, "CPU Frequency Control". Но вполне реальна и ситуация, когда для возможных пользовательских действий через BIOS предварительно необходимо переставить соответствующую перемычку на системной плате в положение типа "Configure".

    CPU Host Clock Select

    - опция установки тактовой частоты системной шины. Еще не так давно BIOS достаточно новой материнской платы мог предложить такой замечательный ряд значений (в МГц): 66, 75, 83, 100, 103, 112, 124, 133. Затем появились наборы из 16-18 фиксированных значений, но они начинали отсчет уже со значения 100 МГц. В общем случае вариаций установки частоты может быть достаточно много. Особенно в этом плане выделяются материнские платы, буквально созданные для разгона (например, компаний "Soltek", "Abit", "ASUS"). И тогда без проблем можно "добраться" и до 166 МГц, и даже выше.

    Опция может называться "CPU Bus Frequency" и предлагать такую подборку: "Auto", "66.8MHz", "68.5MHz", "75MHz", "83.3MHz", "100MHz", "103MHz", "112MHz". Значение "Auto" устанавливается по умолчанию и оно является рекомендованным.

    Может быть предложен более "изощренный" вариант опции, связанный с тем, что модули памяти работают на частоте системной шины. Тогда опция может называться "Host/DRAM Frequency", а значения будут следующими: "66 MHz", "100 MHz". Понятно, что в данном варианте речь идет о SDRAM-памяти и интеловском чипсете с двумя фиксированными значениями тактовой частоты, например, 440BX.

    Опция может называться "CPU Host Clock" или "External Bus Speed".

    Несколько нестандартной оказалась опция "CPU Clock/Spread Spectrum" (смотри раздел "Special"). Согласно опции устанавливается не только частота системной шины, но и разрешается/запрещается ("On"/"Off") включение механизмов понижения электромагнитной интерференции в системе. На выбор параметров влияет также и установка базовой перемычки тактовой частоты шины процессора: 66 или 100 МГц. В итоге для предустановленных 66 МГц имеем следующий набор значений: "Default", "66MHz/Off", "66MHz/On", "75MHz/Off", "83MHz/Off", "95MHz/Off". Если же предварительно установлено 100 МГц, то имеем такой внушительный ряд: "100MHz/Off", "100MHz/On", "112MHz/On", "117MHz/On", "124MHz/Off", "133MHz/Off", "133MHz/On", "138MHz/Off", "140MHz/On", "150MHz/Off".

    Опция "CPU Operating Speed" через значение "User Define" дает возможность устанавливать частоту FSB (Front Side Bus) от 66 до 153 МГц. В противном случае можно однозначно выбрать одно из фиксированных соотношений частоты ядра CPU и частоты шины от "300/66" до "1G/133".

    Непосредственно к рассматриваемой теме примыкают вопросы т.н. "разгона" (overclocking) процессоров. Эта проблема уже достаточна освещена в литературе, нет смысла на ней останавливаться подробно. Со стороны же установок BIOS очень удобно, когда пользовательские действия адекватно воспринимаются и оцениваются. В этом плане меню "CPU Bus/PCI Freq" наиболее оптимально. Ведь превышение частоты PCI-шины свыше 37 МГц может повлечь за собой неисправность не только карт расширения, но и сбои жестких дисков.

    В последние годы вариаций опций для установки системной частоты стало очень много. Простое их перечисление заняло бы немало места. Перечислим лишь некоторые. "CPU Host Clock Frequency". "CPU Host/PCI Clock" предлагает значение "Default", что равнозначно автоматической установке "стандартных" значений, а также возможность комбинирования двух системных частот. Опция может называться "CPU Host/3V66/PCI Clock".

    CPU Ratio

    - может принимать значения: 2, 2.5, 3, 3.5, 4, 4.5, 5, 5.5, 6, 6.5, 7, 7.5. Приведен практически весь возможный ряд коэффициентов умножения, который, как и сама опция, впрочем может отсутствовать вовсе, если коэффициент является фиксированным. Это довольно обычная ситуация, если речь идет об "интеловских" комплектующих. "Благоприятная" ситуация позволяет настраивать параметры работы CPU через BIOS, включая естественно нашумевший разгон процессоров.

    Опция может называться "CPU Freq Ratio", а ряд значений может иметь несколько непривычный вид: "1:2", "1:3", "1:4", "1:5", "1:6", "1:7", "1:8", "2:5", "2:7", "2:9", "2:11", "2:13", "2:15".

    В некоторых случаях для коэффициента умножения "не жалко" и двух опций: "CPU Multiplier Shown" и "CPU Multiplier (Real)". Одна из этих опций позволяет установить значение вручную, а другая выводит на экран реально полученное значение, которое может и отличаться от желаемого.

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

    CPU Speed

    - поскольку внутренняя частота процессора является результатом перемножения двух других параметров, то данная опция носит информационный характер. Результирующая частота процессора может быть представлена, например, в таком виде: 133 MHz (66 x 2).

    Опция может называться "CPU Frequency (MHz)".

    Во многих случаях данная опция выносится наверх окна соответствующего меню (подменю) "BIOS Setup", хотя ее значение является результатом вычисления. Но в некоторых случаях пользователь может иметь доступ к параметрам данной опции. Опция "CPU Speed" может предложить значение "Manual", тогда активируются поля "CPU Ratio" и "CPU Host Clock" для индивидуальных установок. Но это конкретная реализация не только версии BIOS, но и системной платы, наверняка содержащей специальную перемычку для возможности ручных настроек. В подтверждение сказанному можно привести параметры опции "CPU Speed" для материнской платы AbitSM2: "User Define" и "Automatic".

    В продолжение и дополнение вышесказанного необходимо выделить опцию "CPU Freq Select" со значениями "Hardware" и "Software", определяющими метод установки внутренней частоты процессора. Первое значение определяет использование соответствующих перемычек на системной плате, второе же предполагает применение настроек через "BIOS Setup". Но также реальна ситуация с непосредственным выбором частоты процессора без каких-либо предварительных установок. Так опция "Processor Speed" предложила ряд значений ("233", "266", "300" и т.д.), а пользователь должен понимать, что имея фиксированные 66 МГц, он косвенно устанавливает множитель: 3.5, 4, 4.5 и т.д.

    CPU Vcore

    - (установка напряжения ядра процессора). Не так уж много времени прошло с тех пор, как в современных системах был реализован мониторинг некоторых напряжений на материнской плате, "оборотистости" вентиляторов и контроль температуры. Появилась возможность устанавливать "критический" предел для температуры процессора и некоторые другие параметры. Можно ли было мечтать о самой возможности регулировки питания процессора! Но это уже прошлое!

    При практически любом современном тестировании системных плат или отдельных системных компонентов возможности "разгона" оцениваются чуть ли не прежде всего, следуя за простым перечислением комплектности, оснащенности материнской платы. И производители системных плат не могут не учитывать желания миллионов пользователей. Еще не так давно такие компании, как "AOpen", а тем более "Soltek" или "Shuttle", вряд ли могли похвастаться заметной долей на рынке системных плат. Теперь же сравнительное тестирование материнских плат, чипсетов не обходится без их участия. И все благодаря заложенным возможностям "разгона" (достаточно вспомнить "нашумевшую" плату "Soltek SL-75DRV").

    Одним из факторов, расширяющих эти возможности, является простая необходимость изменять (увеличивать!) напряжение питания ядра процессора. Сохранение стабильности системы при "простом" частотном "разгоне" без увеличения напряжения ядра процессора маловероятно. И данная опция предоставляет, как правило, целый ряд значений, который может видоизменяться как от версии BIOS или ее производителя, так и от производителя системной платы, чипсета, предназначенного для него процессора, а значит и напряжения ядра. Поэтому вариаций достаточно много. Приведем такой ряд значений: "1.750V", "1.775V", "1.800V", "1.825V", "1.850V" (напомним, что допустимое значение может составлять 1,5 В). Как видим, шаг составляет 0,025 В, и это "хороший" шаг! Ведь конкурентная борьба идет и за этот показатель. В проигрыше (при прочих равных показателях) может оказаться тот, кто предложит возможность изменять напряжение питания ядра процессора с шагом в 0,05 В. Стоит также напомнить, что значения порядка 1,8 В весьма близки к критическим, и любые действия в этом направлении более опасны, чем эксперименты с таймингами или прерываниями!!! Некоторые версии BIOS просто не позволяют переходить предел в 1,8 В. К счастью для пользователей Intel в своих последних моделях Pentium IV на ядре Northwood предусмотрела защиту, которая в случае опасности выхода процессора из строя тормозит его работу, тем самым сигнализируя о недопустимости каких-либо дальнейших действий по "разгону".

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

    CPU Speed CPU:System Frequency Multiple System/PCI Frequency (MHz) System/SDRAM Frequency Ratio

    CPU Vcore

    Опция может называться также "CPU Voltage Regulator". Опция "CPU Core Voltage", имея значение "Auto", также дает возможность устанавливать напряжение ядра процессора вручную.

    SEL 100/66# Signal

    - своим рождением этот сигнал ("100/66#") центрального процессора был обязан внедрению в материнские платы 100-мегагерцовой системной шины. Управление сигналом через установки BIOS приводит к тому, что линия, соответствующая этому сигналу, либо свободна ("high" - 100 мГц), либо заземлена ("low" - 66 мГц). Тем самым управление сигналом приводит к выбору частоты системной шины.

    Позднее этот сигнал был переименован в "BSEL0#", а в паре с "BSEL1#" он стал принимать участие и в установке частоты шины в 133 мГц (см. таблицу).

    * Контакты приводятся для разъема Socket-370

    Speed Error Hold

    - эту опцию можно перевести, как "сохранение скорости при ошибке". Речь идет об установке нештатной внутренней частоты центрального процессора и ее последствиях. После установки такой частоты в "BIOS Setup" и последующей перезагрузки система просто остановится, а пользователь не получит желаемого "разгона". Правда, ошибочка вышла с названием опции. Данная опция появилась уже давненько, а вот фирменные технологии типа "RedStorm" совсем недавно. Вот они то и позволяют "сохранять" оптимальные частоты, по сути перестраивая "BIOS Setup" для последующей загрузки. Но это отдельная тема! Значения же рассматриваемой опции: "Enabled" (оно остановит загрузку) и "Disabled". Данная опция в свое время часто использовалась компанией "Abit" в своих системных платах.

    Turbo Frequency

    - данная опция (по наименованию) конечно же напоминает турбо-функции, изложенные ранее. Но! Речь вовсе не идет об устаревшей опции, влиявшей на некоторые скоростные характеристики, работу кэш-памяти, т.п. С помощью данной опции можно либо блокировать возможность изменения системной частоты, либо иметь такую возможность ("Enabled"). Представленная опция, как правило, функционирует в составе меню, позволяющем программно устанавливать частотные характеристики системы, т.е. через BIOS, или просто вместе с другими базовыми опциями. В свое время компания "ABIT" первой "проложила путь" к ставшим потом стандартными т.н. "CPU SoftMenu".

    Конечно же данная опция не решает задачи увеличения частоты системной шины в n раз. Этот рост частоты может составлять 2,5%, не более. Да и система должна поддерживать прежде всего такой "Turbo"-режим. Но рассматривая возможность изменения системной частоты, пользователь однозначно должен предвидеть появление проблем со стабильностью системы. Для центрального процессора увеличение внутренней частоты на 2,5% не должно вызвать никаких проблем. Проблемы могут появиться в работе системной памяти, периферии, хотя в большинстве случаев стабильность системы не должна пострадать! Данную опцию вполне можно назвать "оверклокерской", хотя серьезных "разгонщиков" она вряд ли устроит.

    В некоторых случаях включение режима "turbo frequency" осуществляется путем переустановки соответствующего джампера на материнской плате, и приведенная опция, не имея никаких параметров, только показывает "разогнанную" частоту.

    Turbo Mode (75 MHz)

    - специальная опция "AMI BIOS", предназначавшаяся для работы процессора Pentium II на 75-мегагерцовой системной шине. При установке опции в "Disabled" устанавливалась стандартная частота шины - 66 МГц. Включение же опции допускалось при использовании высококачественных плат расширения, модулей памяти, что требовалось спецификацией "Intel" в отношении нестандартной частоты. В противном случае система могла работать нестабильно.

    Дополнительная информация о функциях чипсета и CPU содержится в опциях главы "PCI - Арбитраж, Bus-Master".

    4. Memory

    Memory Current

    - опция "Phoenix BIOS" с установкой тока нагрузки для модулей памяти. Значения параметра следующие:

    "8mA" - модули памяти требуют тока нагрузки в 8 мА, "12mA" - модули памяти требуют тока нагрузки в 12 мА. Установка "12mA" становится необходимой, если используются модули памяти большой емкости (64 МБ и более), которые содержат большое число чипов памяти.

    4.1. ECC, Parity

    Устройствам динамической памяти присущ один серьезный недостаток - вероят­ность ошибки считывания информации из ячейки. Для обнаружения ошибок памяти и их корректировки используются схемы проверки целостности данных. Существует 2 способа контроля - с помощью проверки бита четности и с помощью кода коррекции ошибок (ECC - Error Correction Code или Error Checking and Correction). Второй способ надежнее, хотя сравнивать эти методы можно с большой натяжкой.

    Для пpовеpки ошибок памяти по четности (во время проведения POST, обычного режима работы) каждый байт информации должен иметь дополнительный девятый pазpяд, котоpый пpи каждом обpащении к ОЗУ по записи устанавливается таким обpазом, чтобы общее число единиц было нечетным. Пpи каждом обpащении по чтению пpовеpяется признак нечетности. Естественно, что поддерживающие проверку по нечетности модули памяти должны содержать дополнительный модуль для хранения этой дополнительной информации. Пpи обнаpужении ошибки возникает немаскиpуемое пpеpывание NMI, котоpое нельзя блокиpовать. Компьютер при этом пpекpащает pаботу, и на мониторе отобpажается сообщение об ошибке памяти, обычно в виде "PARITY ERROR AT 0AB5:00BE SYSTEM HALTED".

    Недостаток такой схемы очевиден. Невозможно на основе такого метода контро­ля целостности исправлять обнаруженные ошибки. Метод же ECC, применяемый на высокоуровневых ПК, серверах, позволяет обнаруживать и исправлять однобитовые ошибки памяти. Двухбитные ошибки определяются при этом, но не исправляются. В отличие от метода по четности при реализации коррекции ошибок каждый бит входит более чем в одну контрольную сумму, что позволяет в случае возникновения ошибки в некотором бите восстановить адрес ошибки и исправить ее. Далеко не все чипсеты поддерживали и поддерживают коррекцию ошибок. К тому же с середины 90-х годов схемы обычного контроля четности применяются все реже. Надо отметить, что ECC не является панацеей от дефектной памяти и применяется для исправления случайных ошибок.

    Контроль четности (или метод по модулю 2) существует уже давно. В военной цифровой технике передачи данных существуют более сложные методы, например, по модулю 15. Методы коррекции ошибок также имеют свою предысторию. В системах передачи данных (в частности, телемеханике) также давно применяются и коды Хэмминга, и циклические коды с образующим полиномом, и т.п.

    SmartCorrect - технология автоматической коррекции ошибок, разработанная корпорацией "Distributed Processing Technology" (DPT), предназначена для защиты всей под­системы массовой памяти. Благодаря платам памяти с системой автокоррекции ошибок, высокопроизводительные адаптеры фирмы DPT могут обна­руживать и устранять любые нарушения целостности данных, возникшие на уров­не кэш-памяти адаптера или на участках прохождения данных.

    CPU Level 2 Cache ECC Check

    - опция включения/отключения коррекции ошибок кэша второго уровня у процессоров архитектуры Pentium II и выше, которые поддерживают эту опцию. К примеру, процессоры Pentium II поддерживает коррекцию ошибок, начиная с частоты в 333 МГц. Включение ECC-коррекции несомненно повышает надежность системы, но при этом ее работа, как обычно указывается, несколько замедляется. Но сразу надо отметить, что это замедление несущественно и не должно служить причиной отказа от включения опции.

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

    Подытоживая сказанное, можно рекомендовать следующие установки. Если система поддерживает коррекцию ошибок, то она должна быть применена. Естественно, что при отсутствии кэш-памяти второго уровня или ее блокировке данная опция будет также недоступна, хотя представить себе систему без кэша второго уровня наверно сложно. Может принимать значения: "Enabled" - разрешено, "Disabled" - запрещено.

    Чуть другие названия этой же опции: "CPU Level 2 ECC checking", "CPU L2 Cache ECC Checking" и "L2 Cache ECC Support".

    "AMI BIOS" предлагает несколько иное наименование опции, но речь идет о том же кэше второго уровня - "Cache Bus ECC". Еще одна опция - "ECC CPU Checking".

    Data Integrity (PAR/ECC)

    - (целостность данных). Опция разрешения/запрещения контроля памяти на ошибки. Вид контроля устанавливается параметром "DRAM ECC/PARITY Select". Для включения данной опции требуется поддержка модулями памяти уже известных нам технологий. Может принимать значения: "Enabled" - разрешено, "Disabled" - запрещено.

    DRAM Data Integrity Mode

    - (режим целостности данных DRAM). Это опция включения/отключения проверки целостности памяти. Включение опции позволит системе отслеживать и корректировать однобитные ошибки. Так же будут обнаруживаться двухбитные ошибки, но без исправления. Использование режима коррекции ошибок обеспечивает увеличение стабильности и целостности данных в системе, правда, при небольшой потере производительности. Если в системе не используются ECC-модули памяти, то опция должна быть отключена. Опция может быть отключена и при наличии ECC-модулей, но если ситуация в системе благоприятствует сохранению более высокой производительности. Может принимать значения:

    "ECC" (иногда - "ECC Hardware") - разрешена коррекция, "Non-ECC" - коррекция запрещена.

    В некоторых случаях опция с тем же названием может иметь другой "набор" параметров: "Parity" и "ECC". При этом меняется и содержание функции. Опция может называться "DRAM Integrity Mode".

    В "Phoenix BIOS" содержится аналогичная опция с названием "ECC Control". "Enabled" разрешает проведение коррекции (по умолчанию), "Disabled" запрещает. То же содержание вложено в опцию "ECC Memory Checking".

    Значения "non-ECC" и "ECC" принадлежат и опциям "Memory Configuration", "ECC Configuration", хотя первая из них не совсем однозначна в наименовании.

    В некоторых случаях к имеющимся параметрам может быть добавлено еще одно - "EC only" (режим проверки на четность, но только с выводом сообщений о возникновении ошибки). В зтом случае данная опция становится аналогичной одному из вариантов опции "DRAM ECC/PARITY Select", но при этом возникновение ошибки не приводит к полной остановке системы.

    DRAM ECC/PARITY Select

    - опция выбора режима коррекции ошибок/проверки по четности. Эта опция появляется только в BIOS тех материнских плат, в которых чипсет поддерживает ECC, и может быть использована только в том случае, если установлены модули памяти с истинной четностью. В некоторых вариантах BIOS этим параметром может устанавливаться только вид проверки, а разрешение на проверку устанавливается параметром "Data Integrity (PAR/ECC)" или аналогичным. Параметр может принимать значения:

    "Parity" (по умолчанию) - в случае возникновения ошибки на монитор выдается сообщение о сбое по четности в памяти и работа компьютера останавливается,

    "ECC" - в случае возникновения одиночной ошибки она исправляется (без вывода каких-либо сообщений) и работа системы продолжается. Если имеет место не одиночная ошибка, то работа компьютера также приостанавливается. Следует только учесть, что, по данным "Intel", скорость обмена с памятью при включении этого режима уменьшается приблизительно на 3%.

    "Phoenix BIOS" содержит аналогичные опции под названиями "Parity Mode" (или "Memory Parity Mode") и со следующими значениями:

    "Disabled" - проверка памяти запрещена, "Parity" (по умолчанию) - аналогично, как и в "Award BIOS", "ECC" - так же аналогично, как и в "Award BIOS", сообщение выводится только при двухбитной (и более) ошибке.

    "AMI BIOS" "подарил" нам два варианта опции "Memory Error Detection". В одном случае значения параметра оказались уже знакомыми: "Disabled", "ECC", "Parity". Другой же вариант по сути стал аналогом функции "DRAM Data Integrity Mode" с разрешением или запрещением коррекции ошибок ("Enabled"/"Disabled").

    Memory Parity/ECC Check

    - опция разрешения/запрещения проверки целостности данных. Может принимать значения: разрешен контроль памяти на ошибки ("Enabled"), запрещен ("Disabled") и "Auto". Последняя установка активизирует проверку памяти автоматически с автоматическим же определением возможностей модулей памяти, как по четности, так и по коррекции ошибок. В другой версии BIOS в этой же опции может отсутствовать параметр "Auto".

    Только два параметра ("Enabled"/"Disabled") предлагает и опция "Memory Parity (Error) Check". При включении опции и отсутствии необходимых модулей памяти загрузка ПК может прерваться с выводом сообщения "Parity Error".

    Осталось отметить следующее! В случае приостановки загрузки системы из-за появления ошибки по четности (или при коррекции) и необходимости все таки произвести загрузку операционной системы, единственный путь обойти POST-тестирование - это запретить любые проверки памяти на четность и т.п. ("Disabled").

    Single Bit Error Report

    - (сообщение об однобитовой ошибке). Если включен режим коррекции ошибок, то установка опции в "Enabled" позволит системе вывести сообщение о имеющей место однобитовой ошибке и ее коррекции. Решение этой задачи берет на себя контроллер памяти, он же направляет центральному процессору сообщение об ошибке памяти. Отключение опции ведет к отказу от вывода сообщений, но коррекция никак не отменяется.

    4.2. "Затенение" памяти, выделенная память

    "Shadow Memory" - это так называемая "теневая" память. В адресах памяти от 640 КБ до 1 МБ (A0000h - FFFFFh) находятся "окна", через которые "видно" содержимое различных системных ПЗУ. Например, адреса F0000h - FFFFFh занимает системное ПЗУ, содержащее BIOS системы, окно C0000h - C7FFFh - ПЗУ видеоадаптера (видео-BIOS) и т.п. При включении режима "Shadow" для каких-либо адресных диапазонов, соответствующих системным ПЗУ либо картам расширения, содержимое их ПЗУ копируется в участки основной памяти, которые затем подключаются к этим же адресам вместо ПЗУ, "затеняя" их. Дает ли это какие-нибудь преимущества? Повышается ли при этом производительность системы? Включение "затенения" дает в первую очередь значительное ускорение работы с данными ПЗУ за счет более высокого быстродействия микросхем ОЗУ (в сравнении со временем доступа к ROM BIOS в 150-200 нс). Кроме того, при обращении к микросхемам BIOS непосредственно используется 8-разрядный доступ (8-битная шина "X-bus"), что включение "затенения" ПЗУ делает еще более эффективным. Это означает, что при обращении к постоянной памяти за один такт можно считать только один байт в отличие от 32-разрядного, как минимум, доступа к оперативной памяти (16-битный доступ ушел в историю с уходом 286-х систем). Кроме этого, появляется возможность модифицировать видимое содержимое ПЗУ: все современные системные BIOS используют это для самонастройки, а в область видео-BIOS обычно загружаются экранные шрифты и т.п.

    Что это за теневая память физически? Этот вопрос связан с распределением памяти вообще. В первом мегабайте памяти используются по прямому назначению, т.е. как основная память, 640 КБ, а остальные 384 КБ оказываются в адресном пространстве, зарезервированном для ПЗУ и внешних устройств. В современных платах вся память представляет собой непрерывный массив, поэтому разрывать адресное пространство модулей памяти на две части нельзя и поэтому часть системной области приходится аппаратно исключать, теряя при этом 384 КБ.

    Как скопировать в эту память содержимое ПЗУ? Для этого применяют несколько способов:

    1) Организация "Shadow Memory". Доступ к ней регулирует чипсет. Как правило, "Shadow Memory" находится в адресном пространстве в том же месте, где и исходное ПЗУ. Поскольку две области памяти в одном месте физически находиться не могут, для управления этой памятью в чипсете есть специальная схема, которая может подключить в этот фрагмент адресного пространства либо исходное ПЗУ, либо ОЗУ.

    Несколько слов о защите от записи. Обычно "Shadow Memory" в нормальном состоянии находится в режиме "Read Only" (только для чтения). Это породило проблемы, например, при написании русификаторов, так как приходится открывать "затененные" участки той же видеопамяти. Различные версии BIOS позволяют решать эту проблему, имея опции с возможностью указания, следует ли оставлять требуемый диапазон "Read Write" или "Read Only".

    Но не только BIOS способен управлять Shadow-функциями чипсета. Такое управ­ление может осуществлять программа, умеющая корректно обращаться к регистрам чипсета на низком уровне. Начиная с 386-х в защищенном режиме работы процессора имеется страничная организация памяти, обеспечивающая формирование физического (реального) ад­реса из виртуального адреса программы. Именно эта возможность и обеспечива­ет в большинстве распространенных драйверов памяти (менеджеров) не только выполнение функций затенения, но и получение памяти EMS при наличии расширенной памяти в компьютере. Программно возможности "Shadow"-функций менеджеров памяти значительно более гибкие, чем у чипсета, управляемого BIOS. В частности, управление размерами памяти, выделяемой для "Shadow Memory", может производиться достаточно малыми по размеру страницами - 4 КБ, что позволяет эффективнее использовать адресное пространство первого мегабайта. В MS-DOS возможность управления "Shadow"-памятью имеет драйвер памяти HIMEM.SYS (ключ /SHADOWRAM:ON|OFF).

    Затенение полезно, главным образом, в 16-разрядных ОС. 32-разрядные системы не используют 16-разрядный код из ROM. Вместо него они загружают 32-разрядные драйверы в ОЗУ, заменяя ими 16-разрядный код BIOS, который, таким образом, используется только в процессе загрузки системы.

    2) Организация блоков верхней памяти UMB (Upper memory blocks), по сути аналогия предыдущему варианту.

    3) Перемещение (relocation). Это перенос неиспользуемой памяти из системной области (640 КБ - 1 МБ) в область расширенной (Extended) памяти. Чаще всего перемещаться может весь фрагмент сразу, то есть все 384 КБ. Это связано со сложностью схемы управления адресными линиями. В этом случае освободить остаток первого мегабайта можно, только выключив все без исключения установки "Shadow". В первых IBM PC устанавливалось 640 КБ основной памяти и отдельно расширенная память, поэтому со старшими 384 КБ проблем не возникало. Позднее, а это также было давно, некоторые чипсеты (Neat, OPTi495, SiS471, др.) имели возможность переносить старшие 384 КБ за пределы пеpвого мегабайта, пpисоединяя их к pасширенной памяти. Одни чипсеты могли переносить свободные от "затенения" участки, другие - только все 384 КБ целиком.

    Последующая серия опций объединена одной темой ("Теневое ПЗУ адаптеpа ХХХХ,16K") и представляет собой, в основном, устаревшие аппаратные решения.

    Adaptor ROM Shadow C800,16K

    - опция для маскиpования ПЗУ некотоpых специальных каpт - сетевых, различных контpоллеpов и т.п. По умолчанию устанавливается "Disabled". Установка в "Enabled" допустима только тогда, когда в систему инсталлирована каpта расширения с ПЗУ, занимающим эти адpеса. В свое время большинство дисплейных видеоадаптеров, таких как MDA, Hercules, использовали ПЗУ с адpесом C800. Поскольку эти каpты были низкоскоростными, затенение этого адpеса улучшало общую пpоизводительность системы.

    Дополнительная и интересная информация! Некотоpые версии BIOS допускали включение теневого ОЗУ со снятой защитой от записи. Пpи помощи дpайвеpа возможно было использование "теневой памяти" в качестве области UMB. Это давало некотоpое пpеимущество в скоpости в сpавнении с UMB-областью, обеспечиваемой пpи помощи драйвера EMM386.

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

    Adaptor ROM Shadow CC00,16K - эта область предназначалась для некоторых (естественно, старых) адаптеpов жестких дисков.

    Adaptor ROM Shadow D000,16K - адресная область для использования сетевыми картами.

    Adaptor ROM Shadow D400,16K - некоторые специальные контроллеры (это было давно) для четырех floppy-дисководов имели отображаемый BIOS ROM в диапазоне адресов D400...D7FF. Adaptor ROM Shadow D800,16K Adaptor ROM Shadow DC00,16K

    Adaptor ROM Shadow E000,16K - возможная область для размещения EMS-страницы.

    Adaptor ROM Shadow E400,16K Adaptor ROM Shadow E800,16K

    Adaptor ROM Shadow EC00,16K - эта область могла быть использована системой после копирования SCSI-контроллерами своего BIOS. Некоторые SCSI-контроллеры не использовали адресов ввода/вывода. Их адресный BIOS-диапазон содержал перезаписываемые адреса, которые в действительности являлись I/O-портами. Это означало, что эти адреса не должны были затеняться и даже кэшироваться.

    Совершенно аналогично "работали" следующие опции:

    C8000-CBFFF Shadow CC000-CFFFF Shadow D0000-D3FFF Shadow D4000-D7FFF Shadow D8000-DBFFF Shadow DC000-DFFFF Shadow

    Совершенно те же опции предложил "Phoenix BIOS" в меню под названием "Shadow Memory Regions". Хотя то же меню "Phoenix BIOS" в другом варианте предложило "укрупненные" области памяти "C8000-CFFFF" (и т.д.) со значениями "Disabled" и "Shadow".

    И совершенно ясно, что возможны также другие вариации по "затенению". Например, опция "E8000 - EFFFF Shadow" может быть использована для поддержки интегрированного SCSI-контроллера.

    И еще одно важное замечание, не утратившее актуальности и по сей день. Речь идет о специализированных ISA-адаптерах с микропроцессорами, память которых организована как двухпортовая. Если память такого микропроцессора по одному из портов со стороны компьютера адресуется как страница в области указанных адресов, то "затенение" для этой области должно быть запрещено ("Disabled").

    Обобщая сказанное, необходимо отметить, что затенение разделяемой ("shared") памяти недопустимо. Разделяемая память служит также в качестве буферов сетевых контроллеров, т.п.

    Еще пример затенения адресных областей:

    C000,16K Shadow C400,16K Shadow C800,16K Shadow CC00,16K Shadow D000,16K Shadow D400,16K Shadow D800,16K Shadow DC00,16K Shadow

    Ничего нового, разве что первые две опции меню неявно предназначены для затенения видео-BIOS (см. подробно ниже). На этом остановимся, ибо есть еще вариации по затенению областей памяти в виде отдельных меню, но пользователю уже несложно будет с ними разобраться.

    4.2. "Затенение" памяти, выделенная память (продолжение)

    Base Memory Address

    - данной опцией устанавливается начальный адрес адресного диапазона, выделяемого под потребности некоторой PCI-карты. Понятно, что возможности адресации обеспечиваются 32-разрядной шиной.

    Опция может называться "Memory Start Address".

    BIOS Devnode for Shadow RAM

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

    CD Hole

    - столь необычная опция "AMI BIOS" предназначена для управления адресной областью в диапазоне DC000h - DFFFFh. Если установлено значение "Disabled", то любое обращение, запрос к данному пространству направляется основному SCSI-контроллеру (хотя это может быть и сетевое устройство). Если же выбрано "Enabled", доступ к этому региону памяти контролируется одним из PAM (Programmable Attribute Map) регистров, т.е. стандартным способом.

    Стоит остановиться на этой теме подробнее.

    В состав "северного" (Host-to-PCI Bridge) моста чипсета, среди множества других, входят и семь программируемых PAM-регистров. Через установку различных аттрибутов они позволяют управлять тринадцатью адресными сегментами различного размера в диапазоне от 640 КБ до 1 МБ адресного пространства. С другой стороны, кэширование этими областями осуществляется через MTRR-регистры центрального процессора (о них будет сказано ниже). Каждый PAM-регистр (см. таблицу) контролирует два региона, обычно по 16 КБ каждый. Каждый из регионов "обслуживается" четырьмя битами, два из которых зарезервированы, а два остальных - это "Read Enable" и "Write Enable". В зависимости от состояния этих бит ("0" или "1") осуществляется либо доступ к основной памяти, либо запросы перенаправляются на PCI-шину. Поэтому, если установлены два "0", доступ к выбранному диапазону памяти невозможен.

    В процессе начальной загрузки и выполнения инструкций BIOS при копировании некоторого BIOS в выбранную "затеняемую" область в соответствующем регистре по соответствующему аттрибуту "Write Enable" устанавливается "1". После окончания всех процедур, связанных с затенением, для данного диапазона (регистра) устанавливается режим "только для чтения" (read only), что соответствует аттрибутам "Read Enable", равным "1", и "Write Enable", равным "0". При этом все циклы записи в данную область перенаправляются непосредственно шине расширения. Понятно, что если речь идет о выделенной RAM-памяти, то оба аттрибута будут равными "1".

    Таблица 1. Примечание. * - Сегмент C0000h - CFFFFh может быть использован SMM-пространством, если используется SMRAM-регистр (об SMM см. ниже).

    E0000 ROM belongs to ATBUS

    - один из примеров "стареньких" опций по выделению фрагмента из "верхней" памяти для использования системными устройствами. В данном случае "Yes" позволяло зарезервировать такой фрагмент за AT-шиной. Обычно, E000-область зарезервирована за кодом системного BIOS, но некоторые системы не использовали его стандартным образом. Например, "OS/2" использовала этот диапазон для работы в защищенном режиме и "грузила" код Advanced BIOS в область E000h-EFFFh.

    E8000 32K Accessible

    - аналогичная опция, хотя и не такая "древняя", поскольку предназначалась для использования (и опция, и адресная область) PS/2-системами, 32-разрядными ОС, под "PnP"-область.

    Extended ROM RAM Area

    - наличие этой опции характерно для старых версий "AMI BIOS". Пользователю предоставлялся выбор, где хранить данные о жестком диске: в верхнем килобайте базовой системной памяти, начиная с 639-го килобайта, или в адресах нижней памяти в области DOS-памяти или системного BIOS (0:300). Необходимо было помнить, что вторая адресная область могла также использоваться некоторой периферией (звуковыми, сетевыми и т.п. картами расширения). В этом случае конфликтов можно было избежать, если система через BIOS могла использовать полноценные механизмы "затенения", которые впрочем могли и отсутствовать в очень старых системах. Вполне возможна была ситуация с изменением параметров жесткого диска в этой области памяти перед ее полным отображением, так как в ней содержался блок параметров фиксированного диска. В некоторых случаях могло потребоваться изучение документации на соответствующие платы расширения или контроллеры по использованию ими данной области памяти.

    Опция могла (или может) называться "RAM Area" или "Hard Disk Type 47 - RAM Area". Последняя опция напоминает нам о процедуре пользовательской установки параметров жесткого диска.

    ISA LFB Size

    - опция "AMI-BIOS" для установки размера линейного буфера кадра (LFB - Linear Frame Buffer), во многом аналогичная или близкая по смыслу нижерасположенной "Memory Hole At 15M-16M". Кроме размещения ROM-адреса в пределах 15-16 МБ, опция позволяла (в таком виде она уже не встречается) установить размер линейного видеобуфера графических адаптеров в области основной памяти, доступной для ISA-шины (1, 2, 4 МБ). Это суть диапазоны 15-16, 14-16 и 12-16 МБ соответственно. Еще одним значением являлось "Disabled" с отказом от выделения под ISA-адаптер линейного буфера кадра. "Disabled" могло потребоваться при объеме памяти не более 8 МБ (в 96-м г. это было почти пределом) и при работе с MS-DOS. Такое же значение необходимо было установить при использовании ISA-карт с отсутствующим кадровым буфером. Запрещение опции не позволяло использовать "Plug and Play's Configuration Manager" или "ISA Configuration Utility". Если же какое-то из значений ("1 MB", "2MB" или "4MB") было выбрано, то следующая опция "ISA LFB Base Address" становилась доступной.

    DOS-приложение могло использовать стандартно под видеопамять только 64 КБ основной памяти. В этом объеме не "поместится" и "хороший" графический файл. Совместно развивающиеся технологии памяти и работы с ней позволили создать механизм пейджинга, суть которого заключается в том, что можно отображать разные части видеопамяти на один и тот же видеосегмент (0a000h) поочередно. Но это переключение отнимает время у процессора, снижая эффективность метода. Идеальным вариантом стало использование линейного буфера кадра, который доступен только в защищенном режиме работы процессора, а значит за пределами первого мегабайта, и с использованием расширения VBE (VESA BIOS Extension) не ниже версии 2.0.

    Для графических PCI-карт с использованием линейного буфера кадра стало возможным применение возможностей чипсета (PCI Burst Mode).

    Опция может называться "ISA VGA Frame Buffer Size" или "ISA Linear Frame Buffer". Дополнительная информация может быть почерпнута из упомянутой и приведенной ниже опции.

    x ISA LFB Base Address

    - данная опция не имеет параметров и носит информационный характер. Показы­вает основной адрес LFB, если установлен размер в предыдущей функции. Адрес устанавливается автоматически.

    ISA Mem Block Base ISA Mem Block Size

    - об этих опциях см. ниже.

    ISA Shared Memory Size

    - (размер разделяемой памяти ISA). Опция позволяет выделить блок в "верхней" (upper) памяти, который обычно "затеняется" и который не будет в данном случае использован для дублирования (shadowing) содержимого ПЗУ в основную память, для доступа к ней ISA-карты. Через установку опции в "Disabled" (по умолчанию) мы отключаем возможность установки такого блока в системной памяти. Данную опцию необходимо включать только при установке в систему ISA-карты, которая использует верхние адреса памяти. Это означает, что в системе используются не "Plug and Play" ISA-карты (т.н. "legacy card"), конфигурируемые "вручную". Указывая размер требуемого блока, пользователь и "включает" опцию. Размер блока выбирается в пределах от 16 до 96 кБ с шагом в 16 кБ.

    Необходимо знать еще вот о чем! В системе могут быть использованы ISA-адаптеры, у которых память собственного микропроцессора является двухпортовой и организована так, что со стороны адаптера она имеет некоторые физические адреса, а по второму порту она адресуется со стороны IBM PC/AT как страница памяти компьютера, расположенная в области адресов (в зависимости от установки перемычек на плате), например: C800h, D000h, т.п. В этом случае задачи адресации решаются на уровне специального прикладного ПО и драйвера. Таких специальных плат расширения в свое время было разработано достаточно много для использования в системах реального времени под MS-DOS.

    К вышесказанному еще несколько слов. Некоторые "настоящие" (legacy) платы ISA имеют встроенную память (ПЗУ), которая не видна без специального программного драйвера. Поскольку об этой памяти BIOS ничего не знает, BIOS может (по ошибке) приписать адреса этой памяти другим платам PCI или ISA. При использовании таких карт расширения требуется серьезное изучение документации.

    x ISA Shared Memory Base Address

    - (базовый адрес разделяемой памяти ISA). Опция доступна при включении предыдущей функции. При этом устанавливается начальный адрес "ISA Shared Memory". Опциально устанавливается C8000h, CC000h и т.д. Необходимо помнить, что при выборе начального адреса не должен быть использован E0000h-адрес. Если же в предыдущей опции выбран блок памяти размером в 64 кБ, то может быть использован в качестве начального адреса адрес D0000 или ниже.

    В других версиях BIOS могут встретиться другие наименования такой функции, точнее такой пары, - "ISA Mem Block Base" и "ISA Mem Block Size". В качестве значений для первой могут быть указаны адреса C800, CC00, D000, D400, D800 и DC00, а также значение "No/ICU" (нет/ICU), оставляющее управление этим параметром на усмотрение BIOS или программы ICU (ISA Configuration Utility). А размер блока выбирается из ряда: 8K, 16K, 32K, 64K. Необходимо также добавить, что при выборе самого размера блока надо ориентироваться на "потребности" конкретной карты, а также на ...количество таких "вредных" ISA-карт.

    И еще одна интересная пара функций. Только "начальной" является опция "Used Mem Base Addr". Она как бы "охватывает" более широкий спектр устройств. Предполагается, что к некоторой области верхней памяти пожелают иметь доступ не только ISA-устройства. Для выбора предлагается, как и выше, любой сегмент памяти между C800H и DC00H адресного пространства (6 возможных адресов), а также по умолчанию - "N/A" (как "Disabled"). При включении опции активируется поле "Used Mem Lenght" для установки размера блока: 8, 16, 32 или 64 кБ.

    Теперь "AMI BIOS"!

    "Reserved Memory Size" и x "Reserved Memory Address".

    Параметры основной опции: "Disabled", "16K", "32K", "64K". Параметры же второй: C000, C400, C800, CC00, D000, D400, D800 или DC00.

    Memory Hole At 15M-16M

    - (буквально - "дырка" в памяти в диапазоне 15-16 МБ). При включенном состоянии параметра система, для повышения производительности, будет копировать более медленную память устройства, например, подключенного к ISA-шине, в более быструю основную память. Это происходит за счет выделения специальной области памяти и перемещения в нее данных ROM-памяти карты расширения или устройства сопряжения. Естественно, что действие этой функции представляет собой механизм "эатенения", который позволяет обращаться, в данном случае к устройствам ввода/вывода, как к адресному пространству ОЗУ и за счет этого увеличить скорость доступа к таким устройствам. Для функционирования этого механизма необходимо исключить для всех обычных программ возможность использования указанной области памяти, что и делает BIOS при разрешении этого параметра. При отсутствии ISA-устройств данная опция должна быть отключена ("Disabled"). По умолчанию эта опция, как правило, включена.

    Общее представление есть! Рассмотрим некоторые уточнения и дополнения. Разрешать этот параметр следует в том случае, если это требуется в документации на используемую в системе плату расширения или устройство. Некоторые старые ISA-карты (например, ранние видеокарты высокого разрешения) требуют выделения для них специального адреса памяти, лежащего в некотором диапазоне. Кроме того, это выделение запрещает доступ в старшие адреса памяти, расположенные выше 16 МБ. Это означает, что, независимо от объема инсталлированной в системе памяти, операционная система не сможет обращаться к этому адресному пространству. Поэтому включение данной опции должно быть оправдано. По сути, данная функция сохранена в "BIOS Setup" по причине фактора совместимости со старыми картами. Необходимо помнить и о том, что когда мы говорим вообще об ISA-картах, то должны подразумевать и функционирование DMA-каналов, которое достаточно жестко вписывается в канву ограничений ISA-шины. Но об этом будет сказано отдельно. Может принимать значения: "Enabled" (разрешено), "Disabled" (запрещено).

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

    В более "старых" версиях BIOS могут встретиться другое наименование такой функции - "Memory Hole", и значения параметров: "None", "at 512 kB", "at 15 MB". Действие некоторых параметров уже понятно, а для значения "at 512 kB" стоит указать, что для "затенения" используется часть базовой памяти в пределах 512-640 КБ. Есть еще один вариант и абсолютно идентичный. С тем же названием и фактически с теми же значениями: "Disabled", "512KB-640KB", "15MB-16MB". Те же значения предлагает опция "Fixed Memory Hole".

    Был встречен и такой вариант опции "Memory hole": значения "Disabled" (по умолчанию), "Conventional" и "Extended". Все эти необычные параметры также предназначались для выделения адресного пространства под "стандартные" (legacy) ISA-устройства.

    "AMI BIOS" может содержать опцию под названием "Memory Hole at 15M Addr.", т.е. близкую к исходной.

    Необходимо также достаточно определенно представлять себе, что выделение некоего объема памяти предназначалось не только (и даже не столько) для переноса данных ROM-памяти какого-либо устройства, сколько для формирования в системной памяти области, являющейся по сути локальной памятью этого устройства или даже локальной памятью шины. Иначе зачем выделять под область "затенения" 1 МБ и более. Например, в некоторых версиях BIOS можно было встретить такой набор значений: "Disabled", "14M-16M", "15M-16M".

    Более определенно на сей счет "говорит" старенькая функция "Memory Hole Size" с такими предложениями: "1 Mb", "2 Mb", "4 Mb", "8 Mb", "Disabled". Все это богатство предназначалось для системной AT-шины, а также резервировалось под потребности ISA-карт. Исходя из вышесказанного, станет более понятна опция "15-16M Memory Location" с параметрами: "Local" (по умолчанию) и "Non-local". Аналогичная опция могла называться и "Local Memory 15-16M".

    Может возникнуть еще один вопрос. Почему все рассматриваемые функции "привязаны" к 16 МБ? Еще раз стоит подчеркнуть, что наличие всех этих функций в более современных версиях BIOS связано только с принципом совместимости с возможно эксплуатируемыми или специально разработанными картами расширения, устройствами сопряжения, или, как иногда говорят, устройствами связи с объектом (УСО), т.п. Появление же на свет божий всех этих опций "совпало" с появлением в середине 80-х славной 16-разрядной ISA-шины, для которой добавление 4 дополнительных адресных линий означало увеличение максимального размера адресуемой памяти до 16 МБ. Поэтому, задавая некий размер адресной области, мы однозначно определяем ей место "в конце" 16-мегабайтного адресного пространства.

    Еще несколько слов о "Phoenix BIOS", предлагавшем аналогичную опцию под названием "ISA Memory Gap". Правда, в различные времена предлагалось два варианта опции. В одном из них была возможность использовать/не использовать последний мегабайт памяти, как "ISA memory area". Другой вариант опции предлагал также уже знакомые значения: "1 Mb", "2 Mb", "4 Mb", "8 Mb" и "Disabled".

    Ну и напоследок не отдельные опции, а пары совместных функций или даже отдельные подменю. "Memory Hole Start Address" (а могут быть и такие варианты - "Memory Map Hole Start Address" или "Memory Map Hole End Address") дает возможность установить начальный адрес "дырки" из ряда, начиная с 1-го по 15-й МБ с шагом в один мегабайт. Но эта опция становится доступной, если включена базовая опция "Memory Map Hole".

    Очень давние предложения от "AWARD"! Поверьте, такие системы до сих пор функционируют! Необходимо вначале включить ("Enabled") опцию "Allocate Memory Hole", а затем поработать над "Hole Start Adress" и "Hole Size". Причем размер "дырки" варьируется в пределах (!) от 64 КБ до 8 МБ (через удвоение шага), а установка начального адреса позволяет перемещать по адресному пространству выбранную область.

    Напоследок вполне современный и весьма неожиданный эффект от применения "нашей" опции. В периодике как-то появилась информация, что включение опции помогло решить проблему нестабильной работы чипсетов VIA в системе с установленными звуковыми картами Creative SB Live! и Aureal, причем PCI-картами!. Хотя еще раньше была озвучена информация о конфликтах со звуковыми картами, такими как Diamond MX300 или Soundblaster той же "Creative Labs", и что эти конфликты системных ресурсов удалось разрешить за счет использования "дырки" в памяти. Так что пусть опция еще поживет?!

    Memory Remapping

    - (перераспределение памяти). Поскольку аналогичная опция может называться "Memory Relocation", то пользователь уже знает, о чем идет речь. Очень старенькая опция, применение которой имело смысл в системе с ограниченным объемом оперативной памяти. Включение опции ("Enabled") требовало запрещения всех видов "затенения" в области адресов A0000 - FFFFF, в т.ч. "затенения" видео- и системного BIOS. Детальнее см. выше.

    Memory Reservation

    - так называется меню с "низкой" опций ("C800 - CBFF" и т.д., см. выше), из возможных параметров которых ("Available" и "Reserved) следует, что выбранный 16К-байтный диапазон может быть соответственно либо доступен для использования некоторым устройством (пример "выделенной" памяти), либо зарезервирован для использования любым программным обеспечением.

    Нечто подобное предлагает "Phoenix BIOS" в меню "PCI/PNP ISA UMB Region Exclusion". Правда, т.н. "Upper Memory Blocks" не предназначены для использования стандартными ISA-картами (не Plug&Play-картами). А в остальном и диапазоны те же, и значения.

    КомпьютерМастер computermaster.ru



  • [Услуги] [Цены] [Гарантии] [Вызов мастера] [Всё о компьютерах] [Полезные ссылки]

    © КомпьютерМастер, 2004.
    Rambler's Top100 Rambler's Top100