Міністерство освіти та науки України
Національний університет “Львівська Політехніка”
Кафедра САПР
Курсова робота
З курсу “Комп’ютери та мікропроцесорні системи”
ПРИСТРІЙ МІКРОПРОЦЕСОРНОЇ ОБРОБКИ
АНАЛОГОВОЇ ІНФОРМАЦІЇ
Керівник:
ЛЬВІВ-2006
Завдання
на курсову роботу студента
Стеців В.Ф.
Тема роботи: Мікропроцесорна обробка аналогової інформації.
Термін здачі студентом закінченої роботи 20.XII.2006р
Вихідні дані для роботи:
Функціональна залежність
Розрядність АЦП і ЦАП: 12
Полярність вхідного сигналу: однополярний
Організація обміну з АЦП: через переривання контролера КР580ВН59 за адресою 0048h. Використати режим роботи КР580ВВ55 “0”
Об’єм ОЗП і організація мікросхеми пам’яті: 512b з організацією 256х1
Вид функціонального вузла: Тактовий генератор (ГФ24)
Постановка задачі: Розробити компоненти технічного і програмного забезпечення мікропроцесорного пристрою на базі МП КР580ВМ80, який включає аналогово-цифровий і цифро-аналоговий перетворювачі і виконує функцію цифрової обробки аналогової інформації. Обробка описується заданим пропорційно-інтегро-диференціальним рівнянням, що пов’язує аналогові сигнали x(t) на вході і y(t) на виході системи.
Анотація
Стеців В.Ф.
“Пристрій мікропроцесорної обробки аналогової інформації”. Курсова робота. - НУ “Львівська політехніка”, каф.: САПР, дисципліна : “Комп’ютери і мікропроцесорні системи”, 2006.
Курсова робота складається з 38 сторінок, 17 таблиць, 17-ти схем і додатку.
В даній курсовій роботі розроблено компоненти апаратного і прогамного забезпечення мікропроцесорного пристрою, який включає аналого- і цифро-аналогові перетворювачі і виконує обробку за функціональною залежністю аналогового сигналу. Дана робота охоплює ввід і первинну обробку аналогової інформації, подальшу цифрову обробку інформації за програмою і вхідними даними, а також вивід обробленої інформації в аналоговій формі для подальшого використання.
Зміст
Перелік умовних скорочень 5
Вступ. 6
1. Синтез аналогової схеми фільтру 7
2. Синтез структурної схеми цифрового фільтру 10
3.Вибір і обґрунтування типу АЦП І ЦАП 11
3.1 Вибір типу АЦП 11
3.2 Вибір типу ЦАП 15
3.3 Структура представлення даних 19
4.Структурна схема та алгоритм функціонування МПП 21
4.1 Опис структурної схеми МПП 21
4.2 Розподіл адресного простору 23
5. Загальна структура програми роботи МПП 28
5.1 Опис програм вводу,виводу. 31
5.2 Опис програм обробки інформації. 32
5.3 Оцінка верхньої фінітної частоти вхідного аналогового сигналу 33
6. Опис функціонального вузла 34
Аналіз результатів та висновки 36
Список використаної літератури 37
Перелік умовних скорочень
АЦП
аналогово-цифровий перетворювач
ВІС
велика інтегральна схема
ГТІ
генератор тактових імпульсів
ДША
дешифратор адрес
ІС
інтегральна схема
КС
керуюче слово
МП
Мікропроцесор
МПП
мікропроцесорний пристрій
МПС
мікропроцесорна система
МР
молодші розряди
ОЗП
оперативний запам`ятовуючий пристрій
ОП
операційний підсилювач
ПЗП
постійний запам`ятовуючий пристрій
ППІ
паралельний програмований інтерфейс
РКС
регістр керуючого слова
СК
системний контролер
СР
старші розряди
СШ
системана шина
ТГ
тактовий генератор
ТТЛ
транзисторно-транзисторна логіка
ЦАП
цифро-аналоговий перетворювач
ЦФ
цифровий фільтр
ЦІС
цифрова інтегральна схема
ША
шина адрес
ШД
шина даних
ШК
шина керування
КМОН
метал оксид напівпровідник – із комплементарною структурою
Вступ.
При виконанні даної курсової роботи потрібно розробити пристрій мікропроцесорної обробки аналогової інформації. Перетворення задається вхідним інтегро-диференціальним рівнянням, вигляд якого може бути дуже різним залежно від області науки, в якій застосовується цей пристрій. Оскільки вхідний сигнал є аналоговим, а мікропроцесор працює з цифровим представленням інформації, то його потрібно перетворити в цифрову форму за допомогою АЦП. Після обробки результат потрібно вивести на аналоговий вихід пристрою, який формується за допомогою мікросхеми ЦАП.
Перетворення за функціональною залежністю такого типу досить легко можна реалізувати без використання мікропроцесорної техніки – на активних чи пасивних елементах, але в чисто аналогових пристроях присутні значні похибки перетворень через часовий та температурний дрейф, значну нестабільність параметрів елементів, що використовуються у аналогових пристроях. Перетворення ж за допомогою мікропроцесорної техніки значно зменшує похибки перетворень. Тому використання мікропроцесорної техніки у подібного роду пристроях стає все популярнішим серед виробників техніки для перетворення сигналів.
Основні завдання при виконанні курсової роботи :
Поглиблення теоретичних знань в сфері технічних і програмних засобів мікропроцесорних пристроїв (МПП).
Набуття навиків самостійної розробки загальної структури МПП з аналогово-цифровим та цифро-аналоговим перетворенням інформації, побудови принципових схем окремих вузлів.
Розвиток навичок роботи з технічною та довідниковою літературою із вибору аналого-цифрового і цифро-аналогового перетворювачів.
Узагальнення та закріплення знань мови програмування Асемблер для МП КР580ВМ80А, розробки та від лагодження програм на вказаній мові.
Навчання використанню стандартних підпрограм з прикладного програмного забезпечення МП КР580ВМ80А.
Хоча, на перший погляд, мікропроцесорний пристрій є набагато складнішим за своїх аналогових “колег”, він не тільки забезпечує набагато більшу точність перетворення, а й є набагато простішим для модифікації параметрів та функціональної залежності перетворення, ніж аналогові пристрої. Мікропроцесорний пристрій у такому випадку потребуватиме тільки зміни коефіцієнтів, що використовуються програмою перетворення, або є самої програми, коли аналоговий пристрій довелося б переробляти апаратно (замінювати одні елементи іншими, або ж взагалі змінювати їх розташування та з’єднання, що призвело б до потреби створювати новий пристрій). Як бачимо, використання мікропроцесорної техніки має значні переваги над аналоговими пристроями і майже ні в чому не програє. Отже, цифрова техніка в майбутньому буде розвиватися ще інтенсивніше, ніж сьогодні і обов’язково будуть потрібні спеціалісти в галузі розробки як цифрових фільтрів та перетворювачів, так і більш складних пристроїв.
1. Синтез аналогової схеми фільтру
Під час побудови мікропроцесорних пристроїв та систем автоматики часто виникає необхідність розв’язувати задачі, пов’язані з проектуванням та розробкою засобів перетворення аналогових сигналів, оскільки вихідні сигнали сенсорів в своїй більшості є аналоговими.
Крім того, не менш важливими є проблеми аналогово-цифрового перетворення сигналів. До складу МПП входять засоби перетворення та обробки не тільки цифрових, але й аналогових сигналів та аналогово-цифрового перетворення.
Фізичні величини, такі як сила, тиск, температура та інші, що є об’єктом контролю та регулювання, за допомогою відповідних сенсорів перетворюються у відповідні сигнали. Вихідні сигнали сенсорів дуже часто є сигналами низького рівня, крім того, вони є аналоговими величинами, тому їх попередньо підсилюють та виконують аналогово-цифрове перетворення.
Пристрій, що реалізується на основі певної функціональної залежності перетворення вхідного аналогового сигналу у аналоговий вихідний сигнал – називають аналоговим фільтром. Передавальна характеристика аналогового фільтру забезпечує відповідні амплітудно-частотні та фазово частотні залежності, що визначає тип фільтру.
Цифровий фільтр може бути реалізований як апаратурно, так і програмно. При апаратурній реалізації необхідними схемними елементами є перемножувачі, суматори і елементи затримки.
Задано рівняння автоматичного регулювання вхідного x(t) та вихідного y(t) сигналів:
, (1.1)
де x(t) – вхідний аналоговий сигнал, y(t) – вихідний аналоговий сигнал, τ – стала величина.
На основі наступних функціональних залежностей на операційних підсилювачах будується схема аналогового фільтра:
Функціональна схема аналогового фільтра на основі операційних підсилювачів:
Схема 1. Функціональна схема аналогового фільтра
Так як в моєму рівнянні нема подвійного диференціалу чи інтегралу то: виконую побудову схеми фільтру на основі пасивних елементів, тобто пасивні аналогові фільтри. Для синтезу якого використовуються елементи R, L, C що об’єднуються в RC, LC або RLC ланки. Вихідна напруга знімається з якого-небудь одного або двох послідовно з’єднаних елементів. Синтез аналогової схеми може бути побудований таким чином, що до заданого рівняння застосується перетворення Лапласа.
y(t) ( Y(p)
x(t) ( X(p)
Отримаємо вираз:
Отримане алгебраїчне рівняння розв’яжемо відносно Y(р):
На основі виведеного рівняння будуємо функціональну схему фільтра на пасивних елементах.
Схема 2. Функціональна аналогова схема фільтра на пасивних елементах.
Знайдемо значення сталої (:
y(t) = IR;
;
;
;
Отже,
Технічні характеристики аналогових схем фільтрів на практиці обмежені та потребують схем корекції від температурного дрейфу та інших зовнішніх впливів. Цифрові методи обробки інформації оминають ці недоліки і знайшли широке застосування з появою мікропроцесорних пристроїв. Мікропроцесорна обробка характерезується збільшенням точності функціонального перетворення, швидкістю та гнучкістю, що забезпечується цифровим програмуванням та можливістю фільтрації більшого числа аналогових сигналів.
2. Синтез структурної схеми цифрового фільтру
Цифровий фільтр – пристрій, який дозволяє перетворити дискретизований сигнал x(t) у інший y(t). Це цифрова схема для зміни частотного спектра дискретних сигналів. Цифровий фільтр може бути реалізований як апаратно, так і програмно. При апаратній реалізації необхідними схемними елементами є перемножувачі, суматори і елементи затримки.
Дискретизація аналогового рівняння полягає в заміні безперервної величини її дискретними відліками (x(t) -> xn, y(t) -> yn) і відповідними перетвореннями похідних та інтегралів. Отже, дискретизація першої похідної:
,
де Δt – інтервал дискретизації.
В результаті часової дискретизації при заміні безперервної величини її дискретними відліками (x(t) -> xn, y(t) -> yn) для заданого рівняння (1.1) отримаємо рівняння цифрового фільтра. Це рівняння в загальній формі при обробці інформації в реальному масштабі часу, має вигляд:
(2.1)
Отже, коефіцієнти, які визначають характеристики фільтра будуть мати такі значення:
(2.2)
Рівняння цифрового фільтра буде мати наступний вигляд:
(2.3)
За рівнянням (2.3) будуємо структурну схему апаратної реалізації цифрового фільтра:
Схема 3. Структурна схема реалізації рівняння цифрового фільтра:
XY – елемент множення; DL – елемент затримки; Σ – суматор.
3.Вибір і обґрунтування типу АЦП І ЦАП
У відповідності з критеріями даної роботи розрядність АЦП має бути 12 біт, а ЦАП 12 біт. Критерієм вибору АЦП і ЦАП (крім розрядності) можуть бути наступні параметри:
Час перетворення – визначається інтервалом часу від моменту досягнення вихідного сигналу до моменту подачі цифрового сигналу до моменту досягнення вихідним сигналом встановленого значення;
Похибка перетворення – найбільше значення відхилення значення аналогового сигналу від розрахункового;
Нелінійність – максимальне відхилення лінійно наростаючої напруги від прямої лінії, яка з’єднує точку нуля і максимального вихідного сигналу.
3.1 Вибір типу АЦП
Проаналізувавши запропоновані мікросхем АЦП, зокрема К572ПВ1 (КР572ПВ1) і К1108ПВ2, я дійшов висновку що найкраще вище перерахованим критеріям відповідає ВІС АЦП К572ПВ1. Дамо коротку характеристику цій мікросхемі.
Напівпровідникова ВІС 12-ти розрядного АЦП типу К572ПВ1 (А, Б, В) є універсальним багатофункціональним вузлом для пристроїв вводу-виводу МП систем низької і середньої швидкодії. Разом із зовнішніми ОП , ГТІ мікросхема виконує функції АЦП послідовного наближення з виводом паралельного двійкового коду через вихідні каскади з трьома станами, а також помножуючого АЦП з паралельним і послідовним вводом інформації. Конструктивно ВІС виконана в плоскому металокерамічному герметичному корпусі типу 4134.48-2.
У склад ВІС входять пристрої для організації побайтового обміну інформації з 8-розрядною шиною даних МП. В режимі АЦП існує можливість організації синхронної і циклічної роботи, довільного зменшення числа розрядів і виводу даних в послідовному коді.
Таблиця1
Основні електричні параметри мікросхеми
при температурі довколишнього середовища 25 ( 10 0С.
Не менше
Не більше
Нелінійність (L, %:
К572ПВ1А
-0,05
0,05
К572ПВ1Б
-0,1
0,1
К572ПВ1В
-0,2
0,2
Диференційна не лінійність (LD, %:
К572ПВ1А
-0,1
0,1
К572ПВ1Б
-0,2
0,2
К572ПВ1В
-0,4
0,4
Вихідна напруга низького рівня U0L, B:
-
0,3
Вихідна напруга високого рівня U0H, B:
2,4
-
Струм споживання ІСС1, мА:
-
3
Струм споживання ІСС2, мА:
5
-
Типове значення вихідного струму при UREF = 10 В становить 50 мА. Вхідний струм управління не перевищує 1 мкА. Нормальне функціонування ВІС забезпечується при тактовій частоті до 250 кГц.
Кількість виводів мікросхеми становить 48. Їх нумерація і призначення наведені у таблиці 2.
Таблиця 2
Призначення виводів ВІС К572ПВ1
Вивід
Призначення
1
2
3
4-15
16
17
22
23
24
25
26
27
28
29
30
31
32
40
41
42
43
44
45
46
47
48
18-21, 33-39
послідовний вхід;
вхід управління СР;
напруга живлення UCC1;
цифровий вхід-вихід ( від СР до МР );
вхід управління МР;
вхід управління режимом;
вихід Цикл;
вхід порівняння;
напруга живлення UCC2;
вхід ТІ;
вихід Кінець перетворення;
вхід Пуск;
вхід Цикл;
вхід стробування ЦАП;
цифрова земля;
кінцевий вивід РМ R–2R;
загальний вивід резисторів R/2, R/4;
вивід резистора R/4;
вивід резистора R/2;
зразкова напруга UREF;
аналоговий вхід 1;
аналоговий вхід 2;
загальний вивід резисторів аналогових входів 1 і 2;
аналоговий вихід 1;
аналоговий вихід 2;
аналогова земля;
незадіяні виводи.
Мікросхема працює від двох джерел живлення UCC1 = ( 5 (15 ) В ( 5 % і UCC2 = 15 В ( 5 %. При узгоджені мікросхеми з ТТЛ схемами, напругу живлення UCC1 установлюють 5 В( 5%,
а при узгоджені з КМОП схемами – 15 В ( 5 %. При любій UCC2 напруга високого рівня на вході порівняння не повинна бути менша за 10 В.
Таблиця 3
Гранично допустимі і граничні значення електричних режимів експлуатації:
Гранично допустимі
Граничні
Не менше
Не більше
Не менше
Не більше
Зразкова напруга UREF, В:
-10,29
10,29
-15
15
Вхідна напруга високого рівня UIH,В:
-2,4
5,25
2,4
17
Вхідна напруга низького рівня UIL, В:
0
0,4
0
0,4
Не менше
Не більше
Не менше
Не більше
Вихідний струм високого рівня I0H, мА:
-
0,04
-
0,04
Вхідний струм низького рівня I0L, мА:
-
0,4
-
0,4
Робота ВІС в режимі АЦП проходить у відповідності з добре відомим принципом послідовного наближення з програмованим зсувом. Часова діаграма АЦП наведена на рис. . Перетворення здійснюється за 12 робочих тактів, кожен з яких за тривалістю рівний двом імпульсам ГТІ. Допоміжний такт використовується для формування сигналу “кінець перетворення”. По цьому сигналу відбувається зчитування цифрової інформації.
Схема 4. Часова діаграма роботи ВІС К572ПВ1 в режимі АЦП.
В циклічному режимі роботи за періодом зчитування йде період повернення АЦП в початковий стан ( скидання ) по сигналу з виводу 22 ( Цикл ). Типовий час перетворення складає 110 мкс. Полярність діапазону вхідної напруги може бути любою і встановлюється вибором полярності UREF.
Число розрядів перетворення може бути зменшено шляхом подачі на вхід 27 повторного сигналу “Запуск” по закінченню (n+1) такту. З’єднання виводів 22 і 28 переводить схему з синхронного режиму роботи в циклічний, при цьому на вхід 27 подається логічний 0.
Особливістю конструктивного-технологічного виконання ВІС АЦП К572ПВ1 дає можливість її сумісній роботі із серійними МП комплексами без застосування додаткових зовнішніх пристроїв.
Умовне позначення ВІС АЦП К572ПВ1 приведено в схемі 5.
Схема 5. Позначення на схемах ВІС АЦП К572ПВ1
Для спряження АЦП і ЦАП з МП використаємо програмований паралельний інтерфейс (ППІ) КР580ВВ55. Режим роботи і напрям обміну з зовнішніми пристроями програмується керуючими словами. Керуюче слово режиму встановлює режими роботи груп А або B і режим вводу або виводу для кожного порту.
Порти КР580ВВ55 А і В використовуються для передачі даних, а порт С – для керуючих сигналів.
Запуск АЦП (сигнал Запуск) здійснюється через паралельний інтерфейс КР580ВВ55 (розряд 7 каналу С). ППІ використовується в режимі 0, сигнал “Готовність” поступає на вивід запиту переривання IR2 контролера переривання КР580ВН59.
Схема 6 Підключення АЦП до шин МПП в режимі вводу.
3.2 Вибір типу ЦАП
В ЦАП цифрова інформація вводиться у вигляді паралельного цифрового коду перетворюваного числа, а аналоговий сигнал на виході є носієм інформації.
Проаналізувавши запропоновані мікросхеми ЦАП, зокрема К572ПА2 (КР572ПА2), К1108ПА2 і К594ПА1 я дійшов висновку що найкраще вище перерахованим критеріям відповідає ВІС ЦАП К594ПА1. Дамо коротку характеристику цій мікросхемі.
Мікросхема типу К594ПА1 являє собою паралельний ЦАП з сумуванням струмів, комбінованою матрицею (зважених і R-2R резисторів), використовується для перетворення двійкового 12 розрядного коду в струм та працює зі стандартними рівнями сигналів від ТТЛ та КМОН ЦІС. Конструктивно ЦАП створений на двух кристалах, які знаходяться в металокерамічному корпусі. Мікросхема створена по біполярній планарно-епітаксіальній технології з p-n-p та n-p-n транзисторами.
Таблиця 4
Основні електричні параметри при температурі навколишнього середовища 25+(-)10С:
Не менше
Не більше
Число розрядів
12
Диференціальна нелінійність δ(%)
-0,012
0,012
Діапазон вихідних струмів Iorn (мА):
Уніполярний
1,8
2,2
Біполярний
0,9
1,1
Струм утєчкі на виході (мкА)
0,7
Вхідна напруга низького рівня (В), про роботі з :
ТТЛ
0,8
КМОН
0,3
Вхідна напруга низького рівня (В), про роботі з :
ТТЛ
2,0
КМОН
0,7Ucc1
Струм живлення Icc1(мА)
25
Струм живлення Icc2(мА)
35
Вихідний струм Io(М)
2,2
Час встановлення вихідного струму (при зміні коду від 00...00 до 11...11)(мкс)
3,5
Таблиця 5
Гранично допустимі значення електричних режимів експлуатації:
Не менше
Не більше
Напруга джерела живлення Ucc1(В)
6,0
Напруга джерела живлення Ucc2(В)
-18
Напруга опорного джерела Uref(В)
9,0
11,0
Вхідна напруга високого рівня (В)
2,0
6,0
Вхідна напруга низького рівня (В)
0
1,0
Типові залежності електричних параметрів ЦАП від зміни напруги джерел живлення та температури навколишнього середовища:
Схема 7.типові залежності не лінійності
та диференціальної не лінійності від напруг джерел живлення.
Схема 8. типові залежності не лінійності
і часу встановлення від температури навколишнього середовища.
:
Схема 9. типова залежність часу встановлення ІС від ємності навантаження
Таблиця 6
Нумерація та призначення виводів мікросхеми:
1
вхід зсуву вихідного рівня;
2
вихід зсуву вихідного рівня;
3
вихід;
4
зворотній зв’язок Uorn=10B;
5
зворотній зв’язок Uorn=20B;
6
загальний;
7
цифровий вхід 12 (МР);
8-17
цифрові входи 11-2;
18
цифровий вхід 1 (СР);
19
напруга джерела живлення Ucc1;
20
керування логічним порогом;
21
інвертуючий вхід ОУ;
23
вхід джерела опорної напруги Uref;
24
напруга джерела живлення Ucc2;
Мікросхема К594ПА1 експлуатується без додаткового тепло відводу. При температурі навколишнього середовища 85 С та більше поверхню ІС необхідно охолоджувати повітрям зі швидкістю 3 м/с. Забороняється подавати які-небудь електричні сигнали на поверхню кришки корпусу і незадіяні виводу ІС.
Номінальні значення ємності навантаження ІС 10 пФ. Загальна ємність навантаження може перевищувати номінальне значення, але при цьому норми на часові параметри ЦАП не гарантуються.
В режимі роботи ЦАП з струмовим виходом допускається підключення джерела опорного навантаження до виводу 22 ІС . При цьому вихідного струму перетворювача буде залежати від стабільності підключеного резистору.
Мікросхема К594ПА1 забезпечує норми на електричні параметри, при номінальному значенні Uref=10,24B з допустимими відхиленнями +(-) 3% і стабільності підтримки напруги 0,005%. Амплітудні значення пульсацій Джерела опорної напруги можуть досягати 150 мкВ, але значення напруг перехідних і паразитних сигналів не повинні перевищувати 200 мкВ при тривалій дії не більше 0,3 мкс.
Джерело стабілізаційної опорної напруги для ІС реалізується на ІС 140УД6А, мікросхеми К594ПА1 завдяки високій температурній стабільності основних електричних параметрів, добрим динамічним характеристикам, можливості роботи зв біполярному включенні були задіяні в пристроях спряження з ЕОМ, та вимірювальну апаратуру. Умовне позначення ЦАП К594ПА1 приведено в схемі 10.
Схема 10. Позначення на схемах ЦАП К594ПА1
Рекомендована схема підключення ЦАП К594ПА1 показана нижче, штриховою лінією показано з’єднання виводів для роботи з КМОН ЦІС. Підключення джерел опорної напруг до виводу 23 ІС виконується за допомогою настоюваного резистору 100 Ом або без нього.
Для підключення ЦАП до МПП використовується буферний регістр КР580ИР82 для того щоб забезпечити одночасно подавання дванадцятьох розрядів з ППІ. З початку з порту А в буферний регістр записується 8 розрядів, а потім використовуємо режим 1 ППІ. Коли буфер порта В готовий видати інформацію РС1(OBF) встановлюється в нуль його ми і використовуємо щоб одночасно видати інформацію з буферного регістру і порту В на ЦАП. Підключення АЦП до МПП в уніполярному режимі приведено в схемі11.
Схема 11. Структурна схема підключення ЦАП до МПП
3.3 Структура представлення даних
Структура даних, які входять в рівняння цифрового фільтра, визначається коефіцієнтами рівняння і заданою розрядністю АЦП.
Вхідний сигнал є біполярним , розрядність АЦП дорівнює 12. Тоді, результат перетворення АЦП в залежності від вхідного сигналу подано у вигляді таблиці 3:
Таблиця 7
Вхід
Код
+Uxmax
4095
+Uxmax/2
2047
0
0
Uxn = Uxmax(xn/212 -1).
Результат перетворення 12 - розрядного блоку ЦАП в залежності від цифрового коду yn вихідної напруги Uyn подано у вигляді таблиці 4.
Таблиця 8
Код
Вихід ЦАП
212-1
+Uymax
27
+Uxmax/2
0
0
Підставимо залежності у рівняння цифрового фільтра :
Uymax yn /212 = a0 × Uxmax xn/212 + b1 × Uymax yn-1/28,
(Uymax/Uxmax )yn = a0 × xn + b1 ×(Uymax/Uxmax )yn-1,
yn = a0 × (Uxmax/Uymax ) xn + b1 × yn-1.
Коефіцієнти цифрового фільтру при xn, xn-1 залежать від співвідношення напруг (Uymax/Uxmax ) на вході АЦП і виході ЦАП даного МПП. Тому при аналізі структури даних ми вибирати перетворювачі з електричними параметрами (Uymax/Uxmax ) = 1.
Згідно завдання розрядність вхідного сигналу є рівною 12, тому що така розрядність АЦП, тобто для представлення xn і xn-1 потрібно 2 байти . Визначимо скільки розрядів займатиме результат yn. Для заданого рівняння у вигляді (2.1), або (2.3) де коефіцієнти визначаються з:
, (3.3.4)
тобто
(3.3.5)
коефіцієнти визначаються:
(3.3.6)
0 < a0 < 1 ; 0 < b1 <1. (3.3.7)
(3.3.8)
Відведемо по одному байту для представлення коефіцієнтів a0,b1.
Отже для коефіцієнта a0 відводиться 8 розрядів. В свою чергу xn, yn-1 не можуть мати більше ніж 12 розрядів тому що така розрядність АЦП. Під добутки аxn, а0уn-1 відводимо по 20 розрядів тому що добуток 8-ми розрядного і 12-ти розрядного чисел не перевищує 20 розрядів.
Отже максимальне значення yn буде 21 розряд. Так як в нас ЦАП 12-ти розрядний то виводиться лише 12 старших розрядів, а решта 8 неінформативні. Це пов’язано з тим, що в процесі мікропроцесорної обробки накопичуються похибки квантування АЦП, похибки округлення арифметичних операцій, похибки трансформацій та інші, які не доцільно відтворювати на виході системи.
Схема 12.Структура представлення даних
Для представлення хn, yn-1 та yn використовуються 2-байтні комірки оскільки МП працює з даними, розмір яких є кратний 1 байту. Надлишкові розряди в подальшому не враховуються.
4.Структурна схема та алгоритм функціонування МПП
4.1 Опис структурної схеми МПП
Структурна схема МПП включає крім АЦП і ЦАП всі необхідні для функціонування компоненти МПС: МП КР580ВМ80, тактовий генератор КР580ГФ24, системний контролер КР580ВК28, оперативну та постійну пам’ять (ОЗП, ПЗП), програмований паралельний інтерфейс КР580ВВ55, до якого підключаються АЦП і ЦАП, програмований контролер переривань KР580ВН59.
Схема 13. Структурна схема МПП
Позначення елементів на схемі 11: ШД– шина даних (8-ми розрядна); ДШП – дешифратор пам’яті; ША – шина адрес (16-ти розрядна); ШК – шина керування; ДШВ/В – дешифратор каналів вводу-виводу; x(t) – вхідний аналоговий сигнал; y(t) – вихідний аналоговий сигнал.
Таблиця 9. Опис та мікросхеми елементів структурної схеми МПП
Позначення
Опис
Мікросхема
ГТІ
Генератор тактових імпульсів
КР580ГФ24
МП
Мікропроцесор
КР580ВМ80
СК
Системний контролер
КР580ВК28
ШФ
Шинний формувач
КР580ВА86
АЦП
Аналогово-цифровий перетворювач
К572ПВ1
ЦАП
Цифро-аналоговий перетворювач
К594ПА1
ППІ
Програмований паралельний інтерфейс
КР580ВВ55
ПЗП
Постійно-запам’ятовуючий пристрій
К573РФ21
ОЗП
Оперативний запам’ятовуючий пристрій
К155РУ5
ПКП
Програмований контролер переривань
КР580ВН59
Призначення кожного з елементів структурної схеми МПП:
МП- центральний пристрій мікропоцесорної системи. Мікропроцесор в складі даного МПП виконує наступні функції: формує адреси команд, видає команди з пам’яті, їх дешифрує, виконує над даними опереції, при неодхідності записує результат в пам’ять, формує керуючі сигнали для обміну, реагує на можливі зовнішні сигнали.
ГТІ- виробляє синхросигнали F1, F2 для синхронізації роботи МП. Крім того мікросхема формує ще сигнали Reset, Ready, F2ttl, які використовуються для синхронізації зовнішніх прстроїв та пам’яті. ГТІ також виробляє сигнал , який поступає на вхід системного контролера і за яким системний контролер фіксує слово стану процесора.
СК використовується для:
формування керуючих сигналів для роботи з памяттю(MEMP, MEMW) і зовнішніми пристроями (I/OR, I/OW), а також сигналу дозволу переривання INTA;
фіксації слова-стану процесора;
буферизації шини даних.
ПЗП- призначений для постійного зберігання даних. Такими даними є програма , за якою функціонує цифровий фільтр, і постійні коефіцієнти.
ОЗП- призначений для тимчасового зберігання даних .
ППІ - використовується для обміну інформацією між МП та ЦАП/АЦП.
Призначеній для організації вводу-виводу паралельної інформації різних пристроїв.
ПКП- виконує наступні функції:
фіксація запитів переривань від 8 зовнішніх джерел
програмне маскування запитів, які поступили
присвоювання фіксованих або циклічнозмінюваних пріорітетів
формування коду операції команди Call і 16-тирозрядної адреси цієї підпрограми
послідовне опитування зовнішніх пристроїв для визначення потреби в обміні
4.2 Розподіл адресного простору
В адресний простір МП КР580ВМ80 входить 64К адрес пам’яті, що визначається 16-розрядною адресною шиною.Мікропроцесор КР580ВМ80 може здійснювати синхронний і асинхроннай обмін інформацією за даними адресами з пам’ятю (ОЗП, ПЗП) та зовнішніми пристроями. При обробці інформації МП зчитує коди команд, операнди і записує одержаний вміст в регістри РЗК або виконує обмін інформації з пам’ятю та зовнішніми пристроями.
Можливі два підходи до організації звертання до пристроїв обміну інформації. Перший підхід використовує звертання до зовнішніх пристроїв, як до комірок пам’яті. Тобто, адресний простір, що відводиться для цих пристроїв включає 64К адрес. Однак, внаслідок повного вкладення адресного простору пристроїв вводу/виводу в простір адрес пам’яті, останнє пропорційно зменшується з збільшенням числа обслуговування зовнішних пристроїв вводу/виводу. До переваг даного підходу можна віднести можливість використання різноманітних команд пересилання даних.
Інший підхід використовує роздільне керування пам’ятю і зовнішніми пристроями.Лише дві команди IN і OUT, у випадку, призначені для обміну інформації з зовнішніми пристроями. Так, як для цих команд адреса для зовнішнього пристрою 8-ми розрядна, то МП КР580ВМ80 може звертатись до 256 пристроїв вводу і 256 пристроїв виводу. При цьому адрсний простір пам’яті буде максимальним (64К).
ПЗП
0000H jmp 0050H
0048H jmp 0200H
0050H Головна програма
0200H Обробник переривань
1 Кілобайт
ОЗП
FС00H Xn
FС02H A0
FС04H В1
FС06H Yn-1
FС0CH Yn
FС0DH допоміжні
…
FDFF SP
512 Байт
Схема 14 Розподіл простору адрес в МПП обробки аналогового сигналу.
Нижче приведені таблиці розподілу адресного простору схем пам’яті і зовнішніх пристроїв.
Таблиця 10
Адреси комірок пам’яті (ОЗП)
1111110000000000b
fc00h
Мінімальна адреса
1111110111111111b
fdffh
Максимальна адреса
Таблиця 11
Адреси комірок пам’яті (ПЗП)
0000000000000000b
0000h
Мінімальна адреса
0000001111111111b
03ffh
Максимальна адреса
Таблиця 12
Адреси портів ППІ (ЦАП)
11111100b
fch
Порт А
11111101b
fdh
Порт В
11111110b
feh
Порт С
11111111b
ffh
РКС
Таблиця 13
Адреси портів ППІ (АЦП)
00000000b
10h
Порт А
00000001b
11h
Порт В
00000010b
12h
Порт С
00000011b
13h
РКС
Таблиця 14
Адреси портів ПКП
11111110b
FЕh
А=0
11111111b
FFh
А=1
4.3 Алгоритм функціонування МПП.
Схема 15. Алгоритм функціонування МПП
При одночасному включені живлення –5В, +5В,12В і поступленні тактових імпульсів на мікропроцесор, всі регістри і прапорці МП встановлюються в довільні стани. Після цього подається на з ГТІ на вхід RESET МП сигнал високого рівня тривалістю не менше 3 тактів. Лічильник команд (PC) , тригер дозволу переривання (вихід INTE), а також тригер підтвердження захоплення (вихід HLDA) скидаються, і мікропроцесор починає вибірку з пам’яті команд, розміщених з нульової адреси.
Алгоритм головної програми включає наступні пункти.
Ініціалізація зовнішніх пристроїв ( ППІ і ПКП ) і початкове обнулення змінних. ППІ, до якого підключений АЦП програмується на режим роботи 0, порт А і порт В – на ввід. ППІ, до якого підключений ЦАП також програмується на 0-й режим роботи, однак порти А і В працюють на вивід. В цьому режимі по сигналу, який подається на вхід RD (WR) дані читаються (записуються) з переферії ( у периферію ) в порт, який задається по адресних лініях A0, A1. При виводі із МП інформація запам’ятовується в регістрах портів, а при вводі необхідно підтримувати сигнал на входах портів до тих пір, поки МП не прочитає інформацію. ПКП програмується наступним чином. Адреса підпрограми обробки переривання – 0200h, запит – IR2. Використовуємо такий спосіб формування молодшого байту адреси підпрограми обробки переривання – XXXYYY00.
Обнулення змінних ( xn-1, yn-1, ) виконується у зв’язку з тим, що вони використовуються як множники у рівнянні цифрового фільтру, однак при першому звертання до цього рівняння ще не сформовані ( отже повинні бути нульовими).
Подання на АЦП сигналу “Запуск”.
Обробка отриманої інформації і вивід її на ЦАП. Обробка включає перемноження і сумування елементів у відповідності до рівняння цифрового фільтру, тобто знаходження кінцевої вихідної величини yn, яка і виводиться на ЦАП. Після цього здійснюється перехід до пункту 2.
Функціонування МПП припиняється після вимкнення живлення.
Блок-схема програми обробки переривання приведена на наступній схемі. Під час виконання команд обробника всі переривання заборонено. Пісня збереження в стеку регістрів, які будуть використовуватись, скидається сигнал “Запуск” АЦП, і відбувається читання портів ППІ1. Прочитана інформація записується в пам’ять. Наступними діями є завантаження в контролер переривань ОКС 2, відновлення зі стеку регістрів, дозвіл переривань і повернення до перерваної програми.
В даному МПП програмований контролер переривань КР580ВН59 буде використаний для організації обміну з АЦП. Зв’язок контролера з МПП здійснюється через двонаправлений буфер даних. Виходи контролера переводяться у високоімпендансний стан при CS=1. Вхід А0 адресує внутрішні регістри контролера (керуючі слова, маски, стани ).Oскільки число внутрішніх регістрів є більше 2 для їх додаткової адресації використовують внутрішній лічильник а також окремі розряди керуючих слів.
Схема 16. Алгоритм програми обробки переривання
За допомогою сигналу здійснюється читання слова-стану з ПКП на шину даних, а сигналом запис керуючих слів з шини даних в контролер. На входи IR0-IR7 подаються запити переривань по окремих входах. Серед цих запитів вибирається запит з найвищим пріоритетом і формується сигнал INT для МП. При переході МП до обробки переривань системним контролером формується сигнал INTA (підтвердження переривання) в результаті чого контролер переривань видає на шину даних код команди Call ( виклик підпрограми ). Цим сигналом в регістр запитів записуються всі наявні на входах запити. Після цього МП через системний контролер видає ще два рази сигнал INTA, яким контролер видає на шину даних ще 2 Байти адреси підпрограми обробки переривань. Реакція контролера переривань і МП на запит переривання фіксується встановленням в 1 відповідного розряду регістра обслуговування і встановленням в 0 цього ж розряду в регістрі запитів. Кожний наступний запит на переривання сприймається контролером тільки після виконання підпрограми обслуговування поточного запиту по даному входу і скиду відповідного розряду регістру стану, що здійснюється програмним шляхом.
5. Загальна структура програми роботи МПП
ORG 100H
mvi a,a0 ; занесення в пам’ять коефіцієнтів
sta FС02h
mvi a,b1
sta FС04h
lxi sp,ffffh
lxi h,00h ;очищення комірок пам’яті для yn-1
shld FС06h
mvi a,09eh ;ініціалізація ППІ (АЦП)
out 13h
mvi a,08h ;ініціалізація ППІ (ЦАП)
out ffh
ei ;дозвіл переривань
mvi A,048H ; Програмування ПКП: Завантаження КСІ 1.
out 0FEH
mvi A,00h ; Завантаження КСІ 2.
out 0FFH
mvi 0FBh ;маскування непотрібних запитів на переривання.
out 0FFh
Work
7 mvi a,0fh ;запуск АЦП
out 13h
;Початок обробки інформації.
;визначення xna0
16 lhld FС00h
5 mov d,h
5 mov e,l
13 lda FС02h
17 call dmult
13 sta FС0eh
16 shld FС0fh
;визначення yn-1b1
16 lhld FС06h
5 mov d,h
5 mov e,l
13 lda FС04h
17 call dmult
13 sta FС11h
16 shld FС12h
;визначення yn
13 lda FС0eh
5 mov b,a
16 lhld FС0fh
5 mov c,h
5 mov d,l ;в регістрах ВСD- xna0
13 lda FС11h
5 mov e,a
16 lhld FС12h
17 call plus ; в регістрах ВСD- yn
5 mov a,b ;зсуваємо так щоб в регістрах ВС були 12 старших розрядів
4 rrc
5 mov b,a
5 mov a,c
4 rar
5 mov c,a
5 mov a,b ; занесення 12 старших розрядів результату в комірки для yn
13 sta FС0ch
5 mov a,c
13 sta FС0dh
16 lhld FС0Ch
16 shld FС06h ;занесення yn в комірку для yn-1
16 lhld FС0ch
;Вивід результату на ЦАП
5 mov a,l
10 out fch ;записуємо 8 молодших розрядів в буферний регістр
5 mov a,h
5 out fdh ; записуємо 2 старших розряди в буферний регістр
5 mov 01,h
5 out ffh ;вивід інформації на ЦАП
10 jmp Work ;перехід на початок
dmult: ;підпрограма множення
10 lxi h,0h
7 mvi c,0h
z3:
10 dad h
4 ral
10 jnc z4
10 dad d
z4:
7 aci 0
5 dcr c
10 jnz z3
ret
plus:
5 mov a,d
7 add l
5 mov d,a
5 mov a,c
7 adc h
5 mov c,a
5 mov a,b
7 adc e
5 mov b,a ;BCD- результат
10 ret
Основна програма, за алгоритмом, починається з ініціалізації мікросхеми K580ВВ55 для обміну з ЦАП і АЦП, після того АЦП встановлюється (після гасіння) в режим перетворення вхідного сигналу. Далі іде циклічний підрахунок і виведення результату.
Програма обробки переривань.
op:
4 di ;Заборона переривань
11 push psw
mvi 0fh ;гасіння АЦП
10 out 13h
10 in 10h ;Зчитування з порту А 8розрядів
5 mov l,a ;і запис в регістр l
10 in 11h
5 mov h,a ;ще 4 біти з порту В в регістер h
16 shld FE00h ;занесення в память xn
10 pop psw
7 mvi A,62H ;Загрузка в ПКП ОКС 2
10 out feH
4 ei ;дозвіл переривання
10 ret
5.1 Опис програм вводу,виводу.
Для організації обміну інформацією між МП та периферійними пристроями (в даному випадку ЦАП та АЦП) використовується ППІ КР580ВВ55. Отже щоб організувати і здійснити ввід і вивід потрібно задати режим роботи ІС КР580ВВ55 за допомогою керуючого слова.
Перед програмування ВІС КР580ВВ55, слід визначити адреси портів. Адреси портів ППІ визначені і приведені в розділі 4.3
Таким чином код програми, що ініціалізує ППІ, має такий вигляд:
Для ППІ(АЦП)
mvi a,09eh
out 13h
для ППІ(ЦАП)
mvi a,08h
out 0ffh
Щоб запустити АЦП необхідно виконати наступну послідовність команд:
mvi a,0fh
out 13h
Після задання режиму роботи ППІ та ініціалізації АЦП можна приступити до зчитування значення xn з АЦП, це робиться в програмі обробки перериваня .Дані з виходу АЦП поступають в канал А (молодші 8 розрядів) та на старшу тетраду каналу В (старші 4 розряди). Запуск АЦП здійснюється сьомим розрядом каналу С.Отже фрагмент програми зчитування даних з АЦП
in 10h ;Зчитування з порту А 8розрядів
mov l,a ;і запис в регістер l
in 11h
mov h,a ;ще 4 біти з порту В в регістер h
Вивід на ЦАП здійснюєтьса наступним чином.
mov a,l
out fch ;записуємо 8 молодших розрядів в буферний регістр
mov a,h
out fdh ; записуємо 2 старших розряди в буферний регістр
mov 01,h
out ffh ;вивід інформації на ЦАП
5.2 Опис програм обробки інформації.
Як ми бачимо з блок-схеми алгоритму роботи МПП в процесі формування вихідного сигналу виконується ряд арифметичних операцій. Операція множення виконуються декілька разів тому виділимо її окремим модулем.
Підпрограма множення дво байтового числа на однобайтове без знаку.
Вхідні дані: регістер DE-множене; акамулятор A-множник.
Результат : регістри A, H, L-добуток(А-старші розряди L-молодші)
Програма використовує регістер С
dmult:
lxi h,0h
mvi c,8h
z3:
dad h
ral
jnc z4
dad d
z4:
aci 0
dcr c
jnz z3
ret
підпрограма додавання CD-1-й доданок, EHL- 2-й доданок
plus:
5 mov a,d
7 add l
5 mov d,a
5 mov a,c
7 adc h
5 mov c,a
5 mov a,b
7 adc e
5 mov b,a ;BCD- результат
10 ret
5.3 Оцінка верхньої фінітної частоти вхідного аналогового сигналу
Оцінку верхньої фінітної частоти фільтру проводимо з точки зору найнижчої швидкодії фільтру. Для визначення верхньої граничної частоти фільтра необхідно вирахувати за скільки тактів виконається перетворення сигналу на вході АЦП в сигнал на виході ЦАП. В процесі виконання програми виконуються:
підпрограма обробки переривань;
основна програма;
підпрограма множення;
підпрограма додавання
Кількість тактів, за які виконуються дані фрагменти, приведені в таблиці:
Таблиця15
Назва програми
Кількість тактів необхідних для виконання програми
Число виконань даної програми за один цикл
Кількість тактів за цикл
Основна програма
457
1
457
підпрограма обробки переривань
136
1
136
підпрограма множення
475
2
950
Підпрограма додавання
61
1
61
Таким чином цикл перетворення відбувається за 1604 тактів. В такому випадку, частота видачі інформації при максимальній тактовій частоті проце...