z- Преобразование, ДПФ и цифровые фильтры Презентация лекции по курсу «Общая теория связи» © Д.т.н., проф. Васюков В.Н., vasyukov@edu.nstu.ru Новосибирский государственный технический университет, Новосибирск, пр. К. Маркса, 20 Факультет Радиотехники и электроники Кафедра теоретических основ радиотехники Было установлено, что КИХ-цепь умножает спектральную плотность входного сигнала на полином: N 1 j j j n Y (e ) X (e ) bne n 0 Предположим, что входная последовательность имеет конечную длину М, тогда M 1 j j n X (e ) xne n 0 Выходная последовательность имеет спектральную плотность снова в виде полинома степени M+N-2, причем коэффициенты полинома (в количестве M+N-1) находятся как свертка 2 Свертка последовательностей заменяется умножением полиномов, а в случае бесконечных последовательностей рядов Im z X (e j ) x[n] e j n e j n Re z Аналитическое продолжение на комплексную плоскость X ( z) x[n] z 1 n n ПФ – это сужение z-преобразования на 1-окружность 3 Для сравнения здесь показаны модули z-преобразования и преобразования Фурье последовательности из трёх отсчетов 4 z-Преобразование сходится не для всех последовательностей и не во всех точках комплексной плоскости. Совокупность точек z-плоскости, в которых сумма ряда конечна, называется областью сходимости z-преобразования данной последовательности. При нахождении z преобразований некоторых последовательностей используется известная формула суммирования геометрической прогрессии 1 a 1 a, a 1 n0 n знак равенства нельзя понимать буквально! 5 n Для экспоненциальной последовательности x[n] a u[n] z-преобразование имеет вид X ( z) a n0 n n z 1 1 n (az ) n0 1 1 1 az 0.8 1 ; 0.6 hn 0.4 0.2 3 4.74810 z X ( z) , z | a | za 0 0 5 10 15 n 15 АЧХ фильтра НЧ 6 x[n] a nu[n] Поведение z-образа экспоненциальной последовательности 1 1 0.8 0.6 hn 0.4 0.2 3 4.74810 0 0 5 10 15 n 15 АЧХ фильтра НЧ 7 z-образ последовательности – суммы двух затухающих комплексных экспонент e j1n e j1n АЧХ полосового фильтра (дискретный аналог колебательного контура) 8 Основная теорема алгебры: N 1 k 0 1 bk z k b0 1 c1z 1 1 c2 z 1 ... 1 cN 1z 1 M 1 r 1 ar z r 1 d1z 1 1 d2 z 1 ... 1 d M 1z 1 Поэтому передаточная функция полностью определяется набором корней числителя (нулей ПФ) и знаменателя (полюсов ПФ) N 1 H ( z ) b0 Mk 11 1 ck z 1 r 1 1 d r z 1 9 Например, нуль-полюсная диаграмма КИХ-цепи содержит только нули: N 1 H ( z ) b0 1 ck z 1 k 1 На самом деле полюсы имеются, но все они сосредоточены в точке 0; такие полюсы принято не обозначать на диаграмме. Расположение нулей говорит о свойствах цепи даже больше: например, эта диаграмма соответствует КИХ-цепи с вещественной ИХ (диаграмма симметрична относительно вещественной оси). Кроме того, эта цепь имеет линейную ФЧХ (нули симметричны относительно 1-окружности): сi 1/ c j 10 Например, нуль-полюсная диаграмма БИХ-цепи содержит и нули, и полюсы: На самом деле имеются еще полюсы и нули в точках 0 и ∞, их принято не обозначать на диаграмме. Эта диаграмма соответствует БИХцепи с вещественной ИХ (диаграмма симметрична относительно вещественной оси). Кроме того, эта цепь устойчива, т.к. все её полюсы (их в данном случае два) находятся внутри 1-окружности. Расположение нулей на устойчивость не влияет, однако влияет на вид АЧХ и ФЧХ. 11 Дискретное преобразование Фурье Если последовательность и ИХ заданы в виде замкнутых выражений и существуют их преобразования Фурье (сходятся соответствующие ряды), то свертка может быть найдена, как результат обратного преобразования Фурье, примененного к произведению Фурье -образов . Y (e j ) H (e 1 y[n] 2 j Y (e ) X (e j )e j j n ) d В практике обработки сигналов этого не бывает; поэтому встает вопрос о вычислении преобразований (z- или Фурье) 12 Очевидно, что вычислить преобразование можно только для последовательности конечной длины и лишь в конечном множестве точек z-плоскости (в противном случае потребовалось бы выполнить бесконечное количество арифметических операций). X ( z) N 1 x[n] z n n0 Для того чтобы однозначно задать полином степени (N-1), например, с помощью интерполяционной формулы Лагранжа, достаточно указать значения этого полинома в N различных точках z-плоскости. Эти точки можно выбрать произвольно 13 Из соображений удобства вычислений наиболее подходящим является равномерное расположение точек на 1-окружности 2 j k zk e N , k 0, N 1 zk 1 N 6 j 2 k X ( zk ) X e N N 1 n0 2 j kn x[n] e N X [k ] N 1 n0 2 j kn x[n] e N , k 0, N 1 14 Таким образом, для последовательности длины N вычисляется также последовательность длины N спектральных коэффициентов. Это дискретное преобразование Фурье (ДПФ). N 6 Это дальнейшее сужение z-преобразования на конечное множество точек X [k ] N 1 2 j kn x[n] e N , k 0, N 1 n0 2 N 1 j kn X [k ] e N , k 1 x[n] N k 0 0, N 1 15 Итак, возникает принципиальная возможность применения спектрального метода для фильтрации дискретных сигналов в частотной области. В самом деле, если вычислить ДПФ для входного сигнала и для ИХ фильтра, то их произведение, казалось бы, должно совпадать с ДПФ выходного сигнала. Однако это справедливо лишь для преобразований Фурье: Y (e j ) H (e j ) X (e j ) Механическое применение того же принципа к ДПФ приводит к грубейшей ошибке. Формально выполнить умножение можно: Y k H k X k , k 1, N 1 16 Y k H k X k , k 1, N 1 В действительности отсчеты ДПФ входного сигнала (их N штук) – это форма представления спектральной плотности, которая имеет вид полинома степени (N-1). КЧХ фильтра - это еще один полином такого же порядка. Но тогда их произведение – это полином степени (2N-2), что соответствует последовательности длины (2N-1), и для его точного представления необходимо по крайней мере (2N-1) точек комплексной плоскости Таким образом, для применения такого способа необходимо дополнение сигнала и ИХ нулевыми отсчетами, так, чтобы их длины и основание ДПФ были все равны (2N-1) или больше 17 Матричная интерпретация ДПФ W x[0], x[1],..., x[ N 1] T X [0] X [1] X [2] ... X [ N 1] WN e j 0 WN W 0 N W 0 N ... WN0 2 N X [0], X [1],..., X [ N 1]T x[0] WN1 ... ... WNN 1 x[1] WN2 ... ... WN2( N 1) x[2] ... ... ... ... ... 2 WNN 1 WN( N 1) x[ N 1] WN0 ... ... WN0 - общепринятое обозначение 18 Обратное ДПФ W 0 N WN0 1 0 1 W WN N ... 0 W N WN1 ... ... WN ( N 1) 2( N 1) WN2 ... ... WN ... ... ... ... ( N 1) ( N 1) 2 WN WN WN0 ... ... WN0 Если применить нормировку в прямом и обратном ДПФ то W 1 * T W 1/ N матрицы эрмитово сопряжённые преобразования унитарные 19 «Растекание спектра» при ДПФ X [k ] N 1 j x[n] e 2 kn N ,k 0, N 1 n0 20 «Растекание спектра» при ДПФ j ( 0 ) N j ( 0 ) N 1 1 e 1 e C (e j ) j ( 0 ) 2 1 e j ( 0 ) 1 e 21 . При 0 знаменатель одной дроби стремится к нулю, поэтому другой дробью можно,–пренебречь. Предел для одной из дробей (оставшейся) равен N, так что ДПФ-спектр косинусоиды при частотах 0 равен N/2, а у синусоиды при частоте 0 значение спектра jN / 2 а при частоте - 0 значение спектра jN / 2 j ( 0 ) N j ( 0 ) N 1 1 e 1 e j C (e ) j ( ) j ( ) 0 0 2 1 e 1 e 22 Цифровые фильтры Назначение дискретных ЛИС-цепей заключается в фильтрации сигналов, т.е. в избирательном воздействии на амплитуды и начальные фазы гармонических составляющих различных частот. Это означает, что любая ЛИС-цепь есть фильтр. Интерес представляет построение фильтров с заданными свойствами. Синтезировать фильтр – значит, найти его разностное уравнение и/или структурную схему. При решении задачи синтеза обычно не делают различия между дискретными и цифровым цепями, хотя, строго говоря, дискретная ЛИС-цепь становится цифровой в результате квантования коэффициентов ее разностного уравнения 23 Требования к фильтрам 24 Синтез цифровых фильтров При синтезе фильтра требуется получить КЧХ (АЧХ и ФЧХ) требуемого вида. Однако КЧХ КИХ-цепи представляет собой полином, а КЧХ БИХ-цепи – дробно-рациональную функцию. Поэтому синтез фильтра состоит в нахождении такой реализуемой структуры дискретной цепи, характеристики которой были бы в каком-то смысле наиболее близки к желаемым. С математической точки зрения синтез фильтра – это аппроксимация желаемой характеристики при помощи функции из заданного класса (то есть при помощи полинома или частного двух полиномов) 25 Особенности КИХ-фильтров Преимущества: 1. КИХ-фильтры всегда устойчивы. 2. Только КИХ-фильтр может иметь строго линейную фазочастотную характеристику (фильтр с линейной ФЧХ не искажает сигнала, если его спектр лежит в полосе частот, где АЧХ постоянна; при этом сигнал лишь задерживается на время, пропорциональное крутизне ФЧХ). 3. Для КИХ-фильтров наиболее просто решается задача аппроксимации КЧХ желаемого вида реализуемой функцией (тригонометрическим полиномом). Недостаток: для обеспечения сравнимых частотно-избирательных свойств (крутизны АЧХ в переходной полосе частот) требуется КИХфильтр в десятки раз более высокого порядка, чем БИХ-фильтр. 26 Синтез КИХ-фильтров 1. Метод оконного взвешивания M H (e j ) n M bne jn КЧХ КИХ-фильтра – полином Если критерий близости желаемой и реализуемой КЧХ 1 2 j j 2 H (e ) H ж (e ) d 2 наилучшая аппроксимация - когда коэффициентами полинома являются коэффициенты разложения желаемой КЧХ в ряд Фурье 1 bn 2 H ж (e j )e j n d , n M , M 27 Полученные коэффициенты – это отсчеты ИХ (некаузальной); для каузальности нужен сдвиг 1 bn 2 H ж (e j )e j n d , n M , M h[n] bn M , n 0, N 1 где N 2M 1 1.5 1.5 1 H.æ( ) 0.5 0 2 0 2 0.3 0.232 0.2 hn 0.05 0.1 40 20 0 20 40 0.1 30 n 30 28 Однако если желаемая КЧХ разрывна (например, прямоугольной формы), получаемая КЧХ, как сумма усеченного ряда Фурье , содержит гиббсовские осцилляции. 1.5 1 H.æ( ) 0.5 H( ) 2 0 2 0.083 0.5 причина явления Гиббса заключается в слишком медленном убывании коэффициентов Фурье-разложения разрывной функции 29 Окна Хэмминга 1 1 0.8 0.6 wn 0.4 0.2 0.08 2 n wхм [n] 0.54 0.46 cos N 1 20 0 30 20 n 30 1 1 Хэнна (фон Ганна) 1 2 n wх [n] 1 cos 2 N 1 0.8 0.6 wn 0.4 0.2 0 20 0 30 20 n 30 Кайзера 1 1 2 2 N 1 N 1 wn I 0 a n 2 2 3 5.931 10 wк [n] N 1 I 0 a 2 0.8 0.6 0.4 0.2 20 30 0 20 n 30 30 Результат применения окна Хэмминга 1.5 1 H.æ( ) H( ) 0.5 H.w( ) 2 0 2 0.083 0.5 10 1.5 2 0 2 0.1 H( ) 0.01 H.w( ) 3 110 4 110 5 110 6 1.13610 6 110 31 Результат применения окон Хэмминга и Блэкмана 1.5 1 H( ) H.w( ) 0.5 H.w1( ) 2 0 2 10 1.5 0.083 2 0.5 0 0.1 2 0.01 H( ) 3 H.w( ) 110 H.w1( ) 110 4 5 110 6 110 7 110 8 7.59710 8 110 32 2. Метод частотной выборки основан на задании значений желаемой КЧХ в точках, расположенных равномерно на 1-окружности и соответствующих точкам частотной оси (отсюда название метода) и аппроксимации КЧХ интерполяционным полиномом Лагранжа H ( z) N 1 (1 z n0 1 zn ) N 1 m0 Am (1 z 1zm ) 33 Метод приводит к построению структуры, содержащей трансверсальную и рекурсивную части, которой, тем не менее, соответствует конечная импульсная характеристика. Благодаря наличию рекурсии такие фильтры при реализации требуют меньшего числа операций по сравнению с рассмотренными выше КИХ-фильтрами на основе оконного взвешивания и оказываются предпочтительными. Пример. Фильтр скользящего среднего может быть реализован как КИХ-фильтр с ИХ h[n] 1, n 0, N 1 Свертка требует N сложений 34 передаточную функцию можно записать в виде N 1 Y ( z) 1 N 1 z H ( z) 1 z ... z 1 X ( z) 1 z один простой полюс в точкеz 1 и N 1 нулей, равномерно размещённых на единичной окружности. При этом РУ y[n] y[n 1] x[n] x[n N 1] требует выполнения двух операций сложения/вычитания независимо от величины N 35 Структура КИХ- фильтра на основе метода частотной выборки WN e j j 2 m 1 N Am H e N 36 2 N Быстрое преобразование Фурье Это базовая операция БПФ («бабочка») здесь использовано общепринятое обозначение WN Требуется N log 2 N 2 2 j e N комплексных умножений вместо Например, при N=256 выигрыш - 64 раза, при 1024 уже 204,8 N2 37 3. Метод быстрой свёртки основан на применении БПФ, при этом сумма длины сигнала (M) и длины ИХ (L) должна удовлетворять условию (L+M-2<N), где N – основание БПФ. Если сигнал длинный, то может оказаться неприемлемым слишком большое основание БПФ и задержка. Тогда применяют секционирование – сигнал разбивают на секции небольшой длины x[n] k xk [n] kL n (k 1) L x[n], xk [n] 0, в противном случае. 38 К каждой секции применяют БПФ, умножение на КЧХ и обратное БПФ, а результаты складывают x[n] h[n] xk [n] h[n] k xk [n] h[n] k k yk [n] метод перекрытия с суммированием (overlap-add method ) 39