Соловьев Роман Александрович - Институт проблем проектирования в микроэлектронике РАН; e-mail: [email protected]; 124365, Москва, Зеленоград, ул. Советская, 3; тел.: +74997299890; в.н.с.; к.т.н.
Кустов Александр Георгиевич - e-mail: [email protected]; стажёр-исследователь.
Рухлов Владимир Сергеевич - e-mail: [email protected]; м.н.с.
Щелоков Альберт Николаевич - e-mail: [email protected]; с.н.с.; к.ф.-м.н.; доцент.
Пузырьков Дмитрий Валериевич - Институт прикладной математики им. М.В. Келдыша РАН; e-mail: [email protected]; 125047, Москва, Миусская пл., 4; тел.:+79057285780; аспирант.
Solovyev Roman Alexandrovich - The Institute for Design Problems in Microelectronics (IPPM RAS); e-mail: [email protected]; 124365, Moscow, Zelenograd, Sovetskaya street, 3; рhone: +74997299890; leading researcher; cand. of eng. sc.
Kustov Alexander Georgievich - e-mail: [email protected]; junior researcher. Rukhlov Vladimir Sergeevich - e-mail: [email protected]; junior researcher.
Schelokov Albert Nikolaevich - e-mail: [email protected]; senior researcher; cand. of phis.-math.
sc.; associate professor.
Puzyrkov Dmitry Valerievich - Keldysh Institute of Applied Mathematics of Russian Academy of Sciences; e-mail: [email protected]; 4, Miusskaya sq., Moscow, 125047, Russia; phone: +79057285780; postgraduate student.
УДК 621.3.049.771.14
А.Л. Стемпковский, Д.В. Тельпухов, Т.Д. Жукова, С.И. Гуров, Р.А. Соловьев
МЕТОДЫ СИНТЕЗА СБОЕУСТОЙЧИВЫХ КОМБИНАЦИОННЫХ КМОП СХЕМ, ОБЕСПЕЧИВАЮЩИХ АВТОМАТИЧЕСКОЕ ИСПРАВЛЕНИЕ ОШИБОК
В настоящее время актуальность исследований в области повышения надежности функционирования микроэлектронных систем неуклонно возрастает. Во многом это связано с непрекращающейся миниатюризацией, приводящей к снижению порога воздействия, необходимого для возникновения сбоев и отказов. Одним из возможных решений этой проблемы может служить подход, связанный с исправлением возникающих в процессе работы ошибок. Для решения задачи автоматической коррекции ошибок, возникающих при сбоях комбинационных схем, существует подход, связанный с применением избыточного кодирования информации. Построение самопроверяемых схем - является традиционным подходом по решению поставленной проблемы. Самокорректируемость обеспечивается созданием в дополнение к основной функциональной схемы контролирующей и обнаруживающей, часто приводящее к возникновению слишком большой задержки времени получения результата. Это направление представляется весьма перспективным и является сейчас объектом интенсивных исследований, однако в настоящее время отсутствует четко сформулированные принципы построения таких схем. В статье рассмотрены базовые принципы построения самокорректируемых схем на базе методов избыточного кодирования, проанализированы различные помехоустойчивые коды с точки зрения применения их в области построения самокорректируемых комбинационных схем, а также разработаны общие рекомендации по использованию помехоустойчивых кодов в задаче построения сбоеустойчивых комбинационных схем. Также в статье предложен метод синтеза сбоеустойчивых КМОП схем на основе битовых пространств Хэмминга. Суть метода заключается в замене элементарных булевых вентилей на их сбоеустойчивые аналоги, обеспечивая коррекцию ошибок на каждом вентиле схемы. Предлагаемый метод эксплуатирует идею селективной защиты на уровне отдельных вентилей, однако имеет существенные отличия от
простого поэлементного мажорирования. Были проведены вычислительные эксперименты и произведено сравнение метода с тройным модульным резервированием для случая однократных и многократных сбоев. Метод синтеза сбоеустойчивых КМОП схем на основе битовых пространств Хэмминга продемонстрировал высокий уровень сбоеустойчивости при существенном увеличении аппаратных затрат.
Отказоустойчивость; коррекция ошибки; комбинационные схемы.
A.L. Stempkovskiy, D.V. Telpuhov, T.D. Zhukova, S.I. Gurov, R.A. Solovyev
SYNTHESIS METHODS OF FAULT-TOLERANT COMBINATION CMOS
CIRCUITS, PROVIDING AUTOMATIC CORRECTION OF ERRORS
Currently, the urgency of research in the field of improving the reliability of the microelectronic ssystems is steadily increasing. It happens due to the continuing miniaturization, which leads to a reduction in the threshold of impact, necessary for the occurrence of soft and hard errors. One of the possible solutions to this problem can be the approach related to the correction of errors occurring during the work process. To solve the problem of automatic error correction, arising from the faults in combinational circuits, there is an approach associated with the use of redundant coding. Building a self-checking circuit is the traditional approach for the solution of the problem. Self-correction is provided by creating, in addition to the main functional scheme, a monitoring and detecting one, often resulting in a too long delay in obtaining the result. This direction is very promising and is now the subject of intensive research, but currently there is no clearly formulated principles for designing such schemes. In this article the basic principles of self-correcting schemes based on methods of redundant coding are considered, various error-correcting codes in the field of self-correcting combinational circuits are analyzed, and general recommendations on the use of error-correcting codes with respect to the problem of constructing fault-tolerant combinational circuits are developed. The article also offers a method for synthesizing fault-tolerant CMOS circuits based on Hamming bit spaces. The method consists in replacing the elementary Boolean gates with their fault-tolerant analogs, providing correction of errors on each gate. The proposed method exploits the idea ofselective protection at the level of individual gates, but it has significant differences from simple elementwise TMR. We also carried out computational experiments and compared the method with triple modular redundancy for the case of single and multiple failures. Method for synthesizing fault-tolerant CMOS circuits based on Hamming bit spaces demonstrated a high level of failure stability with a significant increase in hardware costs.
Fault tolerance; error correction; combinational circuits.
Введение. Обеспечение повышенной надёжности функционирования интегральных схем (ИС) в настоящее время является актуальной научно-технической проблемой. Важной стороной этой проблемы является устойчивость схем к случайным сбоям, временным нарушениям корректной работы внутренних узлов ИС без какого-либо повреждения микросхемы. Считается, что интенсивность сбоев на порядок превышает интенсивность отказов, при которых наблюдается потеря способности устройства выполнить требуемую функцию. Причиной сбоев является воздействие на схему различных видов помех: радиационных, скачков напряжений питания, деградаций сигналов во времени и др. До 50 % отказов в современном оборудовании, работающем в условиях воздействия внешней радиации, связаны с влиянием дозовых и однократных радиационных эффектов. Ионизация высокой интенсивности, вызванная а- и у-излучением, а также тяжелыми заряженными частицами (протонами и нейтронами) создает импульсы переходного тока, которые могут вызвать переключение битов в схемах функциональной логики, что делает схему временно неисправной. Исследования в данной области показали, что вероятность ошибки от указанных причин может варьироваться в очень широких пределах: от менее, чем 0,1 % до 30 % для больших и очень малых схем соответственно [1]. Поэтому сбоеустойчивость является важнейшим требованием к аппаратуре, работающей в тяжелых условиях космоса.
Неустойчивостью, например, к одиночным сбоям обладают широко используемые в устройствах космического применения программируемые логические интегральные схемы (ПЛИС), построенные на основе ячеек статической памяти [2]. При этом период работоспособного функционирования, например, аппаратуры спутников связи должен быть не менее 15 лет, а радиационно-стойкие техпроцессы в настоящее время по проектным нормам отстают на 4-6 поколений от современных коммерчески-доступных технологических процессов. Для достижения наилучшей производительности в мире активно развивается направление радиаци-онно-стойкого проектирования Radiation Hard by Design (RHBD), основанного на использовании коммерчески-доступных технологических процессов с применением схемотехнических, топологических и алгоритмических методов повышения сбоеустойчивости [3].
Ясно, что одиночная неисправность того или иного элемента схемы может привести к кратной ошибке на выходе схемы, в результате чего типичной является ситуация либо полного отсутствия ошибки (маскирование), либо наличия сразу нескольких ошибок на выходе схемы. Для исключения эффекта конуса ошибок возможно применение принципа независимой реализации функций, при котором не производится совместная минимизация, однако это обычно приводит значительному увеличению объёма аппаратуры.
Традиционным подходом к обеспечению сбоеустойчивости цифровых схем является метод кратного резервирования, при котором основная схема реплицируется N раз, а схема голосования определяет истинность результирующего выхода, т.е. применяется процедура мажорирования. Как правило, используется троирование аппаратуры (TMR, Triple Modular Redundancy, тройное модульное резервирование), основанное на предположении, что ошибка может возникнуть только в одном блоке из трёх. Следует отметить, что резервирование выполняют как на уровне всей схемы, так и на уровне отдельных подсхем, узлов и даже отдельных логических вентилей. Внедрение подобного рода селективной избыточности позволяет защищать наиболее уязвимые участки схемы, обеспечивая разумный компромисс между надежностью схемы и аппаратными затратами.
Данный подход на основе селективного внедрения структурной избыточности может быть распространен и на методы построения самокорректируемых схем на базе методов избыточного кодирования. Экстремумом для таких методов является помехоустойчивое кодирование отдельных вентилей. В данной работе показано, что в ряде случаев такой подход на базе помехоустойчивого кодирования в конечном пространстве Хэмминга более эффективен чем поэлементное мажорирование.
Далее в статье рассмотрены базовые принципы построения самокорректируемых схем на базе методов избыточного кодирования; проанализированы различные помехоустойчивые коды с точки зрения применения их в области построения самокорректируемых комбинационных схем; исследован метод построения самокорректируемых комбинационных схем с помощью метода кодирования в конечном пространстве Хэмминга; Приведены результаты численных экспериментов на основе большого набора benchmark схем из набора LGSynth89.
1. Самокорректируемые схемы на базе методов избыточного кодирования. Данный подход представляется весьма перспективным и является сейчас объектом интенсивных исследований [3-16]. Здесь следует говорить об информационной, или кодовой избыточности. При этом понятно, что любой избыточный код может обнаружить или исправить не все ошибки, а только ошибки определённого типа, а для обнаружения ошибок требуется значительно меньшая избыточность, чем для их исправления.
Отметим общие свойства задачи. Прежде всего, как правило, считают, что исходная (функциональная) схема спроектирована и не подлежит изменению.
Далее, обычно искажение информации, возникающее при сбоях, в рамках двоичного симметричного канала не описывается традиционной моделью, обычно используемой при разработке избыточных кодов.
Также понятно, что эффективность и сложность применения того или иного метода избыточного кодирования существенно зависит от требуемого уровня обеспечения надёжности исправления ошибки.
Важным является то, что обычные оценки качества кода: кодовое расстояние, избыточность и т.д., не являются определяющими при выборе кода для решения рассматриваемой задачи и поэтому на практике часто выбирают коды с худшими характеристиками, но позволяющими более просто выполнить декодирование и исправление выходного вектора схемы. Так что указанные характеристики не являются определяющими факторами при выборе используемого кода.
Ясно, что реализация кодирования/декодирования выбранного кода не должна существенно снижать быстродействие построенной схемы.
Известны данные по кратности ошибок для типовых узлов дискретных вычислительных устройств, которые оказываются близки данным в целом по всему устройству [17] (табл. 1).
Таблица 1
Кратности ошибок для типовых узлов дискретных вычислительных
устройств
Кратность ошибки Доля ошибки, %
1 75-80
2 15-20
3 2-5
более 3 менее 1
Очевидное замечание, что при использовании корректирующих кодов важно заметить и исправить ошибку именно в информационных, а не в проверочных символах, особенно существенно для нашей задачи. "Основной ловушкой этого метода [применения избыточного кодирования для синтеза схем с исправлением ошибок] является увеличение избыточности в зависимости от количества исправлений ошибок в битах, которые нам нужны" [10].
При разработке средств исправления ошибок схем, вызванных сбоями, следует учитывать следующие особенности задачи, из которых будут вытекать требования к свойствам выбираемого кода.
Проверочные биты вычисляются специальной корректирующей схемой, параллельно и одновременно с информационными, вычисляемыми основной схемой, в то время как при классическом подходе предполагается кодирование уже имеющегося сообщения.
Выигрыш в суммарной площади, основной и корректирующей схем при описываемом подходе, получается из-за того, что число проверочных разрядов меньше, и обычно - значительно, числа информационных, и методы минимизации позволяют синтезировать корректирующую схему существенно меньшей площади, чем основная схема.
Поскольку коды с оптимальными характеристиками избыточности требуют кодирующих и декодирующих устройств повышенной сложности, при выборе кода необходимо учитывать все факторы, влияющие на сложность реализации схемы.
Представляется естественным строить корректирующие схемы для комбинационных схем также комбинационными, что означает ограничение на реализацию алгоритмов декодирования, заключающееся в отказе от использования последова-тельностных элементов, прежде всего сдвиговых регистров.
Проведённые эксперименты показали, что наиболее вероятный одиночный сбой функционального элемента схемы, как правило, либо маскируется, либо приводит к инвертированию единственного разряда на выходе схемы, т.е. кратные ошибки маловероятны [11].
В некоторых случаях, для обеспечения практической достоверности наличия не более, чем одной ошибки, возможно использование совокупности возможных выходных ^-векторов данной комбинационной схемы существенно меньше мощ-k
ности множества 2 , наименьшее расстояние между ними велико [4, 18]. Например, в дешифраторе должна возбуждаться только один выходной разряд и другое свидетельствует об ошибке.
Для исключения появления ошибки уже в процессе проверки и исправления выходного вектора, корректирующую схему можно выполнять в специальном сбоеустойчивом варианте, обеспечивающим с помощью схемотехнических и технологических методов её «физическую» защиту, и поэтому этот процесс с некоторыми допущениями можно считать свободным от ошибок. Это соответствует принципу выбора «доверенного сторожа», который предполагает, что средства контроля менее уязвимы к дестабилизирующим воздействиям, чем основные функциональные устройства [17]. Методы такой «физической» защиты рассмотрены, например, в работах [10, 15, 19-20].
Но применение данного метода так же приводит к увеличению площади корректирующей схемы. Понятно, что успех будет лишь в случае, когда площадь последней менее чем в два раза превосходит площадь основной схемы, иначе исправление одиночной ошибки методом тройного резервирования с мажорированием выходов по правилу «2 из 3» становится более выгодным.
Отметим, что указанные выше особенности рассматриваемой задачи несколько отличаются от приведённых в монографии [16] и статье [9], где сформулированы требования к корректирующим кодам для дискретных устройств обработки информации общего типа и запоминающих устройств.
На практике обычно используют коды, исправляющую одиночную единичную и обнаруживающие двойную ошибку (схемы SEC / DED, Single error correction / Double error detection). Конкретно в них применяют либо модифицированные коды Хэмминга, либо LDPC-коды. Отметим, что применение последних упрощает реализацию кодирования и декодирования.
При высокой степени асимметрии и множественности ошибок целесообразно использовать коды, ориентированные на коррекцию ошибок в несимметричном канале: коды Бергера, коды с постоянным весом и др. В устройствах, реализующих арифметические операции, когда происходят переносы результатов сложения разрядов в другие разряды, целесообразно использовать арифметические корректирующие коды [21].
2. Метод построения сбоеоустойчивых логических схем на основе конечного Хэммингового пространства. В данной статье для построения сбоеустойчивых логических схем предлагается применять метод помехоустойчивого кодирования в конечном Хэмминговом пространстве [22]. Идея данного метода заключается в замене элементарных булевых вентилей на их сбоеустойчивые аналоги, обеспечивая коррекцию ошибок на каждом вентиле схемы. Таким образом, предлагаемый метод эксплуатирует идею селективной защиты на уровне отдельных вентилей, однако имеет существенные отличия от простого поэлементного мажорирования.
Рассмотрим 3-х битное Хэммингово пространство: так как пространство трехбитное, выбирается два полюса (для любой битности полюса всегда два) из диапазона [0:23]. Выберем Полюс_0 = 0, Полюс_1=3. Данные полюса разбивают
все возможные значения из диапазона [0:23] на три класса: {Класс_0, Класс_1 и Класс_Х}. В Класс_0 входят все значения, которые по Хэммингу ближе к По-люс_0 чем к Полюс_1. В Класс_1 - те значения, для которых расстояния Хэммин-га меньше по отношению к Полюс_1, чем по отношению к Полюс_0. В Класс_Х входят те значения, которые находятся строго посередине между полюсами. На рис. 1 представлено наглядное изображение нашего примера:
Рис. 1. 3-х битное Хэммингово пространство с Полюс_0 = 0 и Полюс_1=3
Число, попавшее в Класс_0, даже если оно было ошибочно, тем не менее может быть скорректировано в Полюс_0. Числа, попавшие в Класс_1, интерпретируются как Полюс_1. С помощью чисел, попавших в Класс_Х, можно удостовериться лишь в факте наличия ошибки.
В данном примере множество значений попало в Класс_Х, что делает этот пример неудачным. Поэтому выберем другие параметры конечного пространства Хэмминга. Рассмотрим пространство (2,5)3 - трехбитное пространство с полюсами в точках 5 и 2 (рис. 2).
Рис. 2. 3-х битное Хэммингово пространство с с Полюс_0 = 2 и Полюс_1 =5
Применение данной методики позволяет исправить автоматически любую одиночную ошибку в вентиле.
Рассмотрим процесс непосредственного построения булевых функций. Для этого снова обратимся к нашему примеру и построим защищенную булеву функцию ИЛИ.
Логическая схема ИЛИ в традиционном виде представлена на рис. 3.
a b a+b
0 0 0
0 1 1
1 0 1
1 1 1
Рис. 3. Представление логической схемы в виде таблицы истинности
Для построения функции в пространстве Хэмминга необходимо все входные нули заменить на «Класс_0», единицы - на «Класс_1». Выходные нули заменяются на «Полюс_0», а единицы - на «Полюс_1» (рис. 4).
а Ь а+Ь
Класс_0 Класс_0 Полюс_0
Класс_0 Класс_1 Полюс_1
Класс_1 Класс_0 Полюс_1
Класс_1 Класс_1 Полюс_1
Рис. 4. Построение функции в пространстве Хэмминга
В итоге получаем, что любой элемент из Класса_0 интерпретируется как логический ноль, а любой элемент из Класса_1 - как логическая единица. Результатами являются полюса, то есть коррекция происходит в неявном виде в каждой логической ячейке. Чтобы задать функцию в виде таблицы истинности, необходимо расписать все Классы так, чтобы вместо клеток Класс_0/Класс_1 были все возможные комбинации из Класса_0 и т.д. Кратко, полученную таблицу истинности можно изобразить так (рис. 5).
а Ь а+Ь
0 0 2
0 2 2
0 3 2
0 6 2
2 0 2
2 2 2
2 3 2
2 6 2
3 0 2
3 2 2
3 3 2
3 6 2
6 0 2
6 2 2
6 3 2
6 6 2
rest rest 5
Рис. 5. Краткое изображение результирующей таблицы истинности
Данная таблица обладет большим размером, но за счет большого количества одинаковых частей она значительно упрощается. В результате, после минимизации таблицы средствами Espresso [23] была получена логическая схема, представленная на рис. 6.
Рис. 6. Логическая схема ИЛИ, полученная с помощью программы Logic Friday
Также необходимо учесть, что для для перевода из традиционной логики в пространство Хэмминга и обратно нужны преобразователи. Логическая функция обратного преобразователя для данного примера представлена на рис. 7.
Коды (2,5)3 Традиционный код
a b c Tr
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 1
Рис. 7. Логическая схема для обратного преобразователя для ЛЭ ИЛИ
Рассмотрим процесс коррекции. Коррекция ошибки происходит автоматически в неявном виде.
Пусть на вход элемента ИЛИ поступают значения:
а = 0, Ь = 0.
В кодированном варианте данные значения примут следующий вид:
а ={010}, Ь = {010}
В корректном варианте для ЛЭ ИЛИ выход также должен быть равен нулю:
с={010}.
Пусть в значение Ь поступило на вход с ошибкой. Получаем на входе устройства следующие значения:
а ={010}, Ь ={011}.
Рассмотрим таблицу истинности сбоеустойчивого ИЛИ и найдем в ней строку, соответствующую значениям, поданным на вход:
a b a+b
2 3 2
Согласно ей, на выходе устройства автоматически будет выдана 2, т.е. с = {010}, что приводит к исправлению ошибки.
Нетрудно заметить, что предлагаемый подход имеет множество общих черт с методом трехкратного резервирования на вентильном уровне. Различие заключается в том, что в троированном вентиле присутствует воутер, котрый не защищен от ошибок. Это приводит к тому, что один элемент защищается четырьмя элементами, каждый из котрых подвержен сбоям. Таким образом, этот подход оказывается неприминимым в рамках традиционной постановки Фон-Неймана [24]. В методе кодирования в базисе пространств Хэмминга эта проблема принципиально отсутствует. Дело в том, что воутером в этом подходе выступают последующие элементы в схеме, воутером которых также являются последующие элементы. Таким образом, в случае раздельного синтеза расширенных вентилей по каждому биту -любая однократная ошибка в вентиле гарантированно исправляется. Более того, предлагаемый метод имеет существенные преимущества относительно многократных ошибок. Строго говоря, любое число кратных ошибок гарантированно исправляется, при условии, что на один расширенный вентиль приходится не больше одного сбоя.
Очевидной платой за столь высокий уровень сбоеустойчивости выступают очень большие аппаратные затраты. Кратное увеличение числа используемых вентилей делают этот метод неприменимым для всех вентилей схемы. Таким образом, целесообразно использовать кодирование в битовых пространствах Хэмминга для наиболее уязвимых элементов.
В следующем разделе представлены результаты вычислительных экспериментов по оценке эффективности метода кодирования в трехбитном пространстве Хэмминга с точки зрения сбоеустойчивости и аппаратных затрат.
3. Результаты численных экспериментов. Для метода построения сбое-устойчивых логических схем на основе конечного Хэммингового пространства были проведены численные эксперименты для схем из набора LGSynth89. Все схемы синтезированы в базисе двухвходовых элементов. Стоит заметить, что при синтезе схем в базисе трехбитного пространства Хэмминга все элементы исходной схемы подвергались преобразованию, что существенным образом повлияло на аппаратные затраты получаемых схем.
Таблица 2
Результаты численных экспериментов для схем из набора Ь08упШ89
Метод кодирования
Имя схемы Исходная схема TMR на основе пространства Хэмминга
n а n а n а
Ь9_БупШ 154 77,35733 567 70,00310 3747 45,58461
bw 195 107,81250 725 103,62500 5017 65,81250
С17_8упШ 6 4,93750 28 5,50000 170 3,75000
сИ^упШ 125 112,45752 555 144,02945 3459 91,53944
ст82а_БупШ 25 19,62500 90 9,00000 567 6,00000
decod_synth 40 36,00000 200 78,00000 934 47,00000
ехатр1е2_БупШ 298 201,27037 1224 276,96011 7620 173,57788
my_adder_synth 178 132,66039 619 51,04383 4364 33,96396
pc1er8_synth 111 73,04318 418 66,97938 2555 42,00339
sct_synth 85 47,47599 330 45,09056 2025 30,02461
unreg_synth 102 81,60548 386 55,96311 2533 37,53649
УЯ2 215 48,86851 685 32,67507 5192 20,33402
x2_synth 55 24,83594 200 15,34375 1288 11,17188
x4_synth 345 250,43091 1390 277,07223 8969 178,07832
z4m1_synth 49 32,12500 167 12,00000 1099 8,00000
В процессе исследования были проведены вычислительные эксперименты, в результате которых оценивались аппаратные затраты и надежностные характеристики схем, полученных в результате применения традиционного метода тройного резервирования всей схемы и метода кодирования в трехбитном пространстве Хэмминга. Аппаратные затраты оценивались как суммарное число вентилей в схеме, а в качестве базовой характеристики надежности был выбран коэффициент логической чувствительности схемы а [25]. Данный параметр представляет собой сумму наблюдаемостей вентилей и характеризует среднее число ненадежных элементов в схеме, ошибка в которых приводит к ошибке на выходе схемы. Наблюдаемость вентиля стоит рассматривать как вероятность того, что ошибка на вентиле не будет маскирована и повлияет на выход логической схемы при условии, что на остальных вентилях ошибки не возникало. Результаты представлены в табл. 2.
Из представленной таблицы можно сделать несколько выводов. Во-первых, можно наблюдать что число вентилей в методе тройного резервирования возрастает примерно в четыре раза, в то время как при кодировании на основе пространства Хэмминга - возрастает на порядок. Во-вторых, сбоеустойчивость предлагаемого метода практически во всех случаях превосходит и исходную схему, и метод тройного резервирования. Этот факт следует из того, что коэффициент логической чувствительности а для большинства схем меньше чем соответствующие коэффициенты для исходной и ТМЯ схем. Также следует отметить, что для ряда схем метод тройного резервирования даже ухудшил показатель сбоеустойчивости, что говорит о неприменимости данного метода для конкретной комбинационной схемы.
Представленные результаты относятся только к однократным сбоям, так как коэффициент логической чувствительности схемы учитыват только линейный коэффициент полинома ошибки. Для того чтобы оценить возможности предлагаемо-
го подхода в исправлении многократных сбоев - были проведены дополнительные исследования. В исследуемые схемы инжектировались сбои определенной кратности и оценивалась вероятность ошибки на выходах схемы. Результаты исследований для традиционного метода тройного резервирования всей схемы и метода кодирования в трехбитном пространстве Хэмминга представлены на рис. 8 и 9.
Рис. 8. Вероятностное распределение кратности ошибки на выходе схемы C17_synth, синтезированной методом на основе простраства Хэмминга и тройным модульным резервированием
cht svnth
3,0%
I 2,5%
| 2,0%
Ö 1,5% о
g 1,0%
g" 0,5% Я
0,0%
о
Кратность ошибки
Рис. 9. Вероятностное распределение кратности ошибки на выходе схемы синтезированной методом на основе простраства Хэмминга и тройным модульным резервированием
Полученные результаты подтверждают предположения о высокой эффективности предлагаемого метода на основе битовых пространств Хэмминга относительно многократных ошибок.
Заключение. Рассмотрены возможности построения самокорректируемых комбинационных схем на основе методов помехоустойчивого кодирования. Разработаны общие рекомендации по использованию помехоустойчивых кодов в задаче построения сбоеустойчивых комбинационных схем. Предложен эффективный метод кодирования в битовых полях Хэмминга для обеспечения селективной избыточности на уровне отдельных логических вентилей. Проведенные вычислительные эксперименты показали высокую эффективность предлагаемого метода по сравнению с традиционными методами тройного модульного резервирования.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Huang H.-M., Wen H.-P.W. Fast-yet-accurate statistical soft-error-rate analysis considering full-spectrum charge collection // IEEE Design & Test. - March/April 2013. - P. 77-86.
2. Телец В., Цыбин С., Быстрицкий А., Подъяпольский С. ПЛИС для космических применений. Архитектурные и схемотехнические особенности // Электроника: наука, технология, бизнес. - 2005. - № 6. - С. 44-48.
3. Гуров С.И. Спектральный R-код с проверками на чётность // Прикладная математика и информатика: Труды факультета Вычислительной математики и кибернетики. - М.: Изд-во факультета ВМК МГУ, 2016 (в печати).
4. Хетагуров Я.А., Руднев Ю.П. Повышение надёжности цифровых устройств методами избыточного кодирования. - М.: Энергия, 1974. - 270 с.
5. Иваськов Ю.Л., Рякин О.М. Об одной информационной модели ненадёжных комбинационных схем // Кибернетика. - 1966. - Т. 2, № 6. - С. 41-46.
6. Согомонян Е.С., Слабаков Е.В. Самопроверяемые устройства и отказоустойчивые системы. - М.: Радио и связь, 1989. - 208 c.
7. Варшавский В.И., Розенблюм Л.Я., Таубин А.Р. Полностью самопроверяемые асинхронные комбинационные схемы и свойство индицируемости // Автоматика и телемеханика.
- 1982. - Вып. 5. - С. 138-146.
8. Щербаков Н.С. Самокорректирующиеся дискретные устройства. - М.: Машиностроение, 1975. - 216 c.
9. Коц Ч. Коды с исправлением ошибок и их реализация в цифровых системах // В кн.: Методы введения избыточности для вычислительных систем / под ред. В.С. Пугачева.
- М.: Сов. радио, 1966. - С. 179-229.
10. Poolakkaparambil M., Mathew J. BCH code based multiple bit error correction in finite field multiplier circuits // ISQED. - 2011. - P. 1-6.
11. Гаврилов С.В., Гуров С.И., Жукова Т.Д., Рыжова Д.И. Применение теория кодирования для повышения надёжности комбинационных схем // Информационные технологии.
- 2016. - № 12. - С. 931-937.
12. Гаврилов С.В., Гуров С.И., Жукова Т.Д., Рыжова Д.И., Тельпухов Д.В. Методы повышения сбоеустойчивости комбинационных ИМС методами избыточного кодирования // Прикладная математика и информатика: Труды факультета Вычислительной математики и кибернетики. - М.: Изд-во факультета ВМК МГУ, 2016. - № 53. - С. 93-102.
13. Mahesh Poolakkaparambil, Jimson Mathew and Abusaleh Jabir. Multiple Bit Error Tolerant Galois Field Architectures Over GF (2m) // Electronics. - 2012. - No. 1. - P. 3-22.
14. Hsiao M.Y. A class of optimal minimum odd-weight-column SEC-DED codes // IBM J. Res. Develop. - 1970. - Vol. 14. - P. 395-401.
15. Петров К.А. Элементы помехоустойчивого кодирования нециклического типа субмикронных КМОП оперативных запоминающих устройств: дисс. ... канд. техн. наук. Национальный исследовательский ядерный университет «МИФИ», 2015.
16. Щербаков Н.С. Достоверность работы цифровых устройств. - М.: Машиностроение, 1989. - 224 c.
17. Кулик А.С. Элементы теории рационального управления объектами. - Харьков: ХАИ, 2016. - 255 c.
18. Савченко Ю.Г. Использование естественной информационной избыточности для автокоррекции ошибок в логических сетях // Кибернетика. - 1970. - № 6. - С. 85-87.
19. Юдинцев В. Радиационно-стойкие интегральные схемы. Надежность в космосе и на земле // Электроника: наука, технология, бизнес. - 2007. - Вып. 5. - C. 72-77.
20. Попович А. Топологическая норма и радиационная стойкость // Компоненты и технологии. - 2010. - Вып. № 110. - С. 100-102.
21. КолесникВ.Д., МирончиковЕ.Т. Коды с исправлением ошибок при арифметических операциях // Проблемы передачи информации. - 1965. - Т. 1, № 3. - С. 20-28.
22. Alagoz B.B. Boolean Logic with Fault Tolerant Coding // OncuBilim Algorithm and Systems Labs. - 2009. - Vol.09, Art.No:03
23. Rudell, Richard L. (1986-06-05), "Multiple-Valued Logic Minimization for PLA Synthesis", Memorandum No. UCB/ERL M86-65, Berkeley.
24. J. von Neumann. Probabilistic logic and the synthesis of reliable organisms from unreliable components // in: Automata Studies, C. E. Shannon and J. McCarthy (editors), Princeton Univ. Press, Princeton, N. J. - 1954.
25. Стемпковский А.Л., Тельпухов Д.В., Соловьев Р.А., Мячиков М.В., Тельпухова Н.В. Разработка технологически независимых метрик для оценки маскирующих свойств логических схем // Вычислительные технологии. - 2016. - Т. 21 (2).- C. 53-62.
REFERENCES
1. Huang H.-M., Wen H.-P.W. Fast-yet-accurate statistical soft-error-rate analysis considering full-spectrum charge collection, IEEE Design & Test, March/April 2013, pp. 77-86.
2. Telets V., Tsybin S., Bystritskiy A., Pod"yapol'skiy S. PLIS dlya kosmicheskikh prime-neniy. Arkhitekturnye i skhemotekhnicheskie osobennosti [FPGAs for space applications. Architectural and circuit features], Elektronika: nauka, tekhnologiya, biznes [Electronics: Science, Technology, Business], 2005, No. 6, pp. 44-48.
3. Gurov S.I. Spektral'nyy R-kod s proverkami na chetnost' [Spectral R-code with the parity check], Prikladnaya matematika i informatika: Trudy fakul'teta Vychislitel'noy matematiki i kibernetiki [Applied mathematics and computer science: Proceedings of the faculty of Computational mathematics and Cybernetics]. Moscow: Izd-vo fakul'teta VMK MGU, 2016 (in press).
4. Khetagurov Ya.A., Rudnev Yu.P. Povyshenie nadezhnosti tsifrovykh ustroystv metodami izbytochnogo kodirovaniya [.Improving the reliability of digital devices methods of redundant coding]. Moscow: Energiya, 1974, 270 p.
5. Ivas'kov Yu.L., Ryakin O.M. Ob odnoy informatsionnoy modeli nenadezhnykh kombinatsionnykh skhem [About one information model unreliable combinational circuits], Kibernetika [Cybernetics], 1966, Vol. 2, No. 6, pp. 41-46.
6. Sogomonyan E.S., Slabakov E.V. Samoproveryaemye ustroystva i otkazoustoychivye sistemy [Samoupravlenie devices and fault-tolerant systems]. Moscow: Radio i svyaz', 1989, 208 p.
7. Varshavskiy V.I., Rozenblyum L.Ya., Taubin A.R. Polnost'yu samoproveryaemye asinkhronnye kombinatsionnye skhemy i svoystvo inditsiruemosti [Fully samoupravlenie asynchronous combinational circuit and the property of indeterminate], Avtomatika i telemekhanika [Automatics and telemechanics], 1982, Issue 5, pp. 138-146.
8. Shcherbakov N.S. Samokorrektiruyushchiesya diskretnye ustroystva [Discrete self-correcting device]. Moscow: Mashinostroenie, 1975, 216 p.
9. Kots Ch. Kody s ispravleniem oshibok i ikh realizatsiya v tsifrovykh sistemakh [Codes with error correction and their implementation in digital systems], V kn.: Metody vvedeniya izbytochnosti dlya vychislitel'nykh sistem [In book: Methods of introducing redundancy for computer systems], ed. by V.S. Pugacheva. Modcow: Sov. radio, 1966, pp. 179-229.
10. Poolakkaparambil M., Mathew J. BCH code based multiple bit error correction in finite field multiplier circuits, ISQED, 2011, pp. 1-6.
11. Gavrilov S.V., Gurov S.I., Zhukova T.D., Ryzhova D.I. Primenenie teoriya kodirovaniya dlya povysheniya nadezhnosti kombinatsionnykh skhem [Application of coding theory to improve the reliability of combinational circuits], Informatsionnye tekhnologii [Information Technology], 2016, No. 12, pp. 931-937.
12. Gavrilov S.V., Gurov S.I., Zhukova T.D., Ryzhova D.I., Tel'pukhov D.V. Metody povysheniya sboeustoychivosti kombinatsionnykh IMS metodami izbytochnogo kodirovaniya [Methods of increasing the failure tolerance of the matching IC methods of redundant coding], Prikladnaya matematika i informatika: Trudy fakul'teta Vychislitel'noy matematiki i kibernetiki [Applied mathematics and computer science: Proceedings of the faculty of Computational mathematics and Cybernetics]. Moscow: Izd-vo fakul'teta VMK MGU, 2016, No. 53, pp. 93-102.
13. Mahesh Poolakkaparambil, Jimson Mathew and Abusaleh Jabir. Multiple Bit Error Tolerant Galois Field Architectures Over GF (2m), Electronics, 2012, No. 1, pp. 3 22.
14. Hsiao M.Y. A class of optimal minimum odd-weight-column SEC-DED codes, IBM J. Res. Develop, 1970, Vol. 14, pp. 395-401.
15. Petrov K.A. Elementy pomekhoustoychivogo kodirovaniya netsiklicheskogo tipa submikronnykh KMOP operativnykh zapominayushchikh ustroystv: diss. ... kand. tekhn. nauk [Elements of a non-cyclic error-correcting coding type submicron CMOS RAM. Cand. of eng. sc. diss]. Natsional'nyy issledovatel'skiy yadernyy universitet «MIFI», 2015.
16. Shcherbakov N.S. Dostovernost' raboty tsifrovykh ustroystv [The reliability of digital devices]. Moscow: Mashinostroenie, 1989, 224 p.
17. Kulik A.S. Elementy teorii ratsional'nogo upravleniya ob"ektami [Elements of the theory of rational management of objects]. Khar'kov: KhAI, 2016, 255 p.
18. Savchenko Yu.G. Ispol'zovanie estestvennoy informatsionnoy izbytochnosti dlya avtokorrektsii oshibok v logicheskikh setyakh [The use of the natural information redundancy for autocorrection of errors in the logical networks], Kibernetika [Cybernetics], 1970, No. 6, pp. 85-87.
19. Yudintsev V. Radiatsionno-stoykie integral'nye skhemy. Nadezhnost' v kosmose i na zemle [Radiation-resistant integrated circuits. Reliability in space and on the ground], Elektronika: nauka, tekhnologiya, biznes [Electronics: Science, Technology, Business], 2007, Issue 5, pp. 72-77.
20. Popovich A. Topologicheskaya norma i radiatsionnaya stoykost' [Topological norm and radiation resistance], Komponenty i tekhnologii [Components and Technologies], 2010, Issue No. 110, pp. 100-102.
21. Kolesnik V.D., Mironchikov E.T. Kody s ispravleniem oshibok pri arifmeticheskikh operatsiyakh [Codes with error correction in arithmetic operations], Problemy peredachi informatsii [Problems of information transmission], 1965, Vol. 1, No. 3, pp. 20-28.
22. Alagoz B.B. Boolean Logic with Fault Tolerant Coding, OncuBilim Algorithm and Systems Labs, 2009, Vol. 09, Art.No:03
23. Rudell, Richard L. (1986-06-05), "Multiple-Valued Logic Minimization for PLA Synthesis", Memorandum No. UCB/ERL M86-65, Berkeley.
24. J. von Neumann. Probabilistic logic and the synthesis of reliable organisms from unreliable components, in: Automata Studies, C. E. Shannon and J. McCarthy (editors), Princeton Univ. Press, Princeton, N. J., 1954.
Статью рекомендовал к опубликованию д.т.н., профессор Ю.Ф. Адамов.
Стемпковский Александр Леонидович - Институт проблем проектирования в микроэлектронике РАН (ИППМ РАН); e-mail: [email protected]; 124365, Москва, Зеленоград, ул. Советская, 3; тел.: +74997299890; директор ИППМ РАН; д.т.н.; академик.
Тельпухов Дмитрий Владимирович - e-mail: [email protected]; отдел методологии проектирования интегральных схем; руководитель отдела; к.т.н.
Жукова Татьяна Дмитриевна - e-mail: [email protected]; отдел автоматизации проектирования цифровых схем, инженер-исследователь.
Соловьев Роман Александрович - e-mail: [email protected]; в.н.с.; к.т.н.
Гуров Сергей Исаевич - Московский государственный университет имени М.В. Ломоносова; e-mail: [email protected]; 119991, Москва, Ленинские горы, 1; тел.: +74959394202; к. ф.-м. н.; доцент.
Stempkovskiy Alexander Leonidovich - The Institute for Design Problems in Microelectronics (IPPM RAS); e-mail: [email protected]; 124365, Moscow, Zelenograd, Sovetskaya street, 3; рЬте: +74997299890; head of IPPM RAS, Ph.D, academic.
Telpukhov Dmitry Vladimirovich - e-mail: [email protected]; department of integrated circuits design methodology; head of department; cand. of eng. sc.
Zhukova Tatyana Dmitrievna - e-mail: [email protected]; the department of digital circuits design automation; research engineer.
Solovyev Roman Alexandrovich - e-mail: [email protected]; leading researcher; cand. of eng. sc.
Gurov Sergey Isaevich - Lomonosov Moscow State University; 119991, Moscow, Leninskie Gory, GSP-1; р^ге: +74959394202; e-mail: [email protected].