Вступ.
Мікропроцесорна система представляє собою систему обробки інформації й керування, реалізовану на основі сучасної елементної бази і принципу програмного керування. Для побудови мікропроцесорної системи потрібен обмежений набір апаратних ресурсів, а реалізація функцій системи покладається на програмне забезпечення. Таким чином, мікропроцесорні системи - це цифрові системи обробки інформації й керування, функціональні можливості яких визначаються програмним забезпеченням, а взаємозв'язок із зовнішнім середовищем забезпечується зовнішніми пристроями (Зов.П).
Мікропроцесорна система складається з наступних пристроїв: процесора (П), що виконує основні функції керування й обробки інформації; запам'ятовуючого пристрою (ЗП), призначеного для зберігання даних і програм, і пристроїв вводу/виводу (ПВВ), що забезпечують взаємозв'язок із зовнішнім середовищем. Пристрої мікропроцесорної системи об'єднані між собою внутрішньо системним інтерфейсом і взаємодіють по адресному принципу - всі підпорядковані пристрої і їхні складові частини мають неповторювані адреси, по яких до них звертаються пристрої, що виконують функції керування.
Конкретний склад і структура мікропроцесорної системи визначаються її призначенням і технічними характеристиками. В однопроцесорних системах всі функції обробки інформації й керування виконує один процесор, у багатопроцесорних системах є кілька рівноправних процесорів або один центральний (головний) процесор, що виконує функції керування, і декілька підлеглих процесорів, орієнтованих на рішення спеціалізованих завдань обробки інформації.
Процесор мікро-ЕОМ обробляє інформацію трьох типів - дані, адреси й команди програми. Над даними виконуються арифметичні й логічні операції, реалізовані процесором. Обробка адрес визначається способом зберігання й доступу до даних і команд і також базується на виконанні арифметичних операцій. Обробка команд полягая в перетворенні коду команди в послідовність керуючих впливів (мікрооперацій) відповідно до алгоритму виконання команди. Кожна мікрооперація (або їхня сукупність - мікрокоманда) виконується у фіксовані інтервали часу (такти), а вся сукупність виконання команди протягом повного циклу (командного циклу) утворить мікропрограму. Під управлінням мікропрограми виконується обробка даних й адрес і керування іншими пристроями мікропроцесорної системи через внутрішньо системний інтерфейс. Для виконання перерахованих функцій процесор містить засоби обробки даних, обробки адрес, зберігання даних й адрес – зверх оперативний запам'ятовуючий пристрій, засоби мікропрограмного керування, засоби синхронізації й керування режимами роботи процесора. Для обробки даних використовується універсальний арифметично-логічний пристрій (АЛП), запам'ятовуючі регістри для зберігання вихідних даних, результатів (акумулятори) і ознак результату (прапорці). Розрядність пристрою обробки даних характеризує розрядність процесора.
Обробка адрес і даних у процесорі частково або повністю може виконуватися загальним арифметичним пристроєм. Часто для обробки адрес використовують окремі спеціалізовані засоби, що дозволяють сполучити в часі обробку адрес і даних у послідовності команд і тим самим підвищити продуктивність процесора.
Мікропроцесорний комплект КР580 виконаний по МОН-технології і призначений для побудови 8-розрядних мікропроцесорних систем широкого призначення. Комплект складається з одно кристального 8-розрядного мікропроцесора загального призначення КР580ВМ80А, що адресує 28 = 64 кБ адресний простір пам’яті і 256-байтний простір вводу/виводу, з частотою синхронізації до 2,5 МГц часом виконання команди 2-8 мкс. Даний мікропроцесор має 16-розрядний канал адрес та 8-розрядний канал даних. Синхронізацію мікропроцесора забезпечує системний генератор КР580ГФ24. Інтерфейс системної шини ІС 8-розрядних шин формувачів КР580ВА86/87 або буферних регістрів КР580ИР82/83. ІС системних контролерів і шини формувачів КР580ВК28/38 використовується для буферизації шини даних і формування сигналів керування системною шиною. Для роботи із системною шиною, що забезпечує роботу з багатьма користувачами, призначена ІС контролера шини КР580ВГ18, що забезпечує формування сигналів керування операціями на системній шині й керування доступом до шини. ІС програмувального контролера переривань КР580ВН59 використовується для побудови систем переривань, ІС програмувального таймера (ПТ) КР580ВИ53 - для реалізації тимчасових функцій у мікропроцесорній системі. Інтерфейси каналів вводу/виводу реалізуються на ІСА програмувального паралельного інтерфейсу КР580ВВ55А и програмувального інтерфейсу послідовного зв'язку КР580ВВ51А. ІС програмувального контролера прямого доступу до пам'яті КР580ВТ57 використається для побудови каналів прямого доступу до пам'яті. Спеціалізовані ІСА програмувальних контролерів клавіатури й індикації КР580ВВ70 до електронно-променевої трубки КР580ВГ75 призначені для реалізації пультів керування й відеотерміналів. ІС КР580ВК9ІА, КР580ВГ92, КР580ВА93 призначені для побудови інтерфейсу, контролера й приймача-перевадача каналів загального користування.
Огляд мікропроцесорного комплекту КР580.
Мікропроцесорний комплект КР580 виконаний по МОП-технології і призначений для побудови 8-розрядних мікропроцесорних систем широкого призначення. Комплект складається з одно кристального 8-розрядного мікропроцесора загального призначення КР580ВМ80А, що адресує 64-Кілобайтний адресний простір пам’яті і 256-байтний простір вводу/виводу, з частотою синхронізації до 2,5 МГц і мінімальним часом виконання команди 1,6 мкс. Він має 16-розрядний канал адрес та 8-розрядний канад даних. Синхронізацію мікропроцесора забезпечує системний генератор КР580ГФ24. Інтерфейс системної шини ИС 8-розрядних шин формувачів КР580ВА86/87 або буферних регістрів КР580ИР82/83. ИС системних контролерів і шини формувачів КР580ВК28/38 використовується для буферизації шини даних і формування сигналів керування системною шиною. Для роботи з системною шиною, що забезпечує роботу з багатьма користувачами, призначена ИС контролера шини КР580ВГ18, що забезпечує формування сигналів керування операціями на системній шині і керування доступом до шини. На мікропроцесорах КР580 реалізований комплекс мікропроцесорних засобів керуючої обчислювальної техніки МСУВТ В7.
Вибір структурної схеми мікропроцесорної системи.
Почнемо розглядати даний мікропроцесорний комплект КР580 з мікропроцесора (МП) КР580ВМ80А, який зображений на рис.1.

Рис.1 Мікропроцесор КР580ВМ80А
Мікропроцесор КР580ВМ80А являє собою повний 8-розрядний процесор загального призначення, виконаний по nМОН-технології з джерелами +5, +12, -5 В і споживаним струмом 60, 40 і 0.01 мА відповідно. Навантажувальна здатність виходів такого мікропроцесора – один ТТЛ вхід, тому виконують буферизацію шин. Тактова частота 2 МГц. Фіксований набір команд, який налічує 78 команд.
Функціональне призначення виводів:
А0 - А15- адресна шина, забезпечує адресацію до довільної 16-розрядної комірки пам'яті або зовнішнього пристрою;
D0 - D7 - двонапрямлена шина даних (ШД), для обміну інформацією із зовнішніми пристроями;
SYNC- сигнал синхронізації на початку кожного машинного циклу,
DBIN- готовність МП до приймання даних;
WR- сигнал на виході МП, що дані видані й встановлені на ШД для їх запису у зовнішні пристрої;
READY - підтвердження про готовність даних на ШД й їх, уведення у МП;
RESET - на цьому виводі формується сигнал на початкову установку МП, при цьому обнулюється його програмований лічильник, а також тригери, які формують сигнали:
INTE - дозвіл на переривання; HLDA - підтвердження захвату; Ф1 і Ф2 - виводи, на які поступають серії імпульсів сформовані в генераторі тактових імпульсів.
В данному мікропроцесорному комплекті системним генератором є мікросхема КР580ГФ24 (рис.1.2) виконана по біполярній технології, споживаний струм 15 і 12 мА від джерел +5, +12 В відповідно. Сигнали синхронізації формуються задаючим генератором, стабілізовані кварцом з резонансною частотою до 27 МГц, дільником частоти з коефіцієнтом 9.

Рис.2 мікросхема КР580ГФ24
Для роботи генератора тактових імпульсів (ГТІ) передбачено увімкнення зовнішнього кварцового резонатора, а також LC- коливальної системи, яка задає часову постійну. Графічне позначення генератора тактових імпульсів:
Ф1 - сигнал високого рівня тривалістю у два періоди коливань опорного генератора (для керування МОП входами);
Ф2 - сигнал високого рівня тривалістю у п'ять періодів коливань опорного генератора (для керування МОП входами);
XTAL1, XTAL2 - входи для вмикання КР;
RDYIN- вхідний сигнал від МП який ініціює формування сигналу готовності системи;
RESIN- вхідний сигнал, який ініціює формування сигналу "скид системи";
READY- вихідний сигнал; який формується мікросхемою для керування МПС;
SYNC- вхід тактової послідовності;
RESET- на цьому виводі ГП формується сигнал "скиду" МП у початковий стан;
STSTB - вихідний імпульс строба стану низького рівня тривалістю один період коливань опорного генератора
Мікросхема КР580ВА86/87 (рис.3) являє собою двонаправлений шинний формувач з трьохстановими виходами, виконаних по біполярній технології, живляться від джерела +5 В і споживають струми 169 / 130 мА відповідно.

Рис.3 мікросхема КР580ВА86А
Канал А забезпечує струм навантаження 15 мА, Канал ВA забезпечує струм навантаження 32 мА. Напрям передачі вибирається сигналом на вході Т. Мікросхема КР580ВА86 виконує передачу без інверсії, мікросхема КР580ВА87 – з інверсією.
Мікросхема КР580ИР82/83 (буферні регістри) (рис. 4) являють собою 8-
розрядні регістри, виконані по біполярній технології, живляться від джерела +5 В і споживають струм 160 мА. Мікросхеми забезпечують струм навантаження 32 мА і можуть також використовуватись у якості шинних формувачів. Регістри стану приймають байти стану і зберігають їх протягом одного машинного циклу.

Рис.4 Мікросхема КР580ИР82А
Структура мікропроцесора на мікропроцесорному комплекті КР580 приведена на рисунку 5.
Рис. 5 Структура мікропроцесора на мікропроцесорному комплекті КР580
Організація пам’яті МП системи
Запам’ятовуючі пристрої в МПС діляться на:
1.Постійно запам'ятовуючий пристрій - працює лише у режимі читання. Він використовується для збереження програм і даних, які потребують для роботи системи і не підлягають зміні.
2.Оперативно запам'ятовуючий пристрій працює у двох режимах і зберігає поточну інформацію, яка введена у МПС. Цей пристрій працює у двох режимах, які залежать від виконання програм і уведених даних. За допомогою цього пристрою змінюються необхідні параметри даних, записуються поточні результати, для їх виводу або подальшої обробки і таке інше.
Оцінка потреб пам’яті.
Є декілька видів запам’ятовуючих пристроїв: оперативний запам’ятовуючий пристрій, постійний запам’ятовуючий пристрій, КЕШ – пам’ять, також стек може виступати як окремий пристрій. Вибираємо ПЗП для запам’ятовування коду програми, ОЗП – для використання мікропроцесором, як область для зберігання проміжних даних.
Визначення об’ємів пам’яті.
Обмежуємо себе 2 Кб ПЗП і 2 Кб ОЗП.

Рис. 5 мікросхеми КР573РФ2 – ПЗП і КР537РУ8A – ОЗП.
Розподіл пам'яті проводимо з урахуванням того, що основна програма, записана у ПЗП, а тому перше звертання МП здійснюється до нульової комірки ПЗП.
В якості ЗП пристроїв беремо мікросхеми типу КР573РФ2 – ПЗП (час вибірки становить 450 нс; потужність 580 мВт при напрузі +5В) і КР537РУ8A (час доступу 220 нс; споживана потужність 6 мВт при напрузі живлення 5В) (рис. 6) - ОЗП. - А0- А10 - вхідні адреси комірок пам'яті, з'єднані із шиною адреси МПС;
D0-D7 - вихідні виводи, на які виставляються дані, що зберігались у запам'ятовуючому пристрої, з'єднуються з шиною даних МПС:
CS - вхідний вивід, за яким визначається звертання до ПЗП чи ОЗП:
СЕ - вхідний вивід, який визначає режим роботи запам'ятовуючого пристрою (читання або запис ).
Сімейство
Технологія
Тип ВІС
Організація

