
- •1. Задание на проектирование
- •1.1. Задача 1. Реализация ких-фильтра на процессоре tms320c50
- •1.2. Задача 2. Синтез и реализация ких-фильтра на процессоре tms320c50
- •1.3. Задача 3. Реализация бих-фильтра на процессоре tms320c50
- •1.4. Задача 4. Синтез и реализация бих-фильтра на процессоре tms320c50
- •2. Методические указания по выполнению задач
- •2.1.Составление программы
- •2.1.1. Программа реализации ких фильтра
- •2.1.2. Программа реализации бих фильтра
- •2.2.Отладка программы
- •2.3.Получение импульсной характеристики фильтра
- •2.4.Определение максимально возможной частоты дискретизации
- •3. Примеры программ
- •3.1.Программа реализации нерекурсивного фильтра
- •Inport .Set 50h ; параллельный порт, используемый для ввода
- •In inad,inport ; приём отсчета через входной порт
- •3.2. Командный файл компоновки
- •3.3.Программа реализации рекурсивного фильтра
- •3.3.1. Прямая форма
- •In1 .Word 0 ; входной отсчет
- •In inad,inport ; прием отсчета через порт ввода
- •3.3.2. Каноническая форма
- •In1 .Word 0 ; входной отсчет первого звена
- •In inad,inport ; прием отсчета через порт ввода
- •3.3.3. Трансформированная форма
- •In1 .Word 0 ; входной отсчет
- •3.4.Командный файл программного имитатора
- •4. Расчет фильтра с помощью пакета программ fd
- •5. Литература
- •Содержание
ЦПОС
МЕТОДИЧЕСКИЕ
УКАЗАНИЯ
К
КУРСОВОМУ ПРОЕКТУ
1. Порядок выполнения и оформления
Пояснительная записка оформляется на листах стандартного формата 210х297мм (А4) сшитых с помощью скоросшивателя или стиплера
На титульном листе пояснительной записки должны быть указаны:
фамилия и инициалы студента курс группа
дата выполнения проекта
фамилия и инициалы преподавателя
название проекта.
Материалы пояснительной записки следует располагать в следующем порядке:
оглавление, содержащее все разделы проекта с указанием страниц и перечень приложений
вариант кода задания и техническое задание на проектирование структурная схема устройства;
схема алгоритма работы системы и выполнения программы
таблицы коэффициентов и частотные характеристики используемого фильтра,
таблицы идентификаторов всех использованных переменных распределение памяти и регистров для хранения переменных и констант;
исходный текст программы на языке ассемблера с необходимыми пояснениями и комментариями, носящими содержательный (смысловой ) характер
командный файл компоновки программы;
таблица компоновки (файл *.map);
таблицы значений импульсной характеристики фильтра, полученные в пакете FD и снятые при выполнении программы в имитаторе;
расчет максимально возможной частоты дискретизации сигнала;
список использованной литературы
Основные части записки (кроме оглавления и списка используемой литературы) оформляются для каждой выполняемой задачи отдельно.
Все страницы пояснительной записки должны быть пронумерованы Схемы и пояснительная записка оформляются в соответствии с требованиями ЕСПД и ГОСТов [1], [2], [3].
1. Задание на проектирование
Объектом проектирования является программа реализации цифрового фильтра с заданными характеристиками в системе цифровой обработки сигнала (ЦОС) на ЦПОС TMS320C50.
Обобщенная структурная схема системы ЦОС приведена на рис. 1.
Рис. 1. Структурная схема системы ЦОС
Входное внешнее устройство (ВУ) может включать в себя источник аналогового сигнала и преобразователь сигнала АЦП. Оно может также являться получателем сигнала из канала связи. Чаще всего ввод информации в системе ЦОС осуществляется по прерываниям. В этом случае ВУ формирует помимо вводимых данных сигнал запроса на прерывание ЗП.
Рис. 2. Имитация ВУ
Программа предназначена для выполнения в реальном масштабе времени. Выполнение курсовой работы включает отладку программы на имитаторе процессора и проверка характеристик полученного фильтра. При использовании программного имитатора невозможна проверка работы устройства в реальном масштабе времени. Поэтому при отладке на имитаторе ВУ заменяется в соответствии с рис. 2 файлами отсчетов входного сигнала и сигналов ЗП (при использовании внешних прерываний). Отсчеты выходного сигнала системы записываются также в файл.
Схема алгоритма работы системы и программы в соответствии с определением [2] должна отображать последовательность операций, выполняемых в системе в соответствии с командами программы. Поэтому в ней не отображаются действия, выполняемые транслятором и компоновщиком, которые также описываются в программе, но с использованием директив ассемблера. Такими действиями, например, являются резервирование памяти, загрузка в память значений коэффициентов и т.д.
Задание на проектирование состоит из нескольких задач, описание которых приведено ниже.
Вариант задания определяется 6-разрядным кодом ABCDEF который студент получает от преподавателя Значения отдельных разрядов в этом коде определяют конкретные параметры программы и фильтра (разряд F используется при решении задач 3, 4).
Разряд А определяет номер решаемой задачи. Значения остальных разрядов приведено ниже при описании конкретных задач.
1.1. Задача 1. Реализация ких-фильтра на процессоре tms320c50
Данная задача предусматривает разработку и отладку программы реализации на процессоре TMS320C50 цифрового фильтра с конечной импульсной характеристикой (КИХ), коэффициенты которого заданны.
Конечной импульсной характеристикой обладают нерекурсивные цепи и поэтому их обычно называют КИХ - цепями (КИХ-фильтрами). КИХ-фильтр порядка N-1 (длины N) описывается передаточной функцией:
где bn - коэффициенты фильтра, которые равны отсчетам импульсной характеристики.
Структурная схема КИХ-фильтра при прямой форме реализации приведена на рис 3.
Для выполнения задачи необходимо сделать следующее.
1. Написать программу реализации фильтра, в соответствии со структурной схемой, изображенной на рис. 3. Пример программы реализации фильтра приведен в разделе 4.1.
Исходные данные для программы фильтра ( коэффициенты и множители ММ) выбираются из табл. 1 в соответствии с значением разряда В кода варианта задания. Во всех вариантах фильтра используется частота дискретизации 8 КГц.
Рис 3. Структурная схема реализации КИХ-фильтра (MM – масштабный множитель)
2. Отладить написанную программу на имитаторе процессора.
3. Снять импульсную характеристику полученного фильтра, используя в качестве входного сигнала единичный импульс.
Критерием правильности функционирования программы будет совпадение значений полученной импульсной характеристики с заданными коэффициентами фильтра с учетом введенного на входе масштабного множителя (для совпадения коэффициенты должны быть умножены на масштабный множитель).
4. Используя пакет синтеза фильтров FD получить импульсную характеристику для заданного фильтра и сравнить её с характеристикой, снятой в имитаторе при выполнении разработанной программы.
5. Определить в имитаторе время вычисления выходного отсчета фильтра (в тактах) и рассчитать максимально возможную частоту дискретизации входного сигнала для проектируемого фильтра.
Различные варианты заданий отличаются адресами размещения секций программы в памяти процессора и типом прерываний, используемым для ввода входного сигнала.
Значение С кода варианта определяет размещение секций программы в памяти процессора. Адреса размещения секций (в 16-ричной системе) для различных значений С приведены в табл. 2
Таблица. 1.
В = 1 |
В = 2 |
В = 3 |
В = 4 |
В = 5 |
MM.=0.9 |
MM.=0.9 |
MM.=0.9 |
MM.=0.85 |
MM.=0.9 |
0.05049010 0.03060544 0.03276830 -0.14641758 0.25854980 0.69452531 -0.25854980 -0.14641758 -0.03276830 0.03060544 0.05049010
|
-0.03417235 -0.03639437 0.06307566 -0.05614658 -0.01629031 0.14162873 -0.26261299 0.31269774 -0.26261299 0.14162873 -0.01629031 -0.05614658 0.06307566 -0.03639437 -0.03417235
|
0.043945264 -0.035983951 -0.050697587 0.03043060 0.03639668 -0.09651751 -0.05287457 0.30921518 0.54646043 0.30921518 -0.05287457 -0.09651751 0.03639668 0.03043060 -0.05069758 -0.03598395 0.04394526
|
-0.04785732 0.03586812 0.07302464 0.12532777 0.17143285 0.20002033 0.20002033 0.17143285 0.12532777 0.07302464 0.03586812 -0.04785732 |
0.03176635 0.12467597 0.01715811 -0.10988467 -0.15517341 -0.01334528 0.16311273 0.16311273 -0.01334528 -0.15517341 -0.10988467 0.01715811 0.12467597 0.03176635 |
В = 6 |
В = 7 |
В = 8 |
В = 9 |
В = 0 |
MM.=0.85 |
MM.=0.85 |
MM.=0.77 |
MM.=0.85 |
MM.=0.9 |
0.00517338 -0.04783066 -0.04100188 -0.05968966 0.08542713 0.12231730 -0.08467900 -0.19031033 0.03508036 0.21961315 0.03508036 -0.19031033 -0.08467900 0.12231730 0.08542713 -0.05968966 -0.04100188 -0.04783066 0.00517338
|
0.02750930 0.03933861 -0.11729161 -0.06051675 -0.11040322 -0.29580611 0.4332183 0.4332183 -0.29580611 -0.11040322 -0.06051675 -0.11729161 0.0393386 0.0275093 |
0.00390215 0.01756460 -0.02650313 0.20141187 -0.03367874 -0.27923756 0.20247287 0.20247287 -0.2792375 -0.03367874 0.20141187 -0.02650313 0.01756460 0.00390215
|
-0.07766638 0.123841011 0.119450639 0.188590157 -0.041784259 0.747682023 -0.041784259 0.188590157 0.119450639 -0.123841011 -0.077666380 |
-0.05772562 0.02685215 0.10677853 -0.29241996 0.38101905 -0.29241996 0.10677853 0.02685215 -0.05772562 |
В таблице использованы следующие обозначения:
ММ – масштабный множитель входного сигнала.
Таблица 2
С |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
коды программы (память программ) |
40 |
100 |
200 |
300 |
400 |
500 |
600 |
700 |
800 |
900 |
данные – секция .data (память данных) |
100 |
180 |
200 |
280 |
300 |
380 |
400 |
480 |
150 |
350 |
коэффициенты и переменные (память данных) |
280 |
300 |
380 |
100 |
180 |
200 |
280 |
150 |
350 |
400 |
Значение D кода варианта определяет тип прерываний, используемый для ввода отсчетов сигнала. В табл. 3 приведены используемые типы прерываний в зависимости от значения D:
INT1, INT2, INT3 – внешние прерывания от устройств, запросы которых подаются на различные входы процессора,
TINT – прерывания по таймеру.
Таблица 3
D |
1 |
2 |
3 |
4 |
Тип прерываний |
INT1 |
INT2 |
INT3 |
TINT |
Значение E кода варианта определяет период прерываний (период ввода отсчетов сигнала). В табл. 4 приведены значения периода ( в тактах) в зависимости от E.
Таблица 4
E |
1 |
2 |
3 |
4 |
Период ввода входных сигналов (в тактах) |
1000 |
1200 |
1500 |
2000 |
Методические указания по выполнению задачи и использованию прерываний для ввода сигнала приведены в разделе 3.