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

Классы МПК:G06F7/72 с помощью арифметического остатка
Автор(ы):, ,
Патентообладатель(и):Северо-Кавказский государственный технический университет (RU)
Приоритеты:
подача заявки:
2004-01-22
публикация патента:

Изобретение относится к вычислительной технике и может быть использовано в процессорах обработки сигналов, в цифровых фильтрах. Техническим результатом является сокращение аппаратных затрат, увеличение быстродействия. Указанный технический результат достигается за счет применения нейросетевых технологий и полиномиальной системы вычетов (ПСКВ), в которой в качестве основания системы используются минимальные многочлены pi(z), где i=1, 2,..., n, определенные в расширенных полях Галуа GF(2устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 ), причем устройство содержит счетчик тактов, два блока вычисления сумм парных произведений по произвольному основанию, блок коррекции ошибки, модульный сумматор и блок вычисления сумм парных произведений по контрольному основанию. 2 ил., 3 табл. устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Формула изобретения

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

Описание изобретения к патенту

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

Известно отказоустойчивое устройство для вычисления сумм парных произведений в системе классов вычетов - системе остаточных классов (патент РФ №2012041, кл. G 06 F 7/72, 1994 г.), содержащее входной регистр, блок коррекции ошибки, модульный сумматор, блок вычисления сумм парных произведений, блок памяти, матричный умножитель, счетчик тактов, матричный умножитель.

Недостатком данного устройства является низкое быстродействие и большой объем оборудования, вследствие использования для вычисления интервального номера числа коммутатора, одного ПЗУ и двух умножителей.

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

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

Указанный технический результат достигается за счет применения полиномиальной системы классов вычетов (ПСКВ), в которой в качестве основания системы используются минимальные многочлены pi(z), i= 1, 2,..., n, определенные в расширенных полях Галуа GF(2 устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 ) и нейросетевых технологий.

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

Любое число N, выраженное в двоичном коде, можно представить в полиномиальной форме. Тогда полученный полином N(z) представляется в ПСКВ как набор остатков (устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 1(z), устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 2(z)...устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 n(z), устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 n+1(z)), где устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 i(z)=rest(N(z)/pi(z)); pi(z) - минимальный многочлен, определяемый в расширенном поле Галуа GF(pустройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 ). Согласно китайской теореме об остатках

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

где Вi(z) - ортогональные базисы; r(z) - ранг N(z).

Тогда значение полного диапазона определяется равенством (2)

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

где pi(z) - основания ПСКВ i=1, n+1; n(z) - число рабочих оснований; рn+1 (z) - контрольное основание.

В тоже время

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

где P(z) - рабочий диапазон.

Полином N(z) считается правильным, если N(z)устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475P(z). Другими словами

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

где S(z) - полиномиальная форма интервала; P(z) - рабочий диапазон.

Подставим в равенство (4) равенство (1), тогда

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Известно, что Bi(z)=Ri(z)P(z)+A i(z),

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Ai(z)=rest(Bi(z)/P(z)).

Ho Ai(z)=Bi*(z) - ортогональный базис безызбыточной системы с основаниями p1(z), p2(z), ...p n(z).

Полученные равенства подставляем в формулу (5), тогда

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Тогда по величине S можно однозначно определить величину устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 коррекции результата. Например, пусть имеем поле Галуа GF(p 3), в котором определены минимальные многочлены, составляющие систему оснований ПСКВ p1(z)=z+1, p2(z)=z 3+z2+1, p3(z)=z3+z+1 (контрольное основание р3(z)).

Тогда

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Вычислим ортогональные базисы

B1(z)=z 6+z5+z4+z3+z 2+z+1

B2(z)=z6+z5 +z3+1

B3(z)=z4+z2 +z+1

Вычислим коэффициенты

B1(z)=(z 2+z)P(z)+(z3+z2+1)

B 2(z)=(z2+z+1)P(z)+(z3+z2 )

B3(z)=1P(z)

Тогда

B1 (z)=R1 P(z)+B1*

B2(z)=R 2P(z)+B2*

B3(z)=R 3P(z)

Получаем систему безызбыточных оснований p 1(z)=z+1, p2(z)=z3+z2+1, в которой определены ортогональные базисы, B1*(z)=z 3+z2+1, B2*(z)=z3 +z2.

Определим интервальный номер

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Тогда

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Возьмем N(z)=z2. В ПСКВ данный полином имеет вид N=(0, z, z2).

Вычислим значение интервального полинома

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Тогда истинное значение полинома определяется следующим образом

N(z)устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475N(z)=N*(z)+устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 i(z)Bi(z),

где N*(z) - значение полинома, поступившего на вход устройства.

Пусть ошибка произошла по первому основанию.

Тогда N*(z)=(1, z, z2)

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Тогда, согласно выражению (1)

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

Тогда N(z)=N*(z)+устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475=z 6+z5+z4+z6+z 5+z4+z3+z2+z+1=z3 +z2+z+1

Глубина ошибки по основаниям и корректирующие значения устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 на выходе элемента памяти приведены в таблице 1.

Таблица 1
ОснованиеГлубина ошибки Величина S на входе памятиЗначения устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 на выходе памяти
P 1(z)1z 2+zz6+z 5+z4+z3+z 2+z+1
P2 (Z)1z 2+z+1z6+z 5+z3+1
 zz 2z6+z 4+z+1
  z+1z+1z 5+z4+z3+z

На фиг.1 представлена функциональная схема отказоустойчивого устройства для вычисления сумм парных произведений, а на фиг.2 - функциональная схема блока коррекции ошибки.

Отказоустойчивое устройство для вычисления сумм парных произведений (фиг.1) содержит блоки вычисления парных произведений по произвольному модулю 1, 2 и по контрольному модулю 3, каждый из которых содержит регистр 4, память 5, матричный сумматор 6, матричный умножитель 7 и три группы буферных регистров 8, 9, 10, преобразователь 11 кода ПСКВ в позиционный код, блок 12 коррекции ошибки, модульный сумматор 13, счетчик 14 тактов и выход 15 результата устройства.

Блок 12 коррекции ошибки представляет собой многосложную нейронную сеть прямого распространения. Блок 12 коррекции ошибки (фиг.2) содержит три регистра 16-18, первый слой нейронной сети из 7 нейронов 19-25, трех нейронов 26-28 второго слоя сети, счетчика тактов переходов 29, содержащего два нейрона 30 и 31, и трех нейронов 32-34 выходного слоя и блок памяти 35.

Устройство работает следующим образом. В информационные регистры 4 блоков 1, 2, 3 до начала работы записаны числа в коде ПСКВ. Счетчик тактов формирует адреса для считывания коэффициентов, которые хранятся в блоках 1, 2, 3 в памяти 5 в коде ПСКВ. Содержание регистров 4 в каждом из блоков 1, 2, 3 перемножается с коэффициентами с помощью матричных умножителей 7. Результат умножения записывается в первую группу буферных регистров 8, содержимое которых складывается с содержимым буферных регистров 10 третьей группы (в первом цикле происходит сложение с нулем). Сложение осуществляют матричные сумматоры G в каждом из блоков 1, 2, 3. Сумма записывается в буферные регистры 10 третьей группы.

С выходов буферных регистров 10 блоков 1, 2 результат подается на входы преобразователя 11 кода ПСКВ в позиционный код и на информационные входы блока 12 коррекции ошибки, на третий вход которого подается также информация с выходов буферных регистров 10 блока 3. Счетчик тактов по окончании суммирования парных произведений выдает разрешающий сигнал на вход разрешения преобразователя 11 и блока 12 коррекции ошибки. Со второго выхода преобразователя 11 на четвертый вход блока 12 коррекции ошибки поступает сигнал о переходе через P(z). Структура преобразователя 11 аналогична прототипу. Результаты с выходов преобразователя 11 кода ПСКВ в позиционный код и блока 12 коррекции ошибки подается на входы модульного сумматора 13, где и происходит сложение.

