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

(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) (18)

BEADYA Л HLTA

НОиОл


HOLD

(Триггер прерывания) i = 1

Рис. 3-11. Диаграмма переходов для машинного цикла МП КР580

КИМ образом, МП может переходить в следующее состояние Tl после Тз, Т4 или Т5.

Формирование системных управляющих сигналов. Набор управляющих сигналов, таких как чтение из памяти (MEMR), запись в память (MEMW), ввод информации (I/OR), вывод информации (I/OW), подтверждение прерывания (INTA) обеспечивает прием и передачу кодов



мен<ду М.П, памятью и перифериршьши устройствами в определенные интервалы времени в соответствии с диаграммой переходов машинного цикла. Данные сигналы непосредственно не формируются микропроцессором КР580, для их формирования используются сигналы приема (DBIN) и записи (WR) из МП и необходимые признаки из слова состояния:

MEMR = DBIN Л MEMR;

MEMW

= WR Л WO;

I/OR =

DBIN Л INP;

I/OW =

WR Л OUP;

Слово состояния загружается в 8-битный регистр, например К589ИР12, посредством сигнала синхронизации SYNC и тактирующего сигнала 02 уровня ТТЛ, формируемого генератором тактовых сигналов.

На рис. 3-12 показано формирование системных управляющих сигналов в соответствии с вышеприведенными выражениями. Другие признаки слова состояния могут использоваться при тестировании МП. Остановимся несколько подробнее на обработке запросов прерывания. Устройство, обслуживаемое МП в режиме прерывания, инициирует прерывание путем формирования на входе INT МП сигнала 1, который может возникнуть в любом машинном цикле команды. Однако, как видно из диаграммы переходов, текущая команда должна завершиться и только после этого МП переходит к машинному циклу подтверждения прерывания, который имеет ряд отличий от цикла выборки команды. Во-первых, в слове состояния дополнительно к признаку машинного цикла выборки команды Ml содержится признак INTA, подтверждающий. Что сигнал прерывания воспринят МП. Во-вторых, ПС не увеличивается на 1 в данном цикле, так как, увеличенный после выборки предыдущей команды, он должен быть запомнен в стековой памяти без изменения. В-третьих, вместо команды из программной памяти на шину данных передается код, представляющий собой однобайтную команду RST. Команда RST обеспечивает запоминание содержимого программного счетчика в стеке, и в ПС формируется один из восьми начальных адресов, в которых хранятся первые команды подпрограмм обслуживания




16 Шит адреса

8 Шина данных

Мт WRSYNC

Регистр слова состояния

INTA

dBIN

MEMR

MEMR

aj-*- r/ow

WR fir

MEMW

SYNC Фг

Рис. 3-12. Формирование системных управляющих сигналов

прерываний. Если область памяти в 8 байт недостаточна для размещения подпрограммы, что, как правило, имеет место, то путем использования команд перехода ее можно расширить. Таким образом, первые 64 ячейки памяти (ООООН - 003FH) зарезервированы для подпрограмм обработки прерываний.

Система команд МП КР580. Все множество команд данного МП можно подразделить на следующие 5 групп:

1. Команды пересылки кодов, обеспечивающие пересылку данных между регистрами или памятью и регистрами. Команды данной группы не формируют признаков результатов операций.

2. Арифметические команды, обеспечивающие выполнение операций сложения и вычитания, изменения кодов на 1. Один операнд для бинарных операций хранится в аккумуляторе А, другой - в регистре или ячейке памяти, а результат помещается в аккумулятор. Такие операции, как умножение и деление, выполняются программным пу-



(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)