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

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

CC BY
366
46
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СБОЕУСТОЙЧИВОСТЬ / КОД ХЭММИНГА / СХЕМЫ ФУНКЦИОНАЛЬНОГО КОНТРОЛЯ (СФК) / КОМБИНАЦИОННЫЕ СХЕМЫ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Тельпухов Дмитрий Владимирович, Жукова Татьяна Дмитриевна, Щелоков Альберт Николаевич, Кретинина Полина Денисовна

В настоящее время при проектировании интегральных схем разработчикам приходится учитывать очень большое количество разнородных факторов, которые связаны с обеспечением необходимых характеристик быстродействия, занимаемой площади, энергоэффективности, выходом годных, удобством последующего тестирования, требованиями к универсальности, автономности, и так далее. Одним из основных факторов является надежность функционирования при последующей эксплуатации. Этот критерий выходит на первый план для устройств ответственного применения, а также для устройств, работающих при воздействии дестабилизирующих факторов. Для обеспечения повышенной надежности используют различные методы и подходы на разных уровнях абстракции. Часть из них могут быть применены на этапе проектирования. Одним из основных методов для повышения надежности интегральных схем на этапе проектирования - это использование богатого инструментария из теории помехоустойчивого кодирования. Традиционная область применения помехоустойчивых кодов - это контроль целостности хранимой и передаваемой информации. Комбинационные схемы, напротив, изменяют информацию и не имеют в своём составе запоминающих элементов. Комбинационные схемы на вентильном уровне реализуют таблицы перекодировок, которые каждому входному воздействию однозначно ставят в соответствие некоторое выходное значение. Тем не менее, применение помехоустойчивых кодов для построения сбоеустойчивых комбинационных схем оказывается весьма эффективным. Для этого требуется введение в состав схемы дополнительных комбинационных блоков, которые обеспечивают кодирование, декодирование, контроль, а в некоторых случаях и исправление возникающих в схеме ошибок. В статье исследуется эффективность применения кодов Хэмминга для задачи построения сбоеустойчивых комбинационных схем. В работе были рассмотрены две основные модификации кодов Хэмминга для реализации сбоеустойчивых комбинационных схем. Разработаны средства для автоматизированного синтеза схем функционального контроля на основе данных кодов. Исследована структурная избыточность, а также надежностные характеристики получаемых схем. Проведено сравнение с традиционными методами кратного резервирования. Выведены оценочные функции для избыточности и вероятности пропуска ошибки.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Тельпухов Дмитрий Владимирович, Жукова Татьяна Дмитриевна, Щелоков Альберт Николаевич, Кретинина Полина Денисовна

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

APPLICATION OF THE HAMMING CODE IN THE PROBLEM OF INCREASING FAULT TOLERANCE OF LOGIC CIRCUITS

Currently, when designing integrated circuits, developers have to take into account a very large number of dissimilar factors that are associated with ensuring the necessary performance characteristics, occupied area, energy efficiency, yield, convenience of subsequent testing, requirements for universality, autonomy, and so on. One of the main factors is the reliability of operation. This criterion comes to the fore for critical applications, as well as for devices operating under the influence of destabilizing factors. To provide increased reliability, different methods and approaches are used at different levels. Some of them can be applied at the design stage. One of the main methods for improving the reliability of integrated circuits at the design stage is the use of tools from the theory of error-correcting coding.The traditional field of application of error-correcting codes is the control of the integrity of stored and transmitted information. Combinational logic circuits, on the other hand, change information and do not have storage elements. Combinational logic circuits implement look-up tables at the gate level, which unambiguously assign a certain output value to each input action. Nevertheless, the use of error-correcting codes for constructing error-tolerant combinational circuits turns out to be very effective. This requires the introduction of additional combinational blocks into the circuit, which provide coding, decoding, control, and in some cases correction of errors arising in the circuit. The paper investigates the efficiency of using Hamming codes in relation to the construction of fault-tolerant combinational circuits. The paper considered classical Hamming code and his main modification - weighted code with summation without carries for the implementation of fault-tolerant combinational circuits. Means have been developed for the automated synthesis of fault-tolerant circuits based on these codes. Structural redundancy and reliability characteristics of the resulting circuits are investigated. Comparison with traditional method triple modular redundancy is carried out. Estimating functions are derived for redundancy and the probability of missing an error.

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

Раздел V. Автоматизация проектирования и сетевые технологии

УДК 621.3.049.771.14 DOI 10.18522/2311-3103-2021-4-220-231

Д.В. Тельпухов, Т.Д. Жукова, А.Н. Щелоков, П.Д. Кретинина

ПРИМЕНЕНИЕ КОДА ХЭММИНГА В ЗАДАЧЕ ПОВЫШЕНИЯ СБОЕУСТОЙЧИВОСТИ КОМБИНАЦИОННЫХ СХЕМ*

В настоящее время при проектировании интегральных схем разработчикам приходится учитывать очень большое количество разнородных факторов, которые связаны с обеспечением необходимых характеристик быстродействия, занимаемой площади, энергоэффективности, выходом годных, удобством последующего тестирования, требованиями к универсальности, автономности, и так далее. Одним из основных факторов является надежность функционирования при последующей эксплуатации. Этот критерий выходит на первый план для устройств ответственного применения, а также для устройств, работающих при воздействии дестабилизирующих факторов. Для обеспечения повышенной надежности используют различные методы и подходы на разных уровнях абстракции. Часть из них могут быть применены на этапе проектирования. Одним из основных методов для повышения надежности интегральных схем на этапе проектирования - это использование богатого инструментария из теории помехоустойчивого кодирования. Традиционная область применения помехоустойчивых кодов - это контроль целостности хранимой и передаваемой информации. Комбинационные схемы, напротив, изменяют информацию и не имеют в своём составе запоминающих элементов. Комбинационные схемы на вентильном уровне реализуют таблицы перекодировок, которые каждому входному воздействию однозначно ставят в соответствие некоторое выходное значение. Тем не менее, применение помехоустойчивых кодов для построения сбоеустойчивых комбинационных схем оказывается весьма эффективным. Для этого требуется введение в состав схемы дополнительных комбинационных блоков, которые обеспечивают кодирование, декодирование, контроль, а в некоторых случаях и исправление возникающих в схеме ошибок. В статье исследуется эффективность применения кодов Хэмминга для задачи построения сбоеустойчивых комбинационных схем. В работе были рассмотрены две основные модификации кодов Хэмминга для реализации сбоеустойчивых комбинационных схем. Разработаны средства для автоматизированного синтеза схем функционального контроля на основе данных кодов. Исследована структурная избыточность, а также надежностные характеристики получаемых схем. Проведено сравнение с традиционными методами кратного резервирования. Выведены оценочные функции для избыточности и вероятности пропуска ошибки.

Сбоеустойчивость; код Хэмминга; схемы функционального контроля (СФК); комбинационные схемы.

* Исследование выполнено при финансовой поддержке гранта Президента РФ в рамках научного проекта МД-1414.2021.4.

D.V. Telpukhov, T.D. Zhukova, A.N. Schelokov, P.D. Kretinina

APPLICATION OF THE HAMMING CODE IN THE PROBLEM OF INCREASING FAULT TOLERANCE OF LOGIC CIRCUITS

Currently, when designing integrated circuits, developers have to take into account a very large number of dissimilar factors that are associated with ensuring the necessary performance characteristics, occupied area, energy efficiency, yield, convenience of subsequent testing, requirements _ for universality, autonomy, and so on. One of the main factors is the reliability of operation. This criterion comes to the fore for critical applications, as well as for devices operating under the influence of destabilizing factors. To provide increased reliability, different methods and approaches are used at different levels of abstraction. Some of them can be applied at the design stage. One of the main methods for improving the reliability of integrated circuits at the design stage is the use of tools _ from the theory of error-correcting coding.The traditional field of application of error-correcting codes is the control of the integrity of stored and transmitted information. Combinational logic circuits, on the other hand, change information and do not have storage elements. Combinational logic circuits implement look-up tables at the gate level, which unambiguously assign a certain output value to each input action. Nevertheless, the use of error-correcting codes for constructing error-tolerant combinational circuits turns out to be very effective. This requires the introduction of additional combinational blocks into the circuit, which provide coding, decoding, control, and in some cases correction of errors arising in the circuit. The paper investigates the efficiency of using Hamming codes in relation to the construction of fault-tolerant combinational circuits. The paper considered classical Hamming code and his main modification -weighted code with summation without carries for the implementation of fault-tolerant combinational circuits. Means have been developed for the automated synthesis of fault-tolerant circuits based on these codes. Structural redundancy and reliability characteristics of the resulting circuits are investigated. Comparison with traditional method triple modular redundancy is carried out. Estimating functions are derived for redundancy and the probability of missing an error.

Fault tolerance; Hamming code, concurrent error detection (CED) circuits; combinational logic circuit.

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

На сегодняшний день основным подходом в области логического проектирования сбоеустойчивых СБИС и систем на кристалле является метод кратного резервирования. Недостатком этого метода является значительная структурная избыточность и отсутствие возможности гибкой настройки технических решений под конкретные задачи. Эта проблема успешно решается применением перспективного подхода на основе использования средств функционального контроля (СФК) [4-10].

Функциональный контроль обеспечивается за счет структурной избыточности схемы, т.е. за счёт добавления к основной схеме дополнительных комбинационных модулей. Состав и внутренняя структура этих модулей определяются выбором того или иного помехоустойчивого кода. Выбор конкретного помехоустойчивого кода является нетривиальной задачей, и требует учёта характеристик защищаемой комбинационной схемы, требований к надежности функционирования, требований к занимаемой площади и т.д. [11-13].

В общем случае, схема функционального контроля (СФК) имеет следующую структуру: основная схема (ОС), кодер и декодер. Кодер состоит из копии ОС и блока вычисления проверочных разрядов. На рис. 1 представлена общая структура схемы функционального контроля.

Рис. 1. Общая структура схем функционального контроля

Выходы комбинационной схемы (и ее копии) - это информационные разряды, на основе которых кодер формирует проверочные разряды. Информационные разряды комбинационной схемы и проверочные разряды кодера вместе составляют кодовое слово. Оно подается на декодер. После чего декодер формирует флаг, сообщающий о появлении или отсутствии ошибки в комбинационной схеме.

При возникновении ошибки на любом из элементов СФК на выходе может возникнуть одно из следующих состояний [14, 15]:

♦ маскирование, т.е. при возникновении ошибка не повлияла ни на выходы комбинационной схемы, ни на флаг ошибки;

♦ обнаружение, т.е. ошибка повлияла на выходы комбинационной схемы и флаг сигнализировал об этом;

♦ пропуск, т.е. ошибка повлияла на выходы комбинационной схемы, но флаг не сигнализировал об этом;

♦ ложная тревога, т.е. ошибка не повлияла на выходы комбинационной схемы, но флаг сообщил об ошибке.

В более общем случае, если допустить, что выходы СФК идут не напрямую из основной схемы, а из декодера, то можно говорить о СФК, способной также исправлять ошибку. Следовательно, появляется пятое состояние системы:

♦ исправление, т.е. ошибка повлияла на выходы комбинационной схемы, но декодер обнаружил это и исправил.

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

При организации схем функционального контроля, как правило, используются помехоустойчивые коды с небольшой избыточностью, которая направлена на обнаружение (и исправление) ошибок. Для оценки эффективности разрабатываемых схем следует обеспечить сравнение с традиционными мажоритарными методами, которые по сути являются вырожденными СФК, реализуя простейший код повторения.

1. Классический код Хэмминга. Это избыточный разделимый код, способный исправить одну однократную ошибку и обнаружить двукратную [16, 17]. Универсальный принцип построения СФК - это формирование проверочной матрицы, которая определяет функции для вычисления проверочных разрядов. Число проверочных разрядов для кода Хэмминга вычисляется по формуле:

к + 1 < 2п - п,

где к - число информационных разрядов, п - число проверочных разрядов.

Матрица О(х) формируется следующим образом: столбцы матрицы заполняются номерами разрядов в двоичном представлении. Каждая строка матрицы отвечает за некоторую проверку на четность, а столбцы матрицы отвечают за проверочные д^, если в нем содержится всего одна единица, и информационные [ разряды. Для Н(4,3) порождающая матрица будет иметь следующий вид:

С(х) =

9192 к9з /2/3/4 О О О 11 11 д2 0 1 1 00 11 ^10 1 0101

Для вычисления проверочных разрядов составляются уравнения, в которых информационные разряды, значение которых в соответствующей строке равно единице, суммируются по модулю 2.

^1=/1©/2©/4 I 92 = /1Ф/3Ф/4 [дз = /2Ф/3Ф/

Декодер реализован с помощью синдромного декодирования. Основная суть заключается в том, что соответствующие проверочные разряды, вычисленные в кодере д; и декодере д;', складываются по модулю 2 и тем самым мы получаем наши синдромы ($1( ...,5п). Далее синдромы логически складываются, для вычисления флага ошибки.

Код Хэмминга способен исправлять ошибки, поэтому в его декодере содержится блок исправления ошибки, состоящий из дешифратора исправляющих XOR'ов и мультиплексора, выбирающего итоговые выходы схемы.

В итоге схема функционального контроля будет иметь следующий вид, представленный на рис. 2.

Рис. 2. СФК на основе классического кода Хэмминга для схемы Ь1^уп^

Данный метод был реализован в виде программного модуля в составе программного комплекса CICADA для автоматизированного синтеза СФК [18]. Также были выведены аналитические формулы для предварительной оценки структурной избыточности (1) и вероятности пропуска ошибки (2):

n-l.fc+n-2

N„

= 2N0C + 2* ^ gi} +п + к(п- 3)

РиАМ —

i,j=О

Noc 3к + 1 Рз +■

N,

Nr

(1)

(2)

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

2. Модифицированный код Хэмминга. Данный метод был предложен в работе [19] как взвешенный код с суммированием без операций переноса. Принцип его реализации близок к классической реализации, но имеет несколько отличий. Во-первых, данный код может только обнаруживать ошибки. Во-вторых, число проверочных разрядов вычисляется по формуле:

п = [1 о § 2 (к + 1) 1 ,

где к - число информационных разрядов, п - число проверочных разрядов.

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

Л /2 /з д3 0 0 0 1

д2 о 1 1 о

\дг 10 10

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

'9г= Г1©/з 9 2 = /2Ф/3 9з = и

Декодер строится также по принципу синдромного декодирования.

В итоге схема функционального контроля будет иметь вид, представленный на рис. 3.

С(х) =

Рис. 3. СФК на основе модифицированного кода Хэмминга для схемы b1_synth

Данный метод также был интегрирован в систему CICADA [18]. Были выведены оценочные функции для предварительной оценки структурной избыточности (3) и вероятности пропуска ошибки (4).

п-1,к-1

Nswc = 2Noc + 2* ^ ди-1 (3)

У=о

RATEmax

V Noc

Pswc = ) T¡-Pí. (4)

CED

где Noc - количество элементов ОС, g¿j - элемент порождающей матрицы, p¿ - вероятность возникновения ошибки /-ой кратности.

Результаты численных экспериментов. Основными параметрами для оценки эффективности любой СФК являются:

♦ структурная избыточность;

♦ обнаруживающая способность.

При оценке результатов были рассмотрены: классический код Хэмминга (HAM), модифицированный код Хэмминга (взвешенный код с суммированием без операций переноса (SWC)) и метод тройного модульного резервирования (TMR).

Моделирование представляет собой инжектирование ошибок при различных входных данных в каждый элемент схемы функционального контроля. Следует отметить, что ошибки с равной вероятностью могут попасть в любой элемент схемы, включая элементы проверяющих и исправляющих подсхем. Под ошибкой подразумевается инверсия сигнала вентиля. Моделирование проводилось для всех схем из наборов ISCAS и LGSynth'89 [20].

Первый эксперимент был направлен на оценку и сравнение структурной избыточности классического и модифицированного кодов Хэмминга, а также метода тройного модульного резервирования. В табл. 1 представлены результаты сравнения помехоустойчивых кодов для некоторых схем из наборов ISCAS и LGSynth'89.

Таблица1

Сравнительный анализ структурной избыточности

Схема Число элементов Структурная избыточность

ОС HAM SWC TMR HAM SWC TMR

cm82a_synth 25 83 57 90 3.32 2.28 3.6

c432 216 517 455 683 2.39 2.1 3.16

b1_synth 13 71 35 59 5.46 2.7 4.54

rd84 245 535 499 755 2.2 2.03 3.08

5xp1 135 392 303 455 2.9 2.24 3.37

conl 23 65 49 79 2.83 2.13 3.43

apex2 423 879 853 1284 2.07 2.01 3.04

Из полученных результатов можно сделать следующие выводы:

♦ структурная избыточность классического кода Хэмминга почти не отличается от TMR;

♦ структурная избыточность модифицированного кода Хэмминга в полтора раза меньше, чем избыточность ТМЯ.

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

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

Таблица 2

Сравнительный анализ обнаруживающей способности

СФК на основе Вероятность пропуска ошибки, % Вероятность обнаружения ошибки, % Вероятность исправления ошибки, % Вероятность маскирования ошибки, % Вероятность ложной тревоги, %

HAM 6.96176 18.20535 1.95726 55.40126 17.47438

SWC 0.12748 17.65348 - 48.2777 33.94133

TMR 8.791157 - 91.20884 -

Главным критерием для схем функционального контроля является вероятность пропуска ошибки. Чем меньше эта вероятность, тем лучше. С этой точки зрения самым эффективным является модифицированный код Хэмминга, так как его вероятность пропуска близка к нулю. Однако у него нет возможности исправлять ошибки в отличии от классического кода Хэмминга и метода тройного модульного резервирования. Также из таблицы видно, что вероятность пропуска ошибки ^кода меньше в 1.26 раз, чем у метода TMR, следовательно, классический код Хэмминга в этом смысле оказался эффективнее, чем TMR.

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

После проведенного моделирования было выявлено, что для некоторых схем СФК на основе модифицированного кода Хэмминга получилась похожей на систему дублирования и именно поэтому у схемы контроля на основе SWC-кода близкая к нулю вероятность пропуска. А также, что пропуск ошибки возникает при многократной ошибке, которая влияет на выходы основной схемы, но при этом проверочные разряды для основной схемы и подсхемы кодера (с правильными выходами) будут совпадать.

В следующем эксперименте проводилась минимизация подсхем кодера, декодера, а также их вместе для модифицированного кода Хэмминга с помощью Yosys [21], чтобы выяснить возможно ли улучшить работу схемы контроля. Моделирование для минимизированных схем проводилось для 20 случайных схем из набора LGSynth'89. В таблице представлены результаты моделирования обычной схемы контроля и с минимизацией ее подсхем.

Таблица 3

Сравнительный анализ обнаруживающей способности модифицированного кода Хэмминга при разных вариантах минимизации подсхем

Вероятность маскирования ошибки, % Вероятность пропуска ошибки, % Вероятность обнаружения ошибки, % Вероятность ложной тревоги, % Структурная избыточность

SWC без минимизации 48.73985 0.22454 18.67762 32.35799 2.34

SWC с мин. кодером 48.54389 0.29477 22.87444 28.28689 1.97

SWC с мин. декодером 49.22576 0.19914 18.47627 32.09883 2.35

SWC с мин. кодером и декодером 48.82281 0.29691 22.12457 28.7557 1.99

Из полученных результатов можно сделать вывод, что при минимизации кодера можно улучшить работу схемы. Так как при минимизации кодера увеличивается вероятность обнаружения ошибки, а вероятность ложной тревоги уменьшается. Также при минимизации кодера будет минимальная структурная избыточность.

Для того что бы определить эффективность оценочной функции для предварительной оценки вероятности пропуска ошибки проводился анализ данных, полученных при моделировании и с помощью формул (2) и (4) для классического и модифицированного кода Хэмминга, соответственно. На рис. 4 представлен график сравнения полученных по результатам проведенного анализа данных. Из представленного ниже графика видно, что результаты, полученные с помощью аналитической формулы, коррелируют с практическими значениями. Это подтверждает вычисленный коэффициент корреляции, который составил 0,86.

Рис. 4. Корреляционный анализ зависимости данных, рассчитанных по аналитической формуле, с полученными в результате моделирования экспериментальными данными

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

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

По результатам моделирований можно сделать следующие выводы:

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

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

♦ наименьшей структурной избыточностью обладает схема контроля на основе модифицированного кода Хэмминга. Классический код Хэмминга в среднем обладает меньшей структурной избыточностью по сравнению с методом тройного модульного резервирования;

♦ классический код Хэмминга с меньшей вероятностью пропускает ошибки, чем метод тройного модульного резервирования.

Исследованные в статье методы были интегрированы в систему автоматизированного проектирования CICADA. Для этого были выведены оценочные функции для оценки структурной избыточности и вероятности пропуска ошибки. Проведенные вычислительные эксперименты показали высокую корреляцию аналитических оценок с результатами имитационного моделирования.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Иванников А.Д., Стемпковский А.Л. Формализация задачи отладки проектов цифровых систем // Информационные технологии. - 2014. - № 9. - С. 3-10.

2. Иванников А.Д., Стемпковский А.Л. Математическая модель отладки проектов сложных цифровых схем и микросистем на основе представления последних в виде семейства стационарных динамических систем // Проблемы разработки перспективных микро- и наноэлектронных систем (МЭС). - 2014. - № 2. - С. 123-128.

3. Gavrilov S.V., Telpukhov D.V. Automated Evolutionary Design of Fault-Tolerant Logic Circuits // Проблемы разработки перспективных микро- и наноэлектронных систем (МЭС). - 2019. - № 1. - С. 2-6.

4. Сапожников В.В., Сапожников Вл.В., Ефанов Д.В. Синтез самопроверяемых схем встроенного контроля на основе логического дополнения до равновесного кода "2 из 5" // Известия высших учебных заведений. Приборостроение. - 2021. - Т. 64, № 3. - С. 163-175.

5. Mitra S., McCluskey E.J. Which Concurrent Error Détection Scheme to Choose? // Proc. International Test Conference. - 2000. - P. 985-994.

6. Гессель М, Морозов А.В., Сапожников В.В., Сапожников В.В. Логическое дополнение -новый метод контроля комбинационных схем // Автоматика и телемеханика. - 2003. - № 1. - С. 167-176.

7. Пивоваров Д.В. Построение систем функционального контроля многовыходных комбинационных схем методом логического дополнения по равновесным кодам // Автоматика на транспорте. - 2018. - Т. 4, № 1. - С. 131-149.

8. Хетагуров Я.А., Руднев Ю.П. Повышение надежности цифровых устройств методами избыточного кодирования. - М.: Энергия, 1974. - 270 с.

9. Touba N.A., McCluskey E.J. Logic Synthesis of Multilevel Circuits with Concurrent Error Detection // IEEE Trans. CAD. - July 1997. - Vol. 16. - P. 783-789. - DOI: 10.1109/43.644041.

10. Jha N.K., Wang S.J. Design and Synthesis of Self-Checking VLSI circuits // IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. - July 1993. - Vol. 12, No. 6. - P. 878-887. - DOI: 10.1109/43.229762.

11. Fujiwara E. Code Design for Dependable Systems: Theory and Practical Applications. - John Wiley & Sons, 2006. - 720 p.

12. Согомонян Е.С., Слабаков Е.В. Самопроверяемые устройства и отказоустойчивые системы. - М.: Радио и связь, 1989. - 208 с.

13. Efanov D., Sapozhnikov V., Blyudov A., Sapozhnikov Vl. On the Problem of Selection of Code with Summation for Combinational Circuit Test Organization // Proceedings of IEEE East-West Design and Test Symposium, EWDTS 2013. - 2013. - P. 6673133.

14. Стемпковский А.Л., Тельпухов Д.В., Деменева А.И., Жукова Т.Д. Маршрут проектирования схем функционального контроля комбинационных устройств // Вестник Рязанского государственного радиотехнического университета. - 2018. - С. 92-98.

15. Жукова Т.Д. Разработка системы автоматизированного проектирования СФК на основе методов избыточного кодирования // Проблемы разработки перспективных микро- нано-электронных систем (МЭС). - 2020. - С. 51-57. - DOI: 10.31114/2078-7707-2020-4-51-57.

16. Сапожников В.В., Сапожников Вл.В., Ефанов Д.В. Коды Хэмминга в системах функционального контроля логических устройств. - СПб.: Наука, 2018. - 151 с.

17. Тельпухов Д.В., Деменева А.И., Жукова Т.Д., Хрущев Н.С. Исследование и разработка систем автоматизированного проектирования схем функционального контроля комбинационных логических устройств // Электронная техника. Серия 3: Микроэлектроника. - 2018. - № 1 (169). - С. 15-22.

18. Stempkovsky A.L., Zhukova T.D., Telpukhov D.V. and Gurov S.I. CICADA: A New Tool to Design Circuits with Correction and Detection Abilities // 2021 International Siberian Conference on Control and Communications (SIBCON). - 2021. - P. 1-5. - DOI: 10.1109/SIBCON 50419.2021.9438900.

19. Сапожников В.В., Сапожников Вл.В., Ефанов Д.В. Взвешенный код с суммированием без операций переноса для решения задач технической диагностики дискретных систем // Приборостроение. - 2018. - № 4.

20. URL: https://ddd.fit.cvut.cz/www/prj/Benchmarks/ (дата доступа: 16.08.2021).

21. Clifford Wolf, «Yosys Open SYnthesis Suite». Available: http://www.clifford.at/yosys/ about.html.

REFERENCES

1. Ivannikov A.D., Stempkovskiy A.L. Formalizatsiya zadachi otladki proektov tsifrovykh sistem [Formalization of the task of debugging digital systems projects], Informatsionnye tekhnologii [Information Technologies], 2014, No. 9, pp. 3-10.

2. Ivannikov A.D., Stempkovskiy A.L. Matematicheskaya model' otladki proektov slozhnykh tsifrovykh skhem i mikrosistem na osnove predstavleniya poslednikh v vide semeystva statsionarnykh dinamicheskikh sistem [Mathematical model of debugging projects of complex digital circuits and microsystems based on the representation of the latter in the form of a family of stationary dynamic systems], Problemy razrabotki perspektivnykh mikro- i nanoelektronnykh sistem (MES) [Problems of development of promising micro- and nanoelectronic systems (MES)], 2014, No. 2, pp. 123-128.

3. Gavrilov S.V., Telpukhov D.V. Automated Evolutionary Design of Fault-Tolerant Logic Circuits, Problemy razrabotki perspektivnykh mikro- i nanoelektronnykh sistem (MES) [Problems of development of promising micro- and nanoelectronic systems (MES)], 2019, No. 1, pp. 2-6.

4. Sapozhnikov V.V., Sapozhnikov Vl.V., Efanov D.V. Sintez samoproveryaemykh skhem vstroennogo kontrolya na osnove logicheskogo dopolneniya do ravnovesnogo koda "2 iz 5" [Synthesis of self-testable integrated control schemes based on the logical complement to the equilibrium code "2 out of 5"], Izvestiya vysshikh uchebnykh zavedeniy. Priborostroenie [News of higher educational institutions. Instrumentation], 2021, Vol. 64, No. 3, pp. 163-175.

5. Mitra S., McCluskey E.J. Which Concurrent Error Detection Scheme to Choose?, Proc. International Test Conference, 2000, pp. 985-994.

6. Gessel' M., Morozov A.V., Sapozhnikov V.V., Sapozhnikov V.V. Logicheskoe dopolnenie -novyy metod kontrolya kombinatsionnykh skhem [Logical addition - a new method of control of combinational circuits], Avtomatika i telemekhanika [Automation and telemechanics], 2003, No. 1, pp. 167-176.

7. Pivovarov D.V. Postroenie sistem funktsional'nogo kontrolya mnogovykhodnykh kombinatsionnykh skhem metodom logicheskogo dopolneniya po ravnovesnym kodam [Construction of systems of functional control of multi-output combinational circuits by the method of logical addition according to equilibrium codes], Avtomatika na transporte [Automation in transport], 2018, Vol. 4, No. 1, pp. 131-149.

8. Khetagurov Ya.A., Rudnev Yu.P. Povyshenie nadezhnosti tsifrovykh ustroystv metodami izbytochnogo kodirovaniya [Improving the reliability of digital devices by redundant coding methods]. Moscow: Energiya, 1974, 270 p.

9. Touba N.A., McCluskey E.J. Logic Synthesis of Multilevel Circuits with Concurrent Error Detection, IEEE Trans. CAD, July 1997, Vol. 16, pp. 783-789. DOI: 10.1109/43.644041.

10. Jha N.K., Wang S.J. Design and Synthesis of Self-Checking VLSI circuits, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, July 1993, Vol. 12, No. 6, pp. 878-887. DOI: 10.1109/43.229762.

11. Fujiwara E. Code Design for Dependable Systems: Theory and Practical Applications. John Wiley & Sons, 2006, 720 p.

12. Sogomonyan E.S., Slabakov E.V. Samoproveryaemye ustroystva i otkazoustoychivye sistemy [Self-testing devices and fault-tolerant systems]. Moscow: Radio i svyaz', 1989, 208 p.

13. Efanov D., Sapozhnikov V., Blyudov A., Sapozhnikov Vl. On the Problem of Selection of Code with Summation for Combinational Circuit Test Organization, Proceedings of IEEE East-West Design and Test Symposium, EWDTS 2013, 2013, pp. 6673133.

14. Stempkovskiy A.L., Tel'pukhov D.V., Demeneva A.I., Zhukova T.D. Marshrut proektirovaniya skhem funktsional'nogo kontrolya kombinatsionnykh ustroystv [The route of designing schemes of functional control of combinational devices], Vestnik Ryazanskogo gosudarstvennogo radiotekhnicheskogo universiteta [Bulletin of the Ryazan State Radio Engineering University], 2018, pp. 92-98.

15. Zhukova T.D. Razrabotka sistemy avtomatizirovannogo proektirovaniya SFK na osnove metodov izbytochnogo kodirovaniya [Development of a computer-aided design system based on redundant coding methods], Problemy razrabotkiperspektivnykh mikro- nanoelektronnykh sistem (MES) [Problems of development of promising micro-nanoelectronic systems (MES)], 2020, pp. 51-57. DOI: 10.31114/2078-7707-2020-4-51-57.

16. Sapozhnikov V.V., Sapozhnikov Vl.V., Efanov D.V. Kody Khemminga v sistemakh funktsional'nogo kontrolya logicheskikh ustroystv [Hamming codes in systems of functional control of logical devices]. St. Petersburg.: Nauka, 2018, 151 p.

17. Tel'pukhov D.V., Demeneva A.I., Zhukova T.D., Khrushchev N.S. Issledovanie i razrabotka sistem avtomatizirovannogo proektirovaniya skhem funktsional'nogo kontrolya kombinatsionnykh logicheskikh ustroystv [Research and development of computer-aided design systems for functional control circuits of combinational logic devices], Elektronnaya tekhnika. Seriya 3: Mikroelektronika [Electronic engineering. Series 3: Microelectronics], 2018, No. 1 (169), pp. 15-22.

18. Stempkovsky A.L., Zhukova T.D., Telpukhov D. V. and Gurov S.I. CICADA: A New Tool to Design Circuits with Correction and Detection Abilities, 2021 International Siberian Conference on Control and Communications (SIBCON), 2021, pp. 1-5. DOI: 10.1109/SIBCON50419.2021.9438900.

19. Sapozhnikov V.V., Sapozhnikov Vl.V., Efanov D.V. Vzveshennyy kod s summirovaniem bez operatsiy perenosa dlya resheniya zadach tekhnicheskoy diagnostiki diskretnykh sistem [Weighted code with summation without transfer operations for solving problems of technical diagnostics of discrete systems], Priborostroenie [Instrumentation], 2018, No. 4.

20. Available at: https://ddd.fit.cvut.cz/www/prj/Benchmarks/ (accessed 16 August 2021).

21. Clifford Wolf, «Yosys Open SYnthesis Suite». Available: http://www.clifford.at/ yosys/about. html.

Статью рекомендовал к опубликованию к.т.н. А.В. Коршунов.

Тельпухов Дмитрий Владимирович - Институт проблем проектирования в микроэлектронике Российской академии наук; e-mail: nofrost@inbox.ru; Москва, Зеленоград, Россия;

д.т.н.; руководитель отдела методологии проектирования интегральных схем.

Жукова Татьяна Дмитриевна - e-mail: zhukova_t@ippm.ru; м.н.с.

Щелоков Альберт Николаевич - e-mail: schan@ippm.ru; к.ф.-м.н.; с.н.с.

Кретинина Полина Денисовна - e-mail: kretininapolina@gmail.com; инженер-исследователь.

Telpukhov Dmitry Vladimirovich - Institute for Design Problems in Microelectronics of Russian Academy of Sciences, e-mail: nofrost@inbox.ru; Moscow, Zelenograd, Russia; dr. of eng. sc.; head of department of integrated circuits design methodology.

Zhukova Tatyana Dmitrievna - e-mail: zhukova_t@ippm.ru; junior researcher.

Schelokov Albert Nikolaevich - e-mail: schan@ippm.ru; cand. of phis.-math. sc.; senior researcher.

Kretinina Polina Denisovna - e-mail: kretininapolina@gmail.com; research engineer.

УДК 519.712.2 DOI 10.18522/2311-3103-2021-4-231-243

Л.А. Гладков, М.Д. Ясир, Н.В. Гладкова

ГИБРИДНЫЙ МЕТОД РЕШЕНИЯ ЗАДАЧИ РАЗМЕЩЕНИЯ ЭЛЕМЕНТОВ ЦИФРОВЫХ ВЫЧИСЛИТЕЛЬНЫХ УСТРОЙСТВ*

Рассматривается задача размещения элементов цифровой вычислительной техники. Проведен анализ современного состояния исследований по данной теме, отмечена актуальность рассматриваемой задачи. Подчеркнута важность разработки новых эффективных методов решения подобных задач. Показано место задачи размещения в общем цикле конструкторского этапа проектирования. Отмечена важность качественного решения задачи размещения с точки зрения успешного выполнения последующих этапов проектирования. Отмечена важность минимизации задержек соединений в процессе проектирования устройств большой размерности. Проведен обзор и анализ различных моделей и критериев оценки решения задачи размещения. Подчеркнуто, что важнейшим критерием является длина соединений, она оказывает существенное влияние на применяемые при проектировании технологии. Выполнена комплексная математическая постановка задачи размещения элементов цифровой вычислительной техники. Приведена целевая функция и ограничения рассматриваемой задачи размещения как задачи оптимизации. Проанализированы перспективные подходы к решению задач проектирования, описаны гибридные методы и модели решения сложных многокритериальных задач оптимизации и проектирования. Описаны принципы работы и модель нечеткого логического контроллера. Приведено описание используемой схемы нечеткого управления. Определены функции различных блоков нечеткого логического контроллера. Предложена структура многослойной нейронной сети, реализующей функцию Гаусса. Описано взаимодействие блоков нечеткого генетического алгоритма. Предложена модель гибридного алгоритма решения задачи размещения. Определены управляющие параметры нечеткого логического контроллера. Предлагаемый гибридный алгоритм реализован в виде прикладной программы. Были проведены серии вычислительных экспериментов для определения эффективности разработанного алгоритма и выбора оптимальных значений управляющих параметров.

Автоматизация проектирования; задача размещения элементов ЭВА; задачи оптимизации; биоинспирированные алгоритмы; гибридные методы; генетические алгоритмы; нечеткое управление.

L.A. Gladkov, M.J. Yaser, N.V. Gladkova

HYBRID METHOD FOR SOLVING THE PROBLEM OF PLACEMENT OF DIGITAL COMPUTER DEVICES

The problem of placing elements of digital computing technology is considered in the article. The analysis of the current state of research on this topic is carried out, the relevance of the problem under consideration is noted. The importance of developing new effective methods for solving such problems are highlighted. The place of the placement problem in the general cycle of

* Исследование выполнено при поддержке РФФИ в рамках научного проекта № 19-01-00715.

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