К537
КМОП
КР537РУ8A
2К(8

К573
nМОП
К573РФ2
2К(8


Карта пам’яті.
Оскільки, кожен пристрій пам’яті згідно нашого вибору має 2 Кб, це означає, що кожен пристрій буде займати 2048 адрес. Ці пристрої підключаються до шини адрес паралельно. Даний адресний простір можна забезпечити за допомогою одинадцяти ліній ( А0 – А10 ).
Першу частину адрес ми відвели для ПЗП а не для ОЗП, оскільки в перший момент роботи мікропроцесора відбувається ініціалізація процесора, вході якої усі регістри обнулюються, в тому числі й програмний лічильник, у зв’язку з чим мікропроцесор звертається до першої команди за адресою 0000H.
Адреса
Адреса
№ корпуса
Тип/типономінал

0000000000000000B
….
0000011111111111B
0000H
….
07FFH
№ 1
ПЗП/К573РФ2

0000100000000000B
….
0000111111111111B
0800H
….
0FFFH

Вільні адреси

0001000000000000B
….
0001011111111111B
1000H
….
17FFH
№ 2
ОЗП/К537РУ10

0001100000000000B
….
1111111111111111B
1800H
….
FFFFH

Вільні адреси

Дешифрація схем пам’яті.
Як бачимо, ні режим роботи, ні вибір комірки не визначають вид ЗП. Тому у цих пристроях передбачений вивід, який визначає активний стан ОЗП або ПЗП. Для визначення виду ЗП потрібно вибрати лінію старших розрядів, наприклад, А12. Якщо стан лінії А12 відповідає логічний "0", то звертання відбувається до ПЗП, і для стану лінії А12 — логічній "1", звертання відбувається до ОЗП. Оскільки для вибору ЗП використовується одна лінія, то між ОЗП і ПЗП ставимо інвертор (рис. 6).
У випадку, коли б у нас було більше двох пристроїв, ми використали б дешифратор потрібної розрядності або схему дешифрації на логікових елементах.

Рис. 6 Підключення мікросхеми КР573РФ2 – ПЗП і КР537РУ8A – ОЗП.
Вибір пристрою ввід/вивід.
За допомогою цього пристрою вводу/виводу у МПС засилається інформація, а також виводиться на контрольні пристрої. Для проектованої МПС, згідно технічного завдання, зовнішніми пристроями є:
сегментові індикатори;
клавіші;
ЦАП
Узгодженість зовнішніх пристроїв із внутрішніми визначається, як навантажувальною здатністю пристрою ввід/вивід, так і числом вихідних ліній МПС із числом вхідних ліній зовнішніх пристроїв.
Для запалювання сегмента індикатора на нього треба подати рівень логічного нуля, що відповідає індикаторам типів АЛС32Б , АЛС342Б. На індикаторах буде виводитись одна з трьох цифр: 1, 2, 4. На основі цього нижче в таблиці наведений стан рівнів на виходах a-g в залежності ві д цифри.

Цифра
a
b
c
d
e
f
G
Число

1
1
0
0
1
1
1
1
4FH

2
0
0
1
0
0
1
0
12H

4
1
0
0
1
1
0
0
4CH


З даної таблиці видно, що сегмент “b” запалений завжди, тому його можна закоротити на землю. Сегменти “d” і “e” завжди мають один рівень, тому їх можна об‘єднати і керувати ними одним сигналом. Тому для управління одним індикатором потрібно 5 ліній. Для управління двома індикаторами в статичному режимі необхідно 10 ліній. Для управління ЦАПом потрібно 8 ліній. Тому загальна кількість ліній виводу буде становити 18 ліній при статичній індикації.
Складовими частинами інтерфейсу можуть бути ШФ, багато режимні буферні регістри (ББР) або програмований периферійний адаптер (ППА) типу КР580ВВ55 (рис. 7).
Графічне позначення ППА типу КР580ВВ55 :
D0 - D7 - вхідні виводи ППА, які увімкнені до ШД МП системи (D0 - молодший розряд):
PА0 - PА7 - вихідна шина даних каналу А;
PB0 - PB7 - вихідна шина даних каналу В;
PС0 - PС3 - вихідна шина даних каналу С (молодші розряди):
PС4- PС7 - вихідна шина даних каналу С (старші
розряди);
CS- вибір пристрою:
А0, А1 - молодші розряди ША, за якими проводиться вибір каналу; RD - сигнал, за яким проводиться встановлення
даних внутрішнього регістра ВІС, на ШД;
WR - вхідний сигнал, який дає дозвіл на запис даних у ППА:
R - сигнал, по якому ВІС переходить у початковій стан.

Рис.7 Програмований периферійний адаптер (ППА) типу КР580ВВ55.
Коли на вході CS є сигнал низького рівня, в залежності від того, який з сигналів IORD чи IOWR є активним, відбудеться запис в ППА чи зчитування з нього. Комбінація сигналів на входах A0 та A1 визначає канал, з яким відбудеться обмін інформацією.
Перед початком роботи, ППА треба запрограмувати, тобто задати режими роботи кожного канала. Програмування відбувається шляхом одноразового запису в регістр керуючого слова відповідного байта.
Вибраний тип ППА має три основних режими роботи:
режим "0" - звичайний увід/ вивід;
режим '1" - стробований ввід/ вивід;
режим "2" - двонапрямлена магістраль.
Для цілей поставлених технічному завданні найбільш зручною є робота ППА в режимі 0, в режимі вводу сигналів, які поволі міняються. При виводі в цьому режимі на лініях каналів можна програмно формувати різні сигнали, тобто керувати роботою індикаторів.
В даній роботі канали A, B та молодший підканал програмуються на вивід в режимі 0, старший підканал С- на ввід.
Оскільки максимальна навантажувальна здатність виходів К580ВВ55 становить 2мА, а струм сегментів знаходиться в межах 10-15 мА, між виходами ППА і виходами індикаторів необхідно включати буферні елементи з відкритими колектором – інвертори 155ЛН2, 155ЛН3 або повторювачі 155ЛП9. Опори між виходами інверторів і входами індикаторів обмежують середній струм через сегмент на рівні 10 мА.
Лінії каналу C, які працюють на клавіатуру, під‘єднані через опори 10кОм до шини +5В. Таким чином при розімкнених клавішах відповідні розряди каналу C мають стан лог. "1". При натисненій клавіші лінія переходить в стан лог. "0". Невизначеність станів лінії, яка виникає в моменти натискання та відпускання клавіш ліквідується програмним шляхом.
Через канал A на ЦАП подається код, який відповідає вихідній напрузі. ЦАП вибраний з розрядністю 8. Для роботи ЦАП до його виходів необхідно підключити операційний підсилювач з коректуючи ми елементами.
Адресація паралельних програмованих адаптерів здійснюється наступним чином – два молодші розряди адресної шини подаються на відповідні входи адаптера, а лінія А3 подається на вхід вибору корпуса. Таким чином адресація має такий вигляд:
IORD
IOWR
Al
A2
A3(CS)
Робота з каналом

1
0
0
0
0
Запис v канал А1

1
0
0
1
0
Запис у канал В1

1
0
1
0
0
Зчитування з каналу С1

1
0
1
1
0
Запис у регістр керованого слова 1

1
0
0
0
1
Запис v канал А2

1
0
0
1
1
Запис у канал В2

1
0
1
0
1
Зчитування з каналу С2

1
0
1
1
1
Запис у регістр керованого слова 2


При проектуванні портів вводу-виводу треба знати кількість ліній, що працюють на вивід. В даній МП системі до портів вводу підключені клавіші, а до портів виводу семи сегментний індикатор. Кількість ліній виводу залежить від індикації та від способу кодування цифр.
Системи вводу-виводу призначені для зпряження мікропроцесорної системи із зовнішнім середовищем. Вона представляє собою сукупність каналів вводу-виводу, кожен з яких обслуговує окремий ВП. Канал містить засоби спряження із системною шиною (інтерфейс ВП) і засоби керування вводом-виводом і реалізується апаратними засобами вводу-виводу: УВВ та програмним забезпеченням вводу-виводу. Система вводу-виводу характеризується числом каналів і їх пропускною здатністю, розрядністю і т.д.
То ж, для спряження мікропроцесора з зовнішніми пристроями ми будемо використовувати програмований периферійний адаптер К580ВВ55. Зокрема для організації клавіатури ми будемо використовувати старші та молодші розряди порту С (рис. 8). В даному випадку, при натисканні однієї з шістнадцяти клавіш будуть замикатися два провідники. Програмним способом ми проводимо пошук точки замикання, посилаючи на старші розряди порту С сигнали та аналізуючи сигнали, що з’являються на молодших розрядах даного порту. В таблиці приведені сигнали, які потрібно подати та отримати, що індифікувати ту чи іншу клавішу.
В таблиці також подано 4-розрядні двійкові коди символів. Саме у такому вигляді ми будемо зберігати наш код в електронному ключі. Для спряження електронного ключа з мікропроцесором ми використаємо шість ліній порту В.
Для індикації зовнішніх пристроїв ми використаємо один 7-сегментний індикатор (рис. 9), на якому будемо відображати номер замка, що буде відкрито. Номер буде відображатися у шістнадцятковому форматі. У таблиці, що подана нижче, ми показали можливі стани нашого індикатора, та відобразили сигнали, що потрібно подати на сегменти, щоб відобразити відповідний символ. Причому, ми ввели символ для індикації похибки, що може виникнути, якщо введений номер замка, який потрібно відкрити, вийде за межі передбаченого діапазону.
Нижче в таблиці ми подаємо перелік усіх можливих станів нашого індикаторного пристрою, а також сигналів, які потрібно подати на індикатор, щоб задати потрібний стан індикатора.