Составление программы реализации КИХ-фильтра
Содержание
Введение
Расчетная часть
Заключение
Список литературы
Введение
программа фильтр сигнальный
процессор
TMS320С5х - сигнальные процессоры,
которые базируются на модифицированной Гарвардской архитектуре. В этой
архитектуре используются два пространства памяти - для программ и для данных со
своими шинами адреса и данных. По шине данных памяти программ из программной
памяти пересылаются коды команд и непосредственные операнды. По шине данных
памяти данных пересылаются данные от разнообразных модулей процессора в память
данных и наоборот. Имеются команды обмена данными между памятью программ и
памятью данных.
В процессорах TMS320C5х
поддерживается высокий уровень параллелизма. Так, пока данные обрабатываются в
арифметико-логическом устройстве (ALU), в арифметическом устройстве
вспомогательных регистров может производиться инкремент или декремент
содержимого этих регистров.
Структурная схема процессора
TMS320C50 представлена на рисунке 7, из которой видно, что процессор выполняет
арифметические команды, используя 32-х разрядные ALU и аккумулятор (ACC). ALU -
универсальный арифметический модуль, который оперирует 16-ти разрядными
операндами (непосредственными или из памяти) или/и 32-х разрядными из
умножителя или аккумулятора. Аккумулятор используется для хранения результатов,
поступающих из ALU, а также для ввода второго операнда в ALU. 32-х разрядный
ACC разделен на старшее слово (ACCH) - биты 31:16 и младшее - (ACCL) c битами
15:0. Для быстрого временного сохранения содержимого аккумулятора имеется 32-х
разрядный буфер аккумулятора (ACCB).
В дополнение к основному ALU имеется
параллельный логический модуль (PLU), который выполняет логические операции над
данными, не оказывая влияния на содержимое аккумулятора. PLU упрощает
поразрядную установку, очистку и тестирование, требуемое при управлении и при
операциях над регистрами состояния.
Аппаратный умножитель выполняет
перемножение двух 16-ти разрядных слов с получением 32-х разрядного результата
за один командный цикл. Умножитель состоит из трех элементов: собственно
умножителя (multiplaer), регистра результата PREG (product register) и
временного регистра TREG0. 16-ти разрядный TREG0 хранит множитель, 32-х
разрядный PREG содержит результат умножения. В зависимости от используемых
команд значение множителя может быть загружено из памяти данных, памяти
программ, или непосредственно из команды
Задание
Составить программу для реализации
КИХ-фильтра на сигнальном процессоре серии TMS320 фирмы Texas Instruments с
подробным описанием выполняемых действий. Частота дискретизации обработки
сигнала Fд и другие параметры приведены в таблице 1.
Таблица 1
N варианта
|
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
Порядок фильтра N
|
5
|
10
|
15
|
20
|
25
|
30
|
33
|
35
|
38
|
39
|
Xn ® Порт №
|
0
|
2
|
4
|
6
|
8
|
1
|
3
|
5
|
7
|
0
|
Yn ® Порт №
|
1
|
3
|
5
|
7
|
2
|
4
|
6
|
8
|
0
|
1
|
Fд, кГц
|
10
|
15
|
20
|
25
|
30
|
35
|
40
|
45
|
48
|
50
|
0E
|
11
|
0F
|
1B
|
0F
|
09
|
0C
|
0B
|
0A
|
0D
|
Расчетная часть
Вариант индивидуального задания
определяется по последней цифре номера зачетной книжки студента. Мой вариант -
3,№З.К -12363
При выполнении задания 3 необходимо
перед составлением программы повторить материал лекций и просмотреть литературу
[5,6]. Для программной реализации КИХ-фильтра можно использовать любой из
сигнальных процессоров семейства TSM320 фирмы Texas Instruments.
В качестве примера рассмотрим
фрагменты программирования процессора TSM 320С10, который способен выполнять 5
млн.опер/с. Такая высокая производительность является результатом разработки
эффективной системы команд и высокоразвитой конвейерной архитектуры.
КИХ-фильтр описывается разностным
уравнением вида
где -
отсчеты воздействия;
- отсчеты реакции;
< 1 - вещественные
коэффициенты, полностью определяющие свойства цифрового фильтра;
<
1 - отсчеты воздействия, задержанные на периодов дискретизации соответственно.
Таблица 2 - Реализация КИХ-фильтра
при помощи программы
1B
|
IN_10,6
|
1C
|
LARK_AR0,2
|
1D
|
LARK_AR1,12
|
1E
|
ZAC
|
1F
|
LARP_1
|
10
|
LT_*_,0
|
11
|
MPY_*_,1
|
12
|
LTD_*_,0
|
13
|
MPY_*_,1
|
14
|
LTD_*,0
|
15
|
MPY_*
|
16
|
APAC
|
17
|
SACH_6,1
|
18
|
OUT_6,7
|
19
|
1С
|
20
|
1B
|
Таблица 3 - Комментарии к фрагменту
программы
Команда
|
Комментарий
|
IN _10,6
|
[10]← Порт 6
|
LARK_AR0,2
|
AR0←2H(адрес b2)
|
LARK_AR1,12
|
AR1 ←12h(адрес x(n-2))
|
ZAC
|
ACC ← 0,очищаем
|
LARP_1
|
AR1 - текущий
|
LT_*_,0
|
T←[(AR1)]=[12]; AR1←AR1-1=12-1=11;AR0-текущий
|
MPY_*_,1
|
P←(T)*[(AR0)]=[12]*[2]=x(n-2)*b2;AR0←AR0-1=2-1=1,AR1-
текущий
|
T←[(AR1)]=[11]; [(AR1)-1]=[12] ←[(AR1)]=[11]; DMOV
ACC←(ACC)+(P)=0+x(n-2)b2;AR1←(AR1)-1=11-1=10,AR0- текущий
|
MPY_*_,1
|
P←[11]*[1]=x(n-1)*b1,AR0=1-1=0;AR1- текущий
|
LTD_*,0
|
T←[10];[11]←[10];ACC←x(n-2)*b2+x(n-1)*b1;AR0-
текущий
|
MPY_*
|
P←[10]*[0]=Xn*b0;
|
APAC
|
ACC←(ACC)+(P)=x=x(n-2)*b2+x(n-1)*b1+xn*b0
|
SACH_6,1
|
[6] ←(ACC)+z’
|
OUT_6,7
|
Порт(7) ← [6] вывод Y(n)
|
1C
|
|
1B
|
РС←1B
|
Время выполнения этого фрагмента -
16 тактов по 200 нс, т.е. 3,2 мкс. Для реализации заданного фильтра, 20-го
порядка требуется выполнить приведенный фрагмент 20 раз, при этом время
выполнения будет
вып = 3,2*20 = 64 мкс.
При заданной частоте
дискретизации,равной 25 кГц каждый отсчет поступает на вход цифрового фильтра
через:
Тд = 1 / 25 = 0,04 мс =
40 мкс.
Программа работы фильтра
записывается в постоянное запоминающее устройство (ПЗУ) программ с адреса,
заданного соответствующим вариантом таблицы 3.
Заключение
В ходе выполнения данной
расчетно-графической работы, я составила программу для реализации КИХ-фильтра
на сигнальном процессоре серии TMS320 фирмы Texas Instruments с подробным
описанием выполняемых действий, предварительно изучив конспект лекций и
соответствующую литературу.
Список литературы
1. Сперанский В.С. Сигнальные микропроцессоры и их применение в
системах телекоммуникаций и электроники. Учебное пособие для вузов. - М.: Горячая
линия - Телеком, 2008. - 168 с.
. Солонина А.И., Улахович Д.А., Яковлев Л.А. Алгоритмы и
процессоры цифровой обработки сигналов - СПб: БХВ - Петербург, 2001. - 464 с.
. Э.Айфичер, Б.Эммануил Цифровая обработка сигналов: практический
подход. - М.: Издательский дом «Вильямс», 2004. - 992 с.
. Лэй Э. Цифровая обработка сигналов для инженеров и технических
специалистов: практическое руководство. - М.: ООО «Группа ИДТ», 2007. - 336 с.
. Гольденберг Л.М. и др. Цифровые устройства и микропроцессорные
системы. Задачи и упражнения: учебное пособие.-М.: Радио и связь, 1992.-256 с.
6. Петрищенко С.Н. Сигнальные процессоры. Конспект лекций для
бакалавров специальности 5В071900 - Радиотехника, электроника и
телекоммуникации. - Алматы, 2012. - 38 с.