Нейрочіпи

Нейросигнальний процесор 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).

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

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

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

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

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

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

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

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

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

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