Режим прямого доступа к памяти и контролер ПДП (КПДП)
В процессе работы ЭВМ возникает необх-ть быстрого обмена инф-ей м-у памятью и ВУ или предоставления СМ ВУ-ам для обмена инф-ей м-у собой, т.е. из процесса обмена инф-ей искл-ет ЦП.
HLD- запрос захвата
HLDA - разрешение на захват
В каждом цикле обращения по заднему фронту T2 пр-р анализ-ет наличие с-ла HLD. HLD выст-ся ВУ и в общем случае асинхронен тактовым импульсам. Если на м-нт спада импульса пр-р получает HLD=1, пр-р переходит в режим захвата, уст-ся с-л HLDA, и по этому захвату ША, ШД и ШУ переводятся в 3 сост.(сост. разомкнутого ключа, т.е. пр-р откл-ся от СМ) до тех пор, пока ВУ не закончит польз-ся СМ и не установит с-л HLD=0. Тогда по полож. с-лу С1 пр-р переходит в такт Т1 след. цикла. (эот немаск. прер-ние)
Intel 82237:
Центральная задача:
1)КПДП берет на себя функции управления СМ и формирование ША при отключении ЦП от СМ.
2)Осуществляет арбитраж между разными устройствами, запрашивающими режим ПДП.
Классическое периферийное устройство ВУ
DMR-запрос на ПДП от ВУ, DACK-разрешение на ПДП от ВУ, HLD-запрос от пр-ра, HLDA-разрешение от пр-ра.
Контролер всегда имеет в паре: RDJ0, WR,RD, WRJ0.
Контролер имеет 4 идент. канала К0-К3. Каждый канал содержит 16 разр. регистр адреса и 14 разр. счетчик циклов. По включении питания ЦП в программе нач. пуска (BIOS) прогр-т все периферийные микросхемы, в том числе контролер ПДП. В контролере ПДП проц для каждого канала (ВУ) задает нач. адрес (перв.ячейку памяти запис-ся в РгА канала) и задается число циклов(зап-ся число циклов в канал).Адрес формируется путем инкрементирования РгА (соот-но после каждого цикла число циклов декрементируется). Режим ПДП заканчивается, когда счетчик циклов=0. В этот момент времени формируется сигнал TC т.е. последний цикл. Максимальный размер этого блока=16 кбайт, т.к. счетчик циклов 14р, максимальный объем памяти перегоняемый в ПДП=214 или 16 кбайт (ПДП не может слишком долго, так как СМ занята и невозможна регенерация динам памяти).
Как контролер ПДП подключается к СМ: STBA-строб адреса.
При программировании контролера использ-ся разряды ША А0÷А3 и CS=0. Помимо прогр-я каждого канала в отдельности запис-ся управл-ее слово(только после того как все каналы запрогр-ся).
Управл-ее слово задает приоритеты между каналами, устанавливается флаги конца цикла ПДП в слове состояния (СС).
ЦП период-ки считывает СС контр-ра ПДП , в котором определяет происходил ли обмен инфой по конкретным каналам (т.е свежая ли проц инф и забран ли от проца готовый предыдущий рез-т). Если цикл ПДП прошел, обмен инфой состоялся, пр-р перепрограммирует контр-р по данному каналу(это делает ОС).
STBA стробирует адрес на ША.
М128-каждый 128 цикл формируется строб, длительностью один цикл.чтобы показать что система не зависла, а идут циклы ПДП.
27. Параллельно программируемый интерфейс (ППИ), подключение ВУ (организация м/о) с помощью ППИ
Микросхема КР580ВВ55. ППИ предн. для подкл. периферийных устройств к СМ.
Все 4 канала независимы друг от друга и могут использ. как на ввод так и на вывод инфы. Порт- совокупность регистра и ШФ. РУС –регистр управляющего слова.
ШД®А | ШД→В | ШД→С | ШД→РУС | |
CS | ||||
WRJO | ||||
RDJO | ||||
A0 | ||||
A1 |
ШД→А | ШД→В | ШД→С | |
CS | |||
WRJO | |||
RDJO | |||
A0 | |||
A1 |
ППИ может раб-ть в одном из 3 режимов. Режим задается в регистре управляющего слова (РУС).
РУС
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
D0-к С1 (0-ввод 1- вывод;)
D1-к В (0-ввод 1- вывод;)
D2- реж работы кВ и кС1 (0-реж “0”,1-реж “1”)
D3-к С2 (0-ввод 1- вывод;)
D4-к А (0-ввод 1- вывод;)
D5D6-номер режима для кА и кС2 (00-“0”)(01-“1”)(1х-“2”)
D7-1 признак РУС
Режим “0” предн. для синхронных обменов инфой, каждый из каналов независимо друг от друга может передавать или принимать сигналы в зависимости от РУС.
Режим “1” предн. для асинхронного обмена. В этом режиме данные передаются по каналам А и В, канал С исп-ся для формирования битов квитирования.
Если в режиме 0 или 1 требуется поменять направление передачи инфы ППИ необходимо перепрогр-ть(тратится время). Для скоростного обмена инф-й исп-ся режим 2. В режиме 2 данные могут передаваться только по каналу А. Напр. передачи опред-ся сигналами RDJO, WRJO.
Порт С используется для формирования битов квитирования. В любом из режимов возм-на побитная установка канала С. В этом случае обращение происходит по адресу упр слова А0А1=1 ат только в РУС старший бит=0 (D7=0).
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
D0-то что нужно записать D3D2D1-двоичный номер разр в кан С.
М/О ч/з ППИ:
По сбросу проц-ры программируют ППИ в режим 0 (или 1). Каналы С1 и С2 прогр-ся на передачу слов состояния(битов квитирования => асинхр способ обиена). Каналы А и В на ввод или вывод инфы, чтобы не изменять ПО для 2-х однотипных устройств в кабеле м/у ППИ делается перекоммутация канала А на В и наоборот, тогда сохр-ся направление передачи инф-ии.
Организация м/о n-машин ч/з ППИ:
Пр-р1 – ведущий, все остальные ведомые. По вкл-ю питания пр-р1 прогр-т ППИ в режим 0, к-лы В и С настраиваются на вывод, кА на ввод – вывод. Пр-р1 записывает в кВ адрес внешнего устройства (с помощью ППИ формируется новая СМ, отдельная для внешних устройств).Если Пр-р1 надо получить инфу от внешнего уст-ва, то пр-р1 записывает в кС бит RD*. Комбинация адреса Дш1 и сигнал RD* открывает шинный формирователь N и инфа от регистра пр-ра N поступает в кА ППИ (в этом случае кА настроен на ввод).Пр-р N ч/з шинный формирователь может периодически считывать предназначенные для него инфу кА. Количество машин в этом случае ограничено загруженностью портов ППИ и длиной линии связи.
Обмен инфы последовательным кодом.
При передаче инфы на большие расстояния число линий связи ограничено(радиоканал, оптоволокно). В этом случае передача инфы идет в последовательном коде. При передаче инфы следует решить следующие задачи:
1)опр-ть сост. получ. инфы (выкл.,занят, свободен)
2)опр-ся направление передачи инфы
3)достоверность переданной инфы
4)преобр-ть парал.код в послед. и наоборот.