Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВИВЧЕННЯ КОМАНД МІКРОПРОЦЕСОРА КР580.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
251.86 Кб
Скачать

ВИВЧЕННЯ КОМАНД МІКРОПРОЦЕСОРА КР580, РОЗРОБКА ПРОГРАМИ ВИВЕДЕННЯ ІНФОРМАЦІЇ НА ДІСПЛЕЙ

Мета роботи: дослідження команд мікропроцесора КР580, складання програм на мові асемблера.

Коротка характеристика досліджуваного процесора

Для полегшення вивчення принципів програмування МП-систем на низькому рівні на мові асемблера, а також придбання базових понять в області організації ЕОМ і МПС, була розроблена програмна модель-емулятор МПС, побудована на базі особливостей розглянутого мікропроцесора (рисунок 1).

Малюнок 1 - Програма-емулятор мікропроцесорної системи КР580.

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

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

У можливості емулятора входить: робота з 5-ма зовнішніми пристроями, такими, як монітор, НГМД, НЖМД, мережевий адаптер і принтер; налагодження та виконання програм в тактовому, командному та наскрізному режимах; робота з усім спектром системи команд даного МП; збереження, завантаження і друк даних і результатів; ручне введення даних в ОЗУ і РОН. Також, до складу дистрибутива включено докладний посібник користувача, опис системи команд і файли-образи ОЗУ емулятора для прикладу.

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

Структурна схема МП КР580ВМ80А приведена на малюнку 2.

Малюнок 2 - Структура МП КР580ВМ80.

До складу мікропроцесора входять:

  1. 8-розрядний арифметико-логічний пристрій АЛП (ALU);

  2. регістр ознак RS, що фіксує ознаки, що виробляються АЛУ в процесі виконання команди;

  3. акумулятор (А);

  4. регістр акумулятора (RGa);

  5. регістр тимчасового зберігання операндів (RGb);

  6. десятковий коректор (DAA), який виконує переклад інформації з двійковій в двійковій-десяткову форму;

  7. регістр команд (IR), призначений для зберігання першого байта команди, що містить код операції;

  8. дешифратор команд (DCU);

  9. блок регістрів для прийому, видачі і тимчасового зберігання інформації в процесі виконання програм;

  10. схема управління і синхронізації (CU), що формує послідовності керуючих сигналів для роботи ALU і регістрів;

  11. односпрямований 16-розрядний буферний регістр адреси (ВА);

  12. двонаправлений 8-розрядний буферний регістр даних (BD);

  13. двонаправлений мультиплексор (MUX) для обміну інформацією між ALU і блоком регістрів по внутрішній шині даних (Internal Data Bus.

Блок регістрів включає:

програмний лічильник (РС), призначений для зберігання адреси чергової команди (при виконанні лінійних програм цю адресу автоматично збільшується на 1, 2, 3 в залежності від довжини виконуваної команди - 1, 2 або 3 байти відповідно);

  1. покажчик стека (SP);

  2. регістр адреси (RGA);

  3. шість 8-розрядних регістрів загального призначення B, C, D, E, H, L, які можуть об'єднуватися в парні 16-розрядні регістри BC, DE, HL;

  4. допоміжні розрядні регістри W, Z.

Регістри RGa, RGb, IR, W, Z, RGA користувачеві програмно недоступні.

Крім того, МП має 16-розрядний односпрямований 3-стабільний канал адреси А (15-0), 8-розрядний двонаправлений 3-стабільний канал даних D (7-0), чотири вхідних (RESET, READY, INT, HOLD) і шість вихідних (SYNC, DBIN, READY, WAIT, INTE, HLDA) висновків сигналів управління.

Десятковий коректор DAA полегшує роботу з числами, представленими в 10-чной системі числення.

Буферні регістри даних BD і адреси BA використовуються для буферизації внутрішніх шин даних і адреси з боку зовнішньої магістралі.

Схема управління і синхронізації виконує ряд функцій управління і синхронізації:

  1. забезпечує вибірку команд і операндів;

  2. організовує правильне функціонування АЛУ;

  3. забезпечує доступ до всіх регістрах МП;

  4. синхронізує УВВ і управляє їх роботою;

  5. призупиняє роботу МП в режимі очікування і відключає МП від системної магістралі в режимі ПДП.

Мультиплексор MUX забезпечує підключення до внутрішньої магістралі МП необхідного регістра з блоку регістрів.

МП КР580ВМ80А забезпечує адресацію зовнішньої пам'яті до 64 Кбайт і підключення до 256 пристроїв введення-виведення.

З метою спрощення розуміння принципу роботи МП, дамо спочатку словесний опис його функціонування під час виконання команд програми:

Перед виконанням чергової команди МП містить її адресу в програмному лічильнику РС;

МП звертається до пам'яті за адресою, що міститься в РС, і зчитує з пам'яті перший байт черговий команди в регістр команд IR;

Дешифратор команд DCU декодує міститься в IR код команди і в результаті його декодування, зокрема, "дізнається":

  • яка довжина цієї команди (1, 2 або 3 байти);

  • де зберігаються її операнди;

  • які дії потрібно виконати над операндами;

Відповідно до отриманої від DCU інформацією пристрій управління виробляє впорядковану в часі послідовність мікрооперацій, що реалізують приписи команди, в тому числі:

  • витягує операнди з регістрів і пам'яті;

  • виконує над ними запропоновані кодом команди арифметичні, логічні або інші операції;

  • в залежності від довжини команди модифікує вміст РС на 1, 2 або 3 (при лінійному алгоритмі);

  • передає управління черговий команді, адреса якої знову знаходиться в програмному лічильнику РС.

Розглянемо, наприклад, команду складання вмісту акумулятора і регістра В, має мнемонічне позначення ADD B. Команда ADD B - однобайтового і має код операції 80h

На початку виконання цієї команди МП виставляє на шину адреси адресу команди, зчитує з пам'яті її код 80h і поміщає його в регістр команд IR. Після декодування команди пристрій управління (УУ) виробляє визначену командою послідовність керуючих сигналів, що приводить до наступних дій:

  • вміст акумулятора копіюється в RGa;

  • вміст регістра В копіюється RGb;

  • виробляється підсумовування RGa + RGb і результат складання поміщається в акумулятор А;

  • в залежності від результату операції модифікується вміст регістра прапорів RS;

Вміст програмного лічильника РС збільшується на 1, так як команда ADD B є однобайтового, і тепер програмний лічильник містить адресу наступної команди програми і т.д.