|
Мікросхема КР580ВМ80А – функціонально закінчений однокристальний паралельний 8-розрядний мікропроцесор з фіксованою системою команд, застосовується в якості центрального процесора в пристроях обробки даних і управління.
Мікропроцесор має роздільний 16-розрядний канал адреси і 8-розрядний канал даних. Канал адреси забезпечує пряму адресацію зовнішньої пам'яті об’ємом до 65536 байт, 256 пристроїв введення і 256 пристроїв виводу.
Умовне графічне позначення мікросхеми приведено на рисунку 2.1, призначення виводів – в таблиці 2.1, структурна схема показана на рисунку 2.2.
Рисунок 2.1 Умовне графічне позначення мікропроцесора КР580ВМ80А
Восьмирозрядний арифметико-логічний пристрій мікропроцесора забезпечує виконання арифметичних і логічних операцій над двійковими даними, приведених в додатковому коді, а також обробку двійково-десяткових упакованих чисел.
До складу блоку регістрів входять:
l 16-розрядний регістр адреси команди (IP),
l 16-розрядний регістр показника стека (SP),
l 16-розрядний регістр тимчасового зберігання (WZ),
l 16-розрядна схема інкремента-декремента і
l шість 8-розрядних регістрів загального призначення (B, C, D, E, H, L), які можуть використовуватись і як три 16-розрядні регістри (BC, DE, HL).
Таблиця 2.1 Призначення виводів КР580ВМ80А
Вивід | Позначення | Тип виводу | Функціональне призначення виводів |
1,25–27 | А10, А0–А2, | ||
29–40 | А3–А9, А15, | Виходи | Канал адреси |
А12–А14, А11 | |||
GND | – | ||
3–10 | D4–D7, D3–D0 | Входи виходи | Канал даних |
U10 | Напруга джерела зміщення – 5В | ||
SR | Вхід | Установка в початковий стан | |
HLD | Вхід | Захоплення | |
INT | Вхід | Запит переривання | |
15, 22 | C2, C1 | Входи | Тактові сигнали |
INTE | Вихід | Дозвіл переривання | |
RC | Вихід | Прийом інформації | |
(-TR) | Вихід | Видача інформації | |
SYN | Вихід | Сигнал синхронізації | |
UCC1 | – | Напруга живлення + 5В | |
HLDA | Вихід | Підтвердження захоплення | |
RDY | Вхід | Сигнал «Готовності» | |
W1 | Вихід | Сигнал «Очікування» | |
UCC2 | – | Напруга живлення + 12В |
Мікропроцесор виконує команди по машинних циклах. Число циклів, необхідне для виконання команди, залежить від її типу і може бути від одного до п'яти. Машинні цикли виконуються по машинних тактах. Тривалість такту рівна періоду тактової частоти і при частоті 2,0 МГц складає 500 нс.
На початку кожного машинного циклу мікропроцесор виробляє сигнал синхронізації SYN, який в поєднанні із іншими сигналами може бути використаний для організації різних режимів роботи.
Після подачі на вихід SR сигналу високого рівня мікропроцесор встановлюється в початковий стан. В такті Т1 мікропроцесор видає на адресний канал адресу комірки, в якій зберігається команда програми, а через канал даних – інформацію про стан. В такті Т2 аналізується стан сигналів на вході RDY, «Підтвердження зупинки» і залежно від стану цих сигналів МП переходить в стан очікування, зупинки або до виконання такту Т3. В такті Т3 за наявності сигналу високого рівня на вході RDY МП приймає інформацію по каналу даних; аналізує стан сигналу на вході HLD і якщо цей сигнал високого рівня, то після завершення такту Т3 переходить в стан захоплення. Залежно від коду команди, що виконується, машинний цикл завершується після виконання тактів Т3, Т4 або Т5.
В кінці машинного циклу знову аналізуєтся стан сигналу на вході HLD. При низькому рівні сигналу перевіряється, чи закінчено виконання команди. Якщо команда не закінчена, то мікропроцесор виконує наступний машинний цикл команди, починаючи з такту Т1. В кінці кожної команди мікропроцесор аналізує стан сигналу на вході INT. Якщо сигнал високого рівня і переривання було раніше дозволено командою EI, то мікропроцесор переходить до виконання машинного циклу «Переривання», починаючи з такту Т1. Інакше виконується перший машинний цикл нової команди з такту Т1.
Рисунок 2.2 Внутрішня структура мікропроцесора КР580ВМ80А
Дії, які виконуються мікропроцесором в конкретному машинному циклі, визначаються 8-розрядною інформацією стану, яка видається через канал даних в такті Т1 кожного машинного циклу. Ця інформація може використовуватися для утворення сигналів звернення до ЗП, ПВВ і для організації різних режимів роботи мікропроцесора.
Залежно від поєднання сигналів стану, виданих в конкретному циклі, машинні цикли можна розділити на 10 типів:
1. Цикл М1 – прийом першого байта команди в регістр команд.
2. Цикл читання ЗП – читання ЗП по вмісту одного з регістрів BC, DE,HL.
3. Цикл запису в ЗП – запис в ЗП по вмісту одного з регістрів BC, DE,HL.
4. Цикл читання стека – читання ЗП по вмісту показника стека.
5. Цикл запису в стек – запис в ЗП по вмісту показника стека.
6. Цикл вводу-вводу інформації в регістр результату (акумулятор) із зовнішнього пристрою.
7. Цикл виводу-вивід інформації з регістра результату в зовнішній пристрій.
8. Цикл переривання – прийом коду команди RST або CALL із контролера перериваня.
9. Цикл зупинки.
10. Цикл переривання при зупинці – прийом коду команди RSY або CALL при виході мікропроцесора з режиму «Зупинки» по перериванню.
При виконанні команд мікропроцесор може переходити в один з трьох станів: «очікування», «захоплення» і «зупинки», тривалість яких визначається зовнішніми управляючими сигналами.
Сигнал високого рівня на вході RDY забезпечує автоматичне виконання команд програми мікропроцесором з частотою тактових сигналів. Якщо на виході RDY встановлений сигнал низького рівня, то мікропроцесор переходить в режим «Очікування» і формує сигнал WI високого рівня виходу.
Сигнал RDY може бути використаний для узгодження роботи мікропроцесора з роботою повільно діючих пристроїв, якщо тривалість їх циклу звертання складає більше одного періоду тактової частоти, а також для організації покрокового (по циклах) виконання команди або покомандного виконання програми.
При подачі на вхід HLD сигналу високого рівня мікропроцесор переходить в стан «захоплення» і підтверджує перехід в цей стан формуванням сигналу високого рівня на виході HLDA.
Буферні схеми каналу адреси і даних мікропроцесора перемикаються у високоомний стан, а управляючі сигнали виходів в стан низького рівня (за винятком сигналів (–TR) і HLDA).
Мікропроцесор переходить в стан «захоплення» в такті Т3, якщо виконується цикл читання і на вході RDY сигнал високого рівня, і в такті, наступним за Т3, якщо виконується цикл запису. Сигнали HLD і HLDA дозволяють організувати режим прямого доступу до пам'яті для будь-якого зовнішнього пристрою, формуючого сигналу HLD.
При виконанні команди HLT мікропроцесор переходить в стан «зупинки» і переводить буферні схеми каналу адреси і даних у високоомний стан. Із стану «зупинки» мікропроцесор виходить при присутності сигналу високого рівня на одному з його входів:
l на вході SR – мікропроцесор починає працювати з такту Т1 циклу M1;
l на вході HLD – мікропроцесор переходить в стан «захоплення», а після переходу сигналу HLD на низький рівень повертається в стан «зупинки»;
l на вході INT – мікропроцесор переходить до виконання циклу переривання при зупинці з такту Т1, якщо команда HLT передувала команда E1 «дозвіл на переривання», інакше залишається в змозі «зупинка».
Сигнал високого рівня на виході INT дозволяє перервати виконання поточної програми і переводить мікропроцесор на виконання підпрограми обслуговування пристрою, який видав запит переривання.
Під час надходження сигналу INT мікропроцесор (після закінчення поточної команди) переходить з такту Т1 до виконання машинного циклу «Переривання» в тому випадку, якщо переривання було дозволено раніше командою E1.
При виконанні циклу «Переривання» в такті Т1 мікропроцесор видає по шині даних сигнал стану «Підтвердження переривання», який використовується для дозволу видачі із зовнішнього контролера переривання (КР580BH59) на канал даних системи команди і адреси переходу на підпрограму переривання. Після закінчення підпрограми переривання здійснюють повернення до перерваної програми.
Сигнал високого рівня на вході SR (тривалість якого повинна бути не менше як три періоди тактової частоти) встановлює мікропроцесор в початковий стан: тригер дозволу переривання, тригер захоплення, регістр команд, регістр ознак і регістр адреси команди встановлюють в нульовий стан. Після закінчення дії сигналу SR мікропроцесор виробляє перше звертання за читанням команди до комірки пам'яті за адресою 000016.
Система команд мікропроцесора складається з 78 базових команд, які можна розділити на п'ять груп:
l команди передачі даних – використовуються для передачі даних з регістра в регістр, з пам'яті в регістр, з регістра в пам'ять;
l арифметичні команди – використовуються для складання, віднімання, інкремента або декремента вмістимого регістрів або комірки пам'яті;
l логічні команди: І, АБО виключаюче АБО, порівняння, зсуви;
l команди переходів – використовуються для умовних і безумовних переходів, виклику підпрограм і повернення з них;
l команди управління, введення/виведення і роботи із стеком, - використовуються для управління перериванням, регістром ознак, введення і виведення інформації.
В мікропроцесорі КР580ВМ80А прийнятий формат інформаційного слова, що представляє собою 8-розрядне двійкове слово (байт).
Формат інформаційного слова(даних):
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | біти |
Де D7 – старший розряд слова, D0 – молодший розряд. Негативні числа зберігаються в пам'яті в додатковому коді.
Формат команди залежить від типу операції і може бути одно- дво- або трьохбайтовим. Байти двох і трьохбайтових команд повинні зберігатися в елементах пам'яті, ідучи одна за одною. Адреси першого байта завжди є адресою коду операції.
Формат команд мікропроцесора:
Однобайтова команда | |||||||||
адреса комірки пам'яті | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | Код операції |
Двобайтова команда | |||||||||
адреса комірки пам'яті | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | Код операції |
адреса комірки пам'яті | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | дані або адреса |
Трибайтова команда | |||||||||
адреса комірки пам'яті | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | Код операції |
адреса комірки пам'яті | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | дані або адреса |
адреса комірки пам'яті | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
Операнди команд можуть зберігатися в програмно доступних регістрах мікропроцесора або пам'яті. Для вказівки операнда в регістрі використовується регістрова неявна адресація, для вказівки операнда в пам'яті – безпосередня, пряма, непряма регістрова і стекова адресація.
Регістр ознак мікропроцесора використовується для зберігання п’яти бітів ознак, які виробляються в результаті виконання деяких операцій:
l S – біт знаку рівний 1, якщо старший значущий розряд результату операції рівний 1 (тобто результат операції – негативне число);
l Z – біт нуля рівний 1, якщо результат операції рівний нулю;
l AC – біт допоміжного перенесення рівний 1, якщо при виконанні операції було перенесення з третього розряду суматора в четвертий;
l C – біт перенесення рівний 1, якщо при виконанні операції було перенесення з сьомого розряду сумматора або позика в сьомий розряд сумматора;
l P – біт парності рівний 1, якщо число одиниць результату операції парне.
Розподіл розрядів в регістрі ознак:
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
S | Z | AC | P | C |
Дата добавления: 2015-07-20; просмотров: 288 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
ДОДАТКОВІ МАТЕРІАЛИ | | | Послідовний порт системи - мікросхема КР580ВВ51А |