Контроль и диагностика DRAM
Оперативная память персонального компьютера выполняется, как известно, на микросхемах динамического типа, что и соответствует аббревиатуре DRAM – Dynamics-Random-Access Memory (динамическая память произвольного доступа). Запоминающими элементами таких микросхем являются элементарные конденсаторы, образованные плавающими затворами полевых транзисторов. Эти переходы могут находиться в заряженном (логическая единица) или разряженном (логический нуль) состояниях.
Особенностью динамической памяти, в отличие от статической, является требование периодической регенерации всей хранящейся в ней информации, т. к. запоминающие емкости имеют тенденцию к саморазряду. Кроме того, элементарный запоминающий конденсатор памяти может разрядиться, если в него попадет высокоэнергетическая космическая частица, что не редкость на земной поверхности. Таким образом, динамическая память имеет склонность к искажениям отдельных бит информации. Это может иметь фатальные последствия для компьютера, т. к. в DRAM хранятся как данные, так и рабочие программы, и сама операционная система. Искажение одного бита в машинной команде может привести к тому, что, например, вместо операции чтения выполнится операция записи, которая может испортить данные, программу и даже саму ОС.
Именно поэтому динамическая оперативная память снабжается схемой паритетного контроля – свертки каждого записанного байта по модулю-2. В ответственных ЭВМ используются коды, исправляющие ошибки, например, код Хемминга. При записи, каждый байт информации сопровождается контрольным разрядом, вырабатывающимся схемой свертки, а при чтении, той же схемой свертки каждый байт проверяется на четность и, в случае нарушения паритета, вырабатывается немаскируемое прерывание, формирующее сообщение об ошибке DRAM. В этом случае автоматическое выполнение дальнейших операций блокируется и на экране дисплея появляется сообщение:
Error Parity DRAM. System Halted (Ошибка четности динамической памяти. Система остановлена).
Контроль работоспособности оперативной памяти РС выполняется соответствующими секциями POST-программы при каждом включении питания компьютера, или при “холодном” рестарте системы (нажатие кнопки RESET).
При появлении симптома ошибки DRAM, следует перезагрузить операционную систему и попытаться снова запустить ту же прикладную программу. Если ошибка не повторится, то этот случай классифицируется как одиночный сбой. Если же ошибка повторяется, то это – симптом жесткой ошибки. В таком случае следует отключить механизм выработки NMI и запустить программу диагностики ошибок памяти, например, CheckIt/Tests/Memory. Можно воспользоваться и услугами программы NDiags, выбрав пункт меню ПАМЯТЬ\Тест основной (базовой) памяти, иТест расширенной памяти, а если конфигурация предусматривает и дополнительную память, то и ее тест. NDiags протестирует выбранную память следующими шаблонами:
- записью и проверкой нулей во все разряды всех ячеек проверяемой памяти,
- записью и проверкой единиц во все разряды всех ячеек проверяемой памяти,
- пробегом и проверкой единицы по всем разрядам по-очереди в каждом адресе,
- пробегом и проверкой нуля по всем разрядам по-очереди в каждом адресе,
- записью и проверкой кода 10101010 в каждый адрес (шахматный код),
- записью и проверкой кода 01010101 в каждый адрес (инверсный шахматный код).
Обе эти программы достаточно подробно тестируют DRAM, но программа CheckIt позволяет протестировать память как минимальным (Quick Memory Test Only), так и расширенным набором тестов и даже повторить тестирование не один раз, а до 999 раз, чтобы обнаружить плавающие ошибки памяти. Кроме того, программа CheckIt позволяет локализовать ошибку памяти до компоненты (ИМС или модуля SIMM).
Тестирование памяти с помощью программыPC-doctorвыполняется при выборе пункта Diagnostics/RAM Memory. Программа предлагает выбрать режим тестирования:
- Fast – быстрый, по одному проходу каждого теста,
- Medium – средний, по 10 раз,
- Heavy – тяжелый, по 20 раз,
тип тестирования:
- Pattern – 18-ти шаблонный,
- Address – по адресным линиям выборки ИМС,
- Bus Throughput – случайными сигналами выборки,
- Code Test – случайными кодами.
Далее следует выбрать тип тестируемой памяти:
- Base – базовую память до 640 КБ.
- Extended – расширенную, до 16 МБ.
- Expanded – дополнительную, от 1 до 32 МБ,
- UMB – блок высшей памяти, от 1 до 1,064 МБ.
Тесты могут выполняться с различными параметрами: с печатью протокола, запомнить протокол в файле, полный протокол или только протокол ошибок, с заданием адресов для каждого типа памяти. Таким образом, можно тестировать не всю, а только выбранные участки памяти.
Временные характеристики оперативной памяти под Windows прекрасно определяются с помощью программы Sandra, но если память неисправна, или ошибается, Sandra просто откажется ее тестировать. В этом случае, можно воспользоваться программами, о которых упоминалось в подразделе 2.6.2.
Дата добавления: 2015-07-18; просмотров: 817;