|
А. Петровский
Процессор на базе ЦПОС/ПЛИС для кодирования аудиосигналов в реальном времени
Системы компрессии одномерных и двумерных сигналов, в основу которых положен банк анализирующих/синтезирующих фильтров, обладают высоким коэффициентом сжатия и качеством декодированных сигналов [1]. Учитывая нестационарную и негаусовскую природу обрабатываемых сигналов (речь, аудиосигналы), возникает необходимость построения банка фильтров, который перестраивается в соответствии со свойствами входного сигнала и с учётом восприятия его человеком [1].
Введение
Реализовать банк фильтров с неравными полосами пропускания можно на основе пакета дискретного вейвлетного преобразования (ПДВП) [2,3], которое способно достаточно гибко изменять структуру банка фильтров (рис. 1). Критерии оптимизации, базирующиеся на энтропии (временная, перцептуальная), являются удобными для выбора эффективной структуры ПДВП в системах кодирования аудиосигналов, так как наиболее адекватно описывают информационные свойства представления заданного сигнала и минимизируют скорость передачи при обеспечении высокого качества восприятия человеком декодированного сигнала [4-6].
Рисунок 1. Примеры структур ПДВП
Построение адаптивной системы компрессии требует значительных вычислительных затрат. Специализированные устройства, базирующиеся на двух или более процессорах цифровой обработки сигналов (ЦПОС), занимают доминирующее положение в задачах компрессии аудиосигналов. Однако, более прогрессивным направлением для решения проблемы в полном объёме является применение динамически перестраиваемого процессора, базирующегося на ЦПОС и программируемых логических интегральных схемах (ПЛИС) (в частности, FPGA — Field Programmable Gate Arrays) как единого ядра системы [4].
Динамически реконфигурируемая структура процессора
Предлагается динамически реконфигурируемая система для выполнения операций кодирования/декодирования аудиосигналов в реальном времени. Структура процессора состоит из двух частей — ЦПОС и реконфигурируемого процессора на ПЛИС: мониторинг работы алгоритмов кодирования/декодирования; обработка данных каждой полосы (вычисление: порогов маскирования, энтропии структуры дерева ПДВП, перцептуальной энтропии); управление структурой дерева ПДВП во время обработки (анализ/синтез), а также реконфигурируемой частью процессора; нелинейное квантование и кодирование/декодирование вейвлетных коэффициентов возлагается на ЦПОС; вычисление адаптивного ПДВП (прямого и обратного) осуществляется с помощью реконфигурируемого процессора.
Реализация вейвлет-фильтра высокого порядка на ПЛИС на основе распределённой арифметики становится невозможной из-за экспоненциально возрастающего размера требуемой памяти (соответственно возрастает количество используемых логических блоков (ЛБ) в ПЛИС). Методы сокращения размера памяти за счёт симметричности коэффициентов фильтра применимы при использовании биортогональных вейвлетных функций, а коэффициенты фильтров ортогональных вейвлетных функций несимметричны. Применение последовательного включения умножителя и накапливающего сумматора для построения банка вейвлетных фильтров позволяет сократить количество требуемых ЛБ до 1,5 ЛБ на порядок фильтра. При этом сохраняется возможность обрабатывать входные потоки данных, поступающих со скоростью от 100 до 1000 кГц. Данная архитектура позволяет эффективно реализовывать банки вейвлетных фильтров высокого порядка, например, вейвлет-фильтров семейства Даубеши 20 порядка (40 коэффициентов).
Таблица 1.
Уровни дерева |
L |
Размер памяти |
АПДВП |
2 |
512x16 |
1 |
3 |
256x16 |
2 |
3 |
128x16 |
3 |
4 |
64x16 |
4 |
5 |
32x16 |
5 |
4 |
16x16 |
6 |
3 |
8x16 |
На рис. 2 показана динамически реконфигурируемая поточная схема вычисления 8-уровневой структуры дерева адаптивного ПДВП, состоящая из 8 процессорных модулей (ПМ) и 7 модулей буферизации и переключения (МБП).
Рисунок 2. Схема динамически реконфигурируемого процессора
В каждом ПМ входные отсчёты (входной сигнал/промежуточные результаты) x(k) фильтруются вейвлет-фильтрами нижних и верхних частот с последующей децимацией на 2. Результатом вычисления в ПМ являются две выходные последовательности отсчётов v(k) и w(k), которые записываются в память МБП (или передаются ЦПОС). Объём и размер памяти в МБП изменяется от уровня к уровню структуры ПДВП (таблица). Элементы памяти организованы по принципу FIFO (First Input, First Output). Элемент задержки в ветви фильтра верх-них частот необходим для установления синхронного чередования циклов записи и чтения. С ростом структуры дерева ПДВП (рис.~1) количество ветвей с каждым новым уровнем удваивается, скорость поступления данных в этих ветвях соответственно сокращается в два раза. МБП позволяют, начиная со второго уровня ПДВП, использовать один и тот же ПМ на ступени поточного процессора для обработки поочерёдно поступающих потоков данных, осуществлять временное хранение, передачу данных для следующей ступени процессора и обеспечение записи результатов обработки в ЦПОС.
Сигналы управления реконфигурируемой поточной схемы, формируемые ЦПОС в соответствии с ходом вычислительного процесса и критериями адаптации структуры дерева ПДВП, следующие:
- Sync— сигнал синхронизации вычислительного процесса;
- Level— сигнал выбора ПМLevelи БПМLevel, где Level = 0...7;
- ModSel— сигнал активизации модуля, состоящего из nОЗУ иnПере-ключ., где n = 1...L, L— максимальное значение элементов ОЗУ для каждого уровня (таблица);
- R/W — сигнал чтения/записи в/из памяти.R/W = 0 — чтение, R/W = 1 — запись;
- Out— сигнал выборки результатов для квантования и дальнейшего кодирования.
Заключение
Поточный принцип построения динамически реконфигурируемой части процессора на базе ЦПОС/ПЛИС позволяет организовать параллельно-поточную обработку сразу нескольких уровней структур ПДВП для последовательно следующих фреймов входного аудиосигнала. Временная диаграмма процесса обработки для трёх входных фреймов показана на рис. 3, где Т — интервал времени вычисления первого уровня дерева ПДВП. Смещение процесса обработки структур деревьев ПДВП друг относительно друга на 1 уровень делает возможным кодировать только изменения структуры дерева ПДВП.
Рисунок 3. Временная диаграмма процесса обработки
Литература
- Painter T., Spanias A. Perceptual Coding of Digital Audio // Proceedings of the IEEE. April 2000. Vol. 88. № 4. P. 451–513.
- Petrovsky Al.A. Multi-DSP based hardware platform for wavelets and filter banks // Proc. of IWSSIP. June 1999. Bratislava. Slovakia. P. 111–114.
- Bielawski K., Petrovsky Al.A. Dynamic non-uniform filter bank constructing algorithms for reconfigurable speech processing sys-tem based on the FPGA-device and TMS320C31 // The 3rd European DSP education and research conference. France. 20-21 Sept. 2000. 8 p.
- Petrovsky Al., Perovsky A.A., Audio coding with a masking threshold adapted wavelet packet based on run-time reconfigurable processor architecture // AES 110th Convention, pre-print 5298. 12-15 May 2001. Amsterdam. The Netherlands.
- Petrovsky Al. Perceptually optimized time-varying wavelet packet decomposition and its applications in acoustic signal processing // 17th ICA, 2-7 Sept. 2001. Rome. Italy. 2 p.
- Johnston J.D., Transform coding of audio signals using perceptuals noise criteria, IEEE Trans. On Select., Areas Commun. Vol. 6. Feb. 1988. P. 314–323.
|