Вход |  Регистрация
 
 
Время электроники Воскресенье, 24 сентября
 
 


Это интересно!

Новости


Обзоры, аналитика


Интервью, презентации

Ранее

Транскодирование аудио- и видеоданных для бытовой электроники

Обмен информацией между устройствами домашней сети или портативными мобильными устройствами должен обеспечиваться таким образом, чтобы любой контент мог просматриваться на устройствах в любое время и разными пользователями. Эту задачу решают специальные адаптивные устройства, основные функции которых, реализованные в виде одной системы на кристалле с использованием процессоров семейства DaVinci производства Texas Instruments, рассматриваются в этой статье.

Высококачественные микросхемы для аудиоприложений

В статье рассмотрены высококачественные микросхемы (приемопередатчики S/PDIF, SRC-преобразователи, цифровые сигнальные процессоры семейства SHARC, ЦАП и ОУ), ориентированные на применение в аудиоаппаратуре высокого класса различного назначения.

Вопросы качественной передачи голоса по IP-сетям: джиттер, задержка и эхо. Часть 2*

Во второй части статьи рассматриваются такие вопросы как джиттер, факторы задержки передачи голоса по телефонным IP-сетям, причины возникновения эха и методы его подавления. Большое внимание уделено вопросам субъективного и объективного тестирования качества передаваемой речи в соответствии с рекомендациями ITU. * Первая часть статьи была опубликована в «ЭК» №11, 2008.

 

25 мая

Обработка видеосигнала высокой четкости

В настоящее время в видеосистемах повсеместно происходит замена систем стандартной (SD) четкости изображений на высокую четкость (HD). Количество пикселов в кадре существенно увеличивается, соответственно повышается сложность проектирования систем обработки видеоизображения — кодирование и декодирование в HD-системах требует гораздо большей производительности, поэтому одного сигнального процессора уже недостаточно. В статье рассматриваются варианты построения таких видеосистем.



Введение

Методы сжатия видеопотока в системах со стандартным и высоким разрешением различаются. В HD-системах используется стандарт H.264, именуемый также MPEG-4, часть 10, или AVC (Advanced Video Coding). Он обеспечивает высокую степень сжатия видеопотока при сохранении хорошего качества изображения.
В качестве основы для системы обработки изображения могут использоваться сигнальные процессоры (DSP), матрицы FPGA, а также специализированные и заказные СБИС.
Исторически сложилось так, что видеосистемы строились на специализированных СБИС. Однако их недостаток в том, что они производят сжатие по установленному алгоритму и не могут динамически подстраиваться под нужды пользователя, что является необходимым условием нормального функционирования системы высокой чёткости изображения. Кроме того, их стоимость довольно велика.

DSP

Сигнальные процессоры очень хорошо подходят для обработки изображения. Однако современным DSP, работающим на частоте 1 ГГц, не хватает быстродействия. Производительность системы определяется не только скоростью сжатия, но и скоростью выполнения пред- и постобработки (масштабирование, преобразование развёртки, фильтрация, преобразование цветов и т.д.). Часто эти процедуры занимают больше времени, чем собственно процесс сжатия.
Если один сигнальный процессор не справляется, можно использовать несколько. В этом случае будет обеспечено требуемое быстродействие и гибкость системы, но такое решение оказывается дорогим из-за постоянно растущей стоимости кремния. К тому же с ростом числа процессоров усложняется организация их взаимо­связи.
К интересному решению прибегла компания Texas instruments. Семейство процессоров TMS320DM64xx, так называемые цифровые медийные системы на кристалле, созданные по технологии DaVinci, представляет собой мощное вычислительное средство с двумя процессорными ядрами. Одно из них — 364,5-МГц ARM926 — хорошо известное 32-разрядное процессорное RISC-ядро, а другое — 729-МГц C64x+, которое представляет собой ядро процессора цифровой обработки сигнала.
Уровень производительности многих сигнальных процессоров был бы выше, если бы они могли работать с информационным каналом произвольной ширины, например 10 бит. В большинстве DSP ширина канала должна быть двоичной, то есть для 10-битного потока данных используется канал шириной 16 бит.
Это ограничение удалось устранить компаниям Silicon Hive и Tensilica, которые разработали процессорные ядра с практически произвольной шириной потока данных. Такие процессоры подходят для построения видеосистем с высоким разрешением.

FPGA

