Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КП по ЦУМ_low_freq.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
793.6 Кб
Скачать

11 Исходные определения и ручной расчёт результатов работы программы: “Цифровой фильтр (нижних частот)’’

Yn = Xn + Xn-1 + 0.86Xn-2 + 0.75Yn-1 - 0.31Yn-2

1) Реализуемый коэффициент масштабирования Kmp при формате беззнаковых коэффициентов:

Km = 0,26 ; Kmp = 01000010 = 428F = 0,2578125

2) Реализуемый коэффициент разностного уровнения Кр при 8-разрядном формате беззнаковых коэффициентов:

K=0.86; Kp=,11011101=DD=0.86328125

K=0.75; Kp=,11000000=C0=0.75

K=0.31; Kp=,01001111=4F=0.30859375

3) Код АЦП для положительного входного отсчёта максимальной амплитуды:

Xn=0'1111111=7F

4) Масштабированный входной положительный отсчёт максимальной амплитуды:

Xn:=Kmp*Xn=428F*7F=0.21='00100001=+0,12890625

6) Получим произведение P1n,P2n,Pn3:

P1n=Kp*Xn=DD*0.21=1C=00011100=+0,109375

P2n=C0*7F=5F40=01011111=+0,3720703125

P3n=4F*7F=2731=00100111=+0,1530914

7) Получим модуль произведения отрицательного отсчёта Yn-2 на коэффициент Kp:

P3n=Kp*Yn-2=4F*0.21=A2F=10100010=0,636474609

8) Вычислим выходной отсчёт:

Yn=Xn+Xn-1+P1n+P2n- P3n)=0.21+0.21+1C+5F40+2731=

=86CF=10000110=+0,526596069

12 Оценка быстродействия фильтра

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

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

Команды

Количество

Число тактов

MOV

15

5

LDA

1

13

ADI

1

7

ARHL

23

7

ADD

4

4

STA

1

13

CMA

1

4

INR

1

5

SUB

2

4

RET

1

11

HLT

1

7

JMP

1

10

ИТОГО:

318

Максимальное время вычисления: tmax =Nmax /FT = 106 мкс

Интервал дискретизации:

Tд=1/Fд=1/4500=222 мкс

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