RU2257615C2 - Нейронная сеть для вычисления позиционных характеристик непозиционного кода - Google Patents

Нейронная сеть для вычисления позиционных характеристик непозиционного кода Download PDF

Info

Publication number
RU2257615C2
RU2257615C2 RU2003119016/09A RU2003119016A RU2257615C2 RU 2257615 C2 RU2257615 C2 RU 2257615C2 RU 2003119016/09 A RU2003119016/09 A RU 2003119016/09A RU 2003119016 A RU2003119016 A RU 2003119016A RU 2257615 C2 RU2257615 C2 RU 2257615C2
Authority
RU
Russia
Prior art keywords
positional
neural network
numbers
code
rns
Prior art date
Application number
RU2003119016/09A
Other languages
English (en)
Other versions
RU2003119016A (ru
Inventor
ков Н.И. Черв (RU)
Н.И. Червяков
А.О. Малофей (RU)
А.О. Малофей
М.С. Рыбальченко (RU)
М.С. Рыбальченко
Ю.О. Щелкунова (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 RU2003119016/09A priority Critical patent/RU2257615C2/ru
Publication of RU2003119016A publication Critical patent/RU2003119016A/ru
Application granted granted Critical
Publication of RU2257615C2 publication Critical patent/RU2257615C2/ru

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

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

Description

Изобретение относится к области вычислительной техники и может быть использовано в модулярных нейрокомпьютерах.
Известно устройство для определения позиционных характеристик непозиционного кода (А.С. RU 1142827, G 06 F 5/20, Бюл. №8 1985 г.), содержащее три входных регистра, два дешифратора, сумматор по модулю и элемент ИЛИ.
Недостатком данного устройства является то, что оно способно определить только одну позиционную характеристику.
Наиболее близким техническим решением к предоставленному является устройство для определения позиционных характеристик непозиционного кода (патент RU №2020756, 5 Н 03 М 7/18 RU), содержащее n входных регистров (n - число оснований системы остаточных классов) и k блоков умножения на константу (k - число рабочих оснований), причем входы остатков числа соединены с входами соответствующих регистров, отличающееся тем, что с целью расширения функциональных возможностей за счет работы устройства в избыточной системе остаточных классов с числами, представленными в прямом и дополнительном кодах, в него введены сумматор по модулю, коммутатор, блок преобразования кода в системе остаточных классов в полиодический код, блок определения знака числа и сумматор, выход которого соединен с выходом позиционного кода числа устройства.
Недостаток этого устройства - низкая скорость преобразования и малое число определяемых непозиционных характеристик.
Цель изобретения - повысить скорость вычисления позиционных характеристик, уменьшить объем оборудования и расширить функциональные возможности устройства, а именно, определение: абсолютных величин числа, переполнения машинного диапазона, определения знака числа и сравнение чисел.
Поставленная цель достигается тем, что устройство содержит три ступени нейронных сетей конечного кольца (НСКК).
На чертеже представлена структурная схема нейронной сети для вычисления позиционных характеристик непозиционного кода, которая содержит нейронную сеть конечного кольца HCKK1 1 с подсетями по модулям системы остаточных классов 4, НСКК2 2 с подсетями по модулям обобщенной позиционной системы счисления 5, НСКК3 3 с подсетями по модулям обобщенной позиционной системы счисления 6, весовыми коэффициентами между подсетями w11 11, w12 7, w23 8, а также входы 10 и выходы 9.
В настоящее время система остаточных классов (СОК) привлекает все более пристальное внимание из-за ее способности поддерживать высокоскоростную арифметику при параллельной обработке данных. СОК определяется набором модулей рi из относительно простых чисел. Если {p1, p2,... ,pk} - набор модулей pi и наибольший общий делитель (pi, pj)=1, для i, j=1, 2,... k, i≠ j, тогда для целого числа А∈ Zp и Р=p1· p2· ... · pk существует единственное представление в СОК
Figure 00000002
Основными операциями, выполняемыми в СОК (кроме модульных), являются операции немодульного типа. К ним относятся операции вычисления позиционных характеристик. К немодульным операциям относятся операции вычисления абсолютных величин чисел, сравнения между собой чисел, определения знака чисел и переполнения разрядной сетки, а также преобразования чисел из позиционной системы счисления (ПСС) в СОК и обратного преобразования из СОК в ПСС и обобщенную позиционную систему счисления (ОПСС).
Известно, что сравнение величины целых чисел можно осуществить путем вычитания одного числа из другого и определения знака разности чисел.
К сожалению, проблема этим не решается, поскольку разряды числа, представленные в СОК, не несут информации о знаке числа, поэтому для определения знака числа необходимо перейти к определению таких позиционных характеристик, которые бы позволили определить знак числа.
Если дано представление А=(α 1, α 2,... , α k), то для того, чтобы установить знак числа, которое оно представляет, достаточно решить задачу о принадлежности этого числа к той или иной половине диапазона [0, Р], к первой [0, P/2] - число положительное или ко второй [Р/2, Р-1] - число отрицательное. Эта задача решается сравнением данного представления с представлением Р/2 при условии, что рn=2.
С целью повышения скорости вычисления позиционных характеристик рассмотрим способ, основанный на использовании ОПСС. При этом преобразовании выполняются только операции модулярной арифметики по модулю pi. Число в ОПСС представляется в виде
А=a1+a2· р13· р1· р2+... +аn· р1· р2· ... · рn-1 (2)
где ai=0÷ рi-1 для i=1, 2,... ,n; an - старший коэффициент числа;
р1, р2,... ,рn - основания ОПСС.
Диапазон представимых чисел равен Р=р1· р2· ... · рn. Если принять р1, p2,... ,рn одновременно основаниями СОК и ОПСС, тогда диапазоны представления чисел совпадают.
Представление числа в ОПСС имеет вид
А=[а12,... ,аn], (3)
где аi - коэффициенты ОПСС,
Figure 00000003
В предлагаемом изобретении преобразование числа из СОК в ОПСС базируется на выражении
Figure 00000004
где α i - разряды числа, представленного в СОК; i=1, 2,... , n;
β i=[
Figure 00000005
] - ортогональные базисы, представленные в ОПСС.
Тогда
Figure 00000006
Figure 00000007
Figure 00000008
где ai - коэффициенты ОПСС, i=[1, n].
Значение результатов аi образуется путем суммирования по модулю pi всех цифр α i· β  ij, j=[1, n] без учета переноса в n-м разряде.
Если выбрать p12>... >рn, а рn=2, тогда старший коэффициент ОПСС an может принимать два значения: 0 или 1. И знак числа будет совпадать со значением старшего коэффициента ОПСС an, т.к. весь диапазон делится на два интервала: первый - [0, Р/2-1] и второй - [P/2, P-1]. Число, которое попадает в первый интервал, будем считать положительным, а во второй интервал - отрицательным, тогда при an=0 - число положительное, а при аn=1 - отрицательное.
Рассмотрим пример сравнения двух чисел, представленных в СОК. Пусть в качестве оснований СОК использованы числа р1=5, p2=3, p3=2, тогда Р=5· 3· 2=30. Ортогональные базисы В1=6, В2=10, В3=15.
Сравним два числа Ax=7=(2, 1, 1), АY=9=(4, 0, 1).
Для сравнения чисел необходимо:
1. Найти разность чисел.
Представим АY в дополнительном коде, тогда
Figure 00000009
=(p1-4, p2-0, p3-1) =(1,0,1). Операцию вычитания заменим операцией сложения числа, представленного в дополнительном коде, тогда получим АrX+
Figure 00000010
.
Ax=(2,1,1)
Figure 00000011
2. Определим знак числа
Представим базисы B1, B2 и В3 в ОПСС, согласно выражению (2):
B1=[1,1,0]; B2=[0,2,0]; B3=[0,0,1].
Согласно (4, 5) вычислим α i· β i, тогда α 1· β 1=3· B1=[3, 0, 1]; α 2· β 2=1· В2=[0, 2, 0]; α 3· β 3=0· B3=0. Найдем старший коэффициент ОПСС Аr1β 12β 23β 3, так как α 3β 3=0, то получим
Figure 00000012
где a1=3, a2=2, a3=1.
Так как старший коэффициент ОПСС а3=1, то знак разности чисел АX и АY равен 1, т.е. число отрицательное, поэтому число АXY.
Предложенный параллельный способ определения коэффициентов является универсальным, т.к. он позволяет определять: равенство двух чисел, знак числа, абсолютное значение чисел и переполнение разрядной сетки ЭВМ.
Данный способ является полностью параллельным и позволяет определять позиционные характеристики путем выполнения модульных операций по модулю рi, что выгодно отличает его от известных.
Итак, для выполнения операции сравнения необходимо три цикла синхронизации: В первом цикле синхронизации выполняется операция сложения чисел, во втором цикле синхронизации выполняется операция вычисления αi· βi и в третьем цикле синхронизации вычисляются коэффициенты ОПСС.
Параллельный способ сравнения чисел легко реализуется на нейронных сетях (НС) конечного кольца (НСКК). Если число входов (синаптических весов) нейронов, используемых для организации и функционирования НС, согласованно с числом модулей СОК и ОПСС, то НС становиться натуральным представлением СОК и ОПСС.
Структура нейронной сети для вычисления позиционных характеристик чисел представляет собой многослойную сеть прямого распространения, состоящую из подсетей НСКК 1, 2, 3. На входы 10 НС (нейроны 4) подаются сравниваемые числа АX и АY (в дополнительном коде), представленные в СОК, а на выходе 9 (нейроны 6) формируются коэффициенты ОПСС и знак разности Ах и АY - 0 или 1, в зависимости от величины сравниваемых чисел. Если АX≥ АY, то входной сигнал сети равен 0, АXY, то выходной сигнал равен 1. При вычислении коэффициентов ОПСС используется только один вход НС.
Процедура сравнения чисел заключается в следующем. На первый слой HCKK1 (нейроны 4) поступают значения остатков сравниваемых чисел
Figure 00000013
. Синаптические веса w11 11 равны 1. HCKK1 выполняет операцию сложения разрядов чисел
Figure 00000014
Результат суммирования с выхода HCKK1 (нейроны 4) поступает на входы НСКК2 (нейроны 5). Синаптические веса входов НСКК2 w12 7 определяются выражением (4) и равны bii для i=1, 2,... ,n. НСКК2 реализует вычислительную модель
Figure 00000015
. На выходах НСКК2 (нейроны 5) формируются значения
Figure 00000016
и подаются на входы НСКК3 (нейроны 6), которые с синаптическими весами w23 8, равными 1, реализуют вычислительную модель (5). Выходы 9 НСКК3 (нейроны 6) представляют собой коэффициенты ОПСС в выражении (3). Старший коэффициент an определяет знак разности двух чисел. Если an=0, то AX≥ АY, и если аn=1, то АX<AY. При вычислении остальных позиционных характеристик используется только один вход подсети 1 (нейроны 4)
Коэффициенты a1, а2,... ,an используют для определения позиционных характеристик. Важно отметить, что время преобразования определяется тремя циклами синхронизации при сравнении чисел и двумя циклами синхронизации при вычислении других позиционных характеристик при любом количестве модулей СОК.
Рассмотренная параллельная НС идеально подходит к структуре программируемых логических интегральных схем (ПЛИС) типа Xilinx. Большая интеграция позволяет реализовать параллельно работающие нейроны, которые отождествлены с модулями СОК. При этом обмен данными между нейронами осуществляется внутри такой ПЛИС с высокой скоростью.
Предложенный новый параллельный способ и его нейросетевая реализация могут быть применены для преобразования из остаточного представления в двоичное, определения переполнения диапазона, знака числа, сравнения чисел, а также для вычисления пороговой функции активации в динамических нейронных сетях, что открывает новые перспективы, которые ранее было сложно осуществить при создании специализированных процессоров, быстрых адаптивных цифровых фильтров и отказоустойчивых вычислительных структур.

Claims (1)

  1. Нейронная сеть для вычисления позиционных характеристик непозиционного кода, содержащая три нейронные сети конечного кольца, каждая из которых включает n подсетей (n - число модулей системы остаточных классов), первая нейронная сеть выполняет операцию сложения разрядов
    Figure 00000017
    ,
    где
    Figure 00000018
    - i-й разряд исходного числа Ах в прямом коде;
    Figure 00000019
    - i-й разряд исходного числа Аy в дополнительном коде,
    вторая нейронная сеть реализует вычислительную модель
    Figure 00000020
    с учетом переноса между разрядами, кроме старшего разряда, перенос которого игнорируется,
    где
    Figure 00000021
    - i-й разряд числа, представленного в СОК;
    Figure 00000022
    - j-й разряд ортогонального базиса, представленного в обобщенной позиционной системе счисления по основанию pi,
    третья нейронная сеть конечного кольца реализует математическую модель
    Figure 00000023
    Figure 00000024
    Figure 00000025
    где
    Figure 00000026
    – коэффициенты обобщенной позиционной системы счисления, с учетом переноса между разрядами, кроме старшего разряда, перенос которого игнорируется, i = [1, n], отличающаяся тем, что в ней выходы первой нейронной сети соединены с входом второй нейронной сети, выходы которой соединены с входом третьей нейронной сети для вычисления позиционных характеристик непозиционного входного кода.
RU2003119016/09A 2003-06-24 2003-06-24 Нейронная сеть для вычисления позиционных характеристик непозиционного кода RU2257615C2 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2003119016/09A RU2257615C2 (ru) 2003-06-24 2003-06-24 Нейронная сеть для вычисления позиционных характеристик непозиционного кода

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2003119016/09A RU2257615C2 (ru) 2003-06-24 2003-06-24 Нейронная сеть для вычисления позиционных характеристик непозиционного кода

Publications (2)

Publication Number Publication Date
RU2003119016A RU2003119016A (ru) 2005-02-27
RU2257615C2 true RU2257615C2 (ru) 2005-07-27

Family

ID=35285703

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2003119016/09A RU2257615C2 (ru) 2003-06-24 2003-06-24 Нейронная сеть для вычисления позиционных характеристик непозиционного кода

Country Status (1)

Country Link
RU (1) RU2257615C2 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2557444C1 (ru) * 2014-07-16 2015-07-20 Федеральное государственное бюджетное образовательное учреждение высшего образования "Вятский государственный университет" Устройство для сравнения чисел в системе остаточных классов на основе интервально-позиционных характеристик

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2557444C1 (ru) * 2014-07-16 2015-07-20 Федеральное государственное бюджетное образовательное учреждение высшего образования "Вятский государственный университет" Устройство для сравнения чисел в системе остаточных классов на основе интервально-позиционных характеристик

Also Published As

Publication number Publication date
RU2003119016A (ru) 2005-02-27

Similar Documents

Publication Publication Date Title
Gokhale et al. Design of Vedic-multiplier using area-efficient Carry Select Adder
Gokhale et al. Design of area and delay efficient Vedic multiplier using Carry Select Adder
Radhakrishnan et al. FPGA implementation of XOR-MUX full adder based DWT for signal processing applications
Chervyakov et al. The effective neural network implementation of the secret sharing scheme with the use of matrix projections on FPGA
Deryabin et al. High performance parallel computing in residue number system
Kumar et al. Implementation and comparison of VLSI architectures of 16 bit carry select adder using Brent Kung adder
RU2299461C1 (ru) Умножитель по модулю
Jenkins et al. Historical patterns of emerging residue number system technologies during the evolution of computer engineering and digital signal processing
RU2257615C2 (ru) Нейронная сеть для вычисления позиционных характеристик непозиционного кода
Chervyakov et al. Research of effective methods of conversion from positional notation to RNS on FPGA
Rouhifar et al. Fast overflow detection in moduli set {2n–1, 2n, 2n+ 1}
Dutta et al. Design of a reconfigurable DSP processor with bit efficient residue number system
Patel et al. Efficient Tree Multiplier Design by using Modulo 2 n+ 1 Adder
Mehkarkar et al. Implementation of high speed fir filter based on ancient vedic multiplication technique
Ghosh et al. FPGA implementation of MAC unit for double base ternary number system (DBTNS) and its performance analysis
Nirmal et al. Novel Delay Efficient Approach for Vedic Multiplier with Generic Adder Module
Bello et al. A MRC based RNS to binary converter using the moduli set {22n+ 1-1, 2n-1, 22n-1}
Anuhya et al. ASIC implementation of efficient floating point multiplier
Vardhan et al. Novel modular adder based on thermometer coding for residue number systems applications
Babu et al. Performance Analysis Study of Stochastic Computing Based Neuron
Dychka et al. Analysis of on-Line Computation Effectiveness in Redundant Number System
Teja et al. Implementation of vedic multiplier using modified architecture by routing rearrangement for high-optimization
Sakiyama et al. Counter tree diagrams: A unified framework for analyzing fast addition algorithms
Dinesh Babu et al. Performance Analysis Study of Stochastic Computing Based Neuron
Sekar et al. Design of Reconfigurable Signed Dual Modulo Multiplier Function (DMMF) for RNS

Legal Events

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

Effective date: 20080625