Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Архітектура мікропроцесора К580ВМ80А




Архітектура МП- це його логічна організація. Вона визначає можливість МП з точки зору апаратної, програмної та мікропрограмної реалізації функцій, необхідних для побудови МПС.

Поняття архітектури МП відображає його структуру, тобто сумісність компонентів, з яких він складається, і зв¢язок між ними. Для користувача достатньо обмежитись регістровою моделлю МП, яка дозволяє зрозуміти:

-способи представлення і формати даних;

-способи звернення до всіх доступних елементів структури (адресація

регістрів, комірок пам¢яті, зовнішніх пристроїв);

-набір команд МП;

-характеристики керуючих слів і сигналів, які виробляє МП і які надходять ззовні;

-реакцію на зовнішні сигнали (схеми-обробки переривань).

Мікропроцесор ВІС КР580ВМ80А є 8-розрядним МП з трьома магістралями: однонаправленою 16-розрядною ША, двонаправленою 8-розрядною ШД і 12 сигнальними лініями керування ШК (6 вхідних і 6 вихідних). ВІС виготовлена за n-МОП технологією, містить 45000 транзисторів і виконана в 48 вивідному пластмасовому корпусі. Тактова частота 2 МГц.

Для даного МП характерна однозначно визначена архітектура і система команд, неможливість апаратного нарощування розряднорсті оброблюваних даних. МПС на базі цього МП реалізовується шляхом з¢єднання його з пристроями вводу-виводу (портами) (їх кількість може досягати 256 портів вводу і стільки ж виводу) і модулями напівпровідникової пам¢яті будь-якого типу і швидкодії.Кількість базових команд мікропроцесора - 78, а час виконання команд для тактової частоти 2 МГц знаходиться в діапазоні 2...9 мкс.

На рисунку 4.1а) приведене умовне позначення МП і показані основні виводи.

А015 - адресна шина (виходи з трьома станами), які забезпечують адресацію 216 8-розрядних комірок і зовнішніх пристроїв;

D0-D7 - двонаправлена ШД, використовується для обміну з пам¢яттю і зовнішніми пристроями(ЗвП);

F1-F2 - входи для подачі тактових сигналів

від генератора;

C (SYNC) - на цьому виході формується сигнал синхронізації на початку кожного машинного циклу;

ГТ (готовність) - сигнал на вході вказує на

готовність периферійного

пристрою або ЗвП до обміну

інформацією;

ОЧ (WAIT) - вихідний сигнал інформує

периферійний пристрій

або ЗвП про стан

очікування;

ГПД (DBIN) - вихідний сигнал про готовність

МП прийняти дані по шині даних

ВД (WR) - вихідний нульовий сигнал про

видачу в ШД інформації МП;

ЗПР (INT) - вхідний сигнал про запит

периферійного пристрою

на переривання програми

роботи;

ДПР (INTE) - вказує на можливість

переривання

ЗЗх (HOLD) - вхідний сигнал про запит

периферійного пристрою

відключення МП від ШД і ША;

ПЗх (HLDA) - вихідний сигнал про

відключення ШД і ША від МП;

Обн. (RESET) - обнуління програмного

лічильника.

 

 

Вказані лінії виводять з МП тільки частину інформації необхідної для роботи МПС. Додаткова інформація, оскільки число виводів МП обмежене, видається ШД на початку кожного машинного циклу за сигналом “С”. Ця інформація при необхідності може бути добута спеціальними комбінаційними схемами (наприклад контролером шин КР580ВК28). Сукупність сигналів керування на ШД називається словом стану.

На рисунку 4.1б) подана регістрова модель МП. Вона має такі основні функціональні елементи: арифметико-логічний пристрій (АЛП), схеми десяткової корекції (ДК), блок регістрів (БРГ), пристрій керування (ПК), регістр-акумулятор (А), буферний регістр (БР), регістр ознак (F), буфери даних (БД) і адреси (БА).

Рисунок 4.1 – Архітектура МП К580ВМ80А:

а) регістрова модель МП; б) умовне зображення.

 

 

Вона має такі основні функціональні елементи: арифметико-логічний пристрій (АЛП), схеми десяткової корекції (ДК), блок регістрів (БРГ), пристрій керування (ПК), регістр-акумулятор (А), буферний регістр (БР), регістр ознак (F), буфери даних (БД) і адресу (БА).

В цілому МП розрахований на виконання логічних і арифметичних операцій з 8-розрядними числами в двійковій і десятковій системах числення, а також операцій з подвійною розрядністю. АЛП виконує арифметичні операції додавання і віднімання, основні логічні операції (І, АБО, виключне АБО) і зсуви. АЛП має два входи і один вихід.

Акумулятор (А) -спеціальний регістр для тимчасового зберігання операндів або проміжних результатів при виконанні операцій в АЛП. Один операнд завжди беруть з А, а другий- зі спеціального буферного регістра (БР).

Схема десяткової корекції, побудована на базі ПЗП, дозволяє виконувати обробку даних, поданих в двійково-десятковій системі.

Для приймання, зберігання і передачі різної інформації використовується БРГ, який бере участь в процесі виконання програми. Він має спеціальні регістри: регістр адреси (РА), регістри лічильник команд (РС) і показник стеку (SP), регістри W і Z (вони програмно недоступні), мультиплексори (МПЛ), схему вибірки регістрів (СВР) і шість регістрів оперативного призначення (РОП).

Перераховані компоненти суттєво розширюють можливості АЛП по обробці інформації.

Обмін інформації в середині МП здійснюється через внутрішню 8-розрядну ШД (ШДВ) при допомозі двох 8-розрядних мультиплексорів (МПЛ).

Регістр адреси - 16-розрядний регістр, для зберігання адреси комірки пам¢яті, з якої в певний момент часу необхідно зчитати операнд або в яку необхідно записати операнд. В РА коди передаються із регістрових пар БРГ, ПС і ЛК при зверненні до пам¢яті і зовнішніх пристроїв.

Лічильник команд (РС)- це програмно доступний 16-розрядний регістр, вміст якого вказує на адресу чергової команди. Після зчитування чергової команди вміст РС автоматично збільшується на одиницю при виборці кожного байта команди, а точніше на 1, 2 і 3 в залежності від довжини команди. При цьому перший байт, який визначає код операції (КОП), завжди передається шиною ШДВ в регістр команд (РК). Цей процес продовжується до тих пір, поки виконання відбувається за послідовною віткою команд. Коли ж поточна команда (перехід або виклик підпрограми) змінює послідовність виконання програми, МП заносить в РС не адресу наступної команди, а адресу виконаної зараз команди.

Покажчик стеку (SP)- спеціальний програмно-доступний 16-розрядний регістр. В процесі функціонування МП в SP зберігається адреса останньої комірки стекової пам¢яті. Вміст PS зменшується перед записом коду в стек і збільшується після зчитування.

Регістри оперативного призначення (РОП)- це пристрої, які виконують роль надоперативного запам’ятовуючого пристрою. В склад РОП входять шість 8-розрядних регістрів: B, C, D, E, H, L. Прийнята така їх адресація: B-000, C-001, D-010, E-011, H-100, L-101.

Оскільки деякі команди предбачають обробку або передачу машинних слів подвійної довжини, тому пари регістрів B і C, D і E, H і L об¢єднані в 16-розрядні регістрові пари, які мають адреси 00, 01, 10 відповідно. А символьно вони позначаються як B, D і Н відповідно.

Пристрій керування (ПК)- керує роботою АЛП, БРГ та іншими компонентами МП, реалізовуючи такі основні функції:

-вибірку команд програми в необхідній послідовності, їх дешифрацію і

облоку полів команди;

-управління виконанням операцій;

-синхронізацію роботи окремих блоків і елементів МП.

