Строительный блокнот  Корпуса микропроцессорных микросхем 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 [ 33 ] 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121

обслуживание по запросу,

обслуживание по результатам опроса.

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

Микросхема может находиться в одном из следующих состояний, программирование; обслуживание по запросу, обслуживание по результатам опроса.

Программирование. В процессе работы ПКП можно изменять алгоритмы обслуживания прерываний. Это осуществляется с помощью системы команд, перечень которых приведен в табл. 3.!29. Прежде всего мнкросхема должна быть установлена в исходное состояние. Для этого используется последовательность двух или трех команд СКИ1, СКИ2 и СКИЗ. По команде СКИ1 (признак А0 = 0, D4=\) микросхема выполняет следующие действия:

устанавливает в исходное состояние схему, чувствительную к перепаду уровня напряжения с низкого на высокий по входам запросов;

очищает регистр маскирования запросов,

присваивает запросу иа входе IRQ7 низший уровень приоритета;

сбрасывает триггер спецмаскироваиня, а триггер выбора РЗПР РОЗПР для последующего считывания устанавливает в состояние выбора РЗПР. Команда СКИ1 имеет четыре модификации (СКИ1а-СКИЧг), что связано с указанием в ней признака Е (разряд D1) числа ПКП в системе и признака формата адреса Ф (разряд D2). Если £=1, то ПКП в системе единственный, если £ = 0 -в системе несколько ПКП. При Ф= 1 формат равен четырем, т. е. начальные адреса программ обслуживания смежных запросов отстоят друг от друга на четыре адреса, при Ф = 0 - на восемь. В разрядах D7-D5 команды СКИ1 указываются разряды адреса А7-А5 младшего байта начального адреса подпрограммы обслуживания запросов при формате 4. При формате 8 в разрядах D7-D6 указываются разряды адреса А7-А6 Возможные варианты адресов младшего байта в зависимости от номера запроса и формата показаны в табл. 3.30.

Следующая команда после СКИ! (признак Л0=1) воспринимается как команда СКИ2, в которой указываются старшие разряды (А 15-А8) 16-разрядного адреса подпрограммы обслуживания. Формат СКИ1 и СКИ2 приведен на рис 3.38, о, б

Если в СКИ1 £=0, то следующая за СКИ2 команда (при Л0=1) воспринимается микросхемой как СКИЗ и имеет две модификации: СКИЗа и СКИЗб .(рис. 3 39) Команду СКИЗа подают на ведущую микросхему, а СКИЗб - на ведомые. Если в некотором разряде D7-D0 команды СКИЗа устанавливается единичное состояние, это означает, что к соответствующему входу IRQ ведущей микросхемы подключен вывод ведомой микросхемы. Нулевое состояние означает, что на соответствующий вход IRQ подается запрос от периферийного устройства либо он не используется. В разрядах 02-00 команды СКИЗб указыва-

Слова команды

СКИ1

СКИ2

А7 А7 А7 А7

А6 А6 А6 А6

СКИЗ

СК01

А5 А5

Мб М5

СК02

СКОЗ

U2 U2

ио ио

82 В2

ВО ВО

ется двоичный код номера ведомой микросхемы, который должен быть равен номеру входа IRQ ведущей микросхемы, к которому подключена эта ведомая микросхема. Так, если выход INT ведомой микросхемы подключен ко входу IRQ6 ведущей микросхемы, то в разрядах команды СКИЗб, выдаваемой на эту микросхему, указывается код ПО.

Таблица 3.30

Номер запроса

IRQ7

IRQ6

IRQ5

IRQ4

1RQ3

IRQ2

IRQ1

IRQO

1RQ7 IRQ6 IRQ5 IRQ4 IRQ3 IRQ2 IRQI IRQO

А7 А7 А7 А7 А7 А7 А7 А7

А6 А6 А6 А6 А6 А6 А6 А6

1 1 1 1

0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0



fopMom Ш1

AO V7 m Л5 m ПЗ m лг so

Формат Ш2

0 \A7

А7-АЬ-разряйч шад-uieta faumaaipeca квманВы CALL

US US m

аи\а13

1-S системе один ПКП 8 системе нес-колька ПКП

Формат младшего байта адреса камаиЗы САН D7 Ш Л5 Вчт D2 Л1 ВО

\a7\a6\A5\B2\B1 \Во\ о \ о\ ф

\a\A7\AS \ вг\в1 \ва\ о \ о \о

82 -ВО - двоична-десвтичшй над запроса, дырадатайшега сигнал INT

AIS-Ai- старший байт адреса команды CALL

Рис 3.38. Формат команд СКИ1 (а) и СКИ2 (б)

Таким образом, перед обслуживанием запросов на микросхему обязательно должна быть выдана последовательность команд СКИ, как показано на рис. 3.40.

Выбор или изменение в процессе работы ал оритма обслуживания запросов осуществ-

лю В7 ВЬ В5 вч из пг П1 во

1/7 1/6 U5

из 02 U1 ио

1 1

