Реалізація ШПФ на нейрокомп’ютері.

Розглянемо реалізацію ШПФ на базі процесора Л1879ВМ1(NM6403). Процесор Л1879ВМ1 - високопродуктивний спеціалізований мікропроцесор, що об’єднює в собі риси двох сучасних архітектур: VLIW (Very Long Instruction Word) і SIMD (Single Instruction Multiple Data) (рис.10). Тактова частота - 40 МГц; напруга живлення - від 3,0 до 3,6 В; споживана потужність - 1,3Вт. Основні обчислювальні вузли процесора - керуюче RISC-ядро і векторний співпроцесор.

RISC-ядро– центральний процесорний вузол, що виконує всі основні функції по керуванню роботою кристала. Крім того, RISC-процесор робить арифметико-логічні і операції зсуву над 32-розрядними скалярними даними і формує 32-розрядні адреси команд і даних при звертаннях до зовнішньої пам'яті. Довжина команди - 32 і 64 розряди (звичайно в команді виконуються дві операції). Процесор реалізує п’ятиступінчатий 32-розрядний конвеєр. Адресний простір - 16 Гбайт, два адресних генератори, вісім регістрів загального призначення і вісім адресних регістрів. Будь-яка інструкція виконується за один такт.

Векторний співпроцесор призначений для арифметичних і логічних операцій над 64-розрядними скалярними даними програмувальної розрядності. Обмін даними між основними вузлами процесора відбувається по трьох внутрішніх шинах, двом вхідним і однієї

вихідній.

GMI і LMI-два однакових блоки програмувального інтерфейсу з локальною і глобальною 64-розрядними зовнішніми шинами. До кожної з них може бути підключена зовнішня пам'ять, що містить до 231 32-розрядних комірок. Обмін даними з зовнішньою пам'яттю здійснюється як 32-, так і 64-розрядними словами (NM6403 одночасно вибирає дві сусідні комірки пам'яті). Кожен блок програмувального інтерфейсу дозволяє працювати з двома банками зовнішньої пам'яті різного обсягу, типу (DRAM, SRAM, Flash ROM, EDO DRAM і т.д.) і швидкодії без додаткового устаткування. Передбачено апаратну підтримку режиму розподіленої пам'яті для різних мультипроцесорних конфігурацій зовнішніх шин.

СР1 і СР2 - ідентичні комунікаційні порти, що забезпечують інформаційний обмін по двонаправленій восьмиразрядной шині. Вони призначені для побудови високопродуктивних мультипроцесорних систем і цілком сумісні з комунікаційними портами процесора ТМ320C4x. Кожен комунікаційний порт має вбудований контролер прямого доступу до пам'яті (ПДП, DMA), що дозволяє обмінюватися 64-розрядними даними з пам'яттю на зовнішніх шинах.

ВЕКТОРНИЙ СПІВПРОЦЕСОР

Векторний співпроцесор структурно являє собою матрично-векторний операційний пристрій і набір регістрів різного призначення.

Операційний пристрій (ОУ) - регулярна матрична структура 64х64 комірки (рис.11). Матриця може бути довільно розділена на стовпці і рядки. В утворені після поділу макрокомірки завантажуються вагові коефіцієнти Wіj . На вхід матриці подається вектор вхідних даних , кожному елементу якого відповідає рядок матриці. Ширина рядка (у бітах) - розрядність даного елемента вхідних даних. У макрокомірках відбувається множення елемента вектора вхідних даних на ваговий коефіцієнт і додавання зі значенням верхньої комірки (або значень входів і U ). Таким чином, для кожного стовпця обчислюється скалярне вираз . Для зниження розрядності вихідних даних і захисту від арифметичного переповнення використовується програмувальна функція насичення (рис. 12) .

 

 


U3 U2 U1
… … …
U3 U2 U1

 

 

 

 

X0 X0
X1 X1
X2 X2
X3 X3
X4 X4
X5 X5
X6 X6
X7

X6

 

 

… … …