ЛЕКЦИИ ПО ТСАУ
.pdf
Следовательно, для управления системной магистралью ЭВМ КПДП связан как ведущее устройство с шиной адреса и шиной управления.
С процессором КПДП сигнальными линиями: Запрос шины (системной магистрали) HOLD.
Разрешение шины (магистрали) HLDA (hold acknowledge).
10.3 Алгоритм обмена данными
Инициатором обмена, как и в режиме ПДП, является ВУ. Последовательность действий:
1.ВУ передает сигнал готовности и данные в интерфейс.
2.Интерфейс посылает сигнал запрос ПДП в КПДП.
3.КПДП посылает сигнал запрос шины в ЦП.
4.ЦП отвечает сигналом разрешение шины и отключается от магистрали.
5.КПДП посылает сигнал разрешение ПДП в интерфейс ВУ, разрешая начать обмен, помещает адрес ячейки памяти на шину адреса магистрали ЭВМ, и управляющие сигналы типа чтение/запись (MEMR/IOW или MEMW/IOR) на шину управления. Под воздействием этих сигналов байт данных передается непосредственно между ячейкой ОЗУ и регистром данных интерфейса ВУ.
6.КПДП снимает сигнал запрос шины, и управление возвращается к ЦП.
7.ЦП снимает сигнал разрешение шины и возобновляет управление магистралью. В каждом следующем цикле обмена используется смежная ячейка памяти.
По завершении передачи заданного блока данных контроллер ПДП формирует сигнал конец передачи. Интерфейс ВУ также может устанавливать активный сигнал на линию конец передачи при невозможности ВУ продолжать обмен.
10.4 Программная модель интерфейса внешнего устройства и контроллера
(минимальная конфигурация)
Включает необходимые для управления обменом ПДП элементы КПДП и интерфейса ВУ в минимальном объеме (доступные прикладной программе).
ИНТЕРФЕЙС ВУ должен содержать:
1)регистр управления (РУ),
2)регистр состояния (РС),
3)регистры данных (РД).
РУ интерфейса ВУ позволяет указать:
—типа цикла ПДП по отношению к ВУ (ВВОД во ВУ или ВЫВОД из ВУ),
—момента начала обмена.
Начать ПДП: Разрешено / запрет
3
Бит ―Тип цикла ПДПǁ программно устанавливается/сбрасывается для указания направления передачи по отношению к ВУ.
Бит "Начать ПДП" служит для инициирования начала обмена ПДП.
Программная установка бита "Начать" приводит к формированию сигнала DREQ, если ВУ готово начать обмен данными. Бит "Начать" сбрасывается сигналом на линии EOP.
РС интерфейса ВУ фиксирует состояние ВУ перед началом обмена данными и в процессе выполнения бмена.
Назначение отдельных разрядов регистра состояния ВУ:
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
1/0 |
|
|
|
|
|
1/0 |
|
Бит 7 показывает состояние ВУ до начала обмена: 1/0 – готов/не готов.
Бит 1 указывает состояние ВУ в процессе обмена данными: 1/0 – обмен завершен/обмен выполняется. Программная модель КПДП включает: регистр управления (РУ), регистр состояния (РС), регистр счетчик слов или байт (Рсч.) и регистр адреса (РА).
РУ КПДП позволяет:
—Установить режим обслуживания ВУ (блоковая или одиночная передача),
—Указать тип цикла ПДП по отношению к ОЗУ (запись в ОЗУ или чтение из ОЗУ),
4
— Разрешение Работы КПДП для указания момента начала передачи данных в режиме ПДП.
Регистр состояния КПДП показывает состояние завершения обмена: 1/0- завершен/выполняется.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Состояние обмена ПДП: 1/0-завершен/ выполняется
Регистр управления КПДП определяет основные параметры работы контроллера, тип цикла ПДП по отношению к ОЗУ, режим обмена данными, разрешение ПДП.
7 |
6 |
5 |
4 |
3 |
2 |
1 0 |
РУ КПДП |
|
1/0 |
|
1/0 |
|
1/0 |
|
|
Бит 7 – 1/0, разрешение/запрет ПДП. Бит 4 – 1/0, блочный/одиночный обмен.
Бит 2 – 1/0- запись в ОЗУ/чтение из ОЗУ.
Регистр адреса используется для указания адреса текущей ячейки памяти, с которой выполняется обмен. До начала обмена заносится начальный адрес ОЗУ.
Регистр счетчик используется для управления длиной массива данных, передаваемого по каналу ПДП.
В каждом цикле обмена содержимое регистра счетчика декрементируется на 1, а содержимое регистра адреса инкрементируется или декрементируется на 1. Когда содержимое регистра счетчика достигает конечного значения (-1), на линии EOP устанавливается активный уровень сигнала, сбрасывается бит
―начать обменǁ в РУ интерфейса ВУ, в регистре состояния КПДП устанавливается бит ―обмен завершенǁ. Активный уровень сигнала линии EOP может устанавливаться не только КПДП, но и интерфейсом ВУ, если он не может продолжать обмен данными. Специальная процедура завершения должна проверить содержимое регистров КПДП и интерфейса ВУ и предпринять соответствующие действия: вывод сообщения об ошибках или инициирование повторного ввода.
УКПДП есть 2 режима работы:
1.КПДП – ведомое устройство, доступен процессору.
2.КПДП ведущий, недоступен процессору.
Методика запуска обмена данными
Впрограммном режиме работы процессора необходимо:
1.Проверить состояние внешнего устройства (флаг готовности должен быть 1);
2.Записать управляющую информацию в регистры интерфейса ВУ и КПДП:
РУ интерфейсом, тип цикла ПДП по отношению к ВУ;
РУ КПДП, тип цикла ПДП по отношению к ОЗУ;
РА, |
. |
||||||||
|
|
|
|
|
|
|
4 |
||
Лекция № 11. |
|
|
обмена данными в |
||||||
режиме прямого |
|
|
памяти |
||||||
11.1 |
|
|
|
|
|
|
|
|
канала |
В ЭВМ на основе |
|
|
Шины, Разрешение |
||||||
Шины). |
|
|
|
||||||
|
|
|
|
Запрос шины |
|
|
|
||
|
|
|
|
|
|
|
|||
|
ЦП |
|
|
|
|
|
|
|
|
|
|
КПДП1 |
|
КПДПn |
|
||||
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 11.1 |
канала |
В ЭВМ на основе |
ШИНЫǁ может быть |
параллельно подключено |
работать в режиме ПДП. |
В этом случае линия |
через все устройства ПДП, |
аналогично линии |
гирляндным способом. |
Контроллерам ПДП, |
назначаются в |
соответствии с их |
|
КПДП, расположенные |
среди аналогичных |
устройств. |
|
Ближайший к ЦП КПДП, |
управление |
магистралью. |
|
В ЭВМ на основе |
|
- 4 линии ―Запрос |
|
линии ―Разрешение |
|
Аппаратные средства |
линий ―Запрос ШИНЫǁ, |
―Разрешение ШИНЫǁ. |
|
При получении сигнала |
линии РШi, соответствующей |
уровню запроса. |
|
Когда текущий задатчик |
запрос высшего приоритета. |
В ЭВМ на основе VME- |
в одном из 3-х режимов: |
1) с фиксированными |
|
2) циклически |
|
3) обслуживание |
|
В режиме с фиксированным |
i присваивается |
фиксированный приоритет |
|
1
Врежиме циклических приоритетов, после обслуживания очередного запроса линии ЗШi присваивается низший приоритет, а запросы остальных линий изменяются в круговом порядке. В режиме обслуживания запросов ВУ единственного уровня обслуживаются запросы на линии ЗШ3.
Влюбом режиме обслуживания, как только задатчик захватывает магистраль, отобрать у него управление невозможно до тех пор, пока он не снимет сигнал ЗШ.
Основная особенность такой схемы обслуживания запросов от ВУ в том что приоритеты ВУ устанавливаются аппаратными средствами.
11.2Реализация обмена в ЭВМ с изолированными магистральными каналами обмена данными
Вкачестве контроллера ПДП используется интерфейсная БИС Intel 8237A.
Основные характеристики КПДП. 1. Число каналов ПДП — 4.
Каждый КПДП позволяет управлять работой 4-х каналов ПДП с помощью линий DREQ0 - DREQ3 , DACK0 - DACK3.
К каждому каналу можно подключить одно ВУ.
Для увеличения числа входов каналов ПДП можно использовать каскадирование КПДП. 2. Число контроллеров ПДП в ЭВМ семейства IBM AT — 2.
В ЭВМ семейства IBM AT имеются два каскадно-включенных КПДП:
— КПДП1 передает 8-и разрядные данные,
—КПДП2 передает 16-и разрядные данные.
3.Максимальное число циклов ПДП без перепрограммирования в каждом канале КПДП — 64 К циклов.
4.Максимальная скорость передачи данных —1.6 Мбайт/с.
Режимы работы КПДП
КПДП может быть запрограммирован для обслуживания запросов:
—с фиксированными приоритетами,
—с циклическим изменением приоритетов.
При фиксированных приоритетах, наивысший приоритет устанавливается за каналом с меньшим номером DREQ0.
При циклическом изменении приоритетов, самый низкий приоритет присваивается каналу после его обслуживания (аналогично ПКП).
Это позволяет обслужить все каналы поочередно.
Имеется возможность автоматической инициализации каналов КПДП, т.е. повторения циклов ПДП с единожды установленными параметрами, без перепрограммирования.
Наряду с обслуживанием ВУ КПДП позволяет: реализовать передачу ПАМЯТЬ – ПАМЯТЬ.
11.3 Принципиальная схема подключения контроллера Intel 8237A к системной шине и внешнему устройству
Назначение выводов БИС связи КПДП с системной шиной ЭВМ (Рис. 17.2.) меняется в зависимости от режима его работы (программный или ПДП). Выводы DB7 - DB0 - линии данных двунаправленные.
В программном режиме работы КПДП линии DB7 - DB0 служит для приема управляющей информации от процессора или для передачи статусной информации процессору по линиям D7 - D0.
2
В режиме ПДП на выводы DB7 - DB0 контроллер выдает восемь разрядов адреса, которые необходимо защелкнуть во внешнем регистре защелке (Intel 8282).
Выходы регистра защелки подключаются к адресным линиям А15 – А8 магистрали ЭВМ. В режиме ПДП, контроллер не управляет ШД и соответствующие выводы свободны.
Рис. 11.2. Схема подключения КПДП к системной шине и ВУ
Выводы A3 – A0 - адресные входы-выходы.
В программном режиме работы КПДП с ЦП, выводы A3 – A0 используются как входы для адресации регистров КПДП.
КПДП в программном режиме использует 16 адресов в адресном пространстве ввода-вывода ЭВМ. В режиме ПДП выводы A3 – A0 являются выходами, по ним передаются 4 младших разряда адреса ОЗУ, которые выводятся на адресные линии A3 – A0 магистрали ЭВМ.
Выводы A7 – A4 - адресные выходы.
Впрограммном режиме работы с ЦП линии A7 – A4 переходят в высоко импедансное состояние.
Врежиме ПДП по линиям A7 – A4 передаются соответствующие разряды адреса ОЗУ.
Врежиме ПДП при работе с памятью ЭВМ контроллер должен использовать 24-разрядные адреса памяти.
Младшие 16 бит адреса выводятся контроллером на шину адреса ЭВМ.
Старшие биты адреса контроллер не выдает и их необходимо программировать до начала передачи ПДП. Для хранения старших бит адреса требуется специальный регистр страниц. В программном режиме КПДП в регистр страниц можно вывести данные как в любой порт.
Во время передачи ПДП содержимое регистра страниц изменять нельзя.
Следовательно, за одну передачу можно передать максимум 216 = 65536 байт, т.к. КПДП может менять адрес в пределах младших 16 разрядов.
3
Из регистра страниц данные выводятся на линии A16 –A23 ША.
Вывод ⌐CS - выбор кристалла связан с ША посредством дешифратора адреса и определяет базовый адрес КПДП в адресном пространстве ввода-вывода ЭВМ.
Впрограммном режиме работы с ЦП вывод ⌐CS используется как вход, разрешает связь КПДП с системной шиной (если 0) или запрещает (если 1).
Врежиме ПДП ⌐CS не используется.
Впрограммном режиме базовые адреса регистров контроллеров, в области адресов ввода вывода, соответственно равны:
1-й КПДП 0h (0 .. Fh), |
2-й КПДП С0h (C0h .. DFh). |
Выводы ⌐MEMR/⌐MEMW— чтение/запись в программном режиме работы переходят в высокоимпедансное состояние, в режиме ПДП используются как выходы, определяют направление передачи данных по отношению к ОЗУ.
Выводы ⌐IOR/⌐IOW — вывод /ввод в программном режиме работы используются как входы для чтения (⌐IOR=0) или записи (⌐IOW=0) регистров контроллера.
В режиме ПДП ⌐IOR / ⌐IOW используются как выходы, указывают ВУ, установившему запрос ПДП, направление передачи данных по отношению к ВУ: или из регистров данных интерфейса (⌐IOR=0) или в регистры данных интерфейса (⌐IOW = 0).
Вывод AEN (address enable) — разрешение адреса, в режиме ПДП показывает, что на ШД установлен адрес. В программном режиме работы вывод AEN переходит в высокоимпедансное состояние.
В режиме ПДП вывод AEN используется, как выход.
Устанавливается (AEN=1) на время выдачи 8 старших разрядов адреса ОЗУ на линии DB7 –
DB0.
Вывод ADSTB (address strobe) - строб адреса.
Впрограммном режиме работы переходит в высокоимпедансное состояние
Врежиме ПДП ADSTB используется как выход. На нем формируется импульс (строб), осуществляющий запись старших разрядов адреса ОЗУ (A15 - A8) с линий DB7 - DB0 в регистрзащелку.
Вывод HRQ (hold reqest) — запрос шины (выход).
Врежиме ПДП используется для формирования требования к ЦП (по линии HOLD) передать управление системной магистралью КПДП.
Вывод HLDA (hold acknowledge) — подтверждение шины (вход).
ЦП использует HLDA для сообщения контроллеру ПДП о возможности выполнения циклов ПДП. Вывод CLK — синхронизация служит для подключения тактового генератора Fclk = 3МГц.
Вывод RESET — сброс переводит контроллер в исходное состояние и маскирует все запросы ПДП от внешних устройств.
Вывод READY — готовность.
Впрограммном режиме работы переходит в высокоимпедансное состояние.
Врежиме ПДП может использоваться (как вход) для синхронизации работы контроллера ПДП
смедленно действующими устройствами.
Низкий уровень на входе READY, установленный ВУ, задерживает цикл ПДП. Вывод ⌐EOP — окончание процесса.
4
В режиме ПДП КПДП формирует на линии EOP импульс при достижении счетчиком циклов ПДП конечного значения (Рсч = –1), который может служить запросом прерывания и подается в интерфейс ВУ.
Интерфейс ВУ может выдать на эту линию сигнал с активным уровнем (0), который свидетельствует о невозможности устройства продолжать обмен данными.
В любом случае активный уровень сигнала на линии EOP=0 завершает передачу ПДП.
Выводы DREQ0 ... DREQ3 - входы запросов ПДП от внешних устройств. В исходном состоянии DREQ0 имеет наивысший приоритет, DREQ3 - низший.
5
Выводы DACK0 - DACK3 — выходы сигналов подтверждения ПДП. Используются для сообщений ВУ о возможности выполнения циклов ПДП. Полярность сигналов запросов и подтверждения задается программно.
После сигнала RESET на выводах DACK устанавливается пассивный уровень.
Назначение каналов контроллера и адреса регистров страниц
КПДП |
Канал |
Назначение |
Адреса регистров страниц |
КПДП1 |
0 |
Регенерация ОЗУ |
87h |
1 |
Резерв (КАМАК), Sound |
83h |
|
|
2 |
НГМД |
81h |
|
3 |
Резерв |
82h |
КПДП2 |
4 |
Каскадирование |
- |
5 |
Резерв, Sound |
8Bh |
|
|
6 |
Резерв |
89h |
|
7 |
Резерв |
8Ah |
11.4 Функциональный состав и программная модель контроллера
Рис. 11.3. Функциональный состав контроллера ПДП.
Любой КПДП включает 3 функциональных блока (Рис. 10.3.):
Блок управления КПДП;
4 канала обмена данными в режиме ПДП;
Буферный регистр данных для обмена память-память.
Блок управления контроллером
100
