Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АЭВМ(Ответы).doc
Скачиваний:
8
Добавлен:
01.04.2025
Размер:
9 Мб
Скачать
☆
  1. Достоверность хранения данных.

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

Отказ ячейки-памяти — потеря ее работоспособности, обычно требующая замены элемента памяти. Отказ может быть устойчивым, но возможно и самопроизвольное восстановление работоспособности, например, после повторного включения питания. Часто причиной отказов является неисправность контакта нарушение условий эксплуатации.

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

В первых моделях PC, когда микросхемы памяти имели существенно худшие характеристики надежности по сравнению с современными, обязательно применялся контроль четности. При его использовании каждый байт памяти сопровождается битом паритета (Parity bit), дополняющим количество единив в байте до нечетного. Значение бита паритета аппаратно генерируется при записи в память и проверяется при считывании. При обнаружении ошибки паритета схемой контроля вырабатывается немаскируемое прерывание (NMI) и его обработчик обычно выводит на экран сообщение «Parity Error Check» (ошибка паритета) с указанием адреса сбойной ячейки и останавливает процессор командой Halt.

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

Специальными битами конфигурационных регистра (порт 061h) вырабатывание NMI от схем контроля памяти можно запретить, также возможно изменить процедуру обработки NMI для игнорирования ошибки (в диагностических целях). При выполнении начального тестирования памяти POST выполняет запись во все ячейки ОЗУ, в результате чего формируются и правильные биты паритета (при исправной памяти).

Некоторые версии BIOS -«забывали» тестировать расширенную (EMS) память, в связи с чем возникали определенные неудобства начального включения компьютера — при использовании EMS компьютер останавливался с «Parity Check». Из-за этого приходилось на время «холодного» запуска переключать дополнительную память в режим XMS, а потом обратно.

Со временем качество применяемых микросхем памяти улучшилось, и в целях удешевления модулей памяти от применения контроля четности стали отказываться — сначала предлагали выбор через опцию BIOS Setup: проверять или не проверять паритет, а потом появилась масса моделей системных плат, в которых контроля паритета нет вообще. Модули памяти (SIMM, SIPP) стали выпускать как с паритетом, так и без него, а для «ублажения» (точнее – обмана) плат, требующих наличия бита паритета, стали выпускать модули с «поддержкой паритета» (Fake Parity или PG - Parity Generator). В этих модулях вместо дополнительной микросхемы памяти используется генератор паритета - логическая схема сумматора по модулю 2, формирующая всегда «хороший» бит паритета независимо от наличия ошибок в самой памяти. Его наличие можно распознать визуально - логическая микросхема на модуле заметно отличается от микросхем памяти. В обозначение типа модуля с генератором паритета обычно входят буквосочетания «ВР», «VT», «GSM» или «МРЕС». Заметим, что никакие программные средства тестирования памяти (CheckIt, PCCheck и т.п.) не позволяют отличить память с настоящим паритетом от памяти с фиксированным паритетом.

Побайтный контроль паритета шины данных встроен в микропроцессоры, начиная с 486, что упрощает схемы контроля.

В компьютерах особо ответственного применения используют память с обнаружением и исправлением ошибок - ЕСС Memory (Error Checking and Correcting). В этом случае для каждого записываемого информационного слова памяти (а не байта, как при контроле паритета) по определенным правилам вычисляется функция свертки, результат которой разрядностью в несколько бит также хранится в памяти. Для 64-битного слова обычно используют 7-8 дополнительных бит. При считывании схема контроля с использованием этих избыточных бит способна обнаруживать ошибки с различной кратностью и (или) исправлять однократные ошибки. Функцию контроля и исправления выполняет чипсет, его реакцию на ошибки обычно можно задать опциями BIOS Setup.

Возможны различные варианты поведения, например:

  • автоматически исправлять ошибки, не уведомляя об этом систему;

  • исправлять однократные ошибки, уведомляя систему только о многократных;

  • не исправлять ошибки, а только уведомлять об их обнаружении (самый достоверный контроль).

В отличие от памяти с контролем паритета, допускающей побайтное обращение, к ECC - памяти можно обращаться только

полноразрядными словами. Заботу об этом берет на себя чипсет. В самых «серьезных» системах ЕСС применяется не только для ОЗУ, но и для кэш-памяти,

Достоверность информации, хранимой в постоянной (ROM BIOS) и полупостоянной (SMOC RTS) памяти проверяется с помощью контрольной суммы(Checksum) обычно это байт, дополняющий до нуля сумму по модулю 256 всех байт контролируемой области.

Проверка контрольной суммы обычно выполняется однократно при выполнении POST.