Научная статья на тему 'СРАВНИТЕЛЬНЫЙ АНАЛИЗ КОМБИНИРОВАННЫХ МЕТОДОВ ПОВЫШЕНИЯ СБОЕИ ОТКАЗОУСТОЙЧИВОСТИ БЛОКОВ СТАТИЧЕСКОЙ ОПЕРАТИВНОЙ ПАМЯТИ'

СРАВНИТЕЛЬНЫЙ АНАЛИЗ КОМБИНИРОВАННЫХ МЕТОДОВ ПОВЫШЕНИЯ СБОЕИ ОТКАЗОУСТОЙЧИВОСТИ БЛОКОВ СТАТИЧЕСКОЙ ОПЕРАТИВНОЙ ПАМЯТИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
34
8
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СБОЕ- И ОТКАЗОУСТОЙЧИВОСТЬ / СТАТИЧЕСКОЕ ОЗУ (СОЗУ) / КОНТРОЛЬ ЧЕТНОСТИ / КОРРЕКТИРУЮЩИЕ КОДЫ / САМОТЕСТИРОВАНИЕ И САМОВОССТАНОВЛЕНИЕ / РЕЗЕРВНЫЕ ЭЛЕМЕНТЫ ПАМЯТИ / СИСТЕМА НА КРИСТАЛЛЕ (СНК)

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Шагурин Игорь Иванович, Щигорев Леонид Алексеевич

Рассмотрены возможности применения различных методов для повышения сбое- и отказоустойчивости блоков статических ОЗУ. Предложены варианты комбинированного использования контроля четности, корректирующих кодов, введения резервных колонок запоминающих элементов. Приведены оценки эффективности предлагаемых комбинированных методов. На примере проектирования блока статического ОЗУ емкостью 4Кх128 бит, изготовленного по 28-нм технологии, получены количественные оценки технических характеристик блоков памяти, разработанных с применением этих методов. Результаты проведенных исследований могут быть использованы при разработке встроенных блоков памяти для применения в составе сбоеустойчивых систем на кристалле.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Шагурин Игорь Иванович, Щигорев Леонид Алексеевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

COMPARATIVE ANALYSIS OF FAULT TOLERANCE INCREASING COMBINED METHODS FOR SRAM

The abilities of using various methods for fault tolerance increasing of static random access memory (SRAM) have been considered. Some variants of combined using the parity control, the error-correcting codes (ECC) and the redundant columns have been suggested. The estimations of the effectiveness of the proposed combined methods have been presented. On an example of implementations of 4Kx128 memory array, manufactured on the 28 nm technology, the qualitative estimations of the technical characteristics of memory arrays, developed using the proposed combined methods, have been given. The results of the performed investigations can be used in developing the built-in memory units for application as a part of the fault tolerance systems on chip.

Текст научной работы на тему «СРАВНИТЕЛЬНЫЙ АНАЛИЗ КОМБИНИРОВАННЫХ МЕТОДОВ ПОВЫШЕНИЯ СБОЕИ ОТКАЗОУСТОЙЧИВОСТИ БЛОКОВ СТАТИЧЕСКОЙ ОПЕРАТИВНОЙ ПАМЯТИ»

УДК 004.052.2

Сравнительный анализ комбинированных методов повышения сбое- и отказоустойчивости блоков статической оперативной памяти

И.И. Шагурин, Л.А. Щигорев

ЗАО Научно-технический центр «Модуль» (г. Москва) Национальный исследовательский ядерный университет «МИФИ»

Comparative Analysis of Fault Tolerance Increasing Combined Methods for SRAM

I.I. Shagurin, L.A. Shchigorev

JSC «Module», Moscow

National Research Nuclear University, Moscow

Рассмотрены возможности применения различных методов для повышения сбое- и отказоустойчивости блоков статических ОЗУ. Предложены варианты комбинированного использования контроля четности, корректирующих кодов, введения резервных колонок запоминающих элементов. Приведены оценки эффективности предлагаемых комбинированных методов. На примере проектирования блока статического ОЗУ емкостью 4Кх128 бит, изготовленного по 28-нм технологии, получены количественные оценки технических характеристик блоков памяти, разработанных с применением этих методов. Результаты проведенных исследований могут быть использованы при разработке встроенных блоков памяти для применения в составе сбоеустойчивых систем на кристалле.

Ключевые слова: сбое- и отказоустойчивость; статическое ОЗУ (СОЗУ); контроль четности; корректирующие коды; самотестирование и самовосстановление; резервные элементы памяти; система на кристалле (СнК).