Гораздо большей гибкостью обладают FPGA, поэтому они подходят для обработки видеосигнала с высоким разрешением. Кроме того, крупные производители, например Altera и Xilinx, предлагают множество инструментов и готовых решений для облегчения проектирования. На матрицах FPGA можно реализовать системы обработки изображения для видеонаблюдения, проведения видеоконференций, а также медицинских и военных применений.
Матрицы FPGA программируются так же, как и СБИС для видеосистем со стандартном разрешением кадра, и обладают эквивалентной функциональностью. Преимущество FPGA перед специализированными СБИС в том, что их легко модернизировать и потому нет риска, что система быстро устареет. Компания Altera предлагает пакет Video and Image Processing Suite, в составе которого имеется среда DSP Builder для создания на FPGA блоков обработки видеосигнала. Программирование производится либо на языке С, либо VHDL или Verilog. Существенно упрощает проектирование поддержка инструментов MathWorks (MATLAB и Simulink) и Quartus II. Алгоритм работы системы описывается в MATLAB, затем она моделируется в Simulink и переносится для дальнейшего проектирования в Quartus II.
Рассмотрим некоторые особенности проектирования, на которые следует обратить внимание.
Во-первых, если отдельные блоки видеосистемы разрабатываются разными отделами, то они должны быть совместимыми. Для этого сначала необходимо принять единый стандартный интерфейс взаимодействия блоков. Он должен быть открытым (непатентованным) и содержать минимум дополнительных функций, усложняющих проектирование.
Компания Altera в качестве такого стандарта предложила протокол Avalon Streaming Video (Avalon-ST), по которому осуществляется пакетная пересылка и контроль данных от одного блока обработки к другому. Примечательно, что данный стандарт не ограничивает разработчика в использовании FPGA других производителей.
Протокол Avalon-ST содержит инструкции по разбиению каждого типа данных на пакеты видеоданных и проверочной информации. При отсутствии необходимости биты проверочной информации могут сопровождать не каждый пакет с видеоданными.
В информационном пакете содержатся два набора параметров: статические (биты цветовой плоскости, последовательность цветовых плоскостей), которые не меняются в процессе выполнения программы, и динамические (размер кадра, длина поля и формат развертки).
Для более тщательного контроля работы видеосистемы требуется дополнительная логическая схема или встроенный процессор. Его взаимодействие с блоком обработки и основным процессором осуществляется через интерфейс Avalon-MM. Дополнительная контрольная схема программирует функции видеообработки, а блок обработки выставляет прерывания при возникновении исключительного события.
При разработке следует обратить внимание на готовые IP-блоки. Все видеосистемы помимо специальных операций выполняют ряд стандартных (захват сигнала, предварительная обработка, сопряжение с интерфейсами, шумоподавление и т.д.). Часто производитель FPGA предлагает уже отлаженные блоки, выполяющие данные стандартные операции. Использование при проектировании системы этих модулей позволяет не только заметно сократить время разработки, но и избежать типичных ошибок.
На рисунке 1 показана блочная структура видеосистемы. Если система содержит несколько процессоров или модулей памяти, следует обеспечить связь и правильный обмен между ними. Для этого существуют такие инструменты как, например, SOPC Builder компании Altera. Их применение также помогает сократить время разработки. 

Рис. 1. Функциональная схема видеосистемы

Системы DSP+FPGA

DSP-процессор предназначен в первую очередь для выполнения алгоритмов обработки видеосигнала, а FPGA — для построения связующей логики. Оптимальным решением может стать сочетание процессора и матрицы FPGA на одной платформе.
Рассмотрим пример. При проведении стабилизации изображения для согласования двух кадров вычисляется некий параметр, называемый суммой абсолютной разницы SAD. Если ядро системы содержит только DSP-процессор, то расчет SAD может занять до 65% процессорного времени. Если учесть, что это не единственная задача, которую выполняет процессор, то выходит, что он полностью загружен. Применение FPGA позволяет разгрузить DSP — матрица посчитает SAD в 10 раз быстрее. Это освободит процессор для других задач.
Однако следует иметь в виду, что при переносе задачи с DSP на FPGA между ними будет происходить обмен данными. Поэтому при выборе задачи, которую необходимо снять с процессора, требуется удостовериться, что объём пересылаемых данных будет не очень большим, иначе процедура обмена займёт много времени, и выигрыша не будет.
На FPGA целесообразно выполнять такие задачи как медианная фильтрация или выделение признаков. Можно руководствоваться следующим принципом: если вычисления требуют выполнения сотен миллионов умножений с накоплением в секунду, то их проводят на сигнальном процессоре; если таких операций больше миллиарда в секунду, то на FPGA.
Отсюда вытекает вторая важная задача — сопряжение матрицы с процессором и обеспечение качественного обмена данными между ними. На примере платы Avnet посмотрим, как эта задача решается. Платформа для построения системы видеонаблюдения компании Avnet Electronics Marketing содержит два блока обработки (см. рис. 2). Один построен на сигнальном процессоре DM6437 (Texas Instruments), второй — на FPGA Spartan-3A (Xilinx) .

