Добавил:
Студент, если у тебя есть завалявшиеся работы, то не стесняйся, загрузи их на СтудентФайлс! Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МИУС .docx
Скачиваний:
5
Добавлен:
16.07.2022
Размер:
756.18 Кб
Скачать

3.5.Контроллер прямого доступа к памяти

В системах ввода-вывода используются два основных способа организации передачи данных между памятью и периферийными устройствами – программно-управляемая передача и прямой доступ к памяти (ПДП).

П

ОП

ЦП

ПУ

рограммно-управляемая передача данных осуществляется при непосредственном участии и под управлением процессора, который при этом выполняет специальную программу ввода-вывода.

Данные между памятью и периферийным устройством пересылаются через процессор. Операция ввода-вывода вызывается текущей командой программы или запросом прерывания от внешнего устройства.

При программно-управляемой передаче процессор отвлекается от выполнения основной программы. Кроме того, при пересылке блока данных процессору приходится для каждой единицы передаваемых данных (байт, слово) выполнять довольно много команд, чтобы обеспечить буферизацию данных, преобразование форматов, подсчет количества переданных данных, формирование адресов и т.д. В результате использования этого способа обмена данными снижается производительность системы.

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

П

ОП

ОП

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

ЦП

Контроллер

ПДП

ПУ

ЦП

Контроллер

ПДП

ПУ

и нициирование

П ДП инициирование

ПДП

Первый вариант – прямой доступ к памяти при наличии отдельной шины в памяти для ПДП; второй вариант – ПДП при использовании процессором и ПДП общей шины для связи с памятью.

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

В обычном режиме системной шиной управляет МП. В режиме ПДП МП отключается от системной шины, передачей данных между ОП и ПУ управляет контроллер ПДП, который выполняет следующие функции:

  • управление инициируемой МП или ПУ передачей данных между МП и ПУ;

  • задание размера блока данных, который должен быть передан, и области памяти, используемой при передаче;

  • формирование адресов ячеек памяти, участвующих в передаче;

  • подсчет числа единиц передаваемых данных (байт, слов) и определение момента завершения заданной операции ввода-вывода.

Функциональная схема контроллера ПДП приведена на рис.15.

Буфер данных

К0

D7 – D0 DRQ 0

DACK0

R

Схема управления

Чт / Зп

К1

ESET

CLK DRQ1

A0 DACK1

A1

A2

К2

A3 DRQ2

I/OR

I/OW DACK2

CS

Схема управле -ния

ПДП

A4

К3

A5 DRQ3

A6

Арбитр

A7 DACK3 RDY

HRQ

HLDA MEMR

MEMR

MEMW AEN ASTB

TC

MARK

Рис.15. функциональная схема контроллера ПДП

К0 – К3 - независимые каналы, каждый из которых обслуживает одно УВВ.

Арбитр – схема, которая определяет канала с максимальным приоритетом.

Схема управления ПДП вырабатывает необходимую последовательность управляющих сигналов.

Каждый канал имеет три регистра: регистр адреса, счетчик длины передаваемого массива и регистр режима.

Формат регистра режимов:

7

6

4

5

3

2

1

0

7- установка автозагрузки

6 - установка «конец счета – стоп»

5 – установка удлиненной записи

4 – установка циклического сдвига приоритета

3 – 0 – разрешение прямого доступа для каналов К3 - К0.

DRQ0 – DRQ3 – запрос прямого доступа каналов. Эти сигналы поступают асинхронно из внешних устройств и воспринимаются микросхемой как запросы на обмен с ОП.

DACK0 - DACK3 - подтверждение прямого доступа каналов. Эти сигналы являются ответными по отношению к запросам. Они вырабатываются контроллером в соответствии с приоритетами внешних устройств.

D7 – D0 – двунаправленная шина данных, обеспечивает обмен информацией между МП и ПДП. По этой шине принимаются управляющие слова и выдается старший байт адреса внешней памяти.

RESET – установка.

А0 –А7 – шина адреса.

I/OR – чтение ввода-вывода. Разрешает во входном режиме чтение 8-разрядного регистра состояния или начального адреса и числа циклов ПДП любого из каналов. В выходном режиме этот сигнал разрешает выдачу информации из внешнего устройства ввода-вывода.

I /OW – запись ввода-вывода. Разрешает во входном режиме загрузку регистров режима, начального адреса, значения количества циклов для любого канала.

CS – вход выборки кристалла. Позволяет активизировать данную БИС.

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

HRQ – запрос захвата. Запрашивает у МП разрешение на управление системными шинами.

HLDA – подтверждение захвата. Ответ МП. При появлении этого сигнала системные шины освобождаются.

MEMR – чтение памяти.

MEMW – запись в память. Оба эти сигнала предназначены для внешнего ЗУ.

AEN – разрешение адреса. Используется для блокировки адресных шин в невыбранных устройствах

ASTB – строб адреса. Указывает, что на шине данных выдан старший байт адреса внешнего ЗУ.

TC – конец счета. Вырабатывается при установке в 0 регистра количества циклов и указывает периферийным устройствам, что данный цикл ПДП последний.

MARK - модуль 128, выходной сигнал MARK появляется в каждом 128-м цикле от конца массива.

При реализации циклов ПДП контроллер функционирует в следующих режимах:

  • автозагрузка;

  • конец счета – стоп;

  • удлиненная запись;

  • обычная запись;

  • циклический сдвиг приоритетов;

  • фиксированный приоритет;

  • маскирование;

  • чтение;

  • запись;

  • проверка.

Последовательностью операций в течение циклов ПДП управляет схема управления ПДП.

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

В исходное состояние микросхему переводит сигнал RESET. В этом состоянии маскируются все запросы каналов прямого доступа, а входы А3 – А0 переводятся в состояние приема информации.

В состоянии программирования микросхема имеет доступ к внутренним регистрам выбранного канала.

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

В состоянии обслуживания системные шины находятся под управлением контроллера.

Соседние файлы в предмете Основы микропроцессорной техники