Главная -> Книги

(0) (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) (122) (123) (124) (42)

нове сравнения приоритетов запросов на входах Ro-Rr, без учета кода текущего приоритета;

ECS - вход сигнала разрешения выборки кристалла, разрешает загрузку кода текущего приоритета по линиям

Во-Вг;

INTE -входной сигнал разрешения прерывания, нулевой сигнал на данном входе запрещает формирование сигнала прерывания из БПП;

CLK -вход для подачи тактирующего сигнала, синхронизирующей выдачу сигнала прерывания из БПП с рабо-той процессора;

А0-А2 - 3-битный код для формирования вектора-адреса программы обработки прерывания;

ELR - вход для сигнала разрешения выдачи кода Ар-А2;

INT - выход сигнала прерывания из БПП;

ETLG - вход сигнала разрешения группы прерывания данного БПП; при использовании одного БПП на этот выход подается логическая 1, а при объединении нескольких БПП - сигнал с вывода ENLG БПП с более высоким приоритетом;

ENLG - выход сигнала разрешения группы прерываний БПП с более низким приоритетом.

Сигналы ETLG и ENLG обеспечивают объединение БПП с целью расширения числа уровней запросов прерывания.

Запросы прерывания поступают на входы Ro-R? (низкий потенциал соответствует активному запросу) регистра запросов прерываний (РЭП) и шифратора приоритетов (ШП). Данная схема определяет запрос с наивысшим приоритетом среди поступивших в данный момент и формирует 3-битный код, поступающий на схему сравнения (СС). РЭП управляется триггером запрета прерываний (ТЗП) таким образом, что после формирования сигнала прерывания из БПП триггер запрета прерывания устанавливается в 1, запрещая поступление сигналов запроса прерываний в РЗП. Только загрузка кода текущего приоритета по линиям Во- Вг на регистр текущего приоритета (РТП) при подаче сигнала на вход разрешения выборки кристалла ECS сбрасывает триггер ТЗП. При необходимости 3-битный код с РЗП сравнивается на СС с кодом текущего приоритета. СС формирует выходной сигнал только в том случае, если приоритет запроса прерывания выше текущего приоритета. Нулевой сигнал на, входе SGS разрещает фактически не учиты-9-808 129



вать это сравнение и формировать сигнал на входе триггера прерывания (ТП) при наличии на входе схемы И сигнала разрешения прерывания INTE, тактиру10ш,его сигнала CLK, а также сигналов ETLG и с выхода РЗП. Сигнал прерывания с БПП INT поступает на вход процессора, и после завершения текущей команды процессор переходит к программе обработки запроса прерывания. Выход элементов, формирующих код вектора-адреса Аг-Ао и сигнал прерывания INT,- с открытым коллектором, что обеспечивает возможность объединения нескольких БПП.

На рис. 4-8 приведен пример сопряжения БПП К589ИК14 с МП КР580. Для обращения к программе обслуживания прерывания в МП КР580 используется команда повторного старта RST, которая формируется на основе 3-битного вектора-адреса А2А1А0. В табл. 4-1 показано соответствие между формируемыми командами RST и входами

запросов прерывания БПП Ro-R?.

Команда RST обеспечивает запоминание содержимого программного счетчика в стеке и формирует на программном счетчике адрес первой ячейки прерывания. Команда RST формируется в регистре К589ИР12, выход которого связан с шиной данных процессора. Источники запросов прерываний подсоединяются ко входам Ro7-R7 b соответствии с назначенными приоритетами, входы Во-Вг подключе-

Шина данных МП

ME (из МП)


периферийных устройств

ш1м5Р

Ъи WJo-BOhf- Щ -

Bis 11л > CLR -

Ш(изМП)

Рис. 4-8. Сопряжение БПП с микропроцессором КР580



Формирование команд RST

Таблица 4-1

Разряды шины данных

Dr 1

RST7

RST6

RST5

RST4

RST3

RST2

RST1

RSTO

НЫ к шине данных, по которой в РТП программным путем загружается код текущего приоритета. Сигнал прерывания INT из БПП фиксируется в триггере прерывания регистра К589ИР12. Команда RST передается по шине данных в регистр команд процессора с МБР при поступлении из процессора сигнала подтверждения прерывания INTA.

При необходимости обслуживания более восьми приоритетных источников прерывания можно объединять БПП с целью увеличения числа входов. На рис. 4-9 показан пример организации системы прерываний на 16 входов. Для объединения БПП выход ENLG БПП1 подсоединяется ко входу ETLG БПП2. Так как требуется обращаться к 16 программам, то использование команды RST невозможно и поступаем следующим образом. При получении процессором сигнала прерывания INT следует выполнить команду ввода в аккумулятор процессора содержимого регистра К589ИР12, рассматривая его как порт периферийного устройства, и использовать этот код как 8-битное смещение, загружаемое в программный счетчик в соответствии с нижеприведенной программой:

Метка Код Операнд Комментарий

PUSH PSW IN PORT

MOV L, A

MVI PCHL

H, BASE

Запоминание содержимого аккумулятора в стеке

Ввод в аккумулятор кода с МБР (PORT -адрес, присвоенный МБР)

Передача содержимого аккумулятора в регистр L

Загрузка в регистр Н базового адреса

Передача (Н, L) в программный счетчик



(0) (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) (122) (123) (124)