Выход модульного сумматора 13 является выходом 15 устройств. Слагаемые кода ПСКВ в информационные регистры 4 блоков 1, 2, 3 могут быть записаны из аналого-цифрового преобразователя.

Блок коррекции 12 работает следующим образом. Конечный результат выполнения операции сумм парных произведений в полиномиальной форме в виде остатков устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 1(z), устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 2(z), устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 3(z) подается соответственно на регистры 16, 17, 18, с выхода которых в параллельном коде эти остатки поступают на соответствующие нейроны 19-25 первого слоя нейронной сети. Структура данного слоя имеет архитектуру 1-3-3.

Нейроны данного слоя в процессе вычисления значения интервального номера S(z) не участвуют, а осуществляют перераспределения данных на нейроны второго слоя 26-28 и нейроны 30, 31 счетчика тактов перехода 29. Синаптические веса связей равны "1". Структура связей первого и второго слоев нейронной сети представлена в таблице 2.

Таблица 2
Разряды остатка устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 i(z)Номер нейрона Синаптические связи с нейронами 2-го слоя
   2627 28
устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 0 1(z) 19-1 1
устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 0 2(z) 2011 1
устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 1 2(z) 211- 1
устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 2 2(z) 221- -
устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 0 3(z) 231- -
устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 1 3(z) 24-1 -
устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475 2 3(z) 25-- 1

Нейроны 26-28 второго слоя нейронной сети и нейроны 30-31 счетчика тактов перехода реализуют базовую операцию суммирования по модулю два могут быть довольно легко реализованы на персептроне.

Полученный результат

устройство для вычисления сумм парных произведений в полиномиальной   системе классов вычетов, патент № 2270475

с выхода нейронов 26-28 в параллельном двоичном коде и значение числа переходов за диапазон P(z) с выходов нейронов 30 и 31 подаются на входы нейронов 32-34 выходного слоя нейронной сети. Синоптические веса связей данных нейронов равны единице и определяются согласно таблице 3.

Таблица 3
Нейроны второго слояСиноптические веса нейронов
  нейрон 32нейрон 33 нейрон 34
26 1--
27- 1-
28 -- 1
301 --
31-1 -

Нейроны 32-34 выходного слоя нейронной сети реализуют базовую операцию суммирования по модулю два. С выхода нейронов 32-34 выходного слоя нейронной сети значения интервального номера S(z) в параллельном двоичном коде поступают на вход памяти 35, на выходе которой появляется значение коррекции, которое подается на выход блока коррекции ошибки.

Класс G06F7/72 с помощью арифметического остатка

устройство для преобразования из полиномиальной системы классов вычетов в позиционный код -  патент 2513915 (20.04.2014)
способ организации выполнения операции умножения двух чисел в модулярно-позиционном формате представления с плавающей точкой на универсальных многоядерных процессорах -  патент 2509345 (10.03.2014)
устройство для определения знака модулярного числа -  патент 2503995 (10.01.2014)
устройство для сравнения чисел, представленных в системе остаточных классов -  патент 2503992 (10.01.2014)
способ организации умножения чисел с плавающей запятой, представленных в системе остаточных классов -  патент 2500018 (27.11.2013)
накапливающий сумматор по модулю -  патент 2500017 (27.11.2013)
способ организации умножения чисел с плавающей запятой, представленных в системе остаточных классов -  патент 2485574 (20.06.2013)
полный одноразрядный сумматор по модулю -  патент 2484519 (10.06.2013)
устройство для обнаружения переполнения динамического диапазона, определения ошибки и локализации неисправности вычислительного канала в эвм, функционирующих в системе остаточных классов -  патент 2483346 (27.05.2013)
ячейка однородной вычислительной среды, однородная вычислительная среда и устройство для конвейерных арифметических вычислений по заданному модулю -  патент 2477513 (10.03.2013)
Наверх