Обработка сигналов в системах телекоммуникаций
ЗАО НТЦ «Модуль»
Декодирование цифрового звука является одной из ключевых функций устройств приема цифрового телевизионного сигнала. Качественное выполнение данной задачи определяет потребительские свойства устройства. В данном докладе приводится опыт практической реализации декодера аудио сигналов на отечественной СБИС декодера цифрового телевизионного сигнала К1879ХБ1Я.
Структура и характеристики СБИС ДЦТС К1879ХБ1Я

Рис. 1. Структура СБИС ДЦТС
В основе системы на кристалле декодирования и обработки аудио и видео информации для устройств цифрового телевидения лежит центральный процессор ARM1176JZF-S (см. рис. 1). Обмен данными в системе осуществляется по шинам данных в соответствии со спецификацией AMBA 3.0 AXI.
Основными преимуществами ядра ARM1176JZF S являются: производительная архитектура версии v6, наличие интегрированных в ядро кэшей команд и данных и сверхоперативной памяти команд и данных TCM (Tight Coupled Memory), поддержка новейшего формата шины – AMBA 3.0 AXI, наличие сопроцессора для работы с данными в формате с плавающей точкой. Ядро поддерживает работу с 64-разрядными данными.
Взаимодействие между отдельными устройствами системы обеспечивается настраиваемой матрицей коммутации (interconnect matrix unit). Матрица коммутации осуществляет возможность одновременной передачи данных от нескольких источников к нескольким приемникам. В том числе, используется пакетный режим передачи данных и возможность одновременной передачи нескольких пакетов данных с чередованием данных из разных пакетов от разных источников.
Многоканальный контроллер прямого доступа в память (ПДП) обеспечивает загрузку данных в требуемые области памяти. Система использует иерархическую многоуровневую систему памяти для максимальной загрузки данными всех вычислительных устройств системы.
Система памяти содержит четыре банка внутренней памяти общим объемом 8 Мбит, два интерфейса с внешней динамической памятью типа DDR2, интерфейсы с внешней flash памятью. Такая конфигурация в сочетании с кэшем команд и даных, памятью TCM процессора ARM обеспечивает иерархическую систему памяти с высокой пропускной способностью.
Видеопроцессор включает мультистандартный блок декодирования видео сигнала, 2D графический ускоритель и видеоконтроллер высокого разрешения с поддержкой функций масштабирования и наложения графических и видео слоев.
Аудиопроцессор содержит ЦПС на основе ядра NeuroMatrix, позволяющий программно решать задачи декодирования аудио сигнала. Многоканальный аудиоконтроллер поддерживает выдачу аудио сигнала по интерфейсам I2S и S/PDIF.
Цифровой интерфейс HDMI с поддержкой функции HDCP обеспечивает возможность построения устройств без использования дополнительных внешних компонент в аудио и видео тракте.
Система содержит DVB процессор, включающий: демультиплексор транспортного потока TSP, осуществляющего разбор транспортного потока от нескольких источников, криптопроцессор, поддерживающий основные алгоритмы условного доступа, в том числе, CSA, DES, 3DES. Возможно подключение внешних модулей условного доступа по интерфейсу DVB-CI и работа со смарт-картами. Уникальные для микросхемы ключи хранятся в однократно программируемом ППЗУ.
Многочисленные коммуникационные интерфейсы обеспечивают возможность построения на базе описываемой микросхемы линейки устройств с различными потребительскими свойствами используя, при этом, минимальное количество дополнительных микросхем.
Аудиоподсистема СБИС
Решение задач декодирования и вывода аудио сигналов решается при помощи аудиоподсистемы СБИС. Она включает ядро цифрового процессора сигналов NMC3 и многоканальный аудиоконтроллер. Задача декодирования аудио выполняется путем распределения вычислительной нагрузки между ядром ЦПС и ядром центрального процессора.
Основная цель переноса процесса декодирования на ЦПС заключается в разгрузке ЦП для выполнения других системных функций.
Общий тракт обработки аудио выглядит следующим образом. Аудио данные поступают в составе цифрового телевизионного сигнала на демультиплексор транспортного потока. Там поток аудиосигнала выделяется в отдельный элементарный поток и размещается во внешней системной памяти EM0. Выполняется декодирование аудио потока по заданному алгоритму, причем, процесс декодирования распределяется между ЦП и ЦПС, как описано далее. Результат декодирования размещается во внешней памяти EM0. Далее, при помощи многоканального аудиоконтроллера аудио данные выдаются через цифровой аудиоинтерфейс, либо направляются для выдачи в HDMI трансмиттер.
Управление обработкой и передачей аудио осуществляется через центральный процессор. Используется следующая структура программного обеспечения. Используется операционная система Linux. Взаимодействие между ЦП и ЦПС осуществляется при помощи драйвера ЦПС, взаимодействие с аудиоконтроллером осуществляется драйвером, совместимым со спецификацией ALSA. Тракт обработки аудио реализован в виде компонентов медиаконвейера GStreamer. Это же ПО осуществляет синхронизацию вывода аудио и видео данных.
Распределение вычислительных задач между ЦП и ЦПС
Для оптимизации вычислений производилась процедура распределения вычислительных затрат между ЦП и ЦПС для задачи декодирования аудио.
Выполняется она следующим образом. Осуществляется выполнение задачи декодирования аудио для тестового набора данных полностью на ЦП. Выполняется профилирование выполнения с определением функций, наиболее критичных к времени исполнения. Выполняется реализация данных функций на ЦПС.
Таким образом, могут быть решены несколько задач. Во-первых, перенос исполнения наиболее ресурсоемких функций на ЦПС разгружает ЦП для выполнения других задач. Во-вторых, возможно ускорение исполнения задачи при переносе ее на ЦПС. В-третьих, возможно снижение удельного энергопотребления системы, затрачиваемого на решение задачи декодирования аудио.
Определив время выполнения задачи декодирования некоторого объема аудио данных в TD, время выполнения критичных функций на ЦП как TCPU, время выполнения остальных функций на ЦП как TMINOR, время выполнения критичных функций на ЦПС как TDSP, получим следующее.
Исходное время исполнения TDCPU = TCPU + TMINOR
Время исполнения после переноса на ЦПС TDCPUDSP = TDSP + TMINOR + TTRANFER – TOVERLAY,
где TTRANFER – время, затрачиваемое на передачу данных и организацию взаимодействия между ЦП и ЦПС, а TOVERLAY – время параллельного исполнения вычислений на ЦП и ЦПС, когда такое распараллеливание возможно.
В результате, получаем следующие качественные величины.
Коэффициент разгрузки ЦП KCPU = (TMINOR + TTRANFER) / TDCPU
Коэффициент ускорения вычислений KACCEL = TDCPU / TDCPUDSP
Коэффициент снижения энергопотребления системы KPOWER = (TCPU * KPCPU) / (TDSP * KPDSP),
где KPCPU и KPDSP удельные коэффициенты энергопотребления ЦП и ЦПС.
Экспериментальные результаты
В ходе исследований был исследован алгоритм декодирования аудио AC-3 в виде его реализации a52b.
Результаты профилирования алгоритма приведены в таблице 1. Было выявлено, что подавляющую часть вычислительных ресурсов (~30%) потребляет функция a52_imdct_512 , которая и была перенесена на ЦПС. Для выполнения этой функции в режиме реального времени достаточно частоты ЦПС в 35 МГц, при частоте же 324 МГц функция a52_imdct_512 загрузит ЦПС примерно на 10-15% , что оставляет достаточно ресурсов и для переноса других операций с ЦП. Таким образом, вычисление процедуры модифицированного косинусного преобразования при одинаковой тактовой частоте быстрее чем на ARM в три раза. В результате же распределения исполнения задачи между ЦП и ЦПС загрузка ЦП снижена на 31%, а общее время вычислений сокращено на 20%.
Таблица 1. Результаты профилирования
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Учитывая удельные коэффициенты энергопотребления ЦП в 850мВт и ЦПС в 120мВт, получаем KPOWER = 21, что означает более чем двадцатикратное снижение мощности потребления при проведении вычислений функции a52_imdct_512. Общее энергопотребление, затрачиваемое на декодирование аудио, снижено, при этом, на 28%.
Данное исследование показывает эффективность реализации алгоритмов декодирования аудио путем переноса критичных к вычислительным ресурсам функций на ЦПС.
страница 1 ... страница 2страница 3страница 4страница 5
скачать
Другие похожие работы: