- •Микропроцессоры в технике электросвязи
- •Глава 1. Структура микропроцессорного комплекта 580 серии.
- •Принцип работы
- •1.1. Структура цпэ
- •1.2. Форматы команд
- •1. 3. Виды адресации
- •1.4. Виды выполняемых операций
- •1.5. Примеры программирования микропроцессора
- •1.6. Циклические программы
- •1.7. Система сбора и обработки информации
- •1.8. Система групповой ару аналоговой системы передачи
- •Глава 2. Цифровые развязывающие устройства
- •2.1. Абсолютный компенсационый метод (акм)
- •2. 2. Относительный компенсационный метод (окм)
- •2.3. Структурная схема окм и алгоритм ее работы
- •Глава 3. Однокристалльные микроэвм к 1816 ве 48 (ве 51)
- •3.1. Цифровой цастотный демодулятор (модем)
- •Глава 4. Микропроцессор 1813 ве1
- •Глава 5. Реализация цифровых фильтров (цф) на 1813 ве 1
Глава 5. Реализация цифровых фильтров (цф) на 1813 ве 1
Программа обработки построена по конвейерному принципу. Конвейерный принцип предполагает выполнение последовательных команд. После выполнения последней команды программа возвращается в начало.
На рис. 5.1. изображен рекурсивный ЦФ 2-го порядка:
Рисунок 5.1 – Структурная схема рекурсивного ЦФ 2-го порядка.
Запишем разностное уравнение для данного фильтра:
y(nT)=A0x(nT)+ A1x(nT – T)+ A2x(nT – 2T)+B0y(nT-T)+B1y(nT-2T).
Исходя из разностного уравнения, можно получить все требуемые характеристики выходного сигнала в заданный момент времени.
Для рекурсивного фильтра коэффициенты умножения А0, А1, А2 могут либо равняться нулю, либо каким-то конкретным значениям. Порядок рекурсивного фильтра определяется количеством линий задержки в выходном сигнале. В случае, если В0 и В1 равны нулю, фильтр превращается в нерекурсивный (трансверсальный фильтр).
Преимущество рекурсивного ЦФ:
Для реализации требуемой крутизны фильтра требуется небольшое (малое) количество операций.
Недостатки рекурсивного ЦФ:
-
Больший уровень шумов по сравнению с нерекурсивным фильтром.
-
Требуется использовать масштабирование, чтобы система не самовозбудилась.
Для реализации коэффициентов умножения используют знакоразрядную форму представления. Для этого выполним следующие шаги:
-
Возьмем двоичное 15-разрядное число. Два старших разряда отделим от остальных точкой.
-
Разряды, находящиеся слева от точки (два разряда) имеют следующий вес: младший – 20, следующий – 21.
-
Разряды, находящиеся правее точки, имеют веса:
1-й – ;
2-й – ;
.
.
.
13-й – ;
-
Для уменьшения количества операций умножения некоторые разряды инвертируются. Инверсия разряда обозначается знаком «-» над заданным разрядом, - это означает, что данный ес нужно взять со знаком «-».
Пример:
Пусть заданы следующие коэффициенты умножения:
Для умножения заданного коэффициента на цифровой отсчет поступают следующим образом:
-
На первом этапе цифровой отсчет сдвигают влево либо вправо на заданное количество разрядов – это равносильно умножению на 2К.
-
На втором этапе используют прежнее значение на предыдущем такте и новое значение на следующем такте.
Пример: y0=A0x(nT)=(2-8-2-10)x(nT).
1-й этап: y0:= 2-8 x(nT).
2-й этап: y0:=y0-2-10x(nT).
Пример программы для приведенных выше коэффициентов умножения:
№ п/п |
КОП Ц |
Адрес операнда «В» |
Адрес операнда «А» |
Код МУ |
КОП А |
Комментарии |
1 |
LDA |
Y2 |
Y1 |
L00 |
IN (0) |
Y2= Y1; ввод x0 по «0» каналу. |
2 |
LDA |
Y1 |
Y0 |
L00 |
IN (0) |
Y1= Y0; ввод x0 по «0» каналу. |
3 |
LDA |
Y0 |
Y1 |
L01 |
IN (0) |
Y0= Y121; ввод x0 по «0» каналу. |
4 |
SUB |
Y0 |
Y1 |
R02 |
IN (0) |
Y0= Y0-Y12-2; ввод x0 по «0» каналу. |
5 |
ADD |
Y0 |
Y1 |
R06 |
IN (0) |
Y0= Y0+Y12-6; ввод x0 по «0» каналу. |
6 |
SUB |
Y0 |
Y2 |
L00 |
IN (0) |
Y0= Y0-Y22-0; ввод x0 по «0» каналу. |
7 |
ADD |
Y0 |
Y2 |
R07 |
IN (0) |
Y0= Y0+Y22-7; ввод x0 по «0» каналу. |
8 |
SUB |
Y0 |
Y2 |
R09 |
IN (0) |
Y0= Y0-Y22-9; ввод x0 по «0» каналу. |
9 |
LDA |
Y0 |
Y0 |
L00 |
CUT S |
Y0=Y0, преобразование знака |
10 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0=Y0, преобразование знака |
11 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0=Y0, преобразование знака |
12 |
LDA |
Y0 |
Y0 |
L00 |
CUT(7) |
Y0= Y0, преобразование 7-го разряда мантиссы |
13 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 7-го разряда мантиссы |
14 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 7-го разряда мантиссы |
15 |
LDA |
Y0 |
Y0 |
L00 |
CUT(6) |
Y0= Y0, преобразование 6-го разряда мантиссы |
16 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 6-го разряда мантиссы |
17 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 6-го разряда мантиссы |
18 |
LDA |
Y0 |
Y0 |
L00 |
CUT(5) |
Y0= Y0, преобразование 5-го разряда мантиссы |
19 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 5-го разряда мантиссы |
20 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 5-го разряда мантиссы |
21 |
LDA |
Y0 |
Y0 |
L00 |
CUT(4) |
Y0= Y0, преобразование 4-го разряда мантиссы |
22 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 4-го разряда мантиссы |
23 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 4-го разряда мантиссы |
24 |
LDA |
Y0 |
Y0 |
L00 |
CUT(3) |
Y0= Y0, преобразование 3-го разряда мантиссы |
25 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 3-го разряда мантиссы |
26 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 3-го разряда мантиссы |
27 |
LDA |
Y0 |
Y0 |
L00 |
CUT(2) |
Y0= Y0, преобразование 2-го разряда мантиссы |
28 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 2-го разряда мантиссы |
29 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 2-го разряда мантиссы |
30 |
LDA |
Y0 |
Y0 |
L00 |
CUT(1) |
Y0= Y0, преобразование 1-го разряда мантиссы |
31 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 1-го разряда мантиссы |
32 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 1-го разряда мантиссы |
33 |
LDA |
Y0 |
Y0 |
L00 |
CUT(0) |
Y0= Y0, преобразование 0-го разряда мантиссы |
34 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 0-го разряда мантиссы |
35 |
LDA |
Y0 |
Y0 |
L00 |
NOP |
Y0= Y0, преобразование 0-го разряда мантиссы |
36 |
LDA |
X0 |
DAR |
L00 |
NOP |
X0=DAR |
37 |
ADD |
Y0 |
X0 |
R08 |
NOP |
Y0=Y0+2-8X0 |
38 |
SUB |
Y0 |
X0 |
R10 |
NOP |
Y0=Y0-2-10X0 |
39 |
LDA |
DAR |
Y0 |
L00 |
NOP |
DAR=Y0 |
40 |
LDA |
Y0 |
Y0 |
L00 |
OUT(1) |
Вывод Y0 по 1-му каналу. |
41 |
LDA |
Y0 |
Y0 |
L00 |
OUT(1) |
Вывод Y0 по 1-му каналу. |
42 |
LDA |
Y0 |
Y0 |
L00 |
OUT(1) |
Вывод Y0 по 1-му каналу. |
43 |
LDA |
Y0 |
Y0 |
L00 |
OUT(1) |
Вывод Y0 по 1-му каналу. |
44 |
LDA |
Y0 |
Y0 |
L00 |
OUT(1) |
Вывод Y0 по 1-му каналу. |
45 |
LDA |
Y0 |
Y0 |
L00 |
OUT(1) |
Вывод Y0 по 1-му каналу. |
46 |
LDA |
Y0 |
Y0 |
L00 |
OUT(1) |
Вывод Y0 по 1-му каналу. |
47 |
LDA |
Y0 |
Y0 |
L00 |
OUT(1) |
Вывод Y0 по 1-му каналу. |
48 |
LDA |
Y0 |
Y0 |
L00 |
EOP |
Возврат в начало программы |