Нейрочіпи

Нейросигнальний процесор NeuroMatrix NM6403 (фірма Модуль, Росія) показаний на рис. 4.6.

Основою NeuroMatrix NM6403 є процесорне ядро NeuroMatrixCore (NMC), яке є моделлю високопродуктивного процесора DSP з архітектурою VLIM/SIMD (мова Verilog). Ядро складається з двох базових блоків: 32-бітового процесора RISC і 64-бітового векторного процесора, які забезпечують виконання векторних операцій над даними змінної розрядності. Є два ідентичні програмовані інтерфейси для роботи із зовнішньою пам’яттю різного типу і два комунікаційні порти, апаратні і сумісні з портами ЦПС TMS320C4x, для можливості побудови багатопроцесорних систем.

clip_image002

Рисунок 4.6 – Стуктура NeuroMatrix NM6403

Основні характеристики:

— тактова частота — 50 MГц (20нс- час виконання будь-якої інструкції);

— технологія КМОП 0.5 мкм;

— корпус 256BGA;

— напруга живлення від 2.7 до 3.6 В;

— споживана потужність при 50MHz близько 1.3 Вт;

— умови експлуатації: -60…+85 C.

— RISC-ядро

— п’ятиступінчастий 32-розрядний конвеєр;

— 32- і 64-розрядні команди (зазвичай виконується дві операції в одній команді);

— два адресні генератори, адресний простір — 16 GB;

— два 64-розрядні програмовані інтерфейси з SRAM/DRAM- пам’яттю, що розділяється;

— формат даних — 32-розрядні цілі;

— регістри;

— 8, 32-розрядні регістри спільного призначення;

— 8, 32-розрядні адресні регістри;

— спеціальні регістри управління і стану;

— два високошвидкісні комунікаційні порти введення/виведення

— апаратно сумісний з портами TMS320C4x.

VECTOR-співпроцессор:

— змінна 64-розрядна довжина векторних операндів і результатів;

— формат даних — цілі числа, упаковані в 64-розрядні блоки, у формі слів змінної довжини від 1 до 64 розрядів кожне;

— підтримка векторно-матричних і матричних для матриці операцій;

— два типи функцій насичення на кристалі;

— три внутрішні 32×64-розрядні RAM-блоки.

Продуктивність:

— скалярні операції;

— 50 MIPS;

— 200 MOPS для 32-розрядних даних;

— векторні операції;

— від 50 до 50.000+ MMAC (мільйонів множень з накопиченням в секунду);

— інтерфейси з пам’яттю;

— пропускна спроможність двох 64-розрядних інтерфейсів з пам’яттю — до 800 Мбайт/сек;

— комунікаційні порти — до 20 Мбайт/сек кожен.

Основними особливостями даного нейропроцесора є:

— можливість роботи з вхідними сигналами (синапсами) і вагозмінної розрядності (від 1 до 64 біт), яка задається програмно, що забезпечує унікальну здатність нейропроцесора збільшувати продуктивність із зменшенням розрядності операндів;

— швидке підкачування нових вагів на фоні обчислень;

— 24 операції множення з накопиченням за один такт при довжині операндів 8 біт;

— V-апаратна підтримка емуляції нейромереж великої розмірності;

— реалізація функції активації у вигляді порогової функції або функції обмеження;

— наявність двох широких шин (по 64 розряди) для роботи із зовнішньою пам’яттю будь-якого типу: до 4Мб SRAM і 16 Гб DRAM;

— наявність двох байтових комунікаційних портів введення/виведення, апаратних сумісних з комунікаційними портами TMS320C4x для реалізації паралельних розподілених обчислювальних систем великої продуктивності.

— можливість працювати з| даними змінної розрядності за різними алгоритмами, що реалізовуються за допомогою програм, які зберігаються в зовнішньому запам’ятовуючому пристрої.

На рисунку 4.7 подана конструктивна реалізація NeuroMatrix 6403.

clip_image004

Рисунок 4.7 – Конструктивна реалізація NeuroMatrix 6403

Технічні характеристики:

— число вентилів на кристалі — 100.000;

— розмір кристала — 10 мм·10.5 мм при технології 0.7 мкм;

— споживана потужність — не більше 3 Вт;

— пікова продуктивність для байтових операндів — 720 MCPS (мільйонів з’єднань або множень з накопиченням в сек.) при тактовій частоті 30 Мгц; при бінарних операціях — 8640 MCPS.

Нейропроцесор завдяки своїй універсальності зможе застосовуватися як базовий елемент для плат нейроприскорювачів РС, для створення нейрокомп’ютерних паралельних обчислювальних систем великої продуктивності, а також для апаратної підтримки операцій над матрицями великої розмірності і в завданнях цифрової обробки сигналів. Використовується в нейроприскорювачах фірми Модуль (Росія).

На рисунку 4.8 подана конструктивна реалізація NeuroMatrixR NM6404.

|

clip_image006

Рисунок 4.8 – Конструктивна реалізація NeuroMatrixR NM6404

|

NeuroMatrixR NM6404 є високопродуктивним DSP-орієнтованим мікропроцесором RISC. У його склад входять два основні блоки: 32-розрядне RISC-ядро і 64-розрядний VECTOR- співпроцесор для підтримки операцій над векторами з елементами змінної розрядності. NM6404 за системою команд сумісний з попередньою версією NM6403. Є два ідентичні програмовані інтерфейси для роботи із зовнішньою пам’яттю різного типу і два комунікаційні порти, апаратних сумісних з портами ЦПС TMS320C4x, для можливості побудови багатопроцесорних систем.

Особливості:

— тактова частота — 133 MГц (8НМ — час виконання будь-якої інструкції);

— технологія КМОП 0.25 мкм;

— корпус PQFP256;

