Контроллер прямого доступа в память (КПДП) (DMA) ИК 57

Режим 2

Ввод и вывод информации идет по каналу А. Канал А назначаем на режим 2, канал В – на режим 0, т.к. не хватит управляющих линий. Сигнал ГТВ находят по схеме ИЛИ, поэтому ТГТ1 и ТГТ2 не могут находиться оба в состоянии «1», но могут в «0» Переключая триггеры, меняем направление передачи информации программным путем – ввод или вывод информации.  

 


БШД– буфер шины данных – для обмена информацией между МП и КПДП.

РР – регистр режима, ЗПДП и ППДП – запрос и подтверждение прямого доступа в память

А– младший байт адреса памяти. Старший байт вводится через ШД и БШД

ЧтВ – чтение ввода-вывода. Входной сигнал служит для чтения внутренних регистров, исходящий – для чтения внешнего устройства, ЗпВ– запись ввода-вывода. Входной сигнал служит для записи при инициализации, исходящий для записи во внешнее устройство.

СБР – системный сброс. Приводит в исходное состояние все регистры (0). Требуется повторная инициализация. f2- системная частота

А4¸7 – старшая тетрада ША. ЧТП – чтение памяти. ЗПП – запись в память.

ГТ– готовность. Сигнал для работы с медленно действующими устройствами.

ЗхВ – захват. Показывает МП, что внешнее устройство запросило прямой доступ в память. ПЗхВ – подтверждение захвата. МП отключается от внешних магистралей. Предоставляет ПДП

РА – разрешение адреса. Перевод в высокое состояние или наоборот двунаправленных шинных формирователей. Стрб А – строб адреса – запись старшего адреса в буферный регистр.

КБ – конец блока. При возникновении сигнала высокого уровня, показывает, что блок закончен.

Mark– маркер. Каждые 128 байт обрамляются маркером для контроля.

Устройство позволяет обмениваться информацией по 4-м каналам от 0 до 64 кбайт между памятью и внешними устройствами, выполняемого по инициативе внешнего устройства. КПДП генерирует управляющие сигналы, необходимые для организации обмена.

2 типа работы:

Установленный тип приоритетов – наивысший приоритет у 0-го канала, наименьший у 7-го. Перемещаемый тип приоритетов – определенный канал становится в конец очереди, очередь перемещается.

КПДП позволяет работать с 4-мя независимыми каналами. Информация не передается – это управляющий контроллер.

Режим автозагрузки – один блок может передаваться, пока не придет запрос на прерывние. Этот режим разрешен по 2-му каналу (при инициализации) по 3-му каналу происходит копирование исходных данных. Это достигается путем копирования 3-го канала во 2-й.

Каждый канал представляет собой 2 регистра – регистр адреса и счета

К 0 А15   РА А0
    РСч  
  РР    

 

К 1 А15   РА А0
    РСч  
  РР    

 

К 2 А15   РА А0
    РСч  
  РР    

 

К 3 А15   РА А0
    РСч  
  РР    

 

РР
РСС

 

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

РСч– регистр счета показывает размер, который позволяет передавать каждый из каналов 214 » 16 к N-1 (N–размер блока). РСч – декрементируется, РА – инкрементируется

РР – регистр режима

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

РР принимает значения:

- контроль DMA (считывание слова состояния)
- запись информации в ОЗУ из внешнего устройства
- чтение информации из ОЗУ во внешнее устройство
- запрещенное состояние

Адресация регистров для каждого своя. Для реализации младшего байта адреса существует внутренний триггер.

Управляющее слово (УС) заносится в РР.

D7 D6 D5 D4 D3 D2 D1 D0  
АЗ ОКБ ДЗ ЦП РК2 РК2 РК1 РК0 РР

РК– разрешение канала. 0 – откл., 1 – вкл.

ЦП – циклический приоритет 0 – установленный, 1 – циклический.

ДЗ – длинная запись. Сигналы записи во внешнее устройство и в память, если «1» - удлиняются в 2 раза. Можно избавиться от такта ожидания. Внешнее устройство и МП работают быстрее, т.к. нет запросов.

ОКБ – отключение по концу блока, если выставлена «1»

АЗ– автозагрузка, если выставлена «1»

 

D7 D6 D5 D4 D3 D2 D1 D0  
Х Х Х ПМ КБ3 КБ2 КБ1 КБ0 РСС

КБ – конец блока данных, если выставлена «1» - канал свою работу закончил

ПМ– признак модификации. При автозагрузке при копировании исходных данных из 3 канала во 2-й выставляется 1