- •3 Модуль
- •11 Мікропроцесорні системи на універсальних мп фірми motorola
- •11.2 Побудова мпс на 16-розрядних мікропроцесорах фірми Motorola
- •11.2.1 Підсистема центрального процесорного елемента mc68000
- •11.2.2 Розподіл адресного простору мпс
- •11.2.3 Організація підсистеми пам’яті
- •11.2.4 Організація підсистем введення-виведення
- •11.4 Побудова мпс на 32-розрядних мікропроцесорах фірми Motorola
- •11.4.1 Підсистема центрального процесорного елемента
- •11.4.2 Розподіл адресного простору мпс
- •11.4.3 Організація підсистеми пам’яті мпс
- •11.4.4 Організація підсистеми введення-виведення
- •11.4.5 Підключення співпроцесора
- •12 Програмування універсальних мп
- •12.1 Мова Асемблер програмування мп фірми Motorola
- •Непряме регістрове адресування з постіндексуванням
- •Непряме регістрове адресування з преіндексуванням
- •Непряме відносне адресування з індексуванням
- •12.2 Система команд мп мс680х0 (Для самостійного вивчення)
- •12.2.1 Команди пересилань
- •12.2.2 Команди арифметичних операцій
- •12.2.3 Команди логічних операцій
- •12.2.4 Команди зсувів
- •12.2.5 Команди безумовних переходів
- •12.2.6 Команди умовних переходів
- •12.2.7 Команди організації програмних циклів
- •12.2.8 Команди звернення до підпрограм
- •12.3 Побудова програм з різною структурою мовою Асемблер
- •12.3.1 Лінійні програми
- •12.3.2 Розгалужені та циклічні програми. Підпрограми
- •12.4 Створення програмного забезпечення мпс на мп фірми Motorola
- •Список рекомендованої літератури
- •4 Модуль
- •13 Мікропроцесорні системи на мікроконтролерах фірми motorola та їхнє програмування
- •13.1 Типові мікроконтролери фірми Motorola
- •Сімейство 68нс16/916
- •13.2 Система команд мікроконтролерів фірми Motorola
- •13.3 Налаштовування вбудованих засобів мікроконтролерів
- •14 Risc-процесори фірми motorola
- •14.1 Risc-процесори PowerPc
- •14.2 Risc-процесори ColdFire
- •14.3 Система команд risc-мікропроцесорів сімейства PowerPc
- •15 Архітектура та принципи побудови процесорів цифрового оброблення сигналів
- •15.1 Основні напрямки цифрового оброблення сигналів (цос)
- •15.2 Узагальнена архітектура процесорів сімейства dsp563xx
- •15.3 Організація циклічного буфера в dsp
- •15.4 Програмна реалізація цифрового фільтра сіх
- •16 Мпс на мікроконтролерах, мікропроцесорах та dsp
- •Список рекомендованої літератури
15.4 Програмна реалізація цифрового фільтра сіх
Вхідний контроль:
На якій операції цифрової обробки сигналів базується алгоритм реалізації цифрового фільтра СІХ?
Фільтри яких частот можна побудувати на базі цифрових СІХ-фільтрів?
Алгоритм реалізації фільтра має вигляд:
, де n = 0, 1, 2.…
Цифровий фільтр має структуру:
Фрагмент програми, яка зреалізовує цифровий фільтр 4-го порядку:
1 АDDR_A EQU 5000 ; Задання адреси циклічного
; буфера (ЦБ)
2 ADDR_B EQU 6000 ; Задання адреси bk
3 ADDR_C EQU 4000 ; Задання адреси хn
4 ADDR_D EQU 3000 ; Задання адреси yn
5 ADDR_E EQU 2000 ; Задання адрес N та М
6 ORG Y:ADDR_B ; В Y-пам’яті, розпочинаючи
7 DC 0.9,0.8 ; з адреси 6000, записано
8 DС 0.7,0.6 ; вектор коефіцієнтів b
9 ORG X:ADDR_C ; В Х-пам’яті, розпочинаючи
; з адреси 4000, записано вектор
; відліків хn
10 ORG X:ADDR_E ; В Х-пам’яті за адресою 2000
11 DС 4 ; занесено розмір буфера N
12 ORG Y:ADDR_E ; В Y-пам’яті за адресою 2000
13 DC 4 ; занесено кількість відліків М
14 ORG P:$100 ; Об’єктний код завантаження до
; пам’яті команд,
; розпочинаючи з адреси $100
15 MOVE #ADDR_E,R6 ; R6 – вказівник на N та М
16 MOVE #ADDR_D,R5 ; R5 – вказівник на Yn
17 MOVE #ADDR_B,R4 ; R4 – вказівник на bk
18 MOVE #ADDR_C,R1 ; R1 – вказівник на вектор хn
19 MOVE #ADDR_A,R0 ; R0 – вказівник на ЦБ
20 MOVE X:(RG),A ; Запис N до акумулятора
21 DEC A ; Організація ЦБ
22 MOVE A,M0 ; довжиною N (М0 = N – 1)
23 CLR A ; Обнулення циклічного
24 REP X:(R6) ; буфера
25 MOVE A,X(R0)+
26 MOVE M0,M4
27 MOVE X:(R1)+,X0 ; Завантаження х0→Х0
28 DО Y:(R6),loop
29 CLR A X0,X(R0)- Y:(R4)+,Y0 ; хn→циклічний буфер
; bk→Y0
30 REP M0
31 MAC X0,Y0,A X: (R0)-, X0 Y: (R4)+, Y0 ; Команда МАС-операції; сума
; bk·хn-k від k = 0 до k = N – 2
32 DО Y: (R6), loop ; хn→ЦБ
33 CLR A X0, X: (R0)- Y: (R4)+, Y0 ; bk→Y0
34 REР M0
35 MAC X0, Y0, A X:(R0)-,X0 Y:(R4)+,Y0 ; Сума bk·хn-k від k = 0 до k = N – 2
36 MACR X0,Y0,A (R0)+ ; A – yn, R0 вказує на хn-N+1
37 MOVE X:(R1)+,X0 A,Y:(R5)+ ; хn→X0, запис результату
; yn до Y-пам’яті за адресою
; від 3000
loop ;
Команда МАС (±)S1,S2, D виконує знакове множення з акумулюванням: множення двох знакових 24-бітних операндів джерела S1 та S2 та додавання або віднімання результату з/від акумулятора приймача D; результат зберігається в D.
Команда MACR (±)S1,S2, D виконує знакове множення з акумулюванням та округленням: множення двох знакових 24-бітних операндів джерела S1 та S2, додавання або віднімання результату з/від акумулятора приймача D та подальше округлення результату з використовуванням конвергентного округлення; результат зберігається в D.
Контрольні запитання:
Які операції виконує команда МАС?
З якою метою виконується обмеження результату за програмної реалізації СІХ-фільтра?
В який спосіб у процесорі DSP563XX апаратно підтримується команда
MAC X0, Y0, A X: (R0)-, X0 Y: (R4)+, Y0 ?
Контрольні запитання підвищеної складності:
Наведіть структуру цифрового фільтра 5-го порядку.
У яких командах наведеного вище фрагмента програми треба зробити зміни, щоби зреалізувати цифровий фільтр 5-го порядку, і які саме?