конвейерная нейронная сеть конечного кольца

Классы МПК:G06N3/04 архитектура, например топология соединений
Автор(ы):
Патентообладатель(и):Ставропольский государственный университет (RU)
Приоритеты:
подача заявки:
2006-06-20
публикация патента:

Изобретение относится к конвейерным нейронным сетям конечного кольца. Техническим результатом является сокращение аппаратных затрат преобразователя двоичного кода в код системы остаточных классов. Для этого конвейерная нейронная сеть конечного кольца содержит мультиплексор, просмотровую таблицу (память), где хранятся предварительно вычисленные значения формата с весовым коэффициентом w=20, демультиплексор, умножители на константы 2j и суммирующую нейронную сеть конечного кольца. 3 ил. конвейерная нейронная сеть конечного кольца, патент № 2317584

конвейерная нейронная сеть конечного кольца, патент № 2317584 конвейерная нейронная сеть конечного кольца, патент № 2317584

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

Конвейерная нейронная сеть конечного кольца для определения остатка числа по модулю, содержащая нейронную сеть конечного кольца с весовыми коэффициентами wj, отличающаяся тем, что в нее введены мультиплексор, демультиплексор и просмотровая таблица, представленная в виде памяти, реализующая вычислительную модель (х020 121+...XВ-1 2В-1)20, где В - количество разрядов выбранного формата; хi - коэффициент 0 или 1; i - позиция разряда в формате, входы просмотровой таблицы подключены к выходам мультиплексора, входы которого являются входами конвейерной нейронной сети конечного кольца, а выходы просмотровой таблицы с разрядностью m=[log p i] подключены ко входу демультиплексора, который коммутируется последовательно под действием адресного входа демультиплексора на входы соответствующих схем умножителей на константы конвейерная нейронная сеть конечного кольца, патент № 2317584 выходы которых суммируются нейронной сетью конечного кольца, выход которой является конвейерная нейронная сеть конечного кольца, патент № 2317584 выходом конвейерной нейронной сети конечного кольца, при этом в мультиплексоре вызов байта определяется кодом числа, поданным на адресные входы мультиплексора.

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

Изобретение относится к вычислительной технике и может быть использовано в модулярных нейрокомпьютерах для реализации основной операции - определение вычета (остатка) числа, которое используется как при выполнении арифметических операций, так и при выполнении операции ввода данных.

Известна нейронная сеть для классификации сигналов или символьной информации (заявка 19917957, МПК 7 G06F/15/18, опубликована 26.10.2000, немецкая), содержащая входной, выходной, скрытый слои и связи между ними. Однако такие нейронные сети предназначены для классификации целей радиолокатора.

Наиболее близким по технической сущности к заявленному устройству является нейронная сеть конечного кольца (заявка 2003124689, МПК7 G06N 3/02, RU), содержащая арифметические элементы, имеющие характеристики взвешенного суммирования, и элементы, имеющие характеристику оператора по модулю.

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

Цель изобретения - сокращение оборудования.

Указанная цель достигается тем, что в нейронную сеть введены мультиплексор, просмотровые таблицы (память) и демультиплексор.

Предлагается эффективный метод преобразования двоичного числа в систему остаточных классов на основе разбиения исходного двоичного числа на отдельные форматы, для которых отводится заранее известное количество В-двоичных разрядов. Тогда n-битное двоичное число может быть выражено как комбинация конвейерная нейронная сеть конечного кольца, патент № 2317584 взвешенных (позиционных) форматов размерностью B бит (разрядов). При этом позициям каждого формата конвейерная нейронная сеть конечного кольца, патент № 2317584 присваивается определенный вес 2j , где j=0, В, 2В,...MB.

Прямое преобразование двоичного числа в модулярное осуществляется с помощью модульного суммирования остатков по модулю рi(i=1, 2,..., n) В разрядов конвейерная нейронная сеть конечного кольца, патент № 2317584 форматов с учетом их весов.

На основании сказанного любое двоичное число может быть записано в виде

конвейерная нейронная сеть конечного кольца, патент № 2317584

где: В - количество разрядов выбранного формата;

М - степень формата;

хi - коэффициент 0 или 1;

j=0, B, 2В,...MB - позиция формата;

i - позиция разряда в формате.

Если развернуть выражение (1), тогда

конвейерная нейронная сеть конечного кольца, патент № 2317584

Из выражения (2) видно, что число Х может быть представлено двоичным числом ширины М×В разрядов.

Если в качестве примера входное слово взять как 32-разрядное число и число разрядов в формате взять равным 8 бит, тогда входное число может быть выражено как комбинация четырех байтов:

конвейерная нейронная сеть конечного кольца, патент № 2317584

Таким образом, остаток Х(n) по модулю р i может быть представлен в виде

конвейерная нейронная сеть конечного кольца, патент № 2317584

Каждый член выражения (4) с учетом веса 2 j может быть предварительно вычислен и сохранен в просмотровых таблицах. Организация просмотровых таблиц определяется двоичным представлением модуля рi и выражается формулой m=[log pi]. ПЛИС устройства имеют встроенные логические блоки. В зависимости от семейства каждый логический блок включает одну или более просмотровых таблиц размером 2 4×1 бит, выходной регистр, специализированную логическую схему ускоренного переноса.

Схема конвейерной нейронной сети конечного кольца приведена на фигуре 1.

Схема состоит из мультиплексора 2 на четыре группы входов 1 (разрядность каждой группы равна 1 байту) с адресным входом 3, [log p i]-LUT таблиц 4, трех умножителей 7 по модулю p i, демультиплексора 5 с адресным входом 6, осуществляющего подключение выхода LUT таблицы на один из четырех выходов и нейронной сети конечного кольца 8 для суммирования по mod p i остаточных значений байтов с учетом их весов. Принцип работы изобретения излагается ниже. Процесс преобразования подразделяется на 4 этапа, каждый из которых выполняется определенной частью аппаратного обеспечения, причем все эти части могут работать параллельно. Конвейер из четырех стадий (а), состояние каждой стадии в зависимости от количества пройденных циклов (б) для 11 циклов, приведен на фигуре 2. На фигуре 2,а изображен конвейер из 4 блоков, которые называются стадиями. Исходное входное число разделено на 4 байта: нулевой, первый, второй и третий. В LUT таблицу помещены заранее вычисленные все возможные значения нулевого байта по mod pi, которое будет использовано при преобразованиях всех байтов. Учет веса каждого байта определяется синаптическими весами wj умножителей.

Стадия C1 вызывает старший байт числа x[31, 24] и помещает его на выход мультиплексора, выход которого является входом LUT-таблицы. Вызов байта определяется кодом числа, поданным на адресные входы 3 мультиплексра. Стадия C 2 считывает их LUT-таблицы значение вычета (остатка) байта по mod pi. Стадия С3 выполняет умножение считанного остатка конвейерная нейронная сеть конечного кольца, патент № 2317584 их памяти LUT-таблицы на значение соответствующего синаптического веса конвейерная нейронная сеть конечного кольца, патент № 2317584 где j - степень байта. Коммутация байтов осуществляется демультиплексором под действием адресного входа 6. Стадия С 4 выполняет суммирование остатков всех байтов по mod p i. Суммирование выполняется нейронной сетью конечного кольца по mod pi.

Пример 1. Пусть дано число Х=10000001 10000011 00011011 10100010. Найти остаток числа X по mod 7 (фигура 1). Весовые коэффициенты w3 =|224|7=1; w 2=|216|7=4; w1=|28| 7=2; w0=|20 |7=1.

 Адрес LUT Выборка из LUTУмножение на wjСуммирование по mod 7
X= |(10000001)|7конвейерная нейронная сеть конечного кольца, патент № 2317584 011001011
 |(10000011)| 7конвейерная нейронная сеть конечного кольца, патент № 2317584 10110010100
 |(00011011)| 7конвейерная нейронная сеть конечного кольца, патент № 2317584 1100101100
 |(10100010)| 7конвейерная нейронная сеть конечного кольца, патент № 2317584 001001001