Рис. 2. Видеосистема на основе DSP и FPGA

Процессорный блок более функционален, чем блок FPGA, и имеет несколько аудио- и видеопортов. В нем содержится встроенный ПЗС-контроллер, 4 видеоЦАП, шифратор видеосигнала, модуль изменения размера изображения и аппаратное обеспечение для дисплея.
Для сопряжения DSP и FPGA с наименьшим объемом передаваемых данных предусмотрено несколько следующих интерфейсов.
– I2C — двухпроводной интерфейс для пересылки инструкций и контрольных данных. Максимальная скорость обмена 400 Кбит/с.
– EMIF — асинхронный 8-битный интерфейс, обеспечивающий лёгкий доступ DSP к внешней памяти и периферийным устройствам, расположенным на FPGA.
– VLYNQ — последовательный высокоскоростной интерфейс, обеспечивающий дуплексный пакетный обмен между сигнальным процессором и FPGA. Связь происходит по четырём дифференциальным парам со скоростью 40 Мбайт/с (при шифровании 8b/10b).
– VPFE, VPBE — однонаправленные интерфейсы для передачи цифровых видеосигналов в широкой полосе частот между FPGA и DSP. Протокол VPFE обеспечивает пересылку данных с FPGA на DSP по 8- или 16-битному каналу на частоте 75 МГц в формате BT.656. В обратном направлении пересылка происходит по параллельному 24-битному интерфейсу VPBE.
Для упрощения проектирования компания Avnet выпускает пакет поддержки BSP. В него входят инструменты для моделирования (MathWorks), драйверы сопряжения DSP и FPGA (интерфейсы VPFE VPBE VLYNQ), а также примеры программирования этих интерфейсов и внешних устройств расширения.
Видеосистема проектируется и отлаживается в MathLab, а затем автоматически разбивается на модули DSP и FPGA, которые программируются раздельно. Для работы с сигнальным процессором используется среда Code Composer Studio, RealTime Workshop и эмулятор JTAG. Программирование FPGA производится в среде System Generator (Xilinx). Готовая система отлаживается
в ISE Foundation, которая входит в пакет ISE Design Suite (Xilinx).

Заключение

Современные системы обработки видеосигнала сейчас редко строятся на специализированных или заказных СБИС, поскольку они быстро устаревают и обходятся слишком дорого при небольших тиражах. Вместо них используются FPGA или сигнальные процессоры либо их комбинация.
DSP-процессоры имеют развитую периферию, поэтому они более функциональны, чем FPGA. С другой стороны, FPGA стоят дешевле и во многих случаях быстрее проводят вычислительные операции. Кроме того, на них проще реализовать многопотоковую обработку.
Выбор ядра видеосистемы зависит от её назначения и сложности. Для большинства многофункциональных систем наиболее оптимальным решением, скорее всего, окажется использование двуядерной архитектуры, в которой сигнальный процессор осуществляет управление, а FPGA — выполняет вычисления.

Литература

1. www.videsignline.com/207100089;jsessionid=5NIAIVHEVQM44QSNDLOSKH0CJUNN2JVN?pgno=1
2. www.dspdesignline.com/showArticle.jhtml?articleID=212201288&cid=NL_dspdl
3. www.dspdesignline.com/215800570;jsessionid=WFVPXN4KCL1HEQSNDLPSKH0CJUNN2JVN?pgno=1
4. www.videsignline.com/187201092;jsessionid=CKDE12TBKYBOSQSNDLOSKH0CJUNN2JVN?pgno=1
5. www.videsignline.com/showArticle.jhtml;jsessionid=CKDE12TBKYBOSQSNDLOSKH0CJUNN2JVN?articleID=202601707



Вы можете скачать эту статью в формате pdf здесь.
Оцените материал:

Автор: Екатерина Самкова, научный редактор, журнал «Электронные компоненты»



Комментарии

0 / 0
0 / 0

Прокомментировать





 

Горячие темы

 
 




Rambler's Top100
Руководителям  |  Разработчикам  |  Производителям  |  Снабженцам
© 2007 - 2017 Издательский дом Электроника
Использование любых бесплатных материалов разрешено, при условии наличия ссылки на сайт «Время электроники».
Создание сайтаFractalla Design | Сделано на CMS DJEM ®
Контакты