- •Основы функционирования и построений эвм общие сведения о представлении и обработке информации в эвм
- •1.1. Две формы представления информации
- •1.2. Способы представления дискретной информации
- •1.3. Системы счисления, используемые в вычислительной технике
- •Структура и принцип функционирования эвм
- •Базовая эвм
- •2.1. Назначение и структура базовой эвм
- •Программа вычисления суммы двух чисел
- •2.2. Кодирование программ и система команд
- •Выполнение машинных команд
- •3.2. Устройства ввода-вывода базовой эвм
- •3.3. Программно-управляемая передача информации
- •Микропрограммное устройство управления Многоуровневые эвм и их микропрограммный уровень
- •4.2. Компоненты процессора и основные операции
- •Микропрограммное управление вентильными схемами
- •4.5. Другие варианты построения микрокоманд
3.2. Устройства ввода-вывода базовой эвм
При разработке внешних устройств редко ориентируются на их подключение к определенному типу ЭВМ. Очень быстрое развитие вычислительной техники и, следовательно, частое обновление парка ЭВМ привели бы в этом случае к необходимости изменения тех схем ВУ, которые связывают его с конкретной ЭВМ, т. е. к изменению технологического процесса изготовления ВУ. Затраты на изготовление ВУ, пригодных для использования с разными типами ЭВМ (даже с теми, которые еще не разрабатывались), существенно уменьшаются, если при разработке ВУ ориентироваться только на лучшее выполнение ими заданных функций (печати, перфорации и т. п.). При этом для связи ВУ с ЭВМ можно использовать специальные управляющие устройства — контроллеры (англ. controller — управляющий, ревизор). Тогда для подключения ВУ к новому типу ЭВМ потребуется лишь разработать и изготовить новый контроллер.
3.3. Программно-управляемая передача информации
Устройства ввода-вывода передают в ЭВМ и получают из нее, как правило, большой объем информации, который не может быть размещен только в регистрах процессора. Поэтому информация передается из ВУ в память ЭВМ и поступает на ВУ из ее памяти. При этом обмен может идти под управлением программы ЭВМ через регистры процессора (программно-управляемая передача данных) или под управлением специального внешнего устройства (контроллера прямого доступа в память), минуя процессор (передача данных при прямом доступе к памяти). Программно-управляемый обмен осуществляется малыми порциями, при прямом доступе к памяти информация передается большими блоками.
В базовой ЭВМ реализована только программно-управляемая передача данных.
-
Операция вывода предусматривает пересылку информации из аккумулятора процессора в регистр данных контроллера ВУ. После того как данные приняты этим регистром, начинают выполняться операции по их преобразованию в связанном с контроллером ВУ (например, печать соответствующего символа или изменение положения исполнительного органа).
-
Операция ввода предусматривает передачу данных из регистра данных контроллера ВУ в аккумулятор ЭВМ
При использовании программно-управляемого обмена должна быть составлена программа для пересылки данных из памяти ЭВМ в аккумулятор и далее в регистр данных контроллера ВУ (или из регистра данных контроллера ВУ в аккумулятор и затем в память ЭВМ). В этой программе можно реализовать один из трех видов подобного обмена: синхронный, асинхронный и по прерыванию.
Синхронный обмен можно использовать лишь для связи с такими ВУ, для которых точно известно время выполнения операции (например, максимально возможное время, затрачиваемое на печать одного символа, пробивку одной строки перфоленты и т. п.). При этом программу обмена необходимо составлять так, чтобы команды на обмен шли с интервалами не меньшими, чем время выполнения одной операции обмена.
Это наиболее простой вид обмена, требующий минимальных затрат технических и программных средств. Однако при его использовании для передачи данных между ЭВМ и сравнительно медленными ВУ, как правило, не удается полностью загрузить ЭВМ на время между двумя пересылками данных. Так, например, электрическая пишущая машинка позволяет организовать вывод данных со скоростью не выше 7 символов в секунду, а за 1/7 секунды микроЭВМ может выполнить от 10 000 до 1 000 000 операций.
Асинхронный обмен широко используется в микроЭВМ. При его реализации интервал между командами передачи данных задается самим внешним устройством. Контроллеры этих устройств снабжаются регистром состояния, который информирует ЭВМ о готовности устройства к обмену информацией (например, электрическая пишущая машинка устанавливает сигнал готовности лишь тогда, когда она закончила печать предыдущего символа, в нее заправлены бумага и красящая лента). Программа обмена строится так.
-
Проверяется состояние устройства ввода-вывода.
-
Если устройство готово к обмену, то производится переход к п. 3. В противном случае вновь выполняется п. 1.
-
Производится передача очередной порции данных, выполняются действия по их обработке и (или) другие операции, и если обмен данными еще не закончен, осуществляется переход к п. 1.
Таким образом, при асинхронном обмене программист не должен знать о времени выполнения операции на ВУ. Последнее само информирует ЭВМ о завершении предыдущей операции и готовности к выполнению новой операции. Однако ЭВМ должна тратить время на ожидание момента готовности, а так как готовность проверяется программным путем (команда TSF В), то в это время ЭВМ не может выполнять никакой другой работы по преобразованию данных.
Обмен по прерыванию программы отличается от асинхронного обмена тем, что готовность ВУ к обмену проверяется при помощи аппаратных средств ЭВМ, а не программным путем. Это позволяет организовать работу ЭВМ следующим образом.
Машина исполняет какую-либо программу (назовем ее основной или фоновой), не связанную с обменом. Когда ВУ готово к приему или выдаче информации, оно посылает в ЭВМ сигнал готовности, воспринимаемый специальным блоком ЭВМ (например, контроллером прерываний). Этот блок приостанавливает (прерывает) исполнение основной программы и передает управление подпрограмме, организующей нужный вид обмена данными. Когда выполнение подпрограммы завершается, возобновляется работа ЭВМ по основной (временно прерванной) программе.
Различие между рассмотренными видами программно-управляемого обмена можно проиллюстрировать на следующем примере.
Пример 3.1. Вам поручено вскипятить воду в чайнике.
-
Безусловная операция, (синхронный обмен). В 8 ч Вы поставили на плиту чайник с водой и, зная, что обычно он закипает через 10 мин, ровно в 8 ч 10 мин сняли его с плиты, не заботясь о том, закипела вода или нет.
-
Условная операция (асинхронный обмен). Вы поставили на плиту чайник с водой и примерно раз в минуту посматриваете за ним. Когда чайник закипит, Вы снимете его с плиты.
-
Операция по прерыванию. Вы поставили на плиту чайник с водой, надели на его носик свисток и стали читать книгу (фоновая работа). Когда засвистит свисток, вы снимете чайник с плиты и продолжите чтение книги.
