четность оперативной памяти
Проверка четности ОЗУ — это сохранение избыточного бита четности , представляющего четность (нечетную или четную) небольшого объема компьютерных данных (обычно одного байта), хранящихся в оперативной памяти , и последующее сравнение сохраненной и вычисленной четности с определить, произошла ли ошибка данных .
Бит четности изначально хранился в дополнительных отдельных микросхемах памяти; с появлением подключаемых модулей DIMM , SIMM и т. д. они стали доступны в версиях без четности и четности (с дополнительным битом на байт , сохраняющими 9 бит на каждые 8 бит фактических данных).
История [ править ]
Ранним компьютерам иногда требовалось использование оперативной памяти четности, и проверку четности нельзя было отключить. Ошибка четности обычно приводила к остановке машины с потерей несохраненных данных; обычно это лучший вариант, чем сохранение поврежденных данных. ОЗУ с логической четностью , также известное как ОЗУ с ложной четностью, представляет собой ОЗУ без четности, которое можно использовать в компьютерах , которым требуется ОЗУ с четностью. ОЗУ логической четности пересчитывает всегда действительный бит четности каждый раз, когда байт считывается из памяти, вместо сохранения бита четности при записи в память; вычисленный бит четности, который не показывает, были ли данные повреждены (отсюда и название «поддельная четность»), передается логике проверки четности. Это средство использования более дешевой 8-битной ОЗУ в системе, предназначенной для использования только 9-битной ОЗУ с контролем четности.
Ошибки памяти [ править ]
В 1970-80-е годы надежность оперативной памяти зачастую была далеко не идеальной; в частности, модули DRAM 4116, которые были отраслевым стандартом с 1975 по 1983 год, имели значительную частоту отказов, поскольку в них использовалось тройное напряжение (-5, +5 и +12), что приводило к высоким рабочим температурам. К середине 1980-х годов они уступили место DRAM с одним напряжением, таким как 4164 и 41256, что привело к повышению надежности. Однако оперативная память не достигла современных стандартов надежности до 1990-х годов. С тех пор ошибки стали менее заметными, поскольку простая оперативная память четности вышла из употребления; либо они невидимы, поскольку не обнаруживаются, либо незаметно корректируются с помощью ECC RAM. Современное ОЗУ считается, и вполне обоснованно, надежным, а ОЗУ с обнаружением ошибок в значительной степени вышло из употребления для некритических приложений. К середине 1990-х годов в большинстве DRAM отказались от проверки четности, поскольку производители были уверены, что в ней больше нет необходимости. Некоторые машины, поддерживающие четность или ECC, позволяют включать или отключать проверку в BIOS , позволяющий использовать более дешевую оперативную память без четности. Если используется ОЗУ четности, набор микросхем обычно использует ее для исправления ошибок, а не останавливает машину из-за однобитной ошибки четности.
Однако, как обсуждалось в статье о памяти ECC , ошибки, хотя и не являются повседневными событиями, не так уж и редки. Даже при отсутствии производственных дефектов естественное излучение вызывает случайные ошибки; Тесты на многих серверах Google показали, что ошибки памяти не являются редкими событиями, а частота ошибок памяти и диапазон частоты ошибок для разных модулей DIMM были намного выше, чем сообщалось ранее. [1]
Исправление ошибок [ править ]
Простая проверка четности «годен/не годен» требует, чтобы в памяти были дополнительные избыточные биты помимо тех, которые необходимы для хранения данных; но если доступны дополнительные биты, их можно использовать как для исправления, так и для обнаружения ошибок. Более ранняя память, которая использовалась, например, в IBM PC/AT ( память FPM и EDO ), была доступна в версиях, которые поддерживали либо отсутствие проверки, либо проверку четности. [2] (в более ранних компьютерах, в которых использовались отдельные микросхемы ОЗУ, а не модули DIMM или SIMM , дополнительные микросхемы использовались для хранения битов четности); если компьютер обнаружит ошибку четности , он отобразит соответствующее сообщение и остановится. Модули SDRAM , и DDR пришедшие на смену более ранним типам, обычно доступны либо без проверки ошибок, либо с ECC (полная коррекция, а не только проверка четности). [2]
Пример однобитовой ошибки, которая была бы проигнорирована системой без проверки ошибок, остановила бы машину с проверкой четности или была бы незаметно исправлена ECC: один бит застрял в 1 из-за неисправного чипа, или становится равным 1 из-за фонового или космического излучения; загружается электронная таблица, хранящая числа в формате ASCII, и число «8» сохраняется в байте, который содержит застрявший бит в качестве восьмого бита; затем в электронную таблицу вносится еще одно изменение, и она сохраняется. Однако «8» (двоичный код 00111000) превратился в «9» (00111001).
Если сохраненная четность отличается от четности, вычисленной на основе сохраненных данных, по крайней мере один бит должен был быть изменен из-за повреждения данных. Необнаруженные ошибки памяти могут иметь самые разные последствия: от незаметных и без последствий до необратимого повреждения хранимых данных или сбоя машины. В случае домашнего ПК, где целостность данных часто не имеет большого значения (что особенно верно, скажем, для игр и просмотра веб-страниц, и в меньшей степени для интернет-банкинга и домашних финансов), память без четности является доступным вариантом. Однако, если требуется целостность данных, память четности остановит компьютер и предотвратит влияние поврежденных данных на результаты или сохраненные данные, хотя и потеряет промежуточные несохраненные данные и предотвратит использование до тех пор, пока не будет заменена неисправная ОЗУ. За счет некоторых вычислительных затрат, которые на современных быстрых компьютерах оказываются незначительными, обнаруженные ошибки можно исправить — это становится все более важным на сетевых машинах, обслуживающих множество пользователей.
Тип ECC RAM [ править ]
ОЗУ с ECC или кодом исправления ошибок позволяет обнаруживать и исправлять ошибки . Как и в случае с ОЗУ с четностью, необходимо хранить дополнительную информацию и выполнять дополнительную обработку, что делает ОЗУ ECC более дорогим и немного медленнее, чем ОЗУ без четности и логической четности. Этот тип памяти ECC особенно полезен для любого приложения, где надежность или время безотказной работы являются проблемой: ошибочные биты в слове памяти обнаруживаются и исправляются на лету, не оказывая никакого влияния на приложение. Возникновение ошибки обычно регистрируется операционной системой для анализа техническим ресурсом. В случае, если ошибка постоянная, можно запланировать простой сервера для замены неисправного блока памяти.
Иск Вана [ править ]
В 1991 году Ван выиграл судебный процесс против Toshiba и NEC по поводу патентов на SIMM, частично основанный на иске об использовании девятого чипа оперативной памяти для контроля четности. [3] [4] В ответ на это стали популярны SIMM с тремя чипами, а не с девятью отдельными чипами для каждого бита, согласно теории, которые они не нарушают. Однако переход с девятичиповых SIMM на трехчиповые SIMM вызвал некоторые проблемы совместимости. [5] Год спустя, в 1992 году, Ван также подал в суд на Mitsubishi , но в конечном итоге Ван не выиграл дело, поскольку в 1997 году суды установили наличие лицензионного соглашения. [6] В конце концов, к концу 1990-х годов модули DIMM вытеснили SIMM на рынке, и DIMM не стали предметом судебных исков Ванга.
См. также [ править ]
Ссылки [ править ]
- ^ Новости Cnet - Google: память компьютера нестабильна, чем ожидалось
- ↑ Перейти обратно: Перейти обратно: а б Crucial.com Часто задаваемые вопросы: ECC и четность — это одно и то же? Если нет, то какая разница? Архивировано 1 апреля 2012 г. в Wayback Machine.
- ^ «Ван не дает Toshiba и NEC нарушать ее патенты» . techmonitor.ai . 10 октября 1991 г. Проверено 3 мая 2024 г.
- ^ Wang Laboratories, Inc. против Toshiba Corp. (Окружной суд США Восточного округа Вирджинии, 28 июня 1993 г.), Текст .
- ^ Томпсон, Роберт (24 июля 2003 г.). Коротко об аппаратном обеспечении ПК . О'Рейли Медиа. п. 245. ИСБН 9780596552343 .
- ^ Wang Laboratories Inc. против Mitsubishi Electronics America Inc. (Апелляционный суд США, Федеральный округ, 3 января 1997 г.), Текст .