Регістр команд (РК)- входить в склад ПК і використовується для зберігання коду операції (першого байту) тієї команди, адреса якої встановлена в лічильнику команд, при цьому другий байт команди заноситься в регістр W, а третій- в регістр Z.

Далі код операції дешифрується дешифратором команд (ДШК), тобто визначається тип виконуваної операції. ДШК представляє собою 5 програмованих логічних матриць.

Блок керування та синхронізації (БКС)- виробляє необхідну послідовність керуючих сигналів для управління і синхронізації як внутрішніх компонентів МП (УВ), так і для зв¢язку з зовнішніми (відносно МП) пристроями- це сигнали, що передаються шиною керування (ШК).

Регістр ознак результату операції (F)- індикатори. Послідовність виконання операції часто залежить від результату виконання попередньої. Для того, щоб оцінювати цей результат в МП є набір тригерів-індикаторів (регістр ознак результату F).

 

Рисунок 4.2– Структура регістра ознак і характеристика його індикаторів

 

Програмно можна перевірити значення чотирьох ознак: CY- переносу, S- знаку, Z- нуля, P-парності. Ці ознаки можна використовувати при рганізації розгалужених програм і підпрограм.

Буферні регістри адреси ( БА) використовуються для спряження МП з адресною шиною. В залежності від сигналів з ПК буфер адреси забезпечує передачу 16-розрядної адреси з регістра адреси в ША, або її відключення від неї.

Буферний регістр даних (БД) забезпечує спряження МП з ШД. БД за сигналами з ПК приймає байт даних або видає його в зовнішню шину.

 

Режими роботи МП

Виконання кожної команди МП здійснюється в певній послідовності, яка визначається кодом команди і синхронізується в часі сигналами F1 i F2 тактового генератора.

Період синхросигналів F1 або F2називають машинним тактом (Т). Тривалість такту Т може знаходитись в межах від 0,5 до 2 мкс.

Крім того, при аналізі роботи МП використовують поняття машинний цикл (М) - час, необхідний для добування 1 байта інформації з пам’яті або виконання команди, яка визначається одним машинним словом. Машинний цикл може мати 3-5 машинних тактів, а час виконання команди може складатися з 1-5 машинних циклів. Мікропроцесор КР580ВМ80А генерує десять різних типів машинних циклів:

1.Добування коду команд (М1).

2.Читання даних з пам’яті.

3.Запис даних в пам’ять.

4. Добування зі стеку.

5. Запис даних в стек.

6. Ввід даних із зовнішнього пристрою.

7. Запис даних у зовнішній пристрій.

8.Обслуговування переривань.

9.Зупинка.

10.Обслуговування переривань при роботі МП в режимі зупинки.

Першим машинним циклом при виконанні всякої команди є цикл М1. На першому такті кожного машинного циклу МП вказує тип виконуваного циклу при допомозі 8-розрядного слова стану. Окремі розряди цього слова використовуються в МПС для формування шини керування. Слово стану видається на ШД лише на час дії синхросигналу Синх. (Такти Т1 і Т2, рисунок 4.3а), а використовуються на протязі всього машинного циклу, тому необхідно записати його в спеціальний регістр слова стану РгСС. На рисунку 4.3б приведена схема запису слова стану. Запис забезпечується синхросигналами Синхр. і F1, а саме сигналами F1 в такті Т2. На рисунку 4.3в приведена схема запису слова стану з використанням багаторежимного буферного регістра К589ИР12.

Розглянемо детальніше часові діаграми роботи МПС в різних машинних циклах.

 

Добування коду команд, даних з пам’яті або зовнішнього пристрою.

Цикл М1 є основним циклом, тому проведемо аналіз процесів на кожному машинному такті Т (рисунок 4.4).

Рисунок 4.3 – Схема запису слова стану МП:

а) часова діаграма;

б) структурна схема; в) принципова схема.

Рисунок 4.4 –Часова діаграма процесу добування коду команди МП.