|X|7 конвейерная нейронная сеть конечного кольца, патент № 2317584 100100 mod 7=001

В примере в качестве формата принято В=8 разрядов из соображений использования для преобразования чисел просмотровых таблиц LUT (look-up tables) программируемых логических интегральных схем Xilinx серии ХС4000, которые имеют 8 входов.

На фиг.2,б приведено действие конвейера во времени. Во время цикла 1 стадия C1 работает над третьим байтом, помещая его на выход мультиплексора. Во время цикла 2 стадия С 2 считывает из памяти (LUT-таблицы) значение третьего байта, в то время как стадия С1 помещает на выход мультиплексора значение второго байта. Во время цикла 3 стадия С3 выполняет умножение считанного остатка третьего байта по mod pi на его синаптический вес w3, стадия С2 считывает значение первого байта, а стадия С 1 помещает значение нулевого байта на выход мультиплексора. Во время цикла 4 стадия С4 выполняет суммирование значения остатка третьего байта, С3 выполняет умножение значения второго байта на синаптический вес w 2, С2 считает первый байт, и С 1 помещает на выход мультиплексора значение нулевого байта и так далее. На седьмом цикле на выходе сумматора формируется значение остатка числа конвейерная нейронная сеть конечного кольца, патент № 2317584 . И далее через каждые 4 следующих цикла формируются остатки следующих чисел. Итак, остаток первого числа формируется через 7 циклов, а остатки следующих чисел будут формироваться через каждые 4 цикла.

Предположим, что время цикла у этого преобразователя 5 нс. Тогда для того, чтобы один байт прошел через весь конвейер, требуется 20 нс. На первый взгляд может показаться, что такой преобразователь может выполнять 50 млн байтов в секунду, в действительности же скорость его гораздо выше. Во время каждого цикла (5 нс) завершается преобразование одного байта, поэтому преобразователь выполняет не 50 млн, а 200 млн байт в секунду, тогда преобразование четырех байтов выполняется со скоростью 50 млн входных слов в секунду.

Для реализации данного изобретения требуется [log р i]-LUT-таблиц, мультиплексор на 4 входа, демультиплексор на 4 выхода, три умножителя по mod pi и одна нейронная сеть конечного кольца для четырех групп входов. Известные схемы используют 15 нейронных сетей конечного кольца на 2 группы входов.

Аппаратные затраты схемы: мультиплексора, демультиплексора, умножителей на константу и одной нейронной сети конечного кольца намного меньше аппаратных затрат 15 нейронных сетей конечного кольца.

Класс G06N3/04 архитектура, например топология соединений

нейронная сеть для определения координат точек на эллиптической кривой -  патент 2397541 (20.08.2010)
устройство для коррекции ошибок в полиномиальной системе классов вычетов с использованием псевдоортогональных полиномов -  патент 2393529 (27.06.2010)
нейронная сеть с пороговой (k, t) структурой для преобразования остаточного кода в двоичный позиционный код -  патент 2380751 (27.01.2010)
нейронная сеть ускоренного масштабирования модулярных чисел -  патент 2359325 (20.06.2009)
нейронная сеть для преобразования остаточного кода в двоичный позиционный код -  патент 2318238 (27.02.2008)
программируемая нейроматрица -  патент 2287855 (20.11.2006)
нейронная сеть конечного кольца -  патент 2279132 (27.06.2006)
адаптивная параллельно-конвейерная нейронная сеть для коррекции ошибок -  патент 2279131 (27.06.2006)
нейронная сеть для округления и масштабирования чисел, представленных в системе остаточных классов -  патент 2271570 (10.03.2006)
нейронная сеть для вычисления позиционной характеристики ранга числа, представленного в системе остаточных классов -  патент 2271569 (10.03.2006)
Наверх