Компоненты и технологии, № 3'2005 Компоненты
Применение семейства процессоров DM64x фирмы Texas Instruments
в системах цифрового видео
Развитие систем цифрового видео выдвигает принципиально новые требования к средствам обработки и передачи информации. Меняются не только средства передачи и воспроизведения информации, но и сами источники, а также среда и стандарты передачи. Развивается передача на основе проводных и беспроводных сетей Ethernet, а также DSL. Современный рынок предъявляет все большие требования к сложности и интерактивности мультимедийного контента и к повышению качества изображения.
Сергей Федоров ри разработке современных систем цифро-
вого видео необходимо учитывать наследие [email protected] существующих систем аналогового телеве-
щания, определяющих большое число стандартов Владимир Чернов и разрешений (табл. 1, 2).
На современное состояние рынка домашних [email protected] средств развлечений, в первую очередь телевидения,
в значительной степени повлияло появление цифрового телевидения и DVD. В настоящее время в цифровой широковещательной и спутниковой передаче качественного видео, а также в DVD применяется стандарт сжатия MPEG-2, разработанный в середине 90-х годов группой MPEG (Moving Picture Experts Group).
Попыткой обобщить и стандартизировать требования к современным и будущим системам мультимедиа является стандарт MPEG-4. Стандарт был разработан группой MPEG и принят в качестве стандар-
Таблица 1. Разрешения стандартных аналоговых форматов
Стандарт Размер кадра Частота кадров Соотношение сторон Тип развертки
NTSC 740x480 30 4:3 Чересстрочная
PAL/SECAM 720x576 25 4:3 Чересстрочная
HD 1920x1080, 1280x720, 704x480, 640x480 24, 25, 30, 60 4:3 и 16:9 Чересстрочная или прогрессивная
Таблица 2. Разрешения распространенных цифровых форматов
Наименование Разрешение
HD 1920x1080
XGA 1024x768
SVGA 800x600
D1 720x480
D1(NTSC) 704x480
VGA 640x480
CIF 352x288
SIF 352x240
QCIF 176x144
та ISO/IEC 14496. В отличие от стандартов MPEG-1 и MPEG-2, разработанных той же группой ранее, этот стандарт определяет не только и не столько алгоритмы кодирования и декодирования аудио и видео, а организацию мультимедийной системы, включая использование естественных и искусственных «объектов медиа» (media objects), их передачу, мультиплексирование, взаимодействие и синхронизацию.
Применения MPEG-4, с учетом требований которых создавался стандарт, охватывают все области работы с изображением и звуком в современных системах:
• Средства коммуникации, работающие в реальном масштабе времени.
• Системы наблюдения.
• Мобильные мультимедиа-приложения.
• Интерактивные средства развлечения.
• DVD.
• Хранение и поиск информации по содержанию.
• Потоковое видео в Интернет или интранет.
• Широковещательные передачи.
• Медиаприставки (set-top box) для цифрового телевидения.
• Цифровая передача с интегрированными сервисами (ISDB).
• Студийная и телевизионная постобработка.
• Язык разметки телевидения (TVML).
• Цифровое радио с АМ.
В стандарте MPEG-4 определена поддержка нескольких стандартов сжатия аудио и визуальной информации. Различные наборы алгоритмов формируются в так называемые профили (profile). Это дает возможность применять стандарт в приложениях с различными скоростью обработки информации, задержкой отклика, типом ошибок и их вероятностью в канале связи — от мобильных телефонов до трансляции телевидения высокой четкости.
Последним дополнением к MPEG-4 является стандарт кодирования H.264/MPEG-4 часть 10/AVC. Он основывается на стандарте кодирования для видеоконференций H.263, разработанном группой ITU-T VCEG (Video Coding Experts Group) и визуальной части стандарта MPEG-4. По завершении разработки
Компоненты и технологии, № 3'2005
Таблица 3. Относительная сложность декодирования AVC
Профили H.264/ MPEG-4 AVC Применения Примерное увеличение сложности декодера по сравнению с MPEG-2* Предварительная оценка эффективности по сравнению с MPEG-2
Базовый (Baseline) Приложения с малым времением отклика, мобильные устройства, PDA, видеофоны 2.5X 1.5X
Расширенный (Extended) Мобильные применения, потоковое видео по сети 3.5X 1.75X
Главный (Main) Щироковещательная передача, видео на носителях, системы с чересстрочной разверткой 4.0X 2.0X
*) МРЕО-2 МР@МЬ (главный профиль, главный уровень) Приведено по данным сайта www.m4if.org
стандарта H.263 в 1995 году группа ITU-T VCEG определила два направления развития стандарта — «краткосрочное» и «долгосрочное». Результатом работы по первому направлению стало принятие версии 2 стандарта H.263, в то время как результатом работы по второму направлению явилась разработка значительно более эффективной схемы кодирования видео, получившей рабочее название H.26L. С целью интеграции возможностей, предоставляемых проектом стандарта H.26L в стандарт MPEG-4 была образована совместная рабочая группа JVT (Joint Video Team), включающая экспертов групп MPEG и VCEG, задачей которой было принятие стандарта AVC, который носит название ITU-T H.264 и ISO MPEG4 часть 10.
Стандарт AVC позволяет реализовать в MPEG-4 степень сжатия и качество, недоступное ранее. Однако он предъявляет значительно более высокие требования как к кодеру, так и к декодеру (табл. 3).
В настоящее время на рынке присутствуют другие кодеки, имеющие сравнимые характеристики сжатия, например, кодек WMV9 фирмы Microsoft (www.microsoft.com) и кодеки VP6, VP7 фирмы On2 (www.on2.com). Преимуществом этих кодеков является сравнимое соотношение качества и степени сжатия при меньшей вычислительной сложности алгоритмов компрессии и декомпрессии, а также меньшая стоимость лицензирования. Распространение этих стандартов ограничивается инерцией слияния мультимедийных систем на основе ПК, локальных сетей и Internet, для которых в основном они применяются, с традиционными средствами распространения и воспроизведения контента — проводными и беспроводными трансляциями, телевизионной и видеотехникой.
Большое количество существующих платформ воспроизведения видео и стандартов сжатия делает неэффективной аппаратную реализацию кодека во многих применениях. Например, цифровая медиаприставка к телевизору (set-top box) может поддерживать несколько источников информации (кабельное телевидение, сеть, спутниковое телевидение) и соответствующих стандартов. Для реализации таких систем требуется гибкий механизм кодирования и декодирования.
Семейство цифровых медиапроцессоров (DM — digital media) TMS320DM64x фирмы Texas Instruments позволяет решить проблемы обработки различных протоколов сжатия медиаинформации в реальном масштабе времени. Семейство DM64x фирмы относится к линейке
процессоров C64x — самым производительным сигнальным процессорам с фиксированной точкой на платформе TMS320C6000. Процессоры DM64x построены на втором поколении архитектуры VelociTI со сверхдлинным командным словом (VLIW) — VelociTI.2, разработанной фирмой Texas Instruments.
Ядро процессоров семейства C64x имеет 64 регистра общего назначения разрядности 32 бита и 8 независимых функциональных модулей — 2 умножителя с 32-разрядным результатом и 6 арифметико-логических устройств (АЛУ).
В архитектуру VelociTI.2 по сравнению с VelociTI внесен ряд улучшений, в том числе новые инструкции, дополнительные функции модулей и связи между ними, расширяющие возможности параллельной обработки. Это позволяет повысить производительность в приложениях обработки аудио и видео. Помимо операций с 32/40-битными и упакованными 16-битными числами с фиксированной точкой VelociTI.2 поддерживает операции с 64-битными и упакованными 8-битными числами. Так, например, DM64x могут выполнять четыре 16-битных умножения с накоплением (MAC) за такт или восемь 8-битных умножений с накоплением за такт, позволяет на процессоре DM642 с частотой ядра 720 МГц достичь пиковой производительности 5760 MMAC. Также поддерживаются другие расширения системы
команд, позволяющие оперировать четырьмя 8-битными или двумя 16-битными упакованными числами, что является ключевым фактором достижения высокой скорости обработки потоков аудио и видео.
В настоящее время семейство процессоров DM64x включает процессоры DM640, DM641, DM642, а также недавно выпущенный процессор DM643, функционально являющийся упрощенным вариантом DM642. Основные характеристики приведены в таблице 4.
В архитектуре процессоров DM64x используется двухуровневый кэш. Кэш команд первого уровня (L1P) имеет объем 16 кбайт и организован как кэш с прямым доступом (direct-mapped), кэш данных первого уровня (L1D) тоже имеет объем 16 кбайт и организован как ассоциативный кэш с множественным доступом (set-associative). Кэш-память второго уровня объемом 256 кбайт (128 кбайт для процессоров DM640 и DM641) может использоваться как совмещенный кэш команд и данных, оперативная память или их комбинация.
Процессоры DM64x содержат следующие периферийные модули, большинство из которых характерно для процессоров серии C64x:
• 32/64 битный интерфейс с внешней памятью EMIF.
• Интерфейс I2C.
• Многоканальные буферизированные последовательные порты McBSP.
• Три 32 разрядных таймера общего назначения.
• Конфигурируемый пользователем внешний интерфейс, реализующий:
- 10/100 Мбит Ethernet MAC;
- 16/32-битный хост-интерфейс HPI; -32-разрядный PCI-интерфейс 33/66 МГц.
• 64-канальный контроллер прямого доступа к памяти EDMA.
Специализированные мультимедийные модули процессоров DM64x включают видеопорты, порт управления VCXO и многоканальный последовательный аудиопорт McASP. Видеопорты, аудиопорт McASP и последовательные
MPEG-4
1998-2001.
Н.263...Н263.2
1995-2000
1990 1992 1994 1996 1998 2000 2002 2004 2006
Рис. 1. Развитие стандартов сжатия видео
Компоненты и технологии, № 3'2GG5
Таблица 4 . Характеристики семейства DM64x
Тип Частота, МГц MMAC, пиковое ОЗУ, Мбайт Кэш L1, кбайт Кэш L2/03y, кбайт EMIF Поддержка внешней памяти DMA McBSP McASP C х PCI ы т р о С о део и В о > Ethernet MAC Таймеры Температурный диапазон, °С Питание ядра, В Питание ввода/вывода, В Корпус
TMS320DM643-600 600 4800 2 16+16 256 1, 64-бит Async SRAM, SB-SRAM, SDRAM ЕРМА, 64 канала 1 1 1 1, 32/ 16-бит 2, 20-бит двухкан. 10/100 3, 32-бит от 0 до 90 1,4 3,3 548FCBGA
TMS320DM643-500 500 4000 2 16+16 256 1, 64-бит Async SRAM, SB-SRAM, SDRAM ЕРМА, 64 канала 1 1 1 1, 32/ 16-бит 2, 20-бит двухкан, 10/100 3, 32-бит от 0 до 90 1,2 3,3 548FCBGA
TMS320DM642-720 720 5760 2 16+16 256 1, 64-бит Async SRAM, SB-SRAM, SDRAM ЕРМА, 64 канала 2 1 1 1, 32/ 16-бит 1, 32-бит PCI [66 МГц] 3, 20-бит двухкан, 10/100 3, 32-бит от 0 до 90 1,4 3,3 548FCBGA
TMS320DM642-600 600 4800 2 16+16 256 1, 64-бит Async SRAM, SB-SRAM, SDRAM ЕРМА, 64 канала 2 1 1 1, 32/ 16-бит 1, 32-бит PCI [66 МГц] 3, 20-бит двухкан, 10/100 3, 32-бит от 0 до 90 1,4 3,3 548FCBGA
TMS320DM642-500 500 4000 2 16+16 256 1, 64-бит Async SRAM, SB-SRAM, SDRAM ЕРМА, 64 канала 2 1 1 1, 32/ 16-бит 1, 32-бит PCI [66 МГц] 3, 20-бит двухкан, 10/100 3, 32-бит от -40 до 105, от 0 до 90 1,2 3,3 548FCBGA
TMS320DM641-600 600 4800 1 16+16 128 1, 32-бит Async SRAM, SB-SRAM, SDRAM ЕРМА, 64 канала 2 1 1 1, 16-бит 2, 8-бит однокан, 10/100 3, 32-бит от 0 до 90 1,4 3,3 548FCBGA
TMS320DM641-500 500 4000 1 16+16 128 1, 32-бит Async SRAM, SB-SRAM, SDRAM ЕРМА, 64 канала 2 1 1 1, 16-бит 2, 8-бит однокан, 10/100 3, 32-бит от 0 до 90 1,2 3,3 548FCBGA
TMS320DM640-400 400 3200 1 16+16 128 1, 32-бит Async SRAM, SB-SRAM, SDRAM ЕРМА, 64 канала 2 1 1 1, 8-бит однокан, 10/100 3, 32-бит от 0 до 90 1,2 3,3 548FCBGA
TMS320DM642 20-бит Видеопорт (VP0) 10-бит Видеопорт (VP0)
2 10-бит Видеопорта (VP0) MCBSP0 MCASP
L1 кэш инструкций 16 кбайт
Ядро ЦСП С64х
L1 кэш данных 16 кбайт
Ю
ш
ь
го
СП
Ov
Л
а\
Q
ч
—
20-бит Видеопорт (VP1)
2 10-бит Видеопорта (VP1)
10-бит Видеопорт (VP1)
MCBSP1
MCASP
20-бит Видеопорт (VP2)
2 10-бит Видеопорта (VP2)
о
2
>
PCI 66
HPI32
10/100 Ethernet MAC HPI 16
VIC (Управление VCXO)
EMIF 64 бита/133 МГц
Рис. 2. Структура DM642
порты МсБ8Р используют общее подмножество выводов.
Видеопорты процессоров БМ64х позволяют реализовать аппаратный ввод и вывод потоков цифрового видео в различных форматах и предоставляют возможности по преобразованию форматов.
Процессоры БМ640 и БМ641 содержат соответственно один и два 8-битных видеопорта. Процессоры БМ642 содержат три гибко настраиваемых 20-битных видеопорта, реализующих до шести входных и выходных видеопотоков. Каждый порт может быть сконфигурирован как два 8- или 10-битных порта или один 16- или 20-битный порт. Новый член семейства БМ64х — БМ643 — поддерживает два 20-битных видеопорта.
Видеопорты реализуют интерфейсы к распространенным видео кодерам и декодерам и поддерживают различные разрешения и стандарты. В режиме входа порты поддерживают:
• Частота ввода данных до 80 МГц.
• Два канала 8- или 10-битного цифрового видеопотока YCbCr 4:2:2 в формате ГГО^ БТ.656, что позволяет подключить цифровую видеокамеру напрямую или аналоговую камеру с использованием видеодекодера.
Один канал 16- или 20-битного цифрового видеопотока YCbCr 4:2:2 с раздельными компонентами Y и а Поддерживаются форматы 8МРТЕ 260М, вМРТЕ 274М, 8МРТЕ 296М, ГТи-БТ.1120 и другие, включая интерфейсы ^№601.
Горизонтальное масштабирование YCbCr 4:2:2 в YCbCr 4:2:0 и масштабирование с коэффициентом ? в 8-битных режимах 4:2:2. Интерфейс для двух каналов разрядностью до 10 бит или одного разрядностью до 20 бит неформатированного потока видеоданных от АЦП.
В режиме вывода видео поддерживаются: Частота вывода данных до 110 МГц.
Один канал непрерывного вывода видео YCbCr 4:2:2 в формате ГТИ-И БТ.656 с разрешением 8 или 10 бит.
Один канал 16 или 20-битного цифрового видеопотока в формате YCbCr 4:2:2 с раздельными компонентами Y иО. Поддерживаются форматы вМРТЕ 260М, вМРТЕ 274М, вМРТЕ 296М, ГТИ-БТ.1120 и другие. Горизонтальное масштабирование YCbCr 4:2:0 в YCbCr 4:2:2 и масштабирование с коэффициентом 2 в 8-битных режимах 4:2:2.
• Программируемое ограничение амплитуды выходных значений в форматах BT.656 и с раздельными компонентами Y и C.
• Один канал неформатированного потока разрядностью до 20 бит для прямого вывода на RAMDAC. Возможность синхронизации вывода по двум каналам.
• Возможность формирования требуемых временных характеристик развертки на основе внешнего тактового импульса.
В состав видеопорта входит буфер FIFO объемом 5120 байт. Буфер FIFO поддерживает конфигурации с разделением компонентов Y^Cr входного потока в отдельные параллельно работающие FIFO и обратно при вводе и выводе видеоданных. Таким образом осуществляется преобразование потока в формат, удобный для внутренней обработки. При работе видеопорта в двухканальном режиме FIFO разделяется между каналами.
Многоканальный последовательный аудиопорт McASP позволяет реализовать до 16 монофонических или 8 стереоканалов. Приемник McASP поддерживает синхронную последовательную передачу с разделением во времени (TDM). Передатчик McASP поддерживает синхронную последовательную передачу с разделением во времени и цифровой аудио-интерфейс (DIT) с поддержкой форматов S/PDIF, AES-3, IEC-60958, CP-430. Порт McASP поддерживает синхронизацию входных и выходных каналов, а также их независимое тактирование и настройку. Однако следует учитывать, что одновременно поддерживается только один (общий) формат данных на передачу для всех выходных каналов и один формат данных на прием для всех входных каналов.
В состав процессоров DM64x также входит модуль контроллера Ethernet 10/100 Мбит. Модуль состоит из контроллера канального уровня EMAC и контроллера ввода-вывода управляющих данных MDIO.
Модуль EMAC предоставляет следующие возможности:
• Стандартный интерфейс MII с устройствами физического уровня.
• Сбор статистики по стандарту IEEE 802.3.
• По 8 независимых каналов на прием и передачу.
Компоненты и технологии, № 3'2005
Таблица 5. Производительность различных кодеков на процессорах С64х
Кодек (тип) Кодирование Декодирование
Motion JPEG 18% (D1), 5,8% (CIF) 18% (D1), 5,8% (CIF)
MPEG-2 (главный профиль, главный уровень) 71% (D1) 21% (D1)
WMV9 (главный профиль)* 83% (D1) 33% (D1)
H.263 (базовый профиль) 13% (CIF) 3% (CIF)
H.264 (базовый профиль) 70% (D1) 30% (D1)
*) Бета версия
Данные приведены для формата 4:2:0 и скорости 30 кадров/с
Данные приведены по документу SPRT291A «TMS320C6414/15/16 Video Codec Performance»
• Каналы DMA с возможностью доступа к внешней и внутренней памяти.
• Локальная память 4K для хранения списка дескрипторов (позволяет настроить пересылку до 256 пакетов без участия процессора).
• Возможность аппаратной генерации CRC-пакета.
• Настройка режима приема широковещательных (multicast и broadcast) передач для каждого канала.
• Возможность включения одного канала в режиме получения всех пакетов (promiscuous mode).
• Аппаратное управление потоком.
Модуль MDIO реализует стандартный интерфейс управления устройствами физического уровня, дающий возможность подключения до 32 контроллеров физического уровня к DM64x.
Использование мощного вычислительного ядра семейства C64x позволяет реализовать эффективные кодеки основных стандартов, используемых для сжатия видеоинформации (табл. 5).
Достоинством системы команд семейства C6x является ее эффективность не только для решения задач обработки потокового видео и аудио, но и для реализации функций традиционного управляющего процессора общего назначения, таких как интерфейс пользователя и общее управление системой.
В качестве примера системы, использующей медиапроцессор DM64x, на рис. 3 рассмотрена структура медиаприставки (set-top box).
Средства поддержки разработки на основе процессоров DM64x, поставляемые Texas Instruments, включают в себя:
• Development Kits — отладочные платы (рис. 4);
• Code Composer Studio — среда разработки;
• Reference Frameworks — примеры проектов;
• XDAIS — набор правил разработки и спецификация интерфейса программных модулей;
• DSP/BIOS — операционная система реального времени;
• DSP Library, Image Library — бесплатные библиотеки функций ЦОС и функций обработки видео и изображений.
В целях упрощения разработок и сокращения затрачиваемых на них ресурсов компанией Texas Instruments была разработана технология eXpressDSP, в рамках которой существуют три основных компонента: среда разработки — Code Composer Studio; набор
MPEG-2
Decoder
SDRAM
------------1
Кабельный модем TI
Кабельный тюнер
или L DSL модем Л
Flash
SDRAM
DM642
Медиа-
процессор
ARM
Видео I кодер ,
Аудио
ЦАП
Загрузка
процессора
DM642
Свободно
Медиаприставка
Рис. 3. Применение DM64x в медиаприставках
Вспомогательное ПО
• Экранное меню
• Интернет браузер
• Media Player
• Кодирование
Декодирование потока H.264/MPEG-4 AVC
Декодирование і потока MPEG-2
стандартов написания ПО для TMS320 (XDAIS), DSP/BIOS, набор скелетных программ; база компонентов, созданных в рамках XDAIS, от третьих партнеров. В настоящее время база включает реализацию более 700 функций от 100 фирм.
Партнерами Texas Instruments, осуществляющими разработку алгоритмов кодирования аудио- и видеоинформации, являются On2, Real Video и Windows Media Technologies.
В области разработки аппаратной части с Texas Instruments сотрудничают такие фирмы как Ateme, Aware и UBVideo.
Одним из модулей любой видеосистемы является аудио-подсистема. В линейке продуктов TI существует большое количество решений для преобразования звуковой информации и усиления звука. Существует большой набор кодеков, позволяющих выполнять как цифроаналоговое, так и аналого-цифровое преобразование, имеющих стандартные последовательные интерфейсы данных, через которые производятся подключения к управляющим процессорам без внешней связующей логики. Данные устройства зачастую имеют множество аналоговых входов и выходов, что позволяет подключать к ним как звуковые усилители мощности со стандартными параметрами входного сигнала, так и головные телефоны. Так же существует возможность подключения всевозможных микрофонов и прочих источников аналогового звукового сигнала без использования схем предусиления (TLV320AICxx, TLV320DACx). Для усиления звукового сигнала компания предлагает ряд усилителей класса D. Преимуществом устройств такого класса является высокий КПД, что позволяет из-
бежать организации теплоотвода в усилителях, обеспечивающих выходные мощности в десятки ватт и реализованных на одной микросхеме (TPAx).
Необходимым элементом любой электронной системы является источник питания. Здесь у TI широкий спектр решений, способный удовлетворить любые требования приложений и вкусы разработчиков. В линейке продуктов присутствуют линейные регуляторы с малым падением напряжения (TPS786x, TPS778x, TPS701x и др); мониторы питания (TPS3829, TPS3123, TPS370x и др.); импульсные преобразователи с интегрированными ключами на кристалле (TPS54xxx и др), универсальные контроллеры, позволяющие строить мощные, а также специализированные источники питания (TPS40K и др); преобразователи, рассчитанные на большие выходные токи, выполненные в виде модулей (PTHxx050, PTHxx060, PTHxx010 и др) со встроенной функцией AutoTrack. На базе решений TI легко строить источники, поддерживающие набор различных напряжений с управлением последовательностью включения, что необходимо в системах с мощными процессорами и микросхемами программируемой логики, с различающимися напряжениями питания ядра и ввода-вывода. Также в линейке продуктов присутствуют становящиеся популярными решения для питания от Ethernet-сетей и обеспечения горячей замены (TPS329x, TPS249x, TPS237x и др). Более подробную информацию о существующих продуктах в области питания можно получить из периодического «Power Management Selection Guide» (номер документа — slvt145). ММ