Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Avdeev

.pdf
Скачиваний:
158
Добавлен:
01.06.2015
Размер:
1.99 Mб
Скачать

61

адреса). На рис. 2.25 показана схема запоминания сигналов ВыбПУ, DA1 и DA0 с помощью D – L триггеров.

ДшА

Выб ПУ

 

AP

 

 

AD9-AD2

D1

T

Q

ТВыб ПУ

 

 

D2

 

1

TA1

 

 

D3

 

2

AD1

 

 

 

3

TA2

AD2

 

L

 

 

 

ALE

1

 

 

 

 

Рис. 2.25. Схема запоминания адресных сигналов с помощью D – L триггеров

Фиксация сигналов в АР происходит до появления сигнала ALE, а с его установкой запрещается запись сигналов в АР. Схема ДшУС (см. рис. 2.21) функционирует в соответствии с табл. 2.4.

 

 

 

 

 

 

 

 

 

 

 

Таблица 2.4

 

 

 

AD1

AD0

 

 

 

 

 

 

Операция

ВыбПУ

IOR

IOW

(сигнал ДшУс)

 

 

 

 

 

 

 

 

 

 

 

0

 

0

1

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЧтРДВв

0

 

1

0

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЧтТФГ

0

 

0

1

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЗпРДВыв

0

 

1

0

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пуск

0

 

1

1

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЗпТРП

3.1.Программный обмен

Всистемных интерфейсах выполняются три основных способа обмена данными:программный(условныйибезусловный),программныйспрерываниеми прямой доступ к памяти (ПДП). Программный обмен осуществляется по инициативе задатчика (З) и может иметь как условный, так и безусловный характер. Безусловный обмен заключается в непосредственной передаче данных в регистр адаптера ПУ. Условный обмен состоит в том, что З непрерывно сканирует (опрашивает) флаг готовности адаптера ПУ и как только флаг готовности будет установлен со стороны ПУ, З (например, процессор) осуществляет ввод или вывод данных. Рассмотрим процедуру ввода данных из регистра РВв П с опросом флага готовности (ФГВв). На рис. 3.1 изображена схема координации работы П и ПУ, содержащая порты адаптера: регистр РВв и 1–разрядный регистр состояния (РСВв).

 

D0 - D7

П

 

 

1 - РДВв полон

 

ФГВв (IBF)

ФГВв =

 

8

 

 

 

0 - РДВв пуст

ЧтРДВв

 

 

 

 

 

РДВв

 

 

РCВв

ДшУС

 

 

 

8

 

уст

сбр

 

 

 

 

 

 

 

 

 

 

BD0 - BD7 СТР(STR) IBF

 

 

 

 

 

ПУ

 

 

 

Рис. 3.1. Схема координации работы ПУ и П в режиме ввода

В этом режиме ПУ (устройство ввода) передает в РДВв по линиям BD0–BD7 байт данных и записывает его сигналом строб (СТР). Кроме того, сигнал строб устанавливает бит РСВв, формирующий на своем выходе сигнал ФГВв (флаг готовности), равный 1. Процессор по единичному значению ФГВв определяет, что РДВв по-

63

лон, и осуществляет чтение данных. При выполнении операции чтения ДшУС адаптера (см. рис. 2.3) вырабатывает сигнал ЧтРДВв, осуществляющий чтение содержимого РДВв на шину D0–D7 и сброс бита РСВв (ФГВв). ПУ по ФГВв=0 узнает, что РДВв пуст и снова загружает его, устанавливая ФГВв=1 и т.д. Координация работы ПУ и П в режиме вывод состоит в следующем (рис. 3.2).

BD0 - BD7

ПУ

 

 

 

1 - РДВыв пуст

ACK

ФГВыв (OBF)

ФГВыв =

8

 

 

 

 

 

0 - РДВыв полон

 

 

 

 

 

 

 

 

РДВыв

 

 

РCВыв

 

8

 

 

уст

 

сбр

 

 

 

 

 

 

 

D0 - D7

ЗпРДВыв ДшУС

1

 

 

 

П

 

 

Общий сброс

 

 

Рис. 3.2. Схема координации ПУ и П в режиме вывод

По сигналу общий сброс в 1–разрядном регистре РСВыв устанавливается бит

иФГВыв=1,что указывает П о пустомРДВыв.Процессор выполняет операции OUT

изагружает РДВыв байтом данных по линиям D0–D7. Во время выполнения цикла шинызапись(см.рис.2.8)ДшУСадаптераформируетсигналЗпРДВыв,покоторому осуществляется запись данных в РДВыв и сброс флага готовности (ФГВыв = 0). ПУ по сигналу ФГВыв=0 определяет, что РДВыв полон и считывает его содержимое. После этого ПУ формирует сигнал подтверждения приема данных АСК, устанавливающий вновь ФГВыв в единичное состояние. После чего П передает байт данных в РДВыв и т.д.

Режим прерывания выполняется по инициативе ПУ, требует дополнительных аппаратурных затрат, но является более производительным для П, так как П не тратит время на сканирование флага готовности, а может выполнять другую полезную работу. В этом режиме в регистре состояния (РС) используется еще один бит, называемый разрешение прерывания (РП), который устанавливается и сбрасывается со стороны П. Бит РП РС – это бит с передачей бита BDi (0 или 1) из П. На рис. 3.3 показана схема синхронизации ПУ и П в режиме прерывания при вводе данных в П.

64

 

П

 

 

IRQN

 

 

D0 - D7

 

 

&

 

 

ЧтРДВв

8

 

ФГВв

РПВв

 

 

РДВв

ФГ РП

 

РCВв

ДшУС

 

 

8

 

уст

 

 

 

 

 

 

 

 

 

 

сбр

 

 

 

 

 

 

 

 

 

 

BD0 - BD7

СТР(STR)

 

ЗпРП

BDi

из П

 

ПУ

 

 

ДшУС

 

 

Рис. 3.3. Схема синхронизации ПУ и П в режиме прерывания при вводе данных

В этом режиме П предварительно устанавливает бит РП РСВв путем выполнения операции OUT (бит BDi =1). Затем ПУ записывает байт данных в РДВв и устанавливает бит ФГ в РСВв (ФГВв=1). При выполнении условия ФГВв=РПВв=1 на выходе элемента И формируется сигнал прерывания IRQ N, поступающий в контроллер прерывания и сообщающий П, что РДВв полон. После чего с помощью контроллера прерываний и П находится драйвер (обработчик прерывания), который вводит байт данных РДВв в регистр П. Аналогичнымобразом при выполненииусловия ФГВыв=РПВыв=1 формируется сигнал прерывания IRQ N при выводе байта данныхизПвПУ,сообщающийПотом,чтоРДВывпустиможновыводитьданные.

3.2. Контроллер программного обмена

Рассмотрим вопросы проектирования контроллера программного обмена, содержащего 8-битный регистр вывода (РВыв (W/R)), 8-битный регистр ввода (РВв (R)), триггер состояния (ТС (R)) и 2-битный регистр управления (РУ (W/R)). Обозначение (W/R) указывает на то, что соответствующий порт доступен со стороны процессора по записи (W) или чтению (R), а обозначение (R) – на то, что соответствующий порт доступен только по чтению. Режим чтения (R) для РВыв и РУ является неосновным и введен с целью контроля правильности вывода данных. На рис. 3.4 представлена схема соединения ПУ и контроллера (КОН) программного обмена.

65

 

ПУ

 

 

 

Д

Д

Стр

Пуск

КОН

 

РВыв

РВв

 

РУ

ТС

 

 

БС

 

Готовность

 

 

 

 

ШД

 

ШУ

ША

 

Рис. 3.4. Схема соединения ПУ и КОН

Порты КОН подключаются к шинам данных (ШД), управления (ШУ) и адреса (ША) при помощи блока сопряжения (БС), интерфейсной логики. Регистр РВыв используется для приема начального значения ПУ. Регистр РУ содержит два триггера, один из которых формирует сигнал Пуск, поступающий в ПУ и инициирующий его работу, а другойформирует сигнал разрешения прерывания (РП). Триггер состояния (ТС) указывает процессору о том, что ПУ завершило работу и получен результат этойработы,записанныйсостороныПУврегистрРВв.Процессорчерезпрерывание или опрос флага готовности (значения ТС) определяет наличие результата в РВв и считывает его значение.

В качестве ПУ может быть использован специализированный вычислитель (аппаратурная подпрограмма), например, определяющий значение функции по начальному значению аргумента, хранящегося в РВыв, или многоканальный АЦП среднего быстродействия, для выбора одного из аналоговых каналов которого употребляется РВыв, а РВв применяется для хранения кода преобразованной аналоговой величины. На рис. 3.5 изображена структурная схема КОН.

Выберем из резерва 3E0h-3E7h адресного пространства ввода-вывода адреса 3Е0h-3E3h и присвоим их портам. При этом старшие биты адреса SA9-SA2 являются общими для всех портов (эти старшие биты адреса определяют выбор ПУ), а младшиебитыадресаSA1иSA0представляютсяразнымиипредназначаютсядлявыбора одного из четырех портов внутри КОН.

66

 

 

 

 

 

 

 

 

Шина ISA

 

 

 

 

 

 

 

Шина ПУ

SA9-SA2

 

 

 

 

 

 

 

 

AEN

ДшА

Выб ПУ 1

Выб ПУ

BD7-BD0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЗпРВыв

РВыв

 

