Сигнальные процессоры. Аксенов В.П. - 77 стр.

UptoLike

Составители: 

77
5.2. Организация циклического буфера
Во многих задачах цифровой обработки сигналов используется хранение
в памяти программы массива из N последних цифровых отсчетов, накопленных
за постоянный интервал времени. Дискретные значения аналогового сигнала
X(t) из АЦП могут поступать на вход циклического буфера процессора, если в
программе пользователя указаны параметры буфера и порт, к которому под-
ключен аналого-цифровой преобразователь. На рис. 43 показано десять цифро-
вых значений Х, постепенно заполняющих четыре ячейки буфера памяти. При
поступлении нового отсчета в буфере изменяется содержимое одной 16-
разрядной ячейки памяти и сохраняется N-1 предыдущих значений.
Рис. 43. Заполнение циклического буфера длиной N = 4
Рассмотрим применение циклического буфера для программной реализа-
ции фильтра с конечной импульсной характеристикой (КИХ) четвертого по-
рядка. После заполнения буфера первыми четырьмя числами Х1, Х2, Х3, Х4
рассчитывается свертка
Y = k1·X1 + k2·X2 + k3·X3 +k4·X4,
где k1, k2, k3, k4 постоянные коэффициенты фильтра.
Чтобы выполнить свертку из четырех произведений и трех сумм в про-
грамме на языке ассемблера необходимо указать с помощью косвенной адреса-
ции номера ячеек буфера, в которых хранятся числа Х
Y = k1·x(0) + k2·x(1) + k3·x(2) + k4· x(3).
X1 X2 X3 X4 X5 X6 X7 X8 X9 X10
. . . . . . . . .
N = 4
N = 4
N = 4
     5.2. Организация циклического буфера


     Во многих задачах цифровой обработки сигналов используется хранение
в памяти программы массива из N последних цифровых отсчетов, накопленных
за постоянный интервал времени. Дискретные значения аналогового сигнала
X(t) из АЦП могут поступать на вход циклического буфера процессора, если в
программе пользователя указаны параметры буфера и порт, к которому под-
ключен аналого-цифровой преобразователь. На рис. 43 показано десять цифро-
вых значений Х, постепенно заполняющих четыре ячейки буфера памяти. При
поступлении нового отсчета в буфере изменяется               содержимое одной        16-
разрядной ячейки памяти и сохраняется N-1 предыдущих значений.


     X1     X2         X3         X4     X5        X6   X7     X8         X9   X10
                 N=4
                            N=4

                                       .........                    N=4



                 Рис. 43. Заполнение циклического буфера длиной N = 4


     Рассмотрим применение циклического буфера для программной реализа-
ции фильтра с конечной импульсной характеристикой (КИХ) четвертого по-
рядка. После заполнения буфера первыми четырьмя числами Х1, Х2, Х3, Х4
рассчитывается свертка
                        Y = k1·X1 + k2·X2 + k3·X3 +k4·X4,
где k1, k2, k3, k4 – постоянные коэффициенты фильтра.
     Чтобы выполнить свертку из четырех произведений и трех сумм в про-
грамме на языке ассемблера необходимо указать с помощью косвенной адреса-
ции номера ячеек буфера, в которых хранятся числа Х
                     Y = k1·x(0) + k2·x(1) + k3·x(2) + k4· x(3).




                                              77