МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
Національний університет "Львівська політехніка"
РОЗДІЛЕННЯ ПАМ’ЯТІ ТА ПРИСТРОЇВ ВВОДУ-ВИВОДУ.
ДОСЛІДЖЕННЯ РОБОТИ НАЙПРОСТІШИХ ЗАСОБІВ ВВОДУ-ВИВОДУ
ІНСТРУКЦІЯ
ДО ЛАБОРАТОРНОЇ РОБОТИ № 5 З КУРСУ
"МІКРОПРОЦЕСОРНІ ПРИСТРОЇ"
для студентів базового напряму 6.1601
“Інформаційна безпека”
Затверджено
на засіданні кафедри
"Автоматика та телемеханіка"
Протокол № 13 від 23.06.2002р.
ЛЬВІВ 2006
Розділення пам’яті та пристроїв вводу-виводу. Дослідження роботи найпростіших засобів вводу-виводу. Інструкція до лабораторної роботи № 5 з курсу "Мікропроцесорні пристрої" для студентів базового напряму 6.1601 “Інформаційна безпека”. / Укл. І. М. Бучма, Р. А. Гордійчук. – Львів: ЛІН, 1993. – 18 с.
Укладачі: І. М. Бучма, канд. техн. наук, доцент
Р. А. Гордійчук, асист.
Відповідальний за випуск М. В. Кіріанакі, канд. техн. наук, доц.
Рецензенти: З. Р. Мичуда, канд. техн. наук, доц.
П. В. Мокренко, доц.
Мета роботи – вивчення способів розділення пам’яті та пристроїв вводу-виводу, організації обміну інформацією з найпростішими пристроями вводу-виводу. Дослідження роботи найпростіших засобів вводу-виводу інформації.
1. КОРОТКІ ТЕОРЕТИЧНІ ВІДОМОСТІ
Розділення пам’яті та засобів вводу-виводу
Пристрої вводу-виводу можна розглядати як сукупність запам’ятовуючих комірок з вільним доступом. Тому важливим завданням інтерфейсу пам’яті та пристроїв вводу-виводу є розділення пам’яті і пристроїв вводу-виводу.
Спосіб розділення пам’яті та пристроїв вводу-виводу залежить від способу їх адресування. Використовуються, звичайно, два способи адресування:
1) з розділеними полями адресу;
2) з загальним полем адрес.
Розглянемо перший варіант.
Якщо в системі команд мікропроцесора є команди вводу-виводу IN ADDR, OUT ADDR, то це дозволяє розділити адреси пам’яті та пристроїв вводу-виводу. Цей спосіб використаний в МП КР580ИК80А.
Для МП КР580ИК80А формати адресних слів та розподіл поля адрес між пам’яттю та пристроями вводу-виводу показано на рис. 1.
Спосіб адресування з розподіленим полем адрес дозволяє адресувати пам’ять об’ємом 64 Кбайт та 256 пристроїв вводу-виводу. Розділення пам’яті та пристроїв вводу-виводу здійснюється сигналами управління пам’яттю та сигналами управління пристроями вводу-виводу та . Ці сигнали формуються відповідно за командами звертання до пам’яті та командами вводу-виводу.
Спосіб адресування з загальним полем адрес полягає в тому, що пристрої вводу-виводу розглядаються як комірки пам’яті в загальному полі адрес. Формат адресного слова пам’яті та пристроїв вводу-виводу і розподіл пам’яті для цього випадку показані на рис. 2.
Розділюючою ознакою служить старший розряд адреси А15. При А15=0 адресується пам’ять, а при А15=1 – пристрої вводу-виводу. Адресний простір 64 Кбайт ділиться порівну між пам’яттю та пристроями вводу-виводу.
При цьому способі адресування маємо можливість використовувати всі команди звертання до пам’яті при роботі з пристроями вводу-виводу.
У результаті цього зростає гнучкість та продуктивність системи. І хоч об’єм пам’яті, до якої можна адресуватися, зменшується вдвоє, зменшується також і об’єм програм. Спрощується шина управління, бо управління процесами передачі інформації здійснюється сигналами читання пам’яті та запису в пам’ять .
1.2. Загальні поняття про ввід-вивід інформації
Ввід та вивід інформації мікропроцесором (МП) типу КР580ИК80А здійснюється при допомозі команд IN ADDR та OUT ADDR. При виконанні команди IN ADDR МП читає дані з вхідного пристрою, адреса якого ADDR і заносить їх в акумулятор. При виконанні команди OUT ADDR МП записує число з акумулятора у вихідний пристрій, адреса якого ADDR. ADDR – це будь-яке восьмирозрядне двійкове число. Тому МП з допомогою команд вводу-виводу може обмінюватися інформацією не більше, ніж з 256 зовнішніми пристроями.
Обмін інформацією між мікропроцесором та зовнішніми пристроями здійснюється через пристрої вводу-виводу, їх ще називають інтерфейсом зовнішніх пристроїв. Вибір інтерфейсу залежить від того, що є джерелом та приймачем інформації.
У залежності від цього пристрої вводу-виводу діляться на дві групи:
1) пристрої для зв’язку мікропроцесора з людиною;
2) пристрої для зв’язку мікропроцесора з технічними засобами.
Найтиповішими засобами, що використовуються для зв’язку людини з мікропроцесором – це клавіатура та дисплей. Тут ці засоби розглядати не будемо.
Для зв’язку мікропроцесора з зовнішніми технічними засобами використовуються два види інтерфейсу:
1) послідовний;
2) паралельний.
Паралельний інтерфейс є простішим, і тому він набув більшого поширення.
1.3. Паралельний інтерфейс
При паралельному інтерфейсі за кожний обмін, інформацією між мікропроцесором КР580ИК80А і зовнішнім пристроєм передається восьмирозрядне двійкове число. При цьому спряження з системною шиною мікропроцесорної системи (МПС) здійснюється за допомогою інтерфейсних портів. Ці порти представляють собою запам’ятовуючі регістри з логічними схемами керування завантаженням інформації. Кожен зовнішній пристрій підключається до одного або кількох таких портів. А зв’язок інтерфейсу з МП здійснюється шляхом читання інформації з порту або запису інформації в порт.
1.З.1. Технічні засоби паралельного інтерфейсу
Для побудови порту інтерфейсу можуть використовуватися інтегральні мікросхеми регістрів різних серій, наприклад, КР580ИР32 або К589ИР12.
Для прикладу на рис. 3 показана схема реалізації паралельного інтерфейсу вводу-виводу на мікросхемах К589ИР12 в режимі програмного ЧЕКАННЯ.
Інтерфейс складається з регістру стану (мікросхема D2) порту вводу (мікросхема D2) та порту виводу (мікросхема D3). АС – адресні селектори, які задають фізичну адресу регістрам. Робота порту вводу відбувається під керуванням програми, фрагмент якої показано зліва на рис. 3. За командою. ІN РС МП вводить дані з регістру стану. Маскуючи командою ANI 80 вміст молодших розрядів (встановлюючи в них нулі), виділяємо вміст старшого розряду. Якщо в старшому розряді регістру стану 0, то результатом операції ANI 80 є нуль. Тоді, виконуючи команду умовного переходу JZ мікропроцесор знову вводить дані з регістру стану і аналізує вміст старшого розряду. Якщо перед тим від зовнішнього пристрою на вхід порту вводу DІ 0...7 поступили дані, які супроводилися стробом, що поступив на вхід STB, то по стробу вихід перейшов у нульовий стан. Після інвертування на вхід DI7 регістру стану поступає сигнал високого рівня, що й виявляє мікропроцесор командою ANI 80. Тому команда JZ пропускається і виконується команда вводу даних з порту вводу (IN порт ВВОДУ).
Аналогічно здійснюється вивід інформації в порт виводу. Фрагмент програми виводу даних показано справа на рис. 3.
Часто паралельний інтерфейс, що містить порти вводу-виводу, реалізується в інтегральному виконанні у вигляді надвеликих інтегральних мікросхем (НВІС). Деякі з них можна програмувати, тобто структуру і функції таких НВІС можна змінювати програмно. Програмування здійснюється шляхом переміщення з акумулятора мікропроцесора керуючого слова в регістр керуючого слова інтерфейсу. Регістр керуючого слова, так як і порти інтерфейсу, має свою адресу, і звертання до нього здійснюється аналогічно, як і до портів.
Найчастіше для спряження стандартних зовнішніх (периферійних) пристроїв використовується програмований паралельний інтерфейс на НВІС КР580ВВ55. Мікросхема КР580ВВ55 виконана в пластмасовому корпусі з 40 виводами.
Для з’єднання з зовнішніми пристроями мікросхема має 24 виводи, які можуть використовуватися двома групами А і В по 12 виводів у трьох режимах роботи.
Режим 0 – кожна група по 12 виводів може бути запрограмована на простий ввід або вивід.
Режим 1 – по 8 виводів кожної групи можуть бути запрограмовані на стробований ввід або вивід, решта 4 виводи використовуються для управління програмним обміном або обміном по перериванню.
Режим 2 – група з 8 виводів порту А є двонаправлений восьмирозрядний канал даних, що керується сигналами 5 виводів порту С.
Режим роботи інтерфейсу задається програмно переміщенням керуючого слова (КС) у регістр керуючого слова (РКС) інтерфейсу при виконанні таких команд
MVI A, KC
OUT PKC
На рис. 4 показані цоколівка та умовне позначення програмованого паралельного інтерфейсу КР580ВВ55.
На рис. 5 показано його спрощену структурну схему.
Інтерфейс складається із схеми керування читанням-записом (), буфера шини даних (ШД), схеми управління групами виводів А та В, в яку входить регістр керуючого слова, та трьох восьмирозрядних портів А, В, С. Виводи порту А РА7…РА0 та старші розряди порту С (РС7...РС4) – складають групу А виводів, а виводи порту В (РВ7...РВ0) та молодші розряди порту С (РСЗ...РС0) складають групу В виводів. Отже виводи порту С можуть використовуватися як два окремі чотирирозрядні порти. Всі основні вузли інтерфейсу зв’язані з внутрішньою шиною даних (ВШД).
Схеми управління групами виводів А і В містять регістр керуючого слова (РКС), призначений для приймання та зберігання керуючого слова, що задає режим роботи інтерфейсу. В РКС можна також заносити слово встановлення або скидання будь-якого розряду регістра порту С. Тому розряди порту С можуть використовуватися для формування керуючих сигналів.
Ознакою керуючого слова є логічна 1 в старшому розряді D7 регістру керуючого слова, а ознакою слова встановлення-скидання – логічний 0 в тому ж розряді.
Передача інформації через буфер ШД здійснюється за командами мікропроцесора IN ADDR та OUT ADDR.
Схема керування здійснює керування переміщеннями слів даних та керуючих слів. Керування здійснюється зовнішніми сигналами, що поступають на входи мікросхеми:
– вхід вибирання даної мікросхеми; сигнал низького рівня на цьому вході дозволяє обмін між МП та інтерфейсом;
– низький рівень на цьому вході дозволяє передачу даних з одного з портів інтерфейсу на ШД;
– низький рівень сигналу на цьому вході дозволяє переміщення даних з ШД в один з портів інтерфейсу або в регістр керуючого слова;
А1, А0 – входи адресних сигналів вибору одного з портів інтерфейсу або регістру керуючого слова. При цьому має місце така відповідність
00 – порт А
01 – порт В
10 – порт С
11 – регістр керуючого слова.
Входи А0, А1 звичайно підключаються до молодших розрядів ША (А0, А1). RESET – вхід сигналу становлення інтерфейсу в початковий стан. Сигнал високого рівня обнулює всі внутрішні регістри інтерфейсу та переключає порти А, В, С на ввід інформації в режимі 0.
Таким чином вид обміну інформацією між ШД та портами інтерфейсу залежить від сигналів на входах , , , А1, А0. Ця залежність розшифрована таблицею.
Таблиця
Залежність обміну інформацією від вхідних керуючих сигналів
А1
А0
Напрям передачі інформації
ШД інтерфейс
0
1
0
0
0
Запис даних у порт А.
0
1
0
0
1
Запис даних у порт В.
0
1
0
1
0
Запис даних у порт С.
0
1
0
1
1
Запис даних у регістр керуючого слова (РКС).
Інтерфейс ШД
0
0
1
0
0
Читання порту А.
0
0
1
0
1
Читання порту В.
0
0
1
1
0
Читання порту С.
1
х
х
х
Х
Інтерфейс відключено.
х – стан не має значення.
Підключення інтерфейсу КР580ВВ55 до системної шини центрального процесора показане на рис. 6.
Наприклад, через такий інтерфейс до системної шини може бути підключено АЦП, ЦАП, клавіатуру і т.д.
Переведення інтерфейсу в один з можливих режимів роботи 0, 1 або 2 здійснюють програмним шляхом. Це роблять переміщенням за командою OUT ADDR з акумулятора МП в РКС інтерфейсу керуючого слова.
На рис. 7 зображено формат керуючого слова та розкрито значення кожного його біта.
Формат слова встановлення-скидання розрядів порту С показаний на рис. 8.
Допустимо, що адреса регістру керуючого слова дорівнює 73Н. Для встановлення необхідного режиму роботи інтерфейсу нам треба завантажити в акумулятор керуюче слово і за командою OUT 73H занести його в РКС.
Наприклад, програмування всіх портів інтерфейсу на ввід в режимі 0 можна здійснити, виконавши такий фрагмент програми
MVI A, 9BH
OUT 73H
Встановлення розряду РС6 порту С в 1 доб’ємося після виконання таких команд
MVI A, 5DH
OUT 72H
1.3.2. Приклад реалізації операції вводу-виводу
у "Мікролабі КР580"
У мікролабі КР580 порт вводу-виводу реалізований на основі програмованого паралельного інтерфейсу (мікросхема КР580ВВ55). До трьох розрядів порту С цього інтерфейсу підключені тумблери. Цей порт програмується, як порт вводу. До восьмирозрядного порту В підключені світлодіодні індикатори. Цей порт програмується на вивід.
Таким чином МП зможе читати дані з тумблерів і виводити їх на світлодіодні індикатори.
Структурна схема програми, що керує діями МП при цьому, зображена на рис. 9.
Програма 1
Адреса
Машинний код
Мітка
Мнемокод
Коментар
8100
3Е…
MVI A, …
Запис в акумулятор керуючого слова (КС).
8102
D3FB
OUT FB
Запис керуючого слова в регістр керуючого слова (РКС).
8104
DBFA
ST1
IN FA
Читання даних з порту С.
8106
D3F9
OUT F9
Вивід даних з порту В.
8108
C30481
JMP ST1
Повторити цикл.
Ця програма не закінчена, бо необхідно запрограмувати інтерфейс (порт С на ввід, а порт В – на вивід), тобто підібрати керуюче слово (КС) і вписати його в код команди MVI A, KC. Команда OUT FBH (FBH – адреса регістру керуючого слова) запише керуюче слово в регістр керуючого слова (РКС). За командою IN FAH вводяться в акумулятор дані, що знаходяться в порту (FAH – адреса порту С), а за командою OUT F9H ці дані виводяться в порт В (F9H – адреса порту В).
Команда JMP ST1 забезпечує циклічність виконання команд вводу-виводу.
ЗАВДАННЯ
Виконується при домашній підготовці до роботи
2.1.1. Вивчити методи розділення пам’яті та пристроїв вводу-виводу.
2.1.2. Уяснити задачі, що вирішуються засобами вводу-виводу (інтерфейсом).
2.1.3. Уяснити задачі, що вирішуються за допомогою паралельного інтерфейсу.
2.1.4. Вивчити структуру та режими роботи програмованого паралельного інтерфейсу КР580ВВ55.
2.1.5. Вивчити схему підключення інтерфейсу КР580ВВ55 до системної шини центрального процесора.
2.1.6. Вивчити призначення бітів формату керуючого слова інтерфейсу КР580ВВ55.
2.1.7. Вивчити призначення бітів формату слова встановлення-скидання розрядів порту С.
2.1.8. Розібрати програму 1, підібрати до неї керуюче слово.
2.1.9. Модифікувати програму 1 так, щоб незалежно від даних, що читаються з порту С, на трьох відповідних світлодіодах висвічувалися:
1) одиниці;
2) нулі.
2.1.10. На основі програми 1 розробити свою модифікацію програми.
2.2. Виконати в лабораторії
2.2.1. Дослідити програму по п. 2.1.8.
2.2.2. Дослідити програми, розроблені згідно з п. 2.1.9.та 2.1.10.
ЗМІСТ ЗВІТУ
3.1. Записати мету роботи. Привести формати адресних слів при різних способах адресації.
3.2. Привести цоколівку, умовне позначення, схему підключення мікросхеми КР580ВВ55 до системної шини та таблицю залежності передачі інформації через інтерфейс від вхідних керуючих сигналів.
3.3. Привести досліджені програми.
3.4. Висновки по роботі.
4. КОНТРОЛЬНІ ЗАПИТАННЯ
4.1. Як розділяються пам’ять та пристрої вводу-виводу?
4.2. Як відрізняються формати адресних слів при різних способах адресації?
4.3. Як можна класифікувати інтерфейс зовнішніх пристроїв?
4.4. Розповісти про призначення елементів структурної схеми інтерфейсу КР580ВВ55.
4.5. Розказати про формат керуючого слова та слова скидання встановлення інтерфейсу КР580ВВ55.
4.6. Визначити значення керуючого слова для програмування групи виводів А на ввід інформації, а групи В на вивід мікросхеми КР580ВВ55.
4.7. Визначити значення слова скидання-встановлення для встановлення розряду РС6 порту С в 1.
СПИСОК ЛІТЕРАТУРИ
Горбунов В. Л., Панфилов Д. И., Преснухин Л. Н. Микропроцессоры: Лабораторный практикум. - М.: Высшая школа, 1984. - 101с.
Коффрон Дж. Технические средства микропроцессорных систем. - М.: Мир, 1983. - 344с.
Самофалов К. Г. , Викторов О. В., Кузняк А. К. Микропроцессоры. - К.: Техніка, 1986. - 278с.
Гилмор Ч. Введение в микропроцессорную технику. - М.: Мир, 1984. - 334с.
Каган Б.М., Сташин В.В. Основы проектирования микропроцессорных устройств автоматики. - М.: Энергоатомиздат, 1984. - 304с.
Проектирование центрального процессора микроЭВМ семейства КР580: Методические указания к курсовому проектированию по курсу "Микропроцессорные системы ТС САПР" / Сост. В. Г. Артюхов, А.В.Кобылинский, Н. Г. Сабодаш. - К.: КПИ, 1984. - 76с.
Рис. 1. Формати адресних слів та розподіл поля адрес пам’яті та пристроїв вводу-виводу при розділенні адресних полів
Рис. 2. Формати адресного слова і розподіл адресного простору
при спільному полі адрес
Фрагмент програми Фрагмент програми
М: IN <РЕГІСТР СТАНУ> М: IN <РЕГІСТР СТАНУ>
ANI 80H ANI 01H
JZ M JZ M
IN <ПОРТ ВВОДУ> OUT <ПОРТ ВВОДУ>
Рис. 3. Схема реалізації паралельного інтерфейсу вводу-виводу
на ВІС К589ИР12 у режимі програмного чекання
Рис. 4. а) цоколівка; б) умовне позначення ВІС КР580ВВ55
Рис. 5. Структурна схема програмованого паралельного інтерфейсу КР580ВВ55
Рис. 6. Під’єднання інтерфейсу КР580ВВ55 до системної
шини центрального процесора
Рис. 7. Формат керуючого слова інтерфейсу КР580ВВ55
Рис. 8. Формат слова встановлення-скидання розрядів порту С
Навчальне видання
РОЗДІЛЕННЯ ПАМ’ЯТІ ТА ПРИСТРОЇВ ВВОДУ-ВИВОДУ.
ДОСЛІДЖЕННЯ РОБОТИ НАЙПРОСТІШИХ ЗАСОБІВ ВВОДУ-ВИВОДУ
Інструкція
до лабораторної роботи № 5
з курсу
"МІКРОПРОЦЕСОРНІ ПРИСТРОЇ"
для студентів базового напряму 6.1601
“Інформаційна безпека”
Укладачі: Бучма Ігор Михайлович, д.т.н., проф.
Гордійчук Роман Анатолійович, асист.