The abilities of using various methods for fault tolerance increasing of static random access memory (SRAM) have been considered. Some variants of combined using the parity control, the error-correcting codes (ECC) and the redundant columns have been suggested. The estimations of the effectiveness of the proposed combined methods have been presented. On an example of implementations of 4Kx128 memory array, manufactured on the 28 nm technology, the qualitative estimations of the technical characteristics of memory arrays, developed using the proposed combined methods, have been given. The results of the performed investigations can be used in developing the built-in memory units for application as a part of the fault tolerance systems on chip.

Keywords: fault tolerance; SRAM; parity check; error detection and correction (EDAC); built-in self test (BIST); built-in self repair (BISR); redundant elements; system on chip (SoC).

© И.И. Шагурин, Л.А. Щигорев, 2016

Введение. Одной из наиболее важных задач при проектировании электронных систем является обеспечение надежности и достоверности хранения и передачи информации (команд, адресов, данных). Особое значение решение этой задачи имеет при использовании микросхем, содержащих встроенную память. Современные микросхемы изготавливаются по суб-100-нм кремниевой технологии. Ячейки памяти, реализованные с помощью этой технологии, характеризуются повышенной чувствительностью к воздействию таких внешних факторов, как попадание тяжелых заряженных частиц (ТЗЧ), которые вызывают возникновение сбоев и отказов [1, 2]. Поэтому при разработке и применении таких микросхем необходимо использовать эффективные методы повышения их сбое- и отказоустойчивости.

Цель настоящей работы - исследование аппаратурных и временных затрат при комбинированном использовании в проектируемых блоках статической оперативной памяти различных методов повышения сбое- и отказоустойчивости.

Методы повышения сбое- и отказоустойчивости. Для решения задачи повышения сбое- и отказоустойчивости блоков статической оперативной памяти используются два основных способа: аппаратное резервирование (дублирование, троирование) запоминающих устройств и применение специальных кодов, которые позволяют выявить и устранить ошибки, возникающие при хранении и передаче информации. Используемые при этом методы резервирования и кодирования достаточно подробно описаны в технической литературе [2-5].

Широко известный метод троирования с мажоритированием требует значительных дополнительных аппаратурных затрат - увеличения объема памяти в три раза, что ограничивает возможности его применения. Более экономичным по аппаратурным затратам является метод резервирования отдельных элементов запоминающих устройств (например, колонок и/или рядов) в размещаемой на кристалле матрице памяти [6]. При обнаружении ошибки в считываемых данных резервная колонка включается вместо колонки, в которой обнаружен отказавший элемент. Для реализации метода резервирования в структуру памяти вводятся блоки самотестирования (БСТ) и самовосстановления (БСВ). БСТ периодически или по внешнему запросу проводит сеанс самотестирования памяти и определяет номер колонки, которая содержит отказавший элемент, после чего БСВ подключает резервную колонку вместо колонки с поврежденным элементом. Аппаратурные затраты на реализацию этого метода зависят от количества резервных элементов (например, резервных столбцов в банке памяти) и от площади, занимаемой БСВ, которая обычно составляет единицы процентов от площади блока памяти [7]. Этот способ позволяет повысить отказоустойчивость блоков памяти, но не обеспечивает защиту от возникающих сбоев.

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

Сравнительный анализ комбинированных методов.

В табл.1 приведены данные о количестве дополнительных бит, требуемых для побайтового контроля четности и коррекции одиночных ошибок с помощью кода Хэм-минга [8], и указано на сколько при этом возрастает разрядность хранимых слов.

Таблица 1

Количество хранимых бит при использовании кода коррекции одиночной ошибки и побайтовым контролем четности

Информационные Биты Контрольные Общее Увеличение

биты четности биты количество разрядности,

хранимых бит %

8 1 4 13 62,5

16 2 5 23 43,7

32 4 6 42 31,3

64 8 7 79 23,4

128 16 8 152 18,8

Корректирующие коды позволяют исключить ошибки, связанные с возникновением сбоев под влиянием ТЗЧ или электромагнитных помех. Однако в случае появления отказавших запоминающих элементов их корректирующие способности существенно снижаются. Так, при наличии в ячейке одного отказавшего элемента код, корректирующий одиночную ошибку, не будет реагировать на возникновение сбоев под влиянием ТЗЧ или электромагнитных помех.

Для общего повышения сбое- и отказоустойчивости блоков памяти предлагается комплексное использование нескольких методов:

1) использование блоков памяти с резервными запоминающими элементами и встроенными БСТ, БСВ, которые могут обеспечить замену отказавших элементов в процессе эксплуатации аппаратуры;

2) применение в блоках памяти помехоустойчивого кодирования, позволяющего корректировать возникновение ошибки и определять адрес элемента, вызвавшего ее появление;

3) контроль четности считываемой из памяти информации для обнаружения ошибок операций записи и чтения.

Совместное применение этих методов позволяет:

- блокировать запись в память при выявлении ошибок в информационном слове;

- обеспечить корректность считываемых информационных слов при возникновении сбоев и отказов запоминающих элементов;

- исключить обращение к отказавшим запоминающим элементам, заменив их резервными.

Реализация методов повышения сбое- и отказоустойчивости. Для оценки эффективности предлагаемых решений разработан блок памяти емкостью 4Кх128 бит при использовании КМОП-технологии с проектными нормами 28 нм. Проведена оценка площади, занимаемой матрицей памяти этого блока на кристалле СБИС, и времени считывания информационного слова для следующих случаев:

- без введения средств контроля и коррекции (БКК);

- с использованием побайтного контроля четности (БКЧ);

- с использованием кода контроля-коррекции (ККК) одиночной ошибки;

- с совместным применением методов ККК+БКЧ;

- с совместным применением методов ККК и двух резервных колонок (2К);

- с совместным применением методов ККК+БКЧ+2К.

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

При проектировании реализованы различные варианты организации памяти: 1 банк 4Кх128 бит, 2 банка 4Кх64 бит, 4 банка 4Кх32 бит, 8 банков 4Кх16 бит, 16 банков 4Кх8 бит. В случае использования метода ККК каждый банк имеет кодер и декодер, позволяющие исправлять при чтении накопившуюся в период хранения данных ошибку. Таким образом, при увеличении количества используемых банков пропорционально растет количество ошибок, которые блок памяти способен скорректировать. В случае использования метода 2К каждый банк имеет две резервные колонки, поэтому увеличение числа банков приводит к пропорциональному расширению возможностей замены отказавших ячеек памяти. Полученные результаты приведены в табл.2.

На рисунке показано влияние разрядности используемых банков на площадь блока памяти емкостью 4Кх128 бит при его организации в виде банков разрядностью от 8 до 128 бит для двух вариантов: комбинированное использование трех способов повышения сбое- и отказоустойчивости (ККК+БКЧ+2К) и без них (БКК).

Полученные результаты позволяют сделать следующие выводы:

- при совместном использовании всех трех рассмотренных способов повышения сбое- и отказоустойчивости увеличение площади, занимаемой матрицей памяти на кристалле, составляет от 25 до 50%;

- введение рассмотренных способов мало влияет на время считывания информационного слова;

- разбиение блока памяти на банки приводит к возрастанию общей площади до 1,6 - 1,9 раз в зависимости от количества банков и способа повышения сбое- и отказоустойчивости;

- наиболее надежный вариант организации памяти получается при разбиении блока на N 8-битных банков и побайтном использовании кода обнаружения и коррекции одиночной ошибки. В этом варианте число детектируемых ошибок увеличивается в N раз (в нашем примере до 16 ошибок по сравнению с одной при отсутствии разбиения). Также в N раз возрастает количество используемых резервных колонок (с 2 до 32);

- при разбиении блока памяти на банки достигается уменьшение времени считывания до 18%.

Зависимость площади блока памяти 4Кх128 бит от разрядности использованных банков для случая применения всех рассматриваемых способов повышения сбое- и отказоустойчивости (ККК+БКЧ+2К) и без них (БКК)

Сравнительный анализ комбинированных методов...

Таблица 2

Варианты реализации блока памяти 4Кх128 бит

Способ защиты Разрядность Площадь банка Задержка при Площадь блока

банка, бит 2 памяти, мкм чтении данных, 2 памяти, мкм

нс

Банк 4Кх128 бит

БКК 128 103043 1,07 103043

БКЧ 144 114762 1,09 114762

ККК 136 108903 1,08 108903

ККК+БКЧ* 136+16 124592 1,08 124592

ККК+2К 138 112770 1,14 112770

ККК+БКЧ+2К* 138+16 128458 1,14 128458

2 банка 4Кх64 бит

БКК 64 49356 1,01 98712

БКЧ 72 54967 1,03 109934

ККК 71 54266 1,03 108532

