(пока данные находятся в СПВБ) канал может производить подсчёт числа переданных
данных, перекодировать их и сравнить с заданным кодом.Основываясь на результатах
этих действий, УУ вводом — выводом может прекратить ПДП- пересылку.
В процессе выполнения программы по команде SINTR устройство генерирует запрос
прерывания в ЦП. Частозапрос используется для того, чтобы сообщить ЦП о
завершении программы канала.
Регистры канала используются СПВБ как при ПДП- пересылках, так и при выполнении
программы. Все регистры канала (рис. 6), за исключением TAG, непосредственно
принимают участие в указанныхпроцессах. Использование каждого регистра описано в
табл. 4.
Таблица 4
Регистр Использование
в программе при ПДП-пересылке
GA Обоего назначения Указатель источника
или базовый или приемника
GB То же Указатель приемника
или источника
GC >> Указатель таблицы
перекодировки
TP Указатель команд Указатель причины
окончания
РР Базовый Не используется
IX Общего назначения То же
или индексный
ВС Общего назначения Счетчик байтов
МС Общего назначения Участвует в маски-
или маскированного рованном сравнении
сравнения
СС Ограниченного Определяет условия
использования пересылки
Регистр общего назначения GA служит в большинстве команд в качестве операнда.
Вкачестве базового он используется для указания адреса операнда, находящегося в
памяти. Перед началом ПДП- пересылок программа канала загружает в GA
адресисточника или приемника данных.
Регистр общего назначения GB функционально взаимозаменяем с регистром GA. Если
GA загружен адресом источника ПДП-пересылки, то GB должен быть загружен адресом
приёмника, и наоборот.
Регистр общего назначения GC используется программой канала как операнд
илибазовый регистр. Используется при выполнении ПДП - пересылок, когда
осуществляется перекодировка данных. В этом случае, перед началом
пересылки,программа канала загружает в GC начальный адрес таблицы
перекодировки. В процессе пересылки его содержимое не изменяется.
Указатель команд ТР загружается начальным адресом программы в
процессеинициализации канала общим УУ на выполнение задания. Во время
выполнения программы (задания от ЦП) ТРиграет роль счетчика команд. Так как ВМ89
не содержит указателя стека и не может выполнять стековых операций, возврат
изпрограммы осуществляется путём загрузки в TP адреса возврата, который
запоминается в памяти по команде CALL. Указатель задания является
полностьюпрограммно-доступным (в отличие от регистра IP в ВМ86) и может
использоваться программой как регистробщего назначения или базовый.
Однако делать это не рекомендуется, так как программа становится трудной для
понимания.
Указатель блока параметров РР загружается общим УУ начальным адресом
блокапараметров в процессе инициализации канала на выполнение задания. В
подготовленном сообщении расположение блока параметров в памяти определяет
центральныйпроцессор (см. табл. 4). Программа канала не может изменить
содержимое регистра PP. Его удобно использовать как базовый для пересылки
данных в блок параметров. Для ПДП-пересылок регистр РР не используется.
Индексный регистр IX используется программой канала как регистр
общегоназначения. Он может также использоваться в качестве индексного регистра
для адресации операндов, находящихся в памяти. В качестве разновидности
индекснойадресации, с помощью IX можно задать индексную адресацию с
автоинкрементном, которая очень удобна при обработке массивов данных. Для ПДП -
пересылок регистрIX не используется.
Счетчик байтов ВС в программе канала служит регистром общего назначения.При
ПДП- пересылке подсчитывает число пересланных байтов путём декрементирования
значения, загруженного перед ее началом. Если пересылка должна заканчиваться
позаданному числу пересланных байтов, то УУ вводом — выводом закончит её, когда
содержимое ВС станет равным нулю.
Регистр маскированного сравнения МС в программе канала может использоваться
какрегистр общего назначения или для маскированного сравнения. При ПДП-
пересылке используется для маскированного сравнения. Маскированное сравнение
позволяетсравнить выделенные разряды байта (операнда команды или пересылаемого
байта) с заданным заранее значением. Для этого в старший байт МС загружается
маска,выделяющая интересующие разряды, а в младший—сравниваемое значение (рис.
7). В программе, при выполнении команды условного перехода по
маскированномусравнению (либо при ПДП- пересылке), определенный в ней операнд
(либо пересылаемый байт) сравнивается с замаскированным значением.
Регистр управления каналом СС используется в основном при ПДП- пересылках.
Онслужит для определения условий пересылки и указывает способ её окончания.
Структура и обозначение управляющих полей СС представлены на рис. 8. Пять
старших полей определяют условиеПДП- пересылки:
F (пересылка) определяет, откуда и куда пересылаются данные;
TR (перекодировка) — следует ли пересылаемые данные перекодировать;
SYN (синхронизация) — способ синхронизации пересылки;
S (источник) — в каком регистре (GA или GB) находится адрес источника;
L (монополизация) — следует ли активизировать сигнал во время пересылки.
Четыре младших поля задают способ окончания пересылки:
TS указывает, что пересылка состоит в передаче только одного данного;
ТХ—что пересылка должна заканчиваться по внешнему сигналу (ЕХТ);
ТВС — по нулю в счетчике байтов (ВС);
TMC — по результатам маскированного сравнения.
Рис 8. Регистр управления каналом
Поле С не используется для ПДП-пересылок, а служит удобным средством управления
приоритетом программы канала.
Таблица 5
Управляющее поле Код поля Условие ПДП-пересылки
F (функция 00 Из порта ввода в порт вывода
пересылки) 01 Из памяти в порт вывода
10 Из порта ввода в память
11 Из памяти в память
TR (перекодировка) 0 Нет перекодировки
1 Есть перекодировка
SYN (синхронизация) 00 Пересылка асинхронная
01 Синхронизация от источника ка
10 Синхронизация от приемника
11 Зарезервированный код
S (источник) 0 Адрес источника в регистре GA
1 Адрес источника в регистре 0В
L(монополизация) 0 Сигнал LOCK не активен
1 Сигнал LOCK активен
С (приоритет 0 Обычный приоритет программы
программы) 1 Повышенный приоритет программы
TS ( одиночная 0 Пересылка не одиночная
пересылка) 1 Пересылка одного данного
ТХ (окончание по 00 Не внешнее окончание
внешнему сигналу) 01 По сигналу ЕХТ со смещением 0
10 По сигналу ЕХТ со смещением 4
11 По сигналу ЕХТ со смещением 8
ТВС (окончание по 00 Окончание не по нулю в счетчике
нулю в счетчике) 01 Окончание по (ВС)=0 со смещением 0
10 Окончание по (ВС)=0 со смещением 4
11 Окончание по (ВС)=0 со смещением 8
ТМС ( окончание по 000 Не по результатам маскированного
результатам маски- сравнения
рованного сравне- 001 По совпадению со смещением 0
ния) 010 По совпадению со смещением 4
oil По совпадению со смещением 8
100 Не по результатам маскированного
сравнения
101 По несовпадению со ещением 0
110 По несовпадению со смещением 4
III По несовпадению со смещением 8
Кодирование полей ТХ, ТВС и ТМС позволяет выбрать смещение 0, 4 или 8 по
окончанию ПДП-пересылки. Выбранное значениедобавляется к содержимому счетчика
команд ТР и определяет три различных точки программы, в которые
передаетсяуправление после окончания пересылки (рис.9). Окончание по одиночной
пересылке TS == 1 всегда приводит к нулевому смещению.
Рис. 9 Использование смещения Рис. 10 Регистр
байта- по окончании ПДП-пересылки. состояния
программы.
В регистре ТАG каждый бит соответствует одному из 4-х регистров: GA, GB, GC и ТР
(см. рис. 6). Когда они используются в качествебазовых или указателей (см. табл.
5), то бит TAG определяет, к какому пространству адресов (системномуили в\в)
относится адрес, размещенный в соответствующем регистре. Значение бита TAG=0
показывает, что адрес относится к системномупространству (20-битовый адрес);
TAG=1 указывает на пространство в\в (16-битовый адрес); Общее УУ устанавливает
или сбрасываетбит регистра TAG, соответствующий ТР, в зависимости от того, в
каком адресном пространстве размещена программа канала.
Когда GA, GB и GC используются в качестве регистров общего назначения,
соответствующий бит регистра TAG устанавливается по-разному при выполнении
различныхгрупп команд (см. табл. 5).
Восьмибитовый регистр PSW, имеющийся в каждом канале, хранит слово-сочетание
программы В регистре РSW заносится информация о текущем состоянии канала
(рис.10). Логическая ширина шины приемника равна 8 бит при D = 0 и 16 бит при D=
1. Логическая ширина шины источника равна 8 бит устанавливаетсяв единицу. При
управлении выдачей запроса прерывания 1С устанавливается в нуль, когда
прерывание запрещено, и в единицу, когда оно разрешено. Если каналвыдал запрос
прерывания, то IS=1, если не выдал -IS=0. Бит В=1 задает режим предельной
загрузки шины. БитXF=1, когда канал выполняет ПДП-пересылку. Бит Р задает
приоритет канала. Эта информация позволяет в любой момент приостановить
работуканала, записав значение PSW и ТР в память, а затем возобновить его
работу, считав PSW и ТР.
Генератор тактовых импульсов К1810 ГФ84
Генератор тактовых импульсов (ГТИ) КР1810ГФ84 предназначен для управления ЦП КР
1810ВМ86 ипериферийными устройствами, а также для синхронизации сигналов READY с
тактовыми сигналами ЦП и сигналов интерфейсной шиныMultibus. Генератор тактовых
импульсов (рис. 11, 12) включает схемы формирование тактовых импульсов (OSR,