RU2256226C2 - Нейронная сеть для расширения кортежа числовой системы вычетов - Google Patents

Нейронная сеть для расширения кортежа числовой системы вычетов Download PDF

Info

Publication number
RU2256226C2
RU2256226C2 RU2003124041/09A RU2003124041A RU2256226C2 RU 2256226 C2 RU2256226 C2 RU 2256226C2 RU 2003124041/09 A RU2003124041/09 A RU 2003124041/09A RU 2003124041 A RU2003124041 A RU 2003124041A RU 2256226 C2 RU2256226 C2 RU 2256226C2
Authority
RU
Russia
Prior art keywords
modules
neural networks
ring
final
modular
Prior art date
Application number
RU2003124041/09A
Other languages
English (en)
Other versions
RU2003124041A (ru
Inventor
ков Н.И. Черв (RU)
Н.И. Червяков
Original Assignee
Ставропольский государственный университет
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ставропольский государственный университет filed Critical Ставропольский государственный университет
Priority to RU2003124041/09A priority Critical patent/RU2256226C2/ru
Publication of RU2003124041A publication Critical patent/RU2003124041A/ru
Application granted granted Critical
Publication of RU2256226C2 publication Critical patent/RU2256226C2/ru

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Complex Calculations (AREA)

Abstract

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

Description

Изобретение относится к вычислительной технике и предназначено для расширения кортежа числовой системы вычетов по введенным дополнительным основаниям и может быть использовано для кодирования данных в модулярных нейрокомпьютерах.
Известно устройство для перевода числа, представленного в системе остаточных классов, в полиадическую систему счисления (А.С. №705443 М. Кл2. G 06 F 5/02, СССР, БИ №47, 1979), содержащее входной регистр, состоящий из входных регистров по каждому основанию, матрицу элементов И, первую группу элементов ИЛИ, матрицу элементов И второй ступени, вторую группу элементов ИЛИ, выходной регистр, состоящий из выходных регистров по каждому основанию и группы элементов ИЛИ и И. К недостаткам устройства относится сложность и низкая скорость преобразования кодов.
Наиболее близким техническим решением к предложенному является устройство для перевода числа, представленного в системе остаточных классов, в полиадическую систему счисления (А.С. №652556 М. Кл2. G 06 F 5/02, СССР, БИ №10, 1979), содержащее входной регистр, состоящий из регистров по основаниям, матрицу элементов И первой ступени, первую группу элементов ИЛИ, матрицу элементов И второй ступени, вторую группу элементов ИЛИ, матрицу элементов И третьей ступени, третью группу элементов ИЛИ, матрицу элементов И четвертой ступени, четвертую группу элементов ИЛИ, элементы И и ИЛИ и преобразователь кода.
Недостатком известного устройства является его сложность и низкое быстродействие.
Цель изобретения - упрощение устройства и повышение быстродействия.
Указанная цель достигается тем, что предложенная нейронная сеть содержит входной слой нейронов, нейронные сети конечного кольца для формирования усеченной треугольной матрицы, без учета расширяемого основания, нейронные сети конечного кольца для выполнения модульного суммирования (модульные сумматоры) и нейронную сеть конечного кольца для выполнения финального шага вычисления вычета по дополнительному расширяемому основанию.
На фиг.1 представлена структура нейронной сети для расширения кортежа числовой системы вычетов, которая содержит входной слой 15 для фиксирования некоторого числа с нейронами 2, на вход которых поступает входной кортеж числовой системы вычетов (а1, а2,... ,аn) 1 нерасширенной системы оснований, треугольную матрицу 10, состоящую из нейронных сетей конечного кольца с нейронами 4, весовыми коэффициентами wij 3 и переносами 12, модульные сумматоры 11, состоящие из нейронных сетей конечного кольца с нейронами 6 и переносами 13, весовыми коэффициентами wjk 5 и выход 14 модулярного сумматора по расширенному основанию рn+1, в дополнительном коде (pn+1-an+1), где аn+1 - коэффициенты ОПСС, выходной модулярный сумматор 8 с весовыми коэффициентами 7
Figure 00000002
и выходом нейронной сети для выполнения финального шага 9 для формирования вычета α n+1 по расширенному основанию. В настоящее время система остаточных классов (СОК) привлекает все более пристальное внимание из-за ее способности поддерживать высокоскоростную арифметику при параллельной обработке данных. СОК определяется набором модулей pi из относительно простых чисел.
Пусть р1, р2,... ,pn - попарно взаимно простые целые числа,
Figure 00000003
и α i=xmodpi. Тогда соответствие Х→ (α 1, α 2,... , α n) между целыми числами в интервале [0,Р) и набором системы вычетов вида (α 1, α 2,... ,α n), 0<α ii, 0<i≤ n взаимно однозначно. Кортеж числовой системы вычетов (α 1, α 2,... ,α n) называется модулярным представлением или представлением числа X в СОК.
Основными операциями, выполняемыми в СОК (кроме модульных), являются операции вычисления позиционных характеристик и расширения системы оснований. К ним относятся любые другие немодульные операции, и от времени, затрачиваемого на их выполнение, существенно зависит производительность ЭВМ.
Расширение системы оснований является одной из основных немодульных операций в СОК. Выполнение этой операции бывает необходимо при выполнении ряда других операций, например, при выполнении операции деления чисел, вычислении позиционных характеристик, обнаружении переполнения и других. Кроме того, при обнаружении и исправлении ошибок также необходимо добавление одного или нескольких контрольных оснований.
Задачу расширения системы оснований можно сформулировать следующим образом: найти остаточное представление числа по новому основанию (новым основаниям), если известно представление числа по другим основаниям, т.е. найти остаток от деления на число, если известны остатки от деления на другие числа.
Один из путей расширения системы оснований состоит в переводе числа в позиционную систему счисления и вычислении остатка от деления на новый модуль. Надо признать, что этот путь не является рациональным с точки зрения числа операций.
Предлагается метод расширения системы оснований, который позволяет определить вычет числа по новому основанию, базируясь на использовании китайской теоремы об остатках (КТО) и обобщенной позиционной системы счисления (ОПСС). Пусть вновь задана система оснований p1, p2, ... ,pn с диапазоном Р=р1р2... рn, ортогональными базисами B1, B2, ... , Вn, веса которых m1, m2,... , mn и определяются из сравнения
Figure 00000004
. По определению
Figure 00000005
Пусть в системе задано число А=(α 1, α 2,... ,α n), где α i=A mod pi. Расширим систему оснований, добавляя основание pn+1, тогда диапазон системы станет
Figure 00000006
= рn+1· Р, ортогональные базисы системы
Figure 00000007
,
Figure 00000008
,... ,
Figure 00000009
, их веса
Figure 00000010
причем
Figure 00000011
. Задача состоит в определении цифры аn+1 числа А по основанию pn+1.
Рассмотрим число A в системе оснований p1, р2, …,pn, pn+1, тогда
Figure 00000012
где:
Figure 00000013
- диапазон расширенной системы оснований;
Figure 00000014
- ортогональные базисы расширенной системы оснований.
Представим ортогональные базисы
Figure 00000015
, в обобщенной позиционной системе счисления, тогда
Figure 00000016
где:
Figure 00000017
- коэффициенты ОПСС;
i,j=1,2,... ,n.
На основании (2) запишем выражение (1) в виде
Figure 00000018
Из выражения (3) можно определить коэффициенты аi числа А, тогда
Figure 00000019
где: α i - вычеты числа А по mod pi;
Figure 00000020
- ортогональные базисы, представленные в ОПСС.
Цифры аi в представлении ОПСС получаются суммированием по модулю pi всех произведений
Figure 00000021
и переносом, генерируемым при формировании аi-1. Перенос генерируется как число раз, когда сумма цифр в ОПСС переполняется по модулю рi. Этот перенос используется для формирования цифр аi+1. Последний перенос, генерируемый при получении последней цифры числа в ОПСС, отбрасывается. Рассмотренный метод выполняется в параллельном режиме. Выигрыш в быстродействии данного метода с итеративным методом очевиден, поскольку он уменьшает время преобразования с n циклов синхронизации до трех циклов. Цифры
Figure 00000022
изменяют значения от 0 до рi-1, причем
Figure 00000023
являются константами, поэтому произведение
Figure 00000024
можно поместить в ПЗУ или в весовые коэффициенты связей между нейронами. Адресами произведений
Figure 00000025
являются вычеты α i числа А по модулю рi.
Для иллюстрации этого метода приведем пример 1.
Пусть p1=2, p2=3, р3=5, р4=7, φ =2· 3· 5· 7=210, B1=105, B2=70, B3=126, B4=120.
Тогда на основании (2) определим
Figure 00000026
:
Figure 00000027
Пусть А=11=(1, 2,1,4). Тогда в ПЗУ поместим следующие числа:
Figure 00000028
Преобразование числа А из СОК в ОПСС имеет вид
Figure 00000029
Рассмотрим метод определения вычета по расширенному основанию. Пусть СОК состоит из оснований р12... ,рn. Объем диапазона этой системы будет
Figure 00000030
Добавим к числу оснований СОК новое основание рn+1. Объем диапазона этой системы
Figure 00000031
Тогда любое число х из диапазона [0, φ ) в обобщенной позиционной системе счисления представимо в виде
Figure 00000032
Если число х будет лежать в первоначальном диапазоне [0; Р), то в ОПСС цифра аn+1=0. Этот факт и используется для получения остатка (вычета) от деления числа х на новое основание COK pn+1.
Пусть число х имело представление (α 1, α 2,... ,α n) по основаниям р1, р2,... , рn. Добавляем новое основание pn+1, тогда число x=(α 1, α 2,... , α n,
Figure 00000033
) в системе оснований p1, p2,... ,pn, pn+1, где
Figure 00000034
- остаток от деления числа х на pn+i, т.е. искомая цифра по новому основанию.
Для определения этой цифры используем метод перевода числа из СОК в ОПСС, включая неизвестную цифру
Figure 00000035
в проводимые операции. При этом мы параллельно получим цифры ОПСС а1, а2,... , аn и выражение для цифры an+1. Но так как по предположению число х∈ [0; Р), то цифра аn+1=0. Из полученного соотношения и определяем искомую цифру
Figure 00000036
.
Рассмотрим этот метод на примере 2.
Пусть задана система модулей р1= 2, р2=3, р3=5, тогда Р=2· 3· 5=30. И пусть задано число х=11=(1, 2, 1). Расширим систему оснований, добавляя р4=7. Тогда x=11=(1, 2, 1,
Figure 00000037
) в системе оснований p1=2, p2=3, р3=5, p4=7.
Набор констант bij приведен в (5) и задается матрицей
Figure 00000038
Процесс решения задачи приведен в таблице 1.
Figure 00000039
Так как
Figure 00000040
но по условию а4=0, т.е.
Figure 00000041
или
Figure 00000042
Мультипликативная обратная величина
Figure 00000043
и так как число 5 отрицательное, возьмем его дополнение по модулю 7.
Итак, вычет числа х по модулю 7 определяется выражением
Figure 00000044
Тогда, расширенное представление числа будет х=11=(1, 2, 1, 4).
Так как результат образования цифры в СОК по новому основанию pn+i зависит только от первых цифр, то операцию расширения вычетов можно проводить сразу по нескольким основаниям.
Преимущества предложенного метода расширения системы вычетов состоит в том, что:
- все вычисления выполняются в параллельных каналах по отдельным модулям, причем каждый модуль отождествляется с отдельным каналом;
- не требуется вычисления большого количества дополнительных величин, необходимо только наличие констант
Figure 00000045
и мультипликативных величин по расширенным основаниям;
- возможно получение расширенного представления вычетов числа сразу по нескольким дополнительным основаниям, что не влияет на быстродействие всей операции расширения.
Принцип работы нейронной сети для расширения кортежа числовой системы вычетов излагается ниже. Нейронная сеть, приведенная на фиг.1, позволяет определить вычет α n+1 по дополнительно введенному основанию рn+1 по известным вычетам (α 1, α 2,... ,α n) 1 исходной системы оснований р1, р2, ... ,рn. Входной кортеж (α 1, α 2,... ,α n) системы вычетов 1 по системе оснований р1, р2, ... ,рn поступает на нейроны 2, расположенные во входном слое 15, а вычет α n+1 по расширенному основанию рn+1 появляется на выходе модулярного сумматора 8, выход 9.
С выходов нейронов 2 входного слоя 15 значения вычетов по модулям р1, р2, ... ,pn поступают на входы НСКК, нейроны 4, по соответствующим модулям треугольной матрицы 10. Весовые коэффициенты нейронов 4, выполняющие роль распределенной памяти, определяются значением wij=
Figure 00000046
. Нейроны 4 вычисляют значение
Figure 00000047
с учетом переноса 12. Выходные значения НСКК, нейроны 4 треугольной матрицы 10, подаются на вход НСКК с весовыми коэффициентами wjk=1 для выполнения модульного суммирования 11, нейроны 6, где суммируются согласно правилу сложения цифр в представлении ОПСС, т.е. данные в i-м канале будут суммироваться с учетом переноса 13 в (i-1) канале по модулю рi в представлении ОПСС.
Перенос представляет собой число раз, превышающее величину модуля pi, который поступает к (i+1) каналу. Поскольку в каждой строке усеченной треугольной матрицы имеется (i-1) нулей перед первым значащим элементом, а сумма чисел может переноситься (n-1) раз, то абсолютная величина каждого переноса ограничивается величиной (n-1):
Figure 00000048
Figure 00000049
где wij=
Figure 00000050
.
Из выражения (7) видно, что значение по расширенному основанию α n+1wn(n+1) в суммировании не участвует. С выхода НСКК по расширенному модулю, полученное значение суммы в дополнительном коде 14, подается на вход нейронной сети для выполнения финального шага, нейроны 8, весовой коэффициент которого wkl 7 определяются мультипликативной величиной
Figure 00000051
На выходе нейрона 8 формируется вычет аn+1 9 по расширенному основанию.
Данное устройство может быть применено для определения вычетов по любому количеству l различных модулей. При этом определенные внешние параметры нейронных сетей для выполнения финального шага вычисления вычета по дополнительным расширенным модулям будут определяться мультипликативной величиной
Figure 00000052
где l –количество расширенных модулей.
Время расширения кортежа числовой системы вычетов по любому количеству модулей определяется тремя циклами синхронизации: один цикл для формирования произведений
Figure 00000053
один цикл для формирования
Figure 00000054
где s=1, 2,... , l и один цикл для выполнения финального шага.
Изобретение преимущественно предназначено для построения функциональных блоков отказоустойчивых модулярных нейрокомпьютеров.

Claims (1)

  1. Нейронная сеть для расширения кортежа числовой системы вычетов машинного диапазона модулярного нейрокомпьютера, содержащая входной слой нейронов для фиксирования числа нейронов и вычисления значений вычетов по модулям p1, p2, …, pn, усеченную треугольную матрицу нейронных сетей конечного кольца по модулям системы остаточных классов, нейронной сети конечного кольца по модулям системы остаточных классов, при этом упомянутые нейронные сети конечного кольца предназначены для вычисления значения
    Figure 00000055
    с учетом переноса, где
    Figure 00000056
    - коэффициенты обобщенной позиционной системы счисления,
    Figure 00000057
    - вычеты из числа А по mod pi, в нее введены нейронные сети конечного кольца для выполнения модульного суммирования по всем основаниям и дополнительному расширяемому модулям и нейронная сеть для выполнения финального шага вычисления вычета по дополнительно расширяемому модулю, отличающаяся тем, что в ней выходы нейронов входного слоя разветвлены на входы нейронных сетей конечного кольца усеченной треугольной матрицы, выполненной в виде распределенной памяти, выходы которых соединены с входами нейронных сетей конечного кольца с единичными синаптическими весами для выполнения модульного суммирования по всем основным и дополнительно расширяемому модулям, выходы переносов которых i модулей, где i= 2, 3, … n, соединены с входами i+1 модулей, а выход суммы n+1 модуля соединен со входом нейронной сети для выполнения финального шага вычисления вычета по дополнительно расширяемому основанию.
RU2003124041/09A 2003-07-30 2003-07-30 Нейронная сеть для расширения кортежа числовой системы вычетов RU2256226C2 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2003124041/09A RU2256226C2 (ru) 2003-07-30 2003-07-30 Нейронная сеть для расширения кортежа числовой системы вычетов

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2003124041/09A RU2256226C2 (ru) 2003-07-30 2003-07-30 Нейронная сеть для расширения кортежа числовой системы вычетов

Publications (2)

Publication Number Publication Date
RU2003124041A RU2003124041A (ru) 2005-01-27
RU2256226C2 true RU2256226C2 (ru) 2005-07-10

Family

ID=35138807

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2003124041/09A RU2256226C2 (ru) 2003-07-30 2003-07-30 Нейронная сеть для расширения кортежа числовой системы вычетов

Country Status (1)

Country Link
RU (1) RU2256226C2 (ru)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2562366C1 (ru) * 2014-03-12 2015-09-10 Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" Устройство расширения оснований модулярного кода
RU2584495C1 (ru) * 2015-05-14 2016-05-20 Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" Устройство для вычисления коэффициентов обобщенной полиадической системы с коррекцией ошибок
RU2744815C1 (ru) * 2020-06-22 2021-03-16 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Устройство для перевода чисел из системы остаточных классов и расширения оснований

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2562366C1 (ru) * 2014-03-12 2015-09-10 Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" Устройство расширения оснований модулярного кода
RU2584495C1 (ru) * 2015-05-14 2016-05-20 Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" Устройство для вычисления коэффициентов обобщенной полиадической системы с коррекцией ошибок
RU2744815C1 (ru) * 2020-06-22 2021-03-16 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Устройство для перевода чисел из системы остаточных классов и расширения оснований

Also Published As

Publication number Publication date
RU2003124041A (ru) 2005-01-27

Similar Documents

Publication Publication Date Title
Ma et al. Multiplier policies for digital signal processing
Ram et al. Area efficient modified vedic multiplier
EP1281118B1 (en) Method and apparatus for performing computations using residue arithmetic
Strader et al. A canonical bit-sequential multiplier
Deryabin et al. High performance parallel computing in residue number system
Premkumar A formal framework for conversion from binary to residue numbers
Valueva et al. Digital filter architecture with calculations in the residue number system by Winograd method F (2× 2, 2× 2)
RU2256226C2 (ru) Нейронная сеть для расширения кортежа числовой системы вычетов
RU2299461C1 (ru) Умножитель по модулю
EP0661645A2 (en) Neural network
CN111985628A (zh) 计算装置及包括所述计算装置的神经网络处理器
RU2318238C1 (ru) Нейронная сеть для преобразования остаточного кода в двоичный позиционный код
Juang et al. Area-delay product efficient design for convolutional neural network circuits using logarithmic number systems
RU2477513C1 (ru) Ячейка однородной вычислительной среды, однородная вычислительная среда и устройство для конвейерных арифметических вычислений по заданному модулю
US5430669A (en) Apparatus for finding the square root of a number
Sarvan et al. Implementation of ANN training module on field programmable gate arrays
Abdellatef et al. Characterization of correlation in stochastic computing functions
RU2744815C1 (ru) Устройство для перевода чисел из системы остаточных классов и расширения оснований
Singh et al. High performance VLSI architecture for wave digital filtering
RU2751802C1 (ru) Умножитель по модулю
SU1667059A2 (ru) Устройство дл умножени двух чисел
Shrivastava et al. Hardware Realization of 2-D General Model State Space Systems
JP2608600B2 (ja) 2つの数の和のパリティビットの計算装置
RU2739338C1 (ru) Вычислительное устройство
RU2814657C9 (ru) Конвейерный накапливающий сумматор по модулю

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20080731