На такті Т1 програмний лічильник РС МП видає на ША адресу комірки пам’яті, з якої необхідно добути код команди (вміст лічильника автоматично нарощується на одиницю). Додатнім фронтом F2 формується сигнал С і видається слово стану на ШД. Сигнал ГПД (DBIN) низького рівня, тому слово стану проходить на СШД МПС.

На другому такті Т2 слово стану записується в регістр. Додатнім фронтом F2 закінчується сигнал синхронізації С і формується високий рівень сигналу ГПД (приймання), що дозволяє даним пройти на вхід МП через ШФ (рисунок 4.5). В цьому ж такті із сигналу ГПД і розряду D7 слова стану формується сигнал читання даних із пам’яті (Чт.Пм або MEMR), який дозволяє даним надійти з пам’яті в СШД (рисунок 4.5). На цьому ж такті аналізується стан сигналів ГОТОВИЙ (ГТ або READY), ЗАХОПЛЕННЯ (З.Зх або HOLD), обробка зупинок Об.Зп. При низькому рівні сигналу З.Зх, в розряді D4 слова стану і одиничному сигналі на вході READY МП переходить до такту Т3.

 

 

Рисунок 4.5 – Схема читання коду команди або даних з пам’яті.

Якщо до появи від’ємного фронту F2 в такті Т2 сигнал на вході READY низького рівня, то МП на такті Т3 переходить в режим очікування, в якому призупиняється процес обробки даних і формується сигнал високого рівня на виході ОЧІКУВАННЯ (Оч або WAIT). Цей режим триває до зміни стану сигналу на вході READY.

На такті Т3 за від’ємним фронтом сигналу F1 виконується запис даних у внутрішній регістр коду команд, а за додатнім фронтом F2 знімається сигнал ГПД і Чт.ПМ.

На тактах Т4 і Т5 дешифратор коду команд розшифровує код команди, визначає кількість байтів в команді і готує МП до виконання наступних машинних циклів.

Відмінність машинних циклів читання даних з пам’яті, стеку або зовнішніх пристроїв (ЗП) у порівнянні з циклом М1 буде тільки в тому, що МП сприймає числа, одержані в такті Т3 із ШД не як код команди, а як дані. При записі даних із ЗП, МП формує сигнал читання пристрою вводу-виводу (ЧтВВ або I/OR) із сигналів ПРИЙМАННЯ і розряду D6 слова стану.

Запис даних в пам’ять або зовнішній пристрій.

Процес запису даних в пам’ять показаний на рисунку 4.6. В такті Т1 МП видає адресу на ША, а на ШД встановлює слово стану. На такті Т2 на ШД поступають дані для запису в пам’ять, а в такті Т3 формується сигнал запису даних в пам’ять або ЗП. На протязі всього машинного циклу сигнал ПРИЙОМ (ГПД) має низький рівень, що забезпечує роботу ШФ на видачу даних в СШД МПС.

Процес запису даних у ЗП аналогічний запису даних в пам’ять, але при цьому формується сигнал запису ЗпВВ (I/OW) з використанням сигналу ВД (WR) розряду D4 слова стану.

 

Робота в режимі ЗАХОПЛЕННЯ.

Режим ЗАХОПЛЕННЯ використовується для зупинки керування МП роботою МПС. В цьому режимі вихідні шини МП (ША і ШД) переходять в третій стан і від’єднуються від магістралей МПС, що дає можливість обміну інформацією з МПС каналом прямого доступу до пам’яті. Даний режим ініціюється високим рівнем сигналу на вході керування З.Зх, а МП підтверджує перехід в режим ЗАХОПЛЕННЯ установкою високого рівня сигналу на виході П.Зх. Стан ЗАХОПЛЕННЯ триває ціле число тактів і установка низького потенціалу на вході З.Зх перевіряється на кожному імпульсі F2. При позитивному результаті перевірки МП виходить з режиму ЗАХОПЛЕННЯ на виконання наступного машинного циклу з такту Т1.

 

