Теоретичні та практичні відомості з питань розробки систем керування на базі сучасних мікропроцесорних систем, страница 10

Шляхом з'єднання аналогічних мікросхем за допомогою спеціальної шини CAS2—CAS0 можна збільшити число обслуговуваних запитів до 64. При цьому в залежності від подачі відповідних сигналів на виводи MS/SV мікросхем одна з них виступає як ведуча, а інші — як ведені. Заздалегідь кожній веденій мікросхемі привласнюється її номер (шляхом запису в неї відповідного командного слова), який повинен бути рівний номеру входу /RQ мікросхеми, що веде, з яким сполучений вивід INT веденої мікросхеми.

Якщо сигнал INT, що поступив на процесор, вироблений сигналом IRQ мікросхеми що веде, то формування трьохбайтової команди CALL здійснюється цією ж мікросхемою. Якщо ж переривання процесора походить від сигналу ІRQ веденої мікросхеми, то формування команди CALL відбувається таким чином. Під час надходження першого сигналу (-INTA) мікросхема, що веде, видає на шину даних код команди CALL, а на шину CAS2—CASO — код номера веденої мікросхеми. Тому з приходом інших сигналів (-INTA) код адреси підпрограми обслуговування виробляється на шину даних тією веденою мікросхемою, запрограмований номер якої співпав з кодом на шині CAS2—CAS0. Одержуючи запити від периферійних пристроїв, ПКП визначає, яке з них володіє найвищим пріоритетом. При цьому рівні пріоритетів входів ІRQ7—IRQ0 мікросхеми наперед задані і знаходяться завжди в строго певному співвідношенні один з одним. Щонайвищим рівнем пріоритету володіє вхід IRQ0 пріоритетного кільця, з найнижчим — вхід IRQ7, званий дном пріоритетного кільця. Таким чином, задаючи положення дна, можна однозначно визначити рівень пріоритету кожного входу мікросхеми.

Після вироблення сигналу INT і отримання послідовності сигналів (-INTA) блокується обслуговування всіх запитів, що мають однаковий або більш нижчий в порівнянні з обслуженим рівень пріоритету. Заборонити обслуговування запитів можна застосуванням маскування, що дозволяє заблокувати будь-який з входів мікросхеми, на який поступає сигнал IRQ. З другого боку, усунути блокуючий вплив обслуженого запиту на обслуговування інших запитів можна, використовуючи спеціальне маскування. Це досягається також шляхом запису в мікросхему ПКП слова команди кінця переривання.

При обслуговуванні переривань по опиту мікропроцесор блокує свій вхід ІNT, оскільки ініціатором обслуговування є він сам. В цьому випадку по кожному сигналу (-RD), що поступає після подачі команди «Обслуговування за наслідками опиту», за наявності запитів прочитується код номера запиту, що має щонайвищий в даний момент рівень пріоритету.

Установка мікросхеми в початковий стан і установка алгоритму обслуговування переривань здійснюється за допомогою двох типів слів команд, записуваних в ПКП: СКІ і CKO.

Мікросхема може виконувати наступний набір операцій:

1. Операція маскування: індивідуальне маскування запитів; спеціальне маскування.

2. Операції установки статусу рівнів пріоритету: по установці початкового стану; по запиту, що обслужився; по вказівці.

3. Операції кінця переривань: звичайний кінець переривання; спеціальний кінець переривання.

4. Операція читання: читання регістра запитів; читання регістра обслужених запитів; читання регістра маски.

В процесі роботи мікросхем можна виділити наступні основні режими:

l програмування (запис слів команд, читання інформації в регістрах):

l обслуговування за запитом;

l обслуговування за наслідками опиту.

В режим запису слів команд мікросхема переходить при CS = 0 і (-WR) = 0, а в режим читання інформації — при CS = 0 і (-RD) = 0.

Мікросхема може знаходитися в одному з наступних станів: програмування; обслуговування за запитом; обслуговування за наслідками опиту.

Таблиця  Код команди СКІ