Научная статья на тему 'Алгоритмическое моделирование цифрового фильтра'

Алгоритмическое моделирование цифрового фильтра Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
141
82
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Жданов Иван Николаевич, Денисов Константин Михайлович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Алгоритмическое моделирование цифрового фильтра»

5

ЭЛЕКТРОТЕХНИКА, ЭЛЕКТРОМЕХАНИКА _И ЭЛЕКТРОТЕХНОЛОГИИ

АЛГОРИТМИЧЕСКОЕ МОДЕЛИРОВАНИЕ ЦИФРОВОГО

ФИЛЬТРА

И.Н. Жданов, К.М. Денисов

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

В общем случае линейным дискретным фильтром называется дискретная система, удовлетворяющая линейному разностному уравнению

M-1 K-1

У(п) = -Z атУ(n - + Z bkx(n - ^ (1)

m=1 k=0

где x(n) и y(n) - соответственно входная и выходная последовательности устройства.

Передаточная функция линейного дискретного фильтра имеет вид

-к ->kZ

Н ( г) = -, (2)

1 +1 ^ -

т=1

который получается в результате применения ¿-преобразования к левой и правой частям уравнения (1).

В общем случае линейный дискретный фильтр может быть реализован путем комбинации операций умножения сигнала на константу, алгебраического сложения и задержки сигнала на один интервал дискретизации Т.

Под цифровым фильтром понимают дискретный фильтр, описываемый уравнением (1) и реализованный программным путем с помощью микропроцессора или аппаратным путем в виде специализированного цифрового вычислительного устройства, состоящего из элементов памяти (регистров), сумматоров, умножителей и устройств управления. Фильтр может быть реализован различными структурными схемами. Выбранная структура цифрового фильтра, разрядность входных и выходных сигналов, разрядность арифметических устройств влияют на точность работы фильтра и должны выбираться таким образом, чтобы результирующая ошибка цифрового фильтра не превышала допустимой величины.

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

В реальных устройствах, реализующих алгоритмы цифровой обработки сигналов, необходимо учитывать эффекты, обусловленные квантованием входных сигналов и конечной разрядностью всех регистров.

Для анализа эффектов, связанных с конечной разрядностью представления данных, необходимо сделать некоторые предположения относительно статистической независимости различных источников шумов, возникающих в цифровом фильтре. Принимается статистическая модель, основанная на следующих предположениях:

1. любые два отсчета шума от одного и того же источника не коррелированы;

2. любые два источника шума создают некоррелированные шумы;

3. шум каждого из источников не коррелирован с входным сигналом.

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

Эффекты квантования приводят в конечном итоге к погрешностям в выходных сигналах цифровых фильтров, а в некоторых случаях и к неустойчивым режимам работы. В силу принятых допущений выходная ошибка цифрового фильтра вычисляется как суперпозиция ошибок, обусловленных каждым независимым источником.

Выбор оптимальной разрядности квантования входного сигнала определяется необходимой точностью представления информации, заложенной во входном сигнале, наличием в нем предвходящего шума и процедурой, которая применяется для обработки сигнала.

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

С другой стороны, минимально допустимое количество уровней квантования должно обеспечивать желаемое качество выходного сигнала. Ухудшение качества входного сигнала может быть вызвано воздействием неидеальностей на этапе предварительной обработки сигнала (шумы и ограниченные частотные характеристики предварительных масштабирующих усилителей и аналоговых фильтров).

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

АЛ = Л( ш) - 4Кш), (3)

где Л(ш) - АЧХ фильтра с неквантованными коэффициентами, ЛДш) - АЧХ фильтра с квантованными коэффициентами. Величина |АЛ( ш)| не должна превосходить

допустимую величину |АЛ(®)|max, определяемую обычно из условия, чтобы

отклонения реальной АЧХ от идеальной были в допустимых пределах.