Робота при виконанні команди HALT.

Режим ЗУПИНКА є результатом виконання команди HALT. В цьому режимі шини МП не від’єднуються від магістралей МПС, а процесор просто переходить в режим аналогічний стану ОЧІКУВАННЯ, але цей стан установлюється програмно. Як правило, режим ЗУПИНКА закінчується, коли ЗП видає запит на обслуговування. Один з методів формування запитів на обслуговування - це запит переривання на вході З.Пр МП (рівень “1” на вході З.Пр). У випадку, коли сигнал переривання МП не сприймає (заборона командою DI), тоді вихід зі стану ЗУПИНКА можливий за сигналом початкової установки на вході R МП. Крім того з режиму ОСТАНОВ МП може перейти в режим ЗАХОПЛЕННЯ і повернутись з нього в попередній стан.

 

а)

 

 

б)

 

 

Рисунок 4.6 – Схема запису даних в пам'ять: а – структурна схема;

б – часова діаграма.

 

Обслуговування запиту на переривання.

Зовнішній пристрій видає сигнал запиту на переривання асинхронно відносно роботи МП, формуванням високого рівня на вході З.Пр. Переривання обслуговується у випадку дозволу на сприймання запиту переривання. Заборона виникає автоматично, коли здійснена початкова установка МП або після початку обслуговування переривання. Керування станом заборони обслуговування переривання може здійснюватись програмно при допомозі команд: ЕІ - “Дозвіл переривання”; DI - “Заборона переривання”. Стан заборони визначається низьким рівнем сигналу на виході Д.Пр, а при рівні “1” на цьому виході запити на переривання будуть сприйматись.

Коли запит переривання сприйнятий, МП починає цикл обслуговування переривань. На першому машинному циклі обслуговування переривань МП одержує СШД МПС код переривання. Це може здійснювати двома способами: при допомозі команди RST<N> i команди CALL<A1><A2> (векторний спосіб). Перший цикл для обох способів є спільним і відрізняється від циклу М1 добування коду команди з пам’яті тим, що вміст програмного лічильника МП при цьому не збільшується. На такті Т1 формується низький рівень на виході Д.Пр. і починається обслуговування переривання установкою слова стану з “1” в розрядах D0, D1, D5. Розряд D0 сумісно з сигналом на виході ПРИЙМАННЯ (ГПД) використовується для формування сигналу Об.Пр. (INTA), за яким обслуговується СШД. За цим же сигналом ЗП посилає в СШД МПС або код команди RST<N>, або код команди CALL<A1><A2> (рисунок 4.7).

Існує вісім кодів команд RST<N>, де N=0÷7. Команда RST<N> вказує на початкову адресу підпрограми обслуговування переривань. За цією командою на першому машинному циклі, МП на циклах М2 і М3 записує в область пам’яті (стек) поточне значення програмного лічильника РС. Це необхідне для повернення в дану точку програми після завершення підпрограми переривань. Повернення забезпечується командою RET (RETURN), яка завантажує вміст двох верхніх комірок стеку в РС.

При векторному способі задання переривань на першому циклі М1 ЗП передає МП команду CALL<A1><A2>. За цією командою МП автоматично переходить в режим вводу 2 байтів адреси А1 і А2 на циклах М2 і М3. Після чого реалізується збереження вмісту РС в стеці і перехід на початок підпрограми обслуговування переривань. Початок підпрограми вказаний в байтах <A1><A2> команди CALL.

Рисунок 4.7 – Ввід коду команди RST при обслуговуванні МП

сигналів переривань.

 

 

Початкова установка.

При наявності рівня “1” на вході R, всі операції в МП будуть зупинені. За цей час обнулюються: програмний лічильник, тригер заборони переривань і внутрішня логіка, зв’язана з формуванням сигналу П.Зх. Таким чином, після початкової установки, першою буде виконуватись команда за адресою 0000. Для зняття заборони на переривання в програмі необхідно передбачити команду ЕІ.

 

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...