ККК+БКЧ 79 67154 1,01 134308

ККК+2К 73 56934 1,07 113868

ККК+БКЧ+2К 81 70113 1,03 140225

4 банка 4Кх32 бит

БКК 32 26911 0,92 107645

БКЧ 36 29716 0,93 118868

ККК 38 31120 0,94 124479

ККК+БКЧ 42 33925 0,94 135700

ККК+2К 40 33261 0,98 133046

ККК+БКЧ+2К 44 36131 0,99 144524

8 банков 4Кх16 бит

БКК 16 15689 0,87 125510

БКЧ 18 17092 0,88 136732

ККК 21 19196 0,87 153566

ККК+БКЧ 23 20599 0,89 164788

ККК+2К 23 21066 0,93 168534

ККК+БКЧ+2К 25 22501 0,93 180012

6 банков 4Кх8 бит

БКК 8 10077 0,86 161232

БКЧ 9 10779 0,86 172464

ККК 12 12883 0,87 206128

ККК+БКЧ 13 13584 0,87 217344

ККК+2К 14 14611 0,91 233771

ККК+БКЧ+2К 15 15328 0,91 245249

Блоки составлены из двух банков из-за ограничений компилятора памяти, не позволяюще-

го создавать банки для информационных слов длиной более 144 разрядов.

Заключение. Результаты проведенного исследования показывают, что применение комбинированных методов повышения сбое- и отказоустойчивости встроенных блоков статических ОЗУ требует увеличения в 1,5 - 2 раза площади, занимаемой на кристалле матрицей ячеек памяти. Показана эффективность разбиения блока памяти на банки уменьшенной разрядности. При этом число детектируемых ошибок увеличивается пропорционально количеству сформированных банков.

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

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Литература

1. Зебрев Г.И. Радиационные эффекты в интегральных схемах высокой степени интеграции. -М.: НИЯУ МИФИ, 2010. - 148 с.

2. Юдинцев В. Радиационно-стойкие интегральные схемы. Надежность в космосе и на Земле // Электроника: Наука, Технология, Бизнес. - 2007. - №5. - С. 72-77.

3. Ачкасов В.Н., Смерек В.А., Уткин Д.М., Зольников В.К. Методы обеспечения стойкости микросхем к одиночным событиям при проектировании радиационно-стойких микросхем // V Всероссийская науч.-техн. конф. «Проблемы разработки перспективных микро- и наноэлектронных систем (МЭС)»: сб. тр. - М.: ИППМ РАН, 2012. - С. 634-637.

4. Еремеев П.М. Использование кода Хэмминга для исправления двойных сбоев в смежных разрядах памяти в аппаратуре космического назначения // Изв. вузов. Электроника. - 2015. - Т. 20. - № 3. -С. 321-322.

5. Краснюк А.А., Петров К.А. Особенности применения методов помехоустойчивого кодирования в суб-100-нм микросхемах памяти для космических систем // V Всероссийская науч.-техн. конф. «Проблемы разработки перспективных микро- и наноэлектронных систем (МЭС)»: сб. тр. - М.: ИППМ РАН, 2012. - С. 638-641.

6. Built in self repair for embedded high density SRAM / Kim I., Zorian Y., Komoriya G. et al. // Proc. of International Test Conf. - 1998. - P. 1112-1119.

7. Chang D.-M., Li J.-F., Huang Y.-J. A built-in redundancy-analysis scheme for random access memories with two-level redundancy // J. of Electronic Testing-Theory and Applications. - 2008. - Vol. 24. -P. 181-192.

8. Hamming R.W. Error detecting and correcting codes // Bell Syst. Tech. J. - 1950. - Vol. 29. -P. 147-160.

Статья поступила 9 декабря 2015 г.

Шагурин Игорь Иванович - доктор технических наук, профессор кафедры микро-и наноэлектроники Национального исследовательского ядерного университета (НИЯУ) «МИФИ» (г. Москва), главный научный сотрудник ЗАО НТЦ «Модуль» (г. Москва). Область научных интересов: цифровая схемотехника, микропроцессорная техника. E-mail: ishagurin@inbox.ru

Щигорев Леонид Алексеевич - инженер ЗАО НТЦ «Модуль» (г. Москва), аспирант кафедры микро- и наноэлектроники НИЯУ «МИФИ» (г. Москва). Область научных интересов: цифровая схемотехника, методы повышения сбоеустойчивости, автоматизация проектирования.

i Надоели баннеры? Вы всегда можете отключить рекламу.