Регистр текущего адреса (CAR)



Каждый канал имеет 16-разрядный регистр текущего адреса. Этот регистр хранит младшие разряды адреса, используемые во время обслуживания ПДП.
Адрес автоматически уменьшается или наращивается после каждой передачи, а промежуточные значения адреса запоминаются в регистре во время передачи.
Содержимое текущего регистра записывается или читается микропроцессором побайтно.

Регистр текущего счетчика слов (CCR)

Каждый канал имеет 16-разрядный регистр текущего счетчика слов. Этот регистр определяет количество передач, которые необходимо выполнить. Количество передач будет на единицу больше, чем число, программируемое в регистре (т.е. в счетчик заносится число 100, а передач будет 101).

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

В режиме программирования регистр CCR может быть побайтно записан или прочитан микропроцессором. По концу обслуживания, если не задана автоинициализация, значение счетчика после TC равно FFFFH.

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

Базовые регистры адреса и счетчика (BAR и CAR)

Каждый канал имеет два регистра: регистр базового адреса и регистр базового счетчика. Эти регистры хранят начальные значения соответствующих текущих регистров. При автоинициализации они используются для восстановления первоначальных значений текущих регистров. Базовые регистры загружаются микропроцессором поразрядно одновременно со своими текущими регистрами в режиме программирования. Считать содержимое базовых регистров нельзя.

Регистр режима (MOD - 00B, 0D6)

Каждый канал имеет 6-разрядный регистр режима (MOD). Запись в регистр производится в режиме программирования байтом, формат которого представлен на рисунке. Разряды 0, 1 указывают, в регистр режима какого канала нужно произвести запись, а разряды 2-7 - информацию непосредственно для соответствующего регистра режима. Для регистра режима разрешена только запись информации.

Регистр команд (CR - 008, 0D0)

Этот 8-разрядный регистр управляет операциями контроллера DMA. Он программируется микропроцессором и сбрасывается либо по входу RESET либо командой MC (очистка системы). Формат байта записи представлен на рис. Регистр команд не может быть считан микропоцессором.

Регистр запроса (REQ; 009, 0D2)

Контроллер DMA может реагировать на запросы по обслуживанию DMA, которые будут инициироваться программно, как и при DREQ. Каждый канал имеет свой разряд в 4-разрядном регистре запроса. Эти разряды немаскируемые, приоритет которых устанавливается шифратором приоритетов.
Каждый разряд регистра сбрасывается и устанавливается под управлением программы или очищается при генерации TC или внешнего -EOP. Весь регистр очищается по RESET. Разряд устанавливается или сбрасывается программой, которая загружет слово данных соответствующего формата, приведенного на рис.

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

Каждый канал имеет свой разряд в 4-разрядном регистре маски, который может быть установлен, чтобы заблокировать приходящий DREQ. Каждый разряд маски устанавливается, когда связанный с ним канал вырабатывает -EOP, если канал не запрограммирован на автоинициализацию (в этом случае по -EOP маска не устанавливается).
Каждый разряд 4-разрядного регистра маски может быть установлен или сброшен под управлением программы. Весь регистр устанавливается по RESET. При этом блокируются все запросы DMA, пока их не разрешит команда сброса регистра маски. Команда раздельной установки/сброса маски подобна команде раздельной установки/сброса регистра запроса. Одновременно все четыре разряда маски могут быть записаны отдельной командой - Write All Mask Register Bits. Регистр маски не может быть считан микропоцессором.

При инициализации регистра маски используются байты с форматами, приведенными на рис.

Рис. Формат байта для установки или сброса одного разряда MASK (00A, 0D4)

 

Рис. Формат байта для записи информации во все разряды MASK (00F, 0DE)


Дата добавления: 2020-04-25; просмотров: 268; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!