ОD7-ОD0

 

 

 

 

 

 

 

ЧтРВыв

 

 

 

ЧтРВыв

 

Е

 

 

 

 

 

 

 

 

 

 

ЗпРВыв

 

 

 

 

 

 

 

 

 

Пер

SA1, SA0

 

 

ЗпРУ

 

 

 

 

 

 

 

 

 

IOR

ДшУС

 

ЧтРУ

 

 

 

 

IOW

 

 

ЧтТС

 

 

 

 

 

 

 

ЧтРВв

 

 

 

ЧтРВв

1

 

 

 

 

BD7-BD0

РВв

 

ID7-ID0

 

 

 

 

 

 

 

 

 

ПП

 

 

 

 

 

 

1

IRQ10

 

 

 

 

BD1,BD0

 

 

 

 

 

 

 

 

 

SD7-SD0

В

А

BD7-BD0

 

 

 

Пуск

 

 

BD0

 

 

 

 

 

Т

 

 

 

РУ

 

 

 

 

 

 

ЗпРУ

 

РП

 

 

 

 

 

 

 

Выб ПУ

CS

 

 

 

 

 

 

Стр

 

 

 

 

 

 

 

 

 

 

 

IRQ10

&

 

S

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ТС

 

ЧтРВв

 

 

 

 

 

 

 

R

 

 

 

 

 

1

 

 

 

 

 

Готовность

ЧтТС

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.5. Структурная схема КОН

 

 

В табл. 3.1 представлены порты КОН, их адреса и указан тип доступа. Таблица 3.1

Порт

Адрес

Доступ

РВыв

3Е0

W/R

РВв

3Е1

R

РУ

3Е2

W/R

ТС

3Е3

R

В структурной схеме дешифратор адреса (ДшА) предназначен для декодиро- ваниястаршей(общей)частиадресаSA9-SA2сучетомсигналаAENнизкогоуровня, разрешающего обычный ввод-вывод. На выходах ДшА формируется сигнал выбор

67

ПУ (ВыбПУ ), указывающий на то, что ПУ опознало соответствующий адрес. Для построения принципиальной схемы ДшА необходимо написать двоичный эквивалент старшей части адреса и указать их соответствующие адресные линии (рис. 3.6).

AEN

SA9

SA8

SA7

SA6

SA5

SA4

SA3

SA2

0

1

1

1

1

1

0

0

0

Рис. 3.6. Двоичный эквивалент старшей части адреса

Работа дешифратора управляющих сигналов (ДшУС) описывается табл. 3.2.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 3.2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Операция

ВыбПУ

SA1

SA0

 

 

 

 

 

 

 

 

IOR

IOW

 

(CS)

(ДшУС)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

0

0

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЗпРВыв

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

0

0

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЧтРВыв

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

0

1

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЧтРВв

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

1

0

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЗпРУ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

1

0

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЧтРУ

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

1

1

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЧтТС

Примечание: Зп – запись, Чт – чтение.

Таким образом, ДшУС формирует сигнал при выполнении четырех условий: выбрано ПУ, имеются в наличии сигналы SA1, SA0 и IOR (IOW).

Приемопередатчик (ПП) предназначен для согласования электрических характеристик шины SD7-SD0 и внутренней буферизированной шины BD7-BD0 КОН и управления направлением передачи данных. ПП передает данные из КОН на шину только в случае, если выбрано ПУ и выполняется режим чтения, а в остальных случаях ПП пропускает данные шины в КОН, но они могут быть записаны в порт КОН только при наличии соответствующего сигнала ДшУС. Если вход Т=1, то направление передачи данных с А на В.

68

Регистр РВыв предназначен для временного хранения данных (Д), передаваемых из процессора в ПУ. Для реализации контрольного чтения содержимого РВыв используется передатчик (Пер) с тремя состояниями. Данные (Д), полученные в ПУ, передаются в РВв и записываются в него сигналом строб (Стр), который одновременно устанавливает триггер ТС, сообщающий процессору о том, что РВв полон. При чтении процессором содержимого РВв триггер ТС сбрасывается в исходное состояние.

Сигнал прерывания IRQ10 формируется КОН, если установлен соответствующий бит разрешения прерывания (РП) в регистре РУ и триггер TC (флаг готовности ПУ). Сигнал прерывания сообщает процессору, что РВв полон.

Принцип работы КОН заключается в следующем. Вначале процессор выполняет вывод байта данных в РВыв (3E0h) и осуществляет пуск ПУ (установку бита пуск РУ (3E2h)). Затем через прерывание (предварительно установлен бит РП в регистре РУ) или путем опроса флага готовности (единичное значение триггера ТС (3E3h)) процессор определяет, что РВв полон. После этого процессором выполняется чтение содержимого РВв (3E1h).

