Пример организации буферов при поэлементном формировании результатов обработки

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

Этапы выполнения итерационной процедуры обработки данных можно записать следующим образом:

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

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

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

Следует обратить внимание на то, что вывод сформированных отсчетов всегда отстает от ввода отсчетов исходного сигнала. Обозначения типа X(i) и Y(i) на рисунке используются только для того, чтобы проиллюстрировать соответствие между номерами входного отсчета и получаемого с его использованием выходного отсчета.

Рис.____

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

Рассмотрим пример вычисления оценки предельной частоты дискретизации входного сигнала для приведенной в данном разделе схемы поэлементной обработки.

Для реализации системы ЦОС выбран процессор с тактовой частотой 100МГц (длительность одного процессорного такта – 10нс. Пусть длительность выполнения собственно программной реализации алгоритма обработки (включая переход на обработчик прерывания, выполнения вычислений и возврат из обработчика с учетом некоторых потерь на переходы и т.п.) составляет, например, 400 тактов. Тогда интервал между поступлениями последовательных отсчетов входного сигнала не может быть меньше 400 тактов = 4 мкс. Находя обратную величину от этого интервала получаем предельную скорость поступления входных отсчетов – 250000 отсчетов/сек = 250 КГц – это и есть предельно допустимая частота дискретизации входного сигнала.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: