www.finestreet.ru
компоненты
ЦСП
Цифровые сигнальные процессоры Texas Instruments
для мультимедийных приложений
Алексей ПАНТЕЛЕИЧУК
В предлагаемой статье приводится обзор и описание основных функциональных блоков двух новых цифровых сигнальных процессоров компании Texas Instruments — TMS320DM647 и TMS320DM648.
Компания Texas Instruments Incorporated (TI) в апреле этого года представила два новых цифровых сигнальных процессора (ЦСП). ЦСП TMS320DM647 и TMS320DM648 предназначены для использования во встраиваемых мультимедийных приложениях — видеорекодерах, DVD-проигрывателях, цифровых фото- и видеокамерах, IP-видеосерверах, в многоканальных видеосистемах безопасности.
Тенденции роста рынка потребительской мультимедийной электроники стимулируют производство высокоскоростных программируемых процессоров. По своей «электронной начинке» мультимедийные устройства незначительно отличаются от современных информационно-вычислительных систем (высокопроизводительный процессор, большой объем встроенной памяти, стандартные интерфейсы для обмена данными — USB, Ethernet и др., интерфейс с ЖК-дисплеем, клавиатурой и т. д.). Процессоры, ориентированные на применение в мультимедийных устройствах, должны иметь хорошие показатели соотношения производительности и стоимости, производительности и уровня потребляемой мощности, а также миниатюрные размеры.
Следуя направлению развития рынка потребительской электроники, разработчики ведущих компаний создали множество новых модификаций программируемых мультимедийных процессоров: TMS320DM644x/643x,
TMS320DM647/8 (Texas Instruments), семейство Blackfin — ADSP-BF54х (Analog Devices), процессоры MCIMX31/31L (Freescale Semiconductor), PNX1300/1500/1700 (NXP), PXA3xx (Marvell) и AT32AP700x (Atmel). Приведем их количественные показатели производительности при выполнении алгоритмов, которые широко используются в цифровой обработке видео- и аудиоданных (КИХ и БИХ-фильт-ров, декодера Витерби, БПФ и др.). Для такой оценки принято использовать набор тестовых программ BDTI Benchmark. Набор этих тестов был предложен независимой ассоциацией BDTI (Berkeley Design Technology, Inc.). На рис. 1 приведены результаты, полученные в мае 2007 года при использовании контрольных алгоритмов BDTImark2000 [2].
Далее рассмотрим архитектуру и функциональные возможности двух новых цифровых сигнальных процессоров от Texas Instruments — TMS320DM647 и TMS320DM648.
ЦСП построены на основе ядра TMS320C64x+, что позволяет перенести уже существующие видеосистемы, например, на базе TMS320DM642, на новую аппаратную платформу с удвоенной производительностью при существенном снижении расходов на компоненты системы. Удвоение производительности процессоров DM648 в сравнении с DM642 обеспечивается рядом решений: на 20% увеличена эффективность выполнения кода в процессорных циклах, на 20-30% стала выше плотность кода, вдвое увеличилось количество 16-разряд-
ных операций умножения с накоплением (ММАС) за один процессорный цикл, в четыре раза увеличилась пропускная способность БЭМА, увеличены тактовые частоты и производительность интегрированного видеосопроцессора У1СР. Снижение стоимости набора компонентов при создании систем на базе новых процессоров возможно из-за появления двух дополнительных видеопортов, интегрированного порта SGMII, позволяющего обойтись без РС1-моста, а также за счет отказа от микросхемы ПЛИС (FPGA), функции которой выполняет теперь сопроцессор У1СР.
Тактовая частота процессоров БМ647 и БМ648 — 720 и 900 МГц. Пиковая производительность — 5760 и 7200 М^. За один процессорный цикл (1,39 и 1,11 нс) выполняются восемь 32-битовых инструкций С64х+. Вычислительная часть процессора содержит шесть АЛУ (32 и 40 бит) и два умножителя. В течение одного цикла в АЛУ может выполняться либо одна операция с 32-битными операндами, либо две с 16-битными, либо восемь с 8-битными, а в умножителе — одна операция с 16-битными операндами или восемь с 8-битными. В процессе вычисления все восемь операционных модулей могут использоваться независимо — это и дает возможность выполнять одновременно восемь инструкций за один процессорный такт. Все инструкции могут выполняться с условием. Для уменьшения размера программного кода инструкции упаковываются. Процессор имеет 64 32-разрядных регистра общего назначения. Дополнительное улучшение в системе команд С64х+-рабо-
та в защищенном режиме и обнаружение критических ошибок с программной переадресацией на обработчик.
Встроенная кэш-память включает два блока объемом по 32 кбайта каждый: Ь1Р — кэш программного кода и ЬШ — кэш данных, а также один блок памяти Ь2 объемом 256/512 кбайт, который является конфигурируемым —
ADSP-BF5xx (Blackfin) 1680—4190. для процессора с одним ядром
MSC71xx (SC 1400) ■Ш 2240-3370
РХА27х (XScale/ Wireless MMX) ■Ш 1070-2140
TMS320C55x . ■■ 780—1460
C55x+ Ш 2530-3160
TMS320C64x
TMS320C64x+ 7900—10980
Рис. 1. Показатели производительности BDTImark2000
ЦСП
компоненты 1123
Рис. 2. Функциональная блок-схема TMS320DM647/TMS320DM648
либо ОЗУ, либо кэш данных или программного кода.
Процессоры содержат пять 16-разрядных видеопортов. Каждый из видеопортов содержит два канала (А и В) с 5120-байтовым блоком буферной дисплейной памяти, используемой раздельно. С помощью процессора легко осуществить дублирование видеопотоков, которое используется в видеоприложениях систем безопасности, когда высококачественный поток видеоданных должен быть сохранен на носителе информации, а низкокачественный поток видео используется для отображения на мониторе текущего видеонаблюдения. Видеопорт поддерживает различные разрешения и видеостандарты (CCIR601, ITU-BT.656, BT.1120, SMPTE 125M, 260M, 274M, 296M).
Процессоры содержат специализированный видеосопроцессор VICP (Video Imaging Co-processor). Сопроцессор VICP проводит обработку данных, работая параллельно с главным ядром ЦСП. Его работа обеспечивается библиотекой VICP Functional Library, поддерживающей эффективные алгоритмы стандартов MPEG4/H.264, преобразования цвета, масштабирования изображений, организации развертки. Эта библиотека распространяется с платформой разработчика DM648 Digital Video Development Platform (DVDP).
На рис. 2 показана функциональная блок-схема процессоров, которая отображает множество интерфейсов для связи с периферийными устройствами.
EDMA3 — расширенный контроллер прямого доступа в память. Контроллер EDMA обрабатывает все передачи данных между блоками памяти и периферийными устройствами DM64x:
• внутренней памяти (DSPL1D, DSPL2);
• внешней памяти (DDR2 SDRAM, отнхрон-
ной/асинхронной EMIF (EMIFA));
• периферии, хост (VLYNQ, HPI, McASP,
UART, Video Port 0/1/2/3/4, Timer 0/1/2/3,
SPI, I2C).
Контроллер EDMA поддерживает 64 канала ПДП. Каждый канал жестко связан с определенным событием.
DDR2 — контроллер DDR2 SDRAM, поддерживает следующие топологии памяти: 32-битный интерфейс для двух 16-битных DDR2 SDRAM устройств и 16-битный интерфейс для одного 16-битного DDR2 SDRAM устройства.
EMIFA — контроллер внешней памяти посредством интерфейса EMIFA может получить доступ к разнообразным внешним устройствам или специализированным интегральным схемам, включая синхронную память с конвейерной организацией, FIFO, а также асинхронную память, включая ROM и Flash.
VIC (VCXO Interpolated Control) используется совместно с видеопортами (VP) для синхронизации видеопотока, для управления
VCXO в целях корректировки тактовой частоты пикселей видеопорта. VIC устройство осуществляет цифро-аналоговое преобразование с разрешающей способностью от 9 до 16 битов (программируется). Вывод ЦСП VDAC — это выход интерполяционного ЦАП VIC.
UART — стандартный универсальный асинхронный приемопередатчик. Имеет приемный и передающий FIFO глубиной по 16 байтов. Приемный FIFO имеет настраиваемый порог в 1, 4, 8 или 14 байтов для автоуправления потоком данных и прямого доступа в память.
I2C модуль предоставляет интерфейс для связи DM647/DM648 с периферийными устройствами, совместимыми со стандартом шины I2C, разработанным Philips Semiconductors. Внешние компоненты (термодатчики, ЦАП, АЦП, часы реального времени и др.) подключаются к двухпроводной последовательной шине, могут принимать и передавать байты в ЦСП со скоростью до 400 кбод.
HPI — интерфейс хост-порта. Конфигурируется пользователем для работы с 16-битными или 32-битными периферийными устройствами.
PCI-модуль в устройствах DM64x соответствует спецификации PCI Local Bus version 2.3. Модуль оперирует на частоте до 66 МГц и ис-
пользует 32-битные шины данных и адреса. Выводы DM64x устройств, принадлежащие PCI-модулю, мультиплексируются с выводами HIP-интерфейса. Модуль предоставляет возможность загрузки конфигурационных регистров PCI из внешней памяти I2C EEPROM.
McASP — многоканальный последовательный аудиопорт. Оптимизирован для многопоточных аудиоприложений. Модуль McASP содержит приемную и передающую секции. Эти секции могут функционировать независимо с различными форматами данных, с раздельными битовыми частотами и кадровой синхронизацией, либо эти секции могут быть синхронизированы друг с другом. Передающая секция McASP может выдавать данные как в формате с временным разделением потоков данных (TDM), так и в формате цифрового аудио (DIT), если битовый поток кодируется для передачи S/PDIF, AES-3, IEC-60958, CP-430. Приемная секция McASP поддерживает последовательный синхронный формат TDM. Приемная и передающая секции McASP поддерживают пакетный режим обмена, который можно использовать для приложений, не связанных с обработкой звука (например, для передачи управляющей информации между двумя ЦСП DM64x).
3-портовый модуль Ethernet управляет потоком пакетов данных между ЦСП и двумя
(для DM648) или одним (для DM647) внешними Ethernet-устройствами. Управление потоком и обслуживанием (QOS) выполняется на аппаратном уровне. Ethernet-модуль содержит 3-портовый гигабитный коммутатор, где один порт соединен с внутренними ресурсами DM64x через блок управления ресурсами, а два другие соединены с внешними выводами DM64x.
Модуль таймеров включает четыре 64-битных таймера. Два таймера (0-й и 1-й) имеют внешние входы/выходы. Таймеры общего назначения могут использоваться для генерации временных интервалов, подсчета событий, генерации импульсов, прерываний для процессора или синхронизирующих событий для каналов контроллера EDMA3. Каждый из таймеров может быть сконфигурирован либо как таймер общего назначения, либо как сторожевой таймер. Каждый таймер общего назначения может быть запрограммирован как 64-битный таймер или два самостоятельных 32-битных таймера.
Порты ввода/вывода (GPIO) — 32 вывода общего назначения DM64x, которые могут быть независимо друг от друга запрограммированы пользователем либо на передачу, либо на прием. Порты GPIO сгруппированы в банки по 16 выводов. Порты банка 1 могут использоваться для генерации прерываний
CPU, а порты банка 0 — для генерации событий контроллера EDMA.
Процессоры изготавливаются по технологическим нормам 90 нм, упакованы в 529-вы-водные FBGA корпуса размером 19x19 мм с шагом шариков 0,8 мм. Тепловое сопротивление перехода «кристалл — окружающая среда» без принудительного обдува составляет 22 °С/Вт. Питание устройств DM647/DM648 осуществляется тремя источниками — 1,2 В (ядро), 3,3 и 1,8 В (ввод/вывод внешних интерфейсов). Для правильной работы процессора требуется специальная последовательность подачи питающих напряжений. Для этих целей TI выпускает различные микросхемы управления питанием ЦСП.
TI предлагает широкую номенклатуру инструментальных средств разработки для платформы TMS320DM64x, включая инструменты, оценивающие производительность процессоров, программные и аппаратные отладочные средства:
• Code Composer Studio IDE:
- CCStudio Free Eval Tools (FET);
- Compiler;
- Debugger;
- Simulator;
• Development Kits & Boards:
- Starter Kits;
- Development Boards/EVM;
- Development Platforms;
• Emulators/Analyzers:
- XDS560 Emulator.
С выпуском на рынок тестовой модели DM648 стала доступна цифровая видеоплатформа разработчика (DVDP), которая включает алгоритмы многоканальных кодеков и множество программных модулей, необходимых для построения полной системы обработки видео. Платформа ориентирована на аппаратные средства DM64х. DVDP — эффективный путь от оценки технологии DaVinci к быстрому старту разработки изделия.
Итак, переход от ЦСП TMS320DM642 на новые ЦСП TMS320DM647 и TMS320DM648, построенные на основе ядра TMS320C64x+, удвоит производительность уже существующих приложений на новой аппаратной платформе и снизит расходы на ее компоненты.
Более полную информацию о параметрах, архитектуре, средствах разработки ПО рассмотренных ЦСП можно найти на сайте www.ti.com. ■
Литература
1. TMS320DM647/TMS320DM648 Digital Media
Processor. Texas Instruments. 2007.
2. www.bdti.com