Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Обнаружение и исправление ошибок




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

Вне зависимости от того, как именно реализуется контроль и исправление оши­бок, в основе их всегда лежит введение избыточности. Это означает, что контроли­руемые разряды дополняются контрольными разрядами, благодаря которым и воз­можно детектирование ошибок, а в ряде методов — их коррекция. Общую схему обнаружения и исправления ошибок иллюстрирует рис. 5.15.

На рисунке показано, каким образом осуществляются обнаружение и исправ­ление ошибок. Перед записью М-разрядных данных в память производится их об­работка, обозначенная на схеме функцией «f», в результате которой формируется добавочный K-разрядный код. В память заносятся как данные, так и этот вычис­ленный код, то есть + K)-разрядная информация. При чтении информации по­вторно формируется K-разрядный код, который сравнивается с аналогичным ко­дом, считанным из ячейки. Сравнение приводит к одному из трех результатов:

  • Не обнаружено ни одной ошибки. Извлеченные из ячейки данные подаются на выход памяти.
  • Обнаружена ошибка, и она может быть исправлена. Биты данных и добавоч­ного кода подаются на схему коррекции. После исправления ошибки в М-раз­рядных данных они поступают на выход памяти.

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

 

Рис. 5.15. Общая схема обнаружения и исправления ошибок [200]

Коды, используемые для подобных операций, называют корректирующими ко­дами или кодами с исправлением ошибок..

Стековая память

Стековая память обеспечивает такой режим работы, когда информация записы­вается и считывается по принципу «последним записан — первым считан» (LIFO -Last In First Out). Память с подобной организацией широко применяется для запо­минания и восстановления содержимого регистров процессора (контекста) при об­работке подпрограмм и прерываний.

Ассоциативная память

В рассмотренных ранее видах запоминающих устройств доступ к информации тре­бовал указания адреса ячейки. Зачастую значительно удобнее искать информа­цию не по адресу, а опираясь на какой-нибудь характерный признак, содержащийся в самой информации. Такой принцип лежит в основе ЗУ, известного как ассоциа­тивное запоминающее устройство (АЗУ). В литературе встречаются и иные на­звания подобного ЗУ:

память, адресуемая по содержанию (content addressable memory);

память, адресуемая по данным (data addressable memory);

память с па­раллельным поиском (parallel search memory);

каталоговая память (catalog memory); информационное ЗУ (information storage);

тегированная память (tag memory).

Ассоциативное ЗУ — это устройство, способное хранить информацию, сравнивать ее с некоторым заданным образцом и указывать на их соответствие или несоответ­ствие друг другу. Признак, по которому производится поиск информации, будем называть ассоциативньш признаком, а кодовую комбинацию, выступающую в роли образца для поиска, — признаком поиска. Ассоциативный признак может быть ча­стью искомой информации или дополнительно придаваться ей. В последнем слу­чае его принято называть тегом или ярлыком.

Кэш-память

Как уже отмечалось, в качестве элементной базы основной памяти в большинстве ВМ служат микросхемы динамических ОЗУ, на порядок уступающие по быстродействию центральному процессору. В результате процессор вынужден простаивать несколько тактовых периодов, пока информация из памяти установится на шине данных ВМ. Если ОП выполнить на быстрых микросхемах статической памяти, стоимость ВМ возрастет весьма существенно. Экономически приемлемо решение этой проблемы было предложено М. Уилксом в 1965 году в процессе разработки ВМ Atlas и заключается оно в использовании двухуровневой памяти, когда между ОП и процессором размещается небольшая, но быстродействующая буферная память. В процессе работы такой системы в буферную память копируются участки ОП, к которым производится обращение со стороны процессора. В общепринятой терминологии — производится отображение участков ОП на буферную память. Выигрыш достигается за счет ранее рассмотренного свойства локальности — если отобразить участок ОП в более быстродействующую буферную память и переадресовать на нее все обращения в пределах скопированного участка, можно добиться существенного повышения производительности ВМ. Уилкс называл рассматриваемую буферную память подчиненной (slave те­гу). Позже распространение получил термин кэш-память (от английского слова cache— убежище, тайник), поскольку такая память обычно скрыта от программиста в том смысле, что он не может ее адресовать и может даже вообще не знать о ее существовании. Впервые кэш-системы появились в машинах модели 85 семейства IBM 360.

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

  • емкость кэш-памяти;
  • размер строки;
  • способ отображения основной памяти на кэш-память;
  • алгоритм замещения информации в заполненной кэш-памяти;
  • алгоритм согласования содержимого основной и кэш-памяти;
  • число уровней кэш-памяти.

Емкость кэш - памяти

Выбор емкости кэш-памяти — это всегда определенный компромисс. С одной сторо­ны, кэш-память должна быть достаточно мала, чтобы ее стоимостные показатели были близки к величине, характерной для ОП. С другой — она должна быть достаточно большой, чтобы среднее время доступа в системе, состоящей из основной и кэш-па­мяти, определялось временем доступа к кэш-памяти. В пользу уменьшения размера кэш-памяти имеется больше мотивировок. Так, чем вместительнее кэш-память, тем больше логических схем должно участвовать в ее адресации. Как следствие, кэш-память повышенной емкости работают медленнее по сравнению с микросхема­ми меньшей емкости, даже если они выполнены по одной и той же технологии.

Реальная эффективность использования кэш-памяти зависит от характера ре­шаемых задач, и невозможно заранее определить, какая ее емкость будет дей­ствительно оптимальной. Установлено, что для большинства задач близкой к оптимальной является кэш-память емкостью от 1 до 512 Кбайт.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...