Изобретение относится к области вычислительной техники и может быть использовано для построения нейрокомпьютеров, функционирующих в симметричной системе остаточных классов (СОК).
Известно устройство для обнаружения ошибок в информации, представленной в СОК (патент №2022471, RU 5H03 М 13/00), которое содержит блок преобразования системы остаточных классов в обобщенную позиционную систему счисления (СОК-ОПСС), блоки вычисления индекса числа, блок вычисления дополнительного кода индекса, сумматор, блок вычисления антииндекса суммы, блок сравнения, блок умножения на константу, счетчик. Недостатком устройства является сложность аппаратной реализации и низкое быстродействие.
Наиболее близким к данному изобретению является адаптивная параллельно-конвейерная нейронная сеть для коррекции ошибок (патент RU.2279131, G06N 3/04), которая содержит блок нейронной сети конечного кольца (НСКК) формирования цифр в представлении обобщенной позиционной системы счисления, блок обнаружения ошибок, блок исправления ошибок и блок реконфигурации и локализации ошибок.
Однако это устройство имеет большой объем оборудования и не может функционировать в симметричной СОК, которое оперирует как с положительными числами, так и с отрицательными, представленными в СОК.
Цель изобретения - уменьшить объем оборудования. Поставленная цель достигается тем, что в устройство введен блок сдвига положительных и отрицательных областей динамического диапазона, который смещает область запрещенного полного диапазона, в котором находятся разрешенные отрицательные числа в СОК в первую половину разрешенной области рабочего диапазона, а разрешенные положительные числа СОК смещает во вторую половину разрешенной области. Предложенный сдвиг обеспечивает размещение положительных и отрицательных чисел симметричной СОК в рабочем диапазоне избыточной СОК, что позволит правильно определить наличие ошибок как в положительных, так и в отрицательных числах, представленных в СОК.
На фигуре 1 представлена схема нейронной сети для обнаружения ошибки в симметричной системе остаточных классов, которая содержит входной слой нейронов 1 с нейронами 7, 8, выходы которых соединены с блоком сдвига полярности 2, включающий НСКК 9 по модулю pi, где i=1,2,…, k+r, выходы которых соединены с блоком НСКК 19 формирования старшего коэффициента ОПСС 3, выходы которой соединены с блоком определения ошибки 4, состоящий из ключей 14 и 15, выходы которых являются выходами нейронных сетей для обнаружения ошибки в симметричной системе вычетов.
Входной слой нейронов 1 с нейронами 7 и 8 выполняет роль входного регистра, на вход которого поступают значения разрядов (остатков) контролируемого числа шины 5 и разрядов констант сдвига шины 6. С выходов нейронов входного слоя 1 данные поступают на входы НСКК 9 по модулю, где i=1,2,…, k+r.
Результат модулярного суммирования разрядов контролируемого числа и разрядов констант сдвига по шинам 10, 11, 12, 13 поступает на вход нейронной сети определения старшего коэффициента ОПСС 19, состоящей из НСКК (патент RU 2256213) по модулю pi, где i=1,2,…, k+r. Значение коэффициента старшего разряда ОПСС по шине 18 поступает на информационные входы ключей 14 и 15, на управляющие входы которых поступают сигналы управления по шинам 16 и 17, соответственно, „нет ошибки" и „есть ошибка". Рассмотрим свойства избыточности СОК и принцип определения ошибок, возникающих в кодах СОК.
Избыточные СОК обладают свойствами, которые можно использовать для контроля ошибок и устранения отказов цифровых процессоров. Избыточная СОК имеет k - рабочих и r - контрольных оснований. Для обеспечения единственности представления каждого основания системы СОК все основания p1, р2,…,рk,…, рk+n должны быть взаимно-простыми. Рабочие основания р1, р2,…,рk представляют собой неизбыточные основания, а контрольные r основания pk+1…, рk+r избыточные. В избыточной СОК число представляется k+r остаточными цифрами α1,α2,…, αk, αk+1,…, αk+r. В симметричной СОК для кодирования отрицательных чисел используется дополнительный код, при этом
где
Остаточные цифры αl, α2,…, αk являются неизбыточными цифрами, а αk+1,…, αk+r - избыточными. Полный диапазон избыточной СОК обозначен [О,R], где , охватывает полное множество состояний, представленных всеми k+r остаточными цифрами. Весь диапазон разбивается на смежные области, определяемые неизбыточными и избыточными основаниями. Область [О, Р] называется рабочим диапазоном, а область [О, R] представляет собой полный диапазон.
Для получения избыточности операнды и результаты арифметических операций, выполняемых в СОК, должны браться в таком масштабе, чтобы они всегда попадали в рабочий диапазон. Это ограничение задает дополнительный диапазон системы (область вычислений) в виде [-(Р-1)/2, (Р-1)/2] при нечетных Р и [-Р/2, Р/2] при четных Р. Заметим, что при кодировании дополнительным кодом, отрицательная часть динамического диапазона находится у верхнего предела полного диапазона. Положительные числа из дополнительного диапазона отображаются на области [О,(Р+1)/2] при нечетных Р и на области [О,Р/2] при четных Р. Отображение динамического диапазона на соответствующие области показано на фигуре 2.
Как видно из чертежа, динамический диапазон, состоящий из положительной и отрицательной частей разбивается на области, расположенные в рабочем и полном диапазоне. Это обстоятельство затрудняет обнаружение и исправление ошибок, так как ошибки обнаруживаются тем, что число попадает в недопустимую область полного диапазона. Вследствие того, что отрицательные числа появляются в верхней части недопустимой области полного диапазона, результатом операции обнаружения ошибок, реализуемых условием А>Р, будет отнесение всех отрицательных чисел к ошибочным, что не соответствует действительности в силу разнесения динамического диапазона.
Для преодоления этой трудности необходимо провести сдвиг отрицательной области путем вращения остаточного кольца в положение, указанное на фигуре 3, в результате чего динамический диапазон будет однозначно отображаться на области рабочего диапазона.
Показанное на фигуре 3 вращение называется сдвигом полярности и его можно осуществить путем прибавления перед выполнением операции обнаружения ошибок константу при нечетных Р и к каждому А∈[0,Р]. Необходимо отметить, что для неизбыточной СОК имеет место взаимооднозначное соответствие между целыми числами в динамическом диапазоне и состояние допустимой области рабочего диапазона.
Если Ci то сдвиг полярности в пределах СОК оказывается
простым суммированием остатков по формуле в которой αic обозначает остаточные цифры после сдвига полярности.
Нейронная сеть для обнаружения ошибок в симметричной системе остаточных классов работает следующим образом. В первом цикле синхронизации контролируемое число в СОК и константы Ci, где i=1, 2,…, k+r поступают на входы 5, 6 нейронов 7,8. Во втором цикле синхронизации с выходов нейронов 7,8 разряды контролируемого числа и констант поступают на вход НСКК pi 9 блока сдвига 2. НСКК рi 9 реализуют вычислительную модель в которой αic обозначает остаточные цифры симметричной СОК после сдвига полярности.
В третьем цикле синхронизации αic по шинам 10, 11, 12 и 13 поступают на входы нейронной сети определения старшего коэффициента ОПСС 19 блока 3.
В четвертом цикле синхронизации значения старшего разряда ОПСС αn по шине 18 поступает на информационные входы ключей 14 и 15, на управляющие входы которых поступают управляющие сигналы по шинам 16 и 17 и там, где на входы ключей поступают одновременно два сигнала формируется либо сигнал „нет ошибки", либо сигнал „есть ошибка".
Таким образом, определение ошибки в симметричной СОК осуществляется за четыре цикла синхронизации.
название | год | авторы | номер документа |
---|---|---|---|
НЕЙРОННАЯ СЕТЬ ДЛЯ ОБНАРУЖЕНИЯ, ЛОКАЛИЗАЦИИ И ИСПРАВЛЕНИЯ ОШИБОК В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ | 2005 |
|
RU2301442C2 |
АДАПТИВНАЯ ПАРАЛЛЕЛЬНО-КОНВЕЙЕРНАЯ НЕЙРОННАЯ СЕТЬ ДЛЯ КОРРЕКЦИИ ОШИБОК | 2003 |
|
RU2279131C2 |
НЕЙРОННАЯ СЕТЬ ДЛЯ КОРРЕКЦИИ ОШИБОК В МОДУЛЯРНЫХ НЕЙРОКОМПЬЮТЕРАХ | 2003 |
|
RU2256213C2 |
НЕЙРОННАЯ СЕТЬ УСКОРЕННОГО МАСШТАБИРОВАНИЯ МОДУЛЯРНЫХ ЧИСЕЛ | 2007 |
|
RU2359325C2 |
НЕЙРОННАЯ СЕТЬ С ПОРОГОВОЙ (k, t) СТРУКТУРОЙ ДЛЯ ПРЕОБРАЗОВАНИЯ ОСТАТОЧНОГО КОДА В ДВОИЧНЫЙ ПОЗИЦИОННЫЙ КОД | 2008 |
|
RU2380751C1 |
НЕЙРОННАЯ СЕТЬ ДЛЯ ДЕЛЕНИЯ ЧИСЕЛ, ПРЕДСТАВЛЕННЫХ В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ | 2005 |
|
RU2305312C2 |
УСТРОЙСТВО ДЛЯ ОБНАРУЖЕНИЯ ПЕРЕПОЛНЕНИЯ ДИНАМИЧЕСКОГО ДИАПАЗОНА, ОПРЕДЕЛЕНИЯ ОШИБКИ И ЛОКАЛИЗАЦИИ НЕИСПРАВНОСТИ ВЫЧИСЛИТЕЛЬНОГО КАНАЛА В ЭВМ, ФУНКЦИОНИРУЮЩИХ В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ | 2011 |
|
RU2483346C1 |
УСТРОЙСТВО ДЛЯ ОПРЕДЕЛЕНИЯ ПОЗИЦИОННЫХ ХАРАКТЕРИСТИК НЕПОЗИЦИОННОГО КОДА | 1991 |
|
RU2020756C1 |
Преобразователь двоичного кода в код системы остаточных классов | 1989 |
|
SU1793546A1 |
УСТРОЙСТВО ДЛЯ ОПРЕДЕЛЕНИЯ ЗНАКА МОДУЛЯРНОГО ЧИСЛА | 2011 |
|
RU2503995C2 |
Изобретение относится к вычислительной технике и может быть использовано для построения модулярных нейрокомпьютеров, функционирующих в симметричной системе остаточных классов. Техническим результатом является уменьшение аппаратной сложности. Заявленная нейронная сеть содержит блок нейронной сети конечного кольца формирования старшего коэффициента обобщенной позиционной системы счисления, блок сдвига полярности, блок определения ошибки, шины «есть ошибки» и «нет ошибки». 3 ил.
Нейронная сеть для обнаружения ошибок в симметричной системе остаточных классов, содержащая блок нейронной сети конечного кольца формирования старшего коэффициента обобщенной позиционной системы счисления, отличающаяся тем, что в нее включен блок сдвига полярности, при этом входы контролируемого числа и константы сдвига полярности соединены с нейронами входного слоя, выходы которых соединены с входами нейронных сетей конечного кольца блока сдвига полярности, вычисляющие модель
где ai - разряды контролируемого числа, представленного в системе остаточных классов, до сдвига полярности, Сi - константа сдвига, pi - модуль системы остаточных классов, i=1,2,…, k+r, aic - остаточные цифры контролируемого числа, представленного в системе остаточных классов, после сдвига полярности, выходы которого соединены с входами блока нейронной сети конечного кольца формирования старшего коэффициента обобщенной позиционной системы счисления, выход которого соединен с информационными входами ключей, блока определения ошибки, управляющие входы которых соединены с шинами „есть ошибки" и „нет ошибки", выходы которых являются выходами нейронных сетей для обнаружения ошибки в симметричной системе остаточных классов.
УСТРОЙСТВО ДЛЯ ПРЕОБРАЗОВАНИЯ ЧИСЛА ИЗ ПОЛИНОМИАЛЬНОЙ СИСТЕМЫ КЛАССОВ ВЫЧЕТОВ В ПОЗИЦИОННЫЙ КОД С КОРРЕКЦИЕЙ ОШИБКИ | 2006 |
|
RU2309535C1 |
АДАПТИВНАЯ ПАРАЛЛЕЛЬНО-КОНВЕЙЕРНАЯ НЕЙРОННАЯ СЕТЬ ДЛЯ КОРРЕКЦИИ ОШИБОК | 2003 |
|
RU2279131C2 |
УСТРОЙСТВО СПЕКТРАЛЬНОГО ОБНАРУЖЕНИЯ И КОРРЕКЦИИ ОШИБОК В КОДАХ ПОЛИНОМИАЛЬНОЙ СИСТЕМЫ КЛАССОВ ВЫЧЕТОВ | 2005 |
|
RU2301441C2 |
НЕЙРОННАЯ СЕТЬ ДЛЯ КОРРЕКЦИИ ОШИБОК В МОДУЛЯРНЫХ НЕЙРОКОМПЬЮТЕРАХ | 2003 |
|
RU2256213C2 |
УСТРОЙСТВО ДЛЯ ОПРЕДЕЛЕНИЯ ПОЗИЦИОННЫХ ХАРАКТЕРИСТИК НЕПОЗИЦИОННОГО КОДА | 1991 |
|
RU2020756C1 |
Преобразователь двоичного кода в код системы остаточных классов | 1989 |
|
SU1793546A1 |
US 6064997 A, 16.05.2000 | |||
US 5182794 A, 26.01.1993. |
Авторы
Даты
2009-11-27—Публикация
2007-10-29—Подача