Схема ДшА может быть реализована на двух микросхемах 1533 СП1 (рис. 3.7) с учетом двоичного эквивалента старшей части адреса (см. рис. 3.6).

 

 

А

= =

 

 

А

= =

 

AEN

0

 

SA5

0

 

 

 

 

 

SA9

1

 

 

SA4

1

 

 

SA8

2

А>

 

SA3

2

 

 

SA7

3

 

SA2

3

 

 

 

 

 

"1"

0

В

 

"1"

1

В

 

 

1

0

А=

 

0

0

 

 

1

 

1

 

 

1

2

 

 

0

2

 

 

1

3

А<

 

0

3

 

 

 

Рис. 3.7. Схема ДшА на двух 1533 СП1

 

 

А>

 

 

 

А>

 

 

SA6

А=

 

 

 

А=

 

 

 

А<

 

 

 

А<

 

А>

 

 

А=

Выб ПУ

 

Выб ПУ

 

1

 

 

А<

 

 

69

На рис. 3.8 представлена схема ДшА на элементах ЛЕ1 и ЛА2 (а) или ЛА1 и

ИД7 (б).

 

ЛЕ1

 

 

 

 

 

ИД7

 

 

AEN

 

 

 

 

 

 

 

 

&

 

 

 

 

 

DMX

 

Выб ПУ

SA4

ЛА2

 

 

SA2

1

0

 

 

 

 

 

SA3

 

 

 

 

SA3

2

 

1

 

&

 

 

 

 

2

 

 

 

 

 

 

 

 

SA2

 

 

 

SA4

3

 

 

 

 

 

 

 

3

 

 

 

 

 

 

ЛA1

 

 

 

SA9

 

 

Выб ПУ

 

&

 

4

 

 

&

SA9

AEN

 

 

SA8

 

 

SA8

E

 

5

 

 

 

 

&

 

 

SA7

 

 

 

SA7

 

 

6

 

 

 

 

SA5

 

 

 

SA6

 

 

 

SA6

 

 

7

 

SA5

 

 

 

 

 

 

 

 

 

(а) (б)

Рис. 3.8. Схема ДшА на элементах ЛЕ1 и ЛА2 (а) или ЛА1 и ИД7 (б)

Схема ДшУС, реализованная на микросхеме 1533 ИД4 в соответствии с табл. 3.2, изображена на рис. 3.9.

Выб ПУ

 

 

 

 

 

 

&

DMX

0

ЗпРВыв

 

 

E

IOW

1

 

1

 

 

 

 

 

 

2

ЗпРУ

 

 

 

 

SA0

 

A0

 

3

 

 

 

 

 

SA1

 

A1

 

0

ЧтРВыв

 

 

 

 

 

 

 

 

1

ЧтРВв

 

Рис. 3.9.&Схема ДшУС

ЧтРУ

IOR

 

G

 

2

 

 

3

ЧтТС

 

 

 

3.3. Прямой доступ к памяти

 

 

 

 

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

70

(слов), вырабатывает необходимые интерфейсные сигналы как задатчик и координирует свою работу с работой контроллера внешней памяти (ВЗУ). На рис. 3.10 представленасхемасопряженияП,КПДП,контроллераВЗУ(КВЗУ)иВЗУврежиме ПДП.

 

 

 

IOW

 

 

 

 

 

IOR

 

 

П

HRQ

КПДП

DRQN

КВЗУ

ВЗУ

HLDA

DACKN

(DMA)

 

D0 - D15 (D7)

 

T/C

 

 

 

 

 

 

 

ОП

Адрес

 

 

 

 

MEMR , MEMW

 

 

 

 

I/O CH RDY

 

 

 

 

Рис. 3.10. Схема сопряжения устройств в режиме ПДП

Вначале режима ПДП П инициализирует КПДП: задает режим работы, передает начальный (стартовый) адрес ОП, число передаваемых байтов (слов) и т.д. Затем П выводит команды в КВЗУ, указывающие тип операции (запись, чтение или поиск и так далее). После подготовки данных КВЗУ устанавливает сигнал запрос ПДП (DMA) DRQ N (N – номер канала). КПДП (микросхема i8237) содержит 4 канала, работающие в режиме разделения времени.

Всвою очередь, КПДП формирует сигнал запрос шины HRQ, поступающий

вП. П освобождает интерфейс (переводит свои выходы в состояние выключено) и устанавливает сигнал подтверждения шины HLDA.

С этого момента времени задатчиком на интерфейсе становится КПДП, под управлением которого осуществляется передача данных через КВЗУ между ВЗУ и ОП по следующей схеме (рис. 3.11).

ВЗУ Данные КВЗУ Данные ОП IRQ6 Управление

П (INT13) ПЗУ (BIOS) КПДП

Рис. 3.11. Схема выполнения режима ПДП

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]