(7 =

7- на Входе IRQ Ведущего ПКП,Вчжод INT Ведомого ПКП;

0-на входе I/fQ запрос с пери/ре -рии

АО В7

В6 В5

В 1 0

U2-U0- двоично-десятия-нтй код номера N ведомого ПКП Всистеме

ляегся с помощью слов команд обслуживания (см. табл. 3.29).

Установка признака М,= 1 в команде СК01 (признак А0=1) указывает на блокировку обслуживания соответствующего сигнала IRQ. Содержимое регистра маскирования выдается на щину D7-DO при подаче сигналов CS = 0, RD=0, AO=l

Команда СК02 (признак А0=0, D4 = 0, £3=0) имеет пять модификаций (СК02а- СК02д). Группа команд СК02 указывает вид конца обслуживания прерывания, а также вид установки дна и дно приоритетного кольца

Команда СК02а (обычный конец прерывания) устанавливает в нулевое состояние разряд РОЗПР, соответствующий последнему (до подачи команды СК02а) обслуженному запросу.

ВТВй П5 dif лз 02 BI DO

А5 1 /

AI3\AtZ

а to

AS IaB \CKHI


1/7 1/6 US M

из иг UI [/0\ГКИЗ

Готов к приеме/ запросов

Рис. 3.39. Модификации команды СКИЗ

а - для ведущею ПКП. б - для ведомого ПКП

Рис. 3.40. Последовательность подачи команд СКИ



Команда СК026 (специальный конец пре рывания) устанавливает в нулевое состояние тот разряд РОЗПР, номер которого указан двоично-десятичным кодом (В2-ВО) в разря tax D2-DO этой команды

Команда СК02в вводит вид установки ста туса приоритетов по последнему обслужен но му запросу По этой команде устанавливается в нулевое состояние разряд РОЗПР, соответ ствующий последнему обслуженному запросу, и этому же номеру запроса присваивается низщий уровень приоритета (дно приоритет ного кольца)

Команда СК02г вводит вид установки статуса приоритетов по указанию с выполнением операции обычного конца прерывания По этой команде присваивается дно тому входу IRQ, номер которого в виде двоично десятичного кода (Вг-ВО) указан в разрядах этой команды, при этом устанавливается в нулевое состоя ние соответствующий разряд РОЗПР

Команда СК02д вводит вид установки ста туса приоритетов по указанию без выполнения операции конца прерывания Двоично-десятичный код в разрядах D2-DO этой команды указывает только дно приоритетного кольца

Статус уровня приоритета устанавливае мый одной из команд СК02в СК02г, СК02д сохраняется до подачи команды, которая может его изменить Группа команд типа СКОЗ (признак А0 = 0, Ш=1, £ = 0) использует ся в режиме чтения и установки специального маскирования

Команда СКОЗа устанавливает режим об служивания по результатам опроса

После подачи сигнала RD=0 действие команды СКОЗа прекращается При подаче команд СКОЗб, СКОЗв (при RD=Q) обеспечи вается чтение соответственно регистров РЗПР, РОЗПР После подачи сигналов RD=0 дейст вне команд СКОЗб, СКОЗв сохраняется

Команда СКОЗг обеспечивает специальное маскирование путем блокировки действия тех разрядов РОЗПР, которые замаскированы командой СК01 на соответствующих позициях РЗПР

Команда СКОЗг используется совместно с командой СК01 в том случае, если необходи мо обслужить запрос, который блокируется старщим или равным по уровню приоритета обслуженным запросом, хранящимся в РОЗПР, не сбрасывая последний

Команда СКОЗд прекращает действие команды СКОЗг Таким образом, приведенная система команд позволяет устанавливать раз личные алгоритмы и закреплять приоритеты за внещними устройствами как статически, так и динамически, т е в любое время работы основной программы

Прерывание по запросу возможно после установки исходного состояния микросхемы Пои прерывании по запросу для обслужива ния поступивших запросов на вход микросхемы должна быть подана последовательность сигналов ШТА в ответ на выходной сигнал микросхемы ШТ Все запросы, поступившие

Рис 3 41 Код на шине данных в режиме пре рывания по результату опроса

на вход микросхемы, записываются в соответ ствующие разряды РЗПР Наличие запроса воспринимается микросхемой при переходе сигнала IRQ от низкого уровня к высокому, причем этот уровень должен удерживаться по крайней мере до прихода первого сигнала ШТА

Схема МЗПР анализирует поступившие за просы по уровню приоритета и выдает раз решения устройству управления микросхемы на выдачу сигнала ШТ

Запрос с наивысшим уровнем приоритета, прошедший через схему МЗПР, записывается в регистр РОЗПР Запросы, поступающие с выхода РЗПР, могут быть маскированы В ре гистре маски команда СК01 устанавливает в 1 разряды тех цепей прерывания, которые следует маскировать Маскированные запро сы поступают на схему анализа по уровню приоритета и не влияют на запросы прерыва нии более низкого уровня

РЗПР используется для хранения всех за просов иа прерывание, поступивших на микросхему, а РОЗПР - тех запросов на прерывание, которые обслуживались или обслуживаются в данный момент

Запись запросов со схемы МЗПР в соответствующие разряды РОЗПР осуществляется по окончании сигнала ШТА, после чего соот ветствующнй разряд РЗПР устанавливается в О Если запрос, поступивший на микросхему, получил подтверждение (сформирована по следовательность сигналов ШТА), то ои (со ответствующий разряд РОЗПР) блокирует запросы с равным нли более низким уровнем приоритета даже в точ случае, если ои после получения сигналов был замаскирован

Для того чтобы запросы с более низким уровнем приоритета получили возможность обслуживания, нужно либо подать на микро схему одну из команд СК02 и установить в О соответствующий бит РОЗПР, либо выдать на микросхему команду установки специального маскирования (СКОЗг) и снять действие этого запроса (бита РОЗПР) на запросы с более низким уровнем приоритета, не устанавливая его в О

Последовательность сигналов ШТА, кото рые выдаются на микросхему в ответ на сиг нал INT, вызывают выдачу на шину данных трехбайтовой команды CALL, в которой указан адрес подпрограммы обслуживания запроса, выработавшего сигнал ШТ, причем младший байт адреса состоит из трех частей



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 [ 33 ] 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121