НЕЙРОКОМПЬЮТЕРЫ - АРХИТЕКТУРА И РЕАЛИЗАЦИЯ

Архитектура ADSP-процессоров


Архитектура ADSP-процессоров TMS320C80 ориентирована для применений, связанных с графикой и обработкой изображений (где использование нейропарадигм даем наибольший на сегодня эффект). Она обеспечивает эффективное выполнение операций фильтрации и частотного преобразования, типичных для данных приложений. ADSP может выполнять за один такт одновременно операцию умножения, арифметико-логическую операцию (например, сдвиг-суммирование) и два обращения к памяти. Внутренний параллелизм ADSP позволяет обеспечить быстродействие свыше 500 млн. операций в секунду на некоторых алгоритмах.

ADSP манипулирует 32-разрядными словами, а разрядность команд составляет 64 бита. Процессор использует прямую, непосредственную и 12 видов косвенной адресации.

Архитектура ADSP характеризуется следующими параметрами:

  • 3-этапный конвейер
  • 44 доступных пользователю регистра (10 - адресных, 6 -индекса, 8 - данных, 20 - прочих)
  • 32-разрядное 3-входовое АЛУ
  • репликатор битов
  • два адресных устройства
  • 32-разрядное устройство барабанного сдвига
  • генератор масок
  • блок условных операций для сокращения времени выполнения переходов

    Контроллер обмена (TC) управляет операциями обмена процессоров и памяти как внутри кристалла (через коммутатор), так и вне кристалла, с использованием входящих в его состав интерфейсных схем, поддерживающих все распространенные стандарты памяти (DRAM, VRAM, SRAM) и обеспечивающих возможность динамического изменения разрядности шины от 8 до 64. Используя приоритетную дисциплину обслуживания запросов к памяти в режиме DMA, TC позволяет выполнить обмен данными, не прерывая вычислений со скоростью до 400 Мбайт/c. Контроллер обмена поддерживает линейную и координатную адресацию памяти для эффективного выполнения обмена при работе с 2- и 3-мерными графическими изображениями.

    Большинство известных на сегодня нейровычислителей на базе DSP строятся на основе микропроцессоров семейства TMS320C4х. Благодаря своей уникальной структуре эти DSP получили широкое распространение в мультипроцессорных системах и практически вытеснили ранее господствующее в этой области семейство транспьютеров, производимых рядом европейских компаний.
    Процессоры TMS320C4x совместимы по системе команд с TMS320C3x, однако обладают большей производительностью и лучшими коммуникационными возможностями.

    Центральный процессор TMS320C4x имеет конвейерную регистро-ориентированную архитектуру. Компонентами ЦП являются:

  • умножитель данных в форматах целочисленном и с плавающей точкой
  • арифметико-логический модуль
  • 32-разрядное барабанное устройство сдвига
  • внутренние шины
  • дополнительные модули регистровой арифметики
  • регистровый файл CPU

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

    АЛУ выполняет за один такт операции над 32-разрядными целыми и логическими и 40-разрядными данными в формате с плавающей точкой, в том числе и операции преобразования форматов представления данных. Микропроцессор аппаратно поддерживает операции деления и извлечения квадратного корня. Устройство барабанного сдвига позволяет за один такт выполнить сдвиг данных влево или вправо на число позиций от 1 до 32. Два дополнительных модуля регистровой арифметики (Address Generation 0 и Address Generation 1) функционируют параллельно с умножителем и АЛУ и могут генерировать два адреса в одном такте. В процессоре поддерживается относительная базовая, базово-индексная, циклическая и бит-реверсная адресации.

    Первичный регистровый файл представляет собой многовходовый файл из 32 регистров. Все регистры первичного регистрового файла могут использоваться умножителем, АЛУ и в качестве регистров общего назначения. Регистры имеют некоторые специальные функции. 8 дополнительных регистров могут использоваться для некоторых косвенных способов адресации, а также как целочисленные и логические регистры общего назначения. Остальные регистры обеспечивают функции системы такие, как адресация, управление стеком, прерывания, отображение статуса процессора, блочные повторы.





    Регистры повышенной точности предназначены для хранения и обработки 32-разрядных целых чисел и 40-разрядных чисел с плавающей точкой. Дополнительные регистры доступны как для АЛУ, так и для двух модулей регистровой арифметики. Основная функция этих регистров - генерация 32-разрядных адресов. Они также могут использоваться как счетчик циклов или как регистры общего назначения.

    Адресуемое процессором пространство составляет 4Г 32-разрядных слов. На кристалле расположены два двухвходовых блока оперативной памяти RAM0 и RAM1, размером 4 Кбайт каждый, а также двухвходовой блок ROM, содержащий программу начальной загрузки.

    Кэш команд процессора емкостью 128 32-разрядных слов содержит наиболее часто используемые участки кода, что позволяет сократить среднее время выборки команд. Высокая производительность TMS320C40 достигается благодаря внутреннему параллелизму процессов и многошинной организации процессора. Раздельные шины позволяют одновременно выполнять выборку команды, данных и прямой доступ в память.

    Все больше завоевывающее популярность, в том числе и для нейро приложений, семейство процессоров TMS320C6x обладает рекордной производительностью 1600 MIPS. Благодаря этому возможен принципиально новый взгляд на существующие системы связи и телекоммуникаций. Высокая производительность микропроцессоров обеспечивается благодаря новой архитектуре VelociTIT с очень длинным командным словом (VLIW, Very Long Instruction Word). Архитектура VelociTI образована множеством параллельно работающих процессоров, которые позволяют выполнять несколько инструкций за один командный цикл. Именно такой параллелизм архитектуры процессора обеспечивает высокую производительность.

    Сравнительная оценка производительности наиболее используемых сегодня в нейроприложениях DSP Analog Devices и TI приведена в таблице 2.

    Таблица 2. Сравнительные характеристики [7].
    Характеристика\процессорADSP21061TMS320C40/TMS320C44
    Instruction Execution Time20 ns33 ns
    Peak MFLOPS150 Peak MFLOPS60 Peak MFLOPS
    Price (10,000 pcs)$49$176 ($99 w/C44)
    Price/performance3.1 MFLOPS/$0.34 MFLOPS/$ (.6 w/C44)
     
    Benchmark: 
    1K pt Complex FFT.37 ms.97 ms
     
    Core Features: 
    Data Registers3212
    Circular Buffers321 (Fixed Length)
     
    I/O Capabilities: 
    DMA Channels66
    Serial Ports2 with TDM modeNone
    Max throughput300 Mbytes/sec60 Mbytes/sec
    On-Chip Memory32K x 32 Bit Words2K x 32 Bit Words
    Total On-Chip Memory Size1,024 Kbit (1Mbit)64 Kbits
     
    Multiprocessing Support6 processors through cluster bus6 processors through COMM ports (4 processors w/C44)
     
    Host InterfaceParallelNone

    Содержание раздела