— напруга живлення від 2.5 В, 3.3 В, 5 В;

— споживана потужність — близько 1.0 Вт; умови експлуатації: — 40…+80 ºC.

RISC-ядро:

— п’ятиступінчастий 32-розрядний конвеєр;

— 32- і 64-бітові команди (зазвичай виконується дві операції в одній команді);

— 2 Мбіт внутрішній оперативний запам’ятовуючий пристрій;

— доступ до внутрішньої пам’яті сусідів;

— два адресні генератори, адресний простір — 16 GB;

— два 64-розрядні програмовані інтерфейси з DRAM/SRAM/DRAM/Flash ROM пам’яттю, що розділяється;

— 4 одночасних доступи до внутрішньої пам’яті; широкомовний режим доступу до зовнішньої пам’яті;

— 64 К Boot ROM; формат даних — 32-розрядні цілі; 4 канали DMA;

— два комунікаційні порти введення/виведення, апаратно сумісний з портами TMS320C4x; JTAG-сумісний налагоджувальний інтерфейс; система управління споживаною потужністю.

VECTOR-співпроцесор

— від 1 до 64-розрядна довжина векторних операндів і результатів;

— формат даних — цілі числа, упаковані в 64-розрядні блоки, в формі слів змінної довжини від 1 до 64 розрядів кожне;

— підтримка векторно-матричних і матричних для матриці операцій;

— 16 тактів на перезавантаження матриці коефіцієнтів;

— свопування робочої і тіньової матриці; два типи функцій насичення на кристалі.

Продуктивність:

— скалярні операції:

— 133 MIPS;

— 399 MOPS для 32-розрядних даних;

— векторні операції;

— від 133 до 38.000+ MMAC (мільйонів множень з накопиченням в секунду);

— інтерфейси з пам’яттю:

— пропускна спроможність двох 64-розрядних інтерфейсів з пам’яттю — 2128 Мбайт/сек;

— комунікаційні порти — до 20 Мбайт/с кожен.

На рисунку 4.9 поданий нейропроцесор Ма16 (фірма Siemens).

clip_image008

Рисунок 4.9 – Нейрочип Ма16 (Siemens)

Ма16 виготовлений за технологією КМОП (1 мкм), складається з 610 тис. транзисторів і виконує до 400 млн. операцій множення і додавання в секунду. Використовується як елементна база нейрокомп’ютера Synaps 1 і прискорювачів Synaps 2 і Synaps 3 (поширюваних сьогодні на ринку французькою фірмою Tiga Technologies).

Ма16 є програмованим каскадним процесором для векторних і матричних операцій. Він підтримує на апаратному рівні такі операції:

— матричне множення;

— матричне додавання/віднімання;

— нормування результату;

— обчислення векторної норми (метрики L1 і L2);

— обчислення векторної відстані (міра Манхетенна, геометрична відстань).

Таблиця 4.3 – Зведені дані з продуктивності нейропроцесорів

Найменування нейрочипа Конфігурації CPS CPSPW CPPS CUPS|
NLX420 32-16, 8 bit mode 10M 20K 640M -
100 NAP 4 chips, 2M wts, 16 bit mantissa 250M 125 256G 64M
WSI (Hitachi) 576 neuron Hopfield 138M 3.7 10G -
N64000 (Inova) 64-64-1, 8 bit mode 871M 128K 56G 220M
MA16 1 chip, 25MHz 400M 15M 103G -
ZISC036 64 8 bit element inp. Vector - - - -
MT19003 4-4-1-, 32 MHz 32M 32M 6.8G -
MD1220 8-8 9M 1M 142M -
NI 1000 256 5 bit element inp. Vector 40 000 vec in sec. - - -
L-neuro-1 1-chip, 8 bit mode 26M 26K 1.6G 32M
NM6403 8 bit mode, 50MHz 1200M 150M 77G -

Процесор містить чотири ідентичні процесорні елементи, що працюють паралельно. Вхідні дані мають точність 16 біт, тактова частота 50 мГц. Для операцій матричного множення/додавання швидкість обчислень досягає 108 операцій/с. Програмне забезпечення працює в середовищі UNIX/XWIND і реалізоване на C++. Нейронна мережа теж описується на С++ або може вводиться інтерактивно за допомогою графічного інтерфейсу типу OSF/Motif, що дозволяє візуалізувати конфігурацію чипа після відображення на ньому структури мережі. Добре розвинені засоби тестування і емуляції. З 1995 року Ма16 є комерційно доступним продуктом.

Підводячи підсумки наведемо зведені дані з продуктивності деяких, найбільш цікавих, нейропроцесорів (табл. 4.3).

В порівнянні із звичайними комп’ютерами нейрокомп’ютери мають ряд переваг.

По-перше — високу швидкодію, пов’язану з тим, що алгоритми нейроінформатики мають високий ступінь паралельності.

По-друге — нейросистеми дуже стійкі до перешкод і руйнувань.

По-третє — стійкі і надійні нейросистеми можуть створюватися з ненадійних елементів, що мають значний розкид параметрів.

Не дивлячись на перераховані вище переваги ці пристрої мають ряд недоліків:

— вони створюються спеціально для вирішення конкретних задач, пов’язаних з нелінійною логікою і теорією самоорганізації. Вирішення таких задач на звичайних комп’ютерах можливе тільки чисельними методами;

— через свою унікальність ці пристрої досить дорогі.

В. П. КОЖЕМ’ЯКО, В. В. ДМИТРУК, Н. В. БЕЛІК

НАУКА І ТЕХНІЧНА ТВОРЧІСТЬ В НАВЧАЛЬНОМУ ПРОЦЕСІ (ВІД АБІТУРІЄНТА ДО АСПІРАНТА)

Оставьте комментарий к статье