TSAiU_Lektsia_3
.pdfЛекция №3. Принципы организации обмена данными между ЭВМ и внешними устройствами
3.1. Возможные режимы обмена данными
Возможны два режима обмена данными по системной магистрали:
1.Программно – управляемая передача данных.
2.Прямой доступ ВУ к оперативной памяти ЭВМ (режим ПДП).
Программно-управляемая передача данных.
Если данные передаются из ВУ в ОЗУ (из ОЗУ к ВУ), то выполняются действия, изображенные на рис. 3.1.
Рис. 3.1. Блок-схема программно – управляемой передачи данных
Режим обмена ПДП.
В режиме ПДП данные передаются, как показано на рис. 3.2.
Рис. 3.2. Блок-схема обмена данными в режиме ПДП
Обмен выполняется аппаратными средствами КПДП и интерфейса ВУ. Интерфейс выполняет следующие функции при обмене данными:
Буферное хранение данных.
Устранение временных различий в работе ВУ и ЦП (или ВУ и КПДП).
Передача информации о состоянии ВУ либо в процессор, либо в КПДП.
Передача приказов ВУ от процессора или КПДП.
Известны три способа программно управляемой передачи данных:
1)Безусловная передача.
2)Обмен по готовности ВУ.
3)Обмен с прерыванием текущей программы процессора.
3.2. Безусловная передача данных
Может выполняться только для устройств, быстродействие которых выше быстродействия процессора.
Преимущество: реализуется при минимальных затратах программных и аппаратных средств.
1
Недостаток: устройство всегда должно быть готово к обмену.
Рис. 3.3. Функциональная схема интерфейса безусловного вывода данных
РД - регистр данных, служит для временного хранения n-разрядного слова данных для вывода в ВУ. 2И – информационные вентили, пропускают данные с шины данных в регистр данных, если поступает внутренняя команда интерфейса «Запись в РД».
ДВК – дешифратор внутренних команд, формирует внутреннюю команду интерфейса «запись в РД» на выходе, когда на ША установлен адрес РД, а на ШУ сигнал «Вывод». Вентили 2И открываются и данные с ЩД поступают в РД.
РД представляет собой набор триггеров Т1…Тn (рис.3.4.).
Рис. 3.4. Регистр данных интерфейса
Функциональная схема интерфейса безусловного ввода данных (рис. 3.5.) включает все компоненты интерфейса безусловного вывода, изменяется лишь порядок их подключения.
2
Рис. 3.5. Функциональная схема интерфейса безусловного ввода данных
Количество и назначение регистров интерфейса может меняться. Интерфейс вывода может содержать регистры управления, которые передают ВУ не данные, а приказы, позволяющие изменять режим работы ВУ.
Для программного управления подобными устройствами необходимо знать их программную модель.
Впонятие программная модель интерфейса входит:
1)Число регистров интерфейса и их назначение.
2)Адреса регистров.
3)Число бит и назначение отдельных бит регистров.
4)Способ доступа процессора к каждому из регистров.
3
Техническая реализация устройства связи с объектом в ЭВМ семейства IBM и методика управления обменом
Для изучения методов программного обмен данными и типовых технических средств УСО в ЭВМ семейства IBM PC использована интерфейсная плата L-154, содержащая (рис.4.1.) ряд элементов УСО:
–ЦАП (цифро-аналоговый преобразователь) – 12 разрядный
–АЦП (аналого-цифровой преобразователь)– 12 разрядный
–Мультиплексор – 32 канальный,
–Усилитель,
–Таймер – 3 канальный,
–Регистры цифрового ввода-вывода.
Программная модель платы (табл. 4.1.) L-154 включает 12 регистров, из них 2 регистра – 12-ти разрядные, 10 регистров – 8-ми разрядные. Начальный адрес платы в области адресов ввода-вывода равен 300h.
|
|
Магистраль основной памяти |
|
|
|
ЦП |
|
ОЗУ, ПЗУ |
|
||
|
|
|
|
||
|
|
|
|||
|
|
|
|||
|
|
|
|
|
|
|
Магистраль ВУ |
|
|||
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
Дисплей Клавиатура |
ВЗУ |
Принтер |
||
1 |
Данные |
Интерфейс Данные |
|
||
АЦП |
|
||||
2 |
|
||||
|
программного |
|
ЦАП |
||
|
Управление |
|
|||
|
|
обменаД нные |
|
Uвых. |
|
32 |
Таймер |
|
|
|
|
|
|
|
|
Входы- |
|
|
|
Регистры ввода-вывода |
|||
Коммутатор |
|
выходы |
Рис.4.1. УСО на основе интерфейсной платы L 154
Таблица 4.1.
Карта регистров интерфейсной платы L 154
№ |
Наименование |
Адрес |
Тип |
|
Размер, |
Назначение |
|
№ |
|
относит. |
доступа |
|
бит |
|
|
|
|
|
ЦП |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ЦАП |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
Регистр данных |
0 |
Запись |
|
12 |
Код для записи в ЦАП |
|
|
ЦАП |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
АЦП – коммутатор – усилитель |
|
||||
|
|
|
|
|
|
|
|
2 |
Регистр данных |
0 |
Чтение |
|
12 |
Результат преобразования |
|
|
АЦП |
|
|
|
|
напряжения в код АЦП |
|
|
|
|
|
|
|
|
|
3 |
Регистр |
2 |
Запись |
|
8 |
Установка канала мультиплексора, |
|
|
управления АЦП |
|
|
|
|
режима подключения и диапазона |
|
|
– Коммутатор – |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
Усилитель |
|
|
|
измерения входных сигналов АЦП |
|
|
|
|
|
|
4 |
Регистр состояния |
2 |
Чтение |
8 |
Состояние АЦП и счетчиков – |
|
|
|
|
|
таймеров |
|
|
|
|
|
|
5 |
Регистр запуска |
4 |
Запись |
8 |
Запуск АЦП на измерение |
|
АЦП |
|
|
|
|
|
|
|
|
|
|
|
|
|
Таймеры-счетчики |
|
|
|
|
|
|
|
|
6 |
Канал 0 |
8 |
Запись/ |
8 |
Программирование канала 0 |
|
|
|
чтение |
|
|
|
|
|
|
|
|
7 |
Канал 1 |
9 |
- « - |
8 |
Программирование канала 1 |
|
|
|
|
|
|
8 |
Канал 2 |
Ah |
- « - |
8 |
Программирование канала 2 |
|
|
|
|
|
|
9 |
Регистр |
Bh |
- « - |
8 |
Установка параметров |
|
управления |
|
|
|
каналов |
|
таймеров |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
Регистр |
Fh |
Запись |
8 |
Разрешение/запрет прерываний от |
|
прерываний |
|
|
|
таймера |
|
|
|
|
|
|
|
|
Цифровые линии ввода – вывода |
|||
|
|
|
|
|
|
11 |
Цифровые |
3 |
Чтение |
8 |
Чтение цифровых линий с |
|
входы |
|
|
|
внешнего разъема |
|
|
|
|
|
|
|
|
|
|
|
|
12 |
Цифровые |
3 |
Запись |
8 |
Установка/сброс цифровых линий с |
|
выходы |
|
|
|
внешнего разъема |
|
|
|
|
|
|
|
|
|
|
|
|
ЦАП – преобразует цифровой код, поступающий из ЭВМ в аналоговый сигнал в виде напряжения. Технические характеристики ЦАП:
Диапазон выходного сигнала -5,12 В - +5,12 В.
- разрешающая способность ЦАПМаксимальная частота преобразования
3.3.Программные средства реализации безусловного обмена данными в среде Borland Pascal
В среде Borland Pascal для обращения к регистрам внешних устройств имеются два предварительно объявленных массива:
Port: array [0..65535] of byte; PortW: array [0..65534] of word;
Элементы массива Port байты, элементы массива PortW шестнадцати битовые слова. Индексы массивов соответствуют абсолютным адресам регистров внешних устройств.
Пример:
PortW[$300]:= 4048 – в регистр ЦАП записали число. , на выходе установилось напряжение {+5,0}.
Для обращения к ячейкам памяти в паскале объявлены массивы: MEM, MEMW – MEML.
5
Пример: Программирование канала управления при безусловном способе обмена данными. Генерация синусоидального сигнала, амплитудой 5В, при максимальной частоте.
Program Demo_Sin;
uses crt; const M=100; var U: array [1..M] of integer; i, j: integer;
Procedure wait (i:word); {Обеспечивает задержку в интервале от 0 до 10мкс в зависимости от параметра}
Begin for j:=1 to i do end;
Begin for i:=1 to M do U[i]:=Round(2048+2000*sin(F*(i-1)));
{Сформирован массив данных синусоидального сигнала на интервале одного периода} i:=1;
repeat PortW[$300]:= U[i]; inc(i); if i>M then dec(i,M) until keypressed; while keypressed do readkey;
{Генерация сигнала до нажатия любой клавиши.} end.
3.4.Обмен данными между ЭВМ и внешним устройством по готовности
Основное требование к внешнему устройству – его готовность к обмену данными.
1) Чтение состояния
2) Анализ состояния ВУ
3)Передача данных
4)Сброс готовности
Рис. 4.2. Блок-схема алгоритма обмена данными по готовности ВУ
На первом шаге (1) ЦП читает из интерфейса информацию о состоянии ВУ. На следующем шаге (2) ЦП анализирует полученную информацию. Если ВУ не готово организуется цикл чтения состояния ВУ и его анализ. Если устройство готово — выполняется передача данных (3). Последний шаг (4) — сброс готовности ВУ завершает передачу одного слова данных.
Плюсы: данный способ является идеальным в смысле согласования временных различий в работе процессора и ВУ.
Недостаток: потери машинного времени на ожидание момента готовности. Пример: принтер HP Lj-6L имеет скорость печати 6 страниц в минуту, т.е. =240 символов в секунду. Принтер тратит на печать одного символа 4 мс.
ЦП тратит на печать 2 мкс следовательно 99,95% времени тратится на ожидание готовности.
Функциональная схема интерфейса ввода данных в ЭВМ по готовности ВУ.
6
Функциональная схема интерфейса ввода в ЭВМ по готовности ВУ (рис.4.3.) содержит все элементы интерфейса безусловного вывода данных.
Рис. 4.3. Функциональная схема интерфейса ввода данных в ЭВМ по готовности ВУ
Дополнительные элементы интерфейса — регистр состояния интерфейса содержит только один триггер, называемый флаг готовности (ФГ).
Готовность ВУ |
Инф. вентили |
|
ФГ |
|
|
S T |
2И |
К одной из линий ШД |
|
|
R
Чтение РС
Запись в РС (Сброс ФГ интерфейса программный.)
Чтение РД (Сброс ФГ интерфейса аппаратный при чтении в РД.)
Рис. 4.4. Регистр состояния интерфейса
ФГ –флаг готовности в регистре состояния устройства, может установить в «1» только само внешнее устройство.
ЦП может прочитать или сбросить флаг готовности в ноль.
7
8