Описание процедуры ввода

Операция ввода информации аналогична циклу чтения из памяти. Для ее реализации необходимы три шага:

1) центральный процессор выставляет адрес на шине адреса. На этом шаге выбирается конкретная схема ввода» или порт. Порт может иметь любую разрядность, однако наиболее удобны порты с разрядностью, равной длине слова, используемого ЦП;

2) центральный процессор ждет, когда данные станут доступными;

3) центральный процессор считывает данные с шины данных и помещает их в один из регистров.

Проблема состоит в том, как определить, когда данные доступны для чтения. Цикл памяти происходит в течение фиксированного промежутка времени, а так как модули памяти однотипны по своей структуре с процессором, то легко можно сконструировать совместимый с ЦП модуль памяти либо добавить простую схему задержки. Но как справиться с огромным диапазоном скоростей, с которыми работают периферийные устройства? Простые схемы задержки здесь редко могут принести пользу. Организация ввода-вывода требует более сложного управления временными интервалами.

Цикл ввода имеет такую же временную диаграмму, как и цикл чтения из памяти. Эту временною диаграмму весьма просто реализовать, если анализ наихудшего случая для модуля памяти уже был проведен. Естественно, построить временную диаграмму цикла — не означает решить все проблемы согласования во времени, так как лишь немногие быстродействующие УВВ могут работать подобно памяти. Для таких УВВ времена задержки, установления и захвата (hold times) совпадают с временами, описанными в гл. 7.

Согласовать во времени работу ЦП и периферийных устройств ввода можно различными методами:

1. Предполагается, что данные, поступающие с устройства ввода, всегда доступны, так же, как данные в памяти. Такой’подход приемлем для организации ввода данных, поступающих от низкоскоростных устройств: механических переключателей или первичных преобразователей, измеряющих такие физические величины, как температура или давление. Требуется только, чтобы ЦП считывал данные достаточно часто, чтобы он успевал реагировать на поступление новых данных.

2. Вырабатывается специальный сигнал (например, DATA READY—«данные готовы») для указания, что данные доступны. Этот сигнал может быть дополнительным битом, или стробом, или конкретным кодом, не имеющим другого значения. Такой метод приемлем для скоростей обмена данйыми в диапазоне от малых до умеренных и пригоден для УВВ, которые подготавливают данные через нерегулярные промежутки времени, или асинхронно. Центральный процессор может проверять наличие этого специального сигнала или предупреждаться прерыванием о его появлении.

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

При использовании первого метода ЦП просто выполняет операции ввода с подходящей частотой. Часто даже нет необходимости в периодичности операций, если интервалы между операциями не превосходят максимального времени реакции. Единственная проблема в данном случае — переходные процессы, возникающие при изменении значений вводимых данных. При изменении значений, измеряемых первичными преобразователями, при вращении наборных дисков или при установке переключателей в новое положение могут произойти ошибки ввода. Основные способы устранения указанных ошибок заключаются в следующем:

1) преобразовать медленные или нерегулярные изменения значений данных в дискретные сигналы с помощью одновибраторов, триггеров Шмитта, обычных триггеров или логических схем;

2) использовать другой вход (например, переключатель LOAD), чтобы информировать ЦП о том, что данные готовы;

3) программно организовать проверку данных. Центральный процессор убеждается в правильности первого чтения путем повторного чтения после задержки.

Второй метод, требующий специального сигнала «данные готовы», иногда называют «рукопожатием» (handshake)1. Он состоит из следующих шагов (рис. 8.2):

1) периферийное устройство посылает данные и сигнал «данные готовы» устройству ввода-вывода;

2) ЦП определяет, что возбужден сигнал «данные готовы». Триггер-защелка (фиксатор) может хранить этот сигнал до момента, когда Цп прочитает его;

3) ЦП читает данные;

4) ЦП посылает сигнал «подтверждение ввода» (INPUT ACKNOWLEDGE) периферийному устройству. Сигнал указывает, что передача завершилась и периферийное устройство может послать новые данные.

Фактическая передача данных (на шаге 3) — лишь малая часть процесса ввода-вывода. Дополнительная операция ввода должна проверить сигнал «данные готовы»» а дополнительная операция адвода — выдауь сигнал «подтверждение ввода». Модуль евода-вывода должен фиксировать данные.» сигналы управления в течение времени, гарантирующего их прием. I

Третий метод, т. е. синхронная передача данных, — самый быстрый метод ввода-вывода.

Если однажды синхронизировать должным образом процессор с периферийным устройством, то передача данных становится регулярной. Например, если. УВВ — линия связи, передающая данные со скоростью 2400 бит/с, то процессор должен выполнять операцию ввода каждую 1/2400 долю секунды. В данном случае проблема заключается в том, как начать и остановить передачу данных.

Обычный метод решения этой проблемы — использовать специальное сообщение, которое не предназначено ни для какой другой цели, кроме синхронизации процессора и, периферийного устройства. Конец передачи данных также мож.ет быть обозначен специальным кодом. Указанная проблема аналогична проблеме настройки приемника на передатчик в сетях связи. Синхронная передача данных осуществляется быстро, но требует дополнительного оборудования и программного обеспечения. 



http://www.marinline.ru/ расходники для лодочных моторов mercury mercruiser. . Скачать типовые нормы времени на ремонт автобуса паз.