Различные структуры фильтров имеют различную чувствительность к изменению отдельных коэффициентов. Поэтому универсального метода определения требуемого количества разрядов квантования коэффициентов для всех типов фильтров предложить невозможно. Необходимое количество разрядов в квантованных коэффициентах фильтров можно определить путем вычисления |АЛ( ш)| для последовательно возрастающего числа разрядов в кодах коэффициентов до выполнения условия |АЛ( ш)|< |АЛ(ш)| max-

Возможны и практически применяются и другие методы, в частности методы, основанные на предварительном изучении чувствительности характеристик конкретного типа фильтра к изменениям его коэффициентов.

При реализации алгоритма цифрового фильтра выполняются операции сложения и умножения на коэффициенты. Сложение чисел с фиксированной точкой при разрядности сумматора, не меньшей разрядностей представления слагаемых, не приводит к ошибкам округления представления суммы, однако при выполнении операций умножения эта ошибка будет появляться, поэтому при последовательном выполнении операций умножения необходимо ограничивать разрядность произведений, иначе разрядность последующих произведений будет неограниченно возрастать. В результате округления произведений алгоритм фильтра реализуется неточно, и выходной сигнал вычисляется с ошибкой.

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

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

Одно из средств для предотвращения переполнения заключается во введении масштабирования, которое сводится к сдвигу вправо (что эквивалентно делению) двоичных кодов слагаемых на всех входах сумматоров. Если исходные слагаемые нормированы на уровне 1.0, то при суммировании двух чисел для исключения возможности переполнения необходимо каждое из слагаемых сдвинуть на один разряд вправо. Такой метод называется автоматическим масштабированием.

Другой способ предотвращения возможности переполнения сводится к масштабированию входных сигналов фильтра или его составных частей. Для этого включают на входах фильтра или на выходах умножителей масштабирующие

умножители. При этом, аналогично случаю автоматического масштабирования, возникает шум масштабирования, который снижает отношение сигнал-шум на выходе фильтра. Масштабирующий умножитель, как и любой другой умножитель в структурной схеме фильтра, является источником шума ошибки квантования, влияние которого на выходной сигнал может быть учтено аналогично шумам других умножителей.

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

Разработанная математическая модель в пакете МаШСаё позволяет выявить ошибки, присущие реальным системам, но практически не рассчитываемые аналитически. Это делает возможным оценить величину ошибки в зависимости от разрядности для фильтров различного порядка и реализованных различными структурными схемами, что поможет правильно выбрать вычислительное устройство для реализации цифрового фильтра. Так, например, для фильтра Баттерворта второго порядка расхождение АЧХ при 12-тиразрядном представлении коэффициентов фильтра от АЧХ идеального фильтра представлено на рис. 1. При реализации структурной схемы в прямой форме моделирование реакции фильтра на скачок задающего воздействия дало следующие результаты: при числе разрядов N=12 ошибка составляет 0,58% (или точность - 7 разрядов, рис. 2), N=16 - 0,03% (11 разрядов), N=32 -0,00016% (19 разрядов). Для фильтра 8-го порядка при N=12 - 2,051% (5 разрядов), N=16 - 0,1221% (9 разрядов), N=32 - 0,0017% (15 разрядов).

1.1 1

0.3 0.8 0.7

1А(°)цИфр1 11(5

|а(о)

I ■ Ш

0.5 0.4 0.3 0.2 0.1

\ О* \

\\

\\ 1,

\

Чч

75 150 225 300 375 450 525 600

Рис.1. АЧХ фильтра с квантованными коэффициентами и АЧХ идеального

фильтра

Литература

1. Digital Control System Design. Analog Devices Inc., 1998. Data sheet.

2. Титце У., Шенк К., Полупроводниковая схемотехника: Справочное руководство. / Пер. с нем. М.: Мир, 1982.

3. Гольденберг Л.М., Матюшкин Б. Д., Поляк М.Н. Цифровая обработка сигналов: учеб. пособие для вузов. / 2-изд., перераб. и доп. М.: Радио и связь, 1990. 256 с.: ил.

4. Изерман Р. Цифровые системы управления. М.: Мир, 1984.

i Надоели баннеры? Вы всегда можете отключить рекламу.