Системний контролер. Керуючий пристрій. Мікропрограмування

Робота системного Контролера

Як уже йшлося вище, слово стану видається мікропроцесором у першому такті кожного машинного циклу й триває тільки один такт. Але вказівки про те, що необхідно зробити з цьому циклі, мають діяти протягом усього циклу. Тому слово стану повинно десь зберігатися протягом усього циклу. Роль такого місця зберігання слова стану виконує спеціальний пристрій, що є обов'язковою частиною мікропроцесорної системи й має назву системного контролера.

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

сигналів шість. Усі вони є інверсними (тобто їх активним рівнем є логічний нуль, низький рівень напруги). Назвемо їх:

MEMR - читання з основної пам'яті;

MEMW - запис у пам'ять;

11 OR - уведення інформації із зовнішнього пристрою в акумулятор (читання від зовнішнього пристрою);

IIOW - виведення інформації в зовнішній пристрій '(запис у зовнішній пристрій);

INTA - робота за перериваннями;

HLT - зупинка мікропроцесора.

Оскільки основною функцією системного контролера є зберігання слова стану, головною його частиною має бути регістр. Блок-схему одного з можливих варіантів будови системного контролера зображено на рис. 5.1.

Слово стану з шини даних мікропроцесора потрапляє на D-входи

паралельною регістру RG і за сигналом CS (вибір кристала) записується в регістр. Цей інверсний сигнал, що має назву строба слова стану, може бути взятий, наприклад, із виходу SYNC мікропроцесора, на якому високий рівень виникає щоразу на початку машинного циклу разом зі словом стану. Треба лише проінвертувати сигнал SYNC1.

Записане в регістрі слово стану відтворюється на його виходах QO - Q7 і зберігається доти, доки не буде замінено на інше слово стану в наступному машинному циклі. Далі керуючі сигнали формуються за допомогою логічних схем.

Сигнал MEMR (читання з пам'яті) формується як MEMR *DBIN, тобто як кон'юнкція (з наступною інверсією) сигналу MEMR (чигання з пам'яті) і DBIN (строба читання).

Сигнал II OR (читання із зовнішнього пристрою) = INP Л DBIN, тобто кон'юнкція сигналу INP (введення із ЗП) та DBIN (строба читання).

lNTA=lNTA^DBIN.

І/ OW (виведення на ЗГГ) дорівнює OUT Л WR - кон'юнкції OUT (виведення на ЗП) та інвертованого сигналу WR -строба запису1.

MEMW = ОиТл WR- кон'юнкція інверсії від OUT (тобто це не є запис до ЗП) та інверсії від строба запису WR.

Саме така схема системного контролера з регістром К589ИР12 і логічними схемами застосовується в навчальному мікропроцесорному пристрої "Мікролаб".

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

Регістр слова стану за стробом SYNC (або STSTB від ГТІ ГФ24) записує та зберігає слово стану, а декодувальна схема, що містить логічні елементи, перетворює слово стану й сигнали DBIN\WR та INTA, що надходять від мікропроцесора, на інверсні керуючі сигнали.

Робота керуючого пристрою

Командами, що зберігаються в ОЗП (або в ПЗП), перед мікропроцесором ставиться загальне завдання, котре він має виконати. Так, наприклад, командою MVl A, P8 наказується переписати дані D8, що виставлені на магістральну шину, в акумулятор. А команда MOV В,А вказує, що слід переписати вміст акумулятора в робочий регістр В.

Конкретна реалізація цих завдань покладається на КП. Він пов'язаний лініями керуючих сигналів з усіма блоками мікропроцесора й розсилає в певній послідовності керуючі сигнали (мікрокоманди), якими приводяться в дію (активізуються) ці блоки.

Роботу мікропроцесора можна порівняти з роботою ієрархічно організованої системи, наприклад, заводу. Скажімо, перед заводом поставлено план виготовлення деяких виробів. У нашому випадку аналогом такого плану є програма, записана в основну пам'ять ЕОМ. З планово-виробничого відділу заводу в цех надходить наказ виготовити стільки-то таких-то деталей. Керівниитво цеху розподіляє завдання між ділянками та окремими робітниками, указуючи їм, що саме треба робити та в якій послідовності, щоб реалізувати поставлене перед цехом завдання. На цьому самому найнижчому керівному рівні узгоджується робота иехУ 31 складом, регулюється надходження матеріалів, інструментів та збері7 шня напівготової продукції.

У мікропроцесорній системі роль такої низової керівної ланки відіграє саме керуючий пристрій. Його основна роль полягає в тому, щоб у відповідні моменти часу з'єднувати або роз'єднувати між собою входи та виходи окремих блоків мікропроцесор3- Тим самим утворюються тимчасові комунікаційні структури^ по яких відбувається "перетікання" інформації е:д одного блоку до Іншого та здійснюються елементарні логічні й арифметичні операції.

Роль таких комутаторів (електронноке^ованИ* ключів та перемикачів) виконують вентильні елементи - кон'юнктори (елементи "І"), котрі відкриваються або закриваються сигналами керуючого пристрою.

Так, наприклад, для виконання команди MVI A,D8 мають бути виконані такі операції:

а) відкрити вентилі на вході буферного регістру даних БРД (рис, 3.1.). Тим самим дані D8, що виставлені на магістральну шину, записуються до БРД і магістральна шина вивільнюється;

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

Для виконання команди MOV В,А вихід акумулятора та вхід робочого регістру В повинні бути підключені через відповідні вентилі до внутрішньої ШД.

Для здійснення логічних або арифметичних операцій мають бути виконані такі дії: перший операнд повинний бути заздалегідь записаний до акумулятора; другий операнд із внутрішньої ШД уводиться в перший буферний регістр БР1; разом із тим перший операнд подається з акумулятора в БР2 (акумулятор вивільняється); на керівні входи АЛП подається керуюче слово потрібної операції, результат записується до акумулятора.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: