Методика запуска обмена данными по каналу ПДП.

Программная модель КПДП.

Программная модель КПДП включает: блок управления контроллером, 4 канала обмена данными в режиме ПДП, буферный регистр временного хранения данных при передаче память-память. Блок управления контроллером содержит два 8-разрядных и два 4-разрядных регистра.

Регистр состояния КПДП:

Бит 6 РС КПДП показывает состояние завершения обмена: 1/0, завершен/выполняется.

Регистр управления КПДП определяет основные параметры работы контроллера, тип цикла ПДП по отношению к ОЗУ, режим обмена данными, разрешение ПДП.

Бит 7 – 1/0, разрешение/запрет ПДП.

Бит 4 – 1/0, блочный/одиночный обмен.

Бит 2 – Тип цикла ПДП: 1/0, запись в ОЗУ/чтение из ОЗУ.

Регистр адреса используется для указания адреса текущей ячейки памяти, с которой выполняется обмен. До начала обмена заносится начальный адрес ОЗУ.

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

В каждом цикле обмена содержимое регистра счетчика декрементируется на 1, а содержимое регистра адреса инкрементируется на 1. Когда содержимое регистра счетчика достигает конечного значения (-1), на линии EOP устанавливается активный уровень сигнала, сбрасывается бит “начать обмен”, и в регистре состояния устанавливается бит “обмен завершен”. Активный уровень может устанавливаться не только КПДП, но и интерфейсом ВУ, он завершает обмен данными. Процедура завершения проверяет содержимое регистров КПДП и ВУ и предпринимает действия: обмен завершен, обнаружение ошибок.

У КПДП есть 2 режима обмена данными:

1. КПДП – ведомое устройство, доступен процессору.

2. Выполнение операций ПДП – КПДП ведущий, недоступен процессору.

 

В программном режиме работы процессора необходимо:

1. Проверить состояние внешнего устройства (флаг готовности должен быть 1);

2. Записать управляющую информацию в регистры интерфейса ВУ и КПДП:

- РУ интерфейсом, тип цикла ПДП по отношению к ВУ;

- РУ КПДП, тип цикла ПДП по отношению к ОЗУ;

- РА, начальный адрес ОЗУ;

- РСч, количество байт для обмена.

14.3 Реализация ПДП в ЭВМ на основе единого магистрального канала.

В ЭВМ на основе магистрального канала имеется несколько линий (Запрос Шины, Разрешение Шины).

Рис. 14.4 Схема реализации ПДП на основе единого магистрального канала.

Устройство получает сигнал “Разрешение Шины” и захватывает магистраль, начиная цикл обмена данными, по завершении обмена следует по приоритету. В ЭВМ имеются 4 линии ЗШ, РШ: ЗШ3 – РШ3, ЗШ2 – РШ2, ЗШ1 – РШ1, ЗШ0 – РШ0, где самый высокий приоритет ЗШ3 – РШ3.

КПДП может работать в одном из трех режимов:

1. Фиксированные приоритеты;

2. Циклически изменяемый приоритет;

3. Обслуживание ЗШ с единственной пары линий.

14.4 Реализация ПДП в ЭВМ на основе изолированного магистрального канала.

В качестве контроллера используется Intel 8237A, егоосновные характеристики:

1. Число каналов ПДП – 4;

DREQ0 – DACK0

...

DREQ3 – DACK 3

2. Число КПДП в ЭВМ – 2;

КПДП1 передает 8-разрядные данные, КПДП2 передает 16-разрядные данные.

3. Максимальное число циклов ПДП без программирования – 65538, 64К цикла.

4. Максимальная скорость обмена – 1.6 Мбайт/с.

Режимы работы:

1. Режим фиксированных приоритетов.

Максимальный приоритет устанавливается за линией DREQ0 – DACK0.

2. Режим циклических приоритетов.

После обслуживания канала ему присваивается самый низкий приоритет.

3. Режим память-память.

Рис. 14.5 Схема подключения КПДП к системной шине и ВУ.

DB7-DB0 – выводы данных в режиме ПДП.

A15-A8 – старшие разряды адреса, необходимо защелкнуть (защелка 8282); A0-A3 – адресные входы-выходы, в режиме ПДП A0-A3 используются, как выходы; A7-A4 – адресные выходы, в режиме ПДП на эти линии устанавливаются соответствующие адреса ОЗУ.

При работе с памятью в режиме ПДП контроллер должен использовать 24-адресные ОЗУ, старшие биты надо программировать до начала передачи ПДП.

- Chip Select, выбор кристалла, в программном режиме используется для определения базового адреса КПДП в области адресов ВУ. Базовый адрес КПДП1=0, КПДП2=C0h.

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

, - вывод/ввод по отношению к ВУ.

AEN - Address Enable, показывает, что на ШД установлен адрес.

ADSTB – строб адреса, записывает данные с ШД в регистр защелки.

HRQ – запрос шины.

HLDA – разрешение шины.

CLK – вход импульсов синхронизации, МГц.

RESET – сброс, переводит контроллер в исходное состояние и маскирует все запросы от ВУ.

READY – готовность, вход в режиме ПДП задерживает цикл, если устройство не готово.

EOP – окончание обмена. Активный уровень сигнала завершает обмен данными.

DREQ0-DREQ3 – входы запросов прерываний от ВУ.

DACK0-DACK3 – входы сигналов подтверждения ПДП.

 

14.5 Назначение каналов контроллера ПДП и адреса регистров страниц.