Й.Янсен Курс цифровой электроники. Том 4. Микрокомпьютеры (1987) (1092084), страница 14
Текст из файла (страница 14)
Прерывания возникают во всевозможных формах, причем в каждом случае имеет место новый вариант запроса на прерывание. Рассмотрим, например, прерывание во время связи между дисковым ЗУ н центральной системой. При этом нужно различать случаи прерывания, когда делаются попытки передачи данных из системы на диск и в противоположном направлении. При передаче данных с диска в систему вводится информация об адресах этих данных на диске. Контроллер, который управляет работой диска, с помощью устройства позиционирования устанавливает магнитную головку над требуемым треком.
Затем контроллер просматривает индексы секторов, и, кактолько требуемые данные становятся доступными для считывания, включается последовательно-параллельный преобразователь, который преобразует последовательный набор данных в параллельный. Это можно сделать, например, с помощью регистра сдвига, который выполняет также роль временного ЗУ.
После завершения операции появляется параллельный набор данных н контроллер посылает с диска сообщение в систему в виде запроса на прерывание. При этом система заканчивает выполнение текущей команды и сообщает контроллеру, что готова принять данные из регистра сдвига. Контроллер сразу же реагирует на это сообщение, передавая на шину данных первый байт. Система принимает первый байт и помещает его в ЗУ. Затем она запрашивает контроллер на передачу следующего байта. Этот процесс продолжается до тех пор, пока все запрошенные байты не будут переданы в ЗУ.
При передаче в обратном направлении система с помощью специальной команды сообщает контроллеру о данных, которые она хочет передать на диск. Контроллер, работающий в ждущем режиме, отвечает на эту просьбу прерыванием, после которого система передает данные по шине данных в ЗУ контроллера с помощью нескольких последовательных пересылок. Контроллер продолжает этот процесс, т. е.
преобразует параллельный набор данных в последовательный, выбирает трек г г и записывает данные на диске. Прерывание должно начинаться с контроллера, так как это управляющее устройство не должно быть занято выполнением предыдущей операции передачи. Если пересылку необходимо осуществить напрямую, перед этой операцией старую информацию следует переписать в ЗУ контроллера. 2.8. Архитектура ЭВМ Автоматическая обработка данных является отображением процессов, происходящих в повседневной жизни.
Ведь автомат или ЭВМ для того и служит, чтобы заменять человека при выполнении действий рутинного характера. На основе вышеизложенного можно прийти к заключению, что автомат или ЭВМ должны иметь организационную структуру, которая часто встречается в повседневной жизни. Как известно, ЭВМ состоит из ЦП (центрального процессора), ЗУ и дополнительных схем для связи с внешними (периферийными) устройствами. АЛУ является частью ЦП, в котором находится также схема управления АЛУ и регистры, в которых хранятся данные, подготовленные к обработке.
ЦП связан с ЗУ и портами ввода-вывода информации шинами данных и адресов. На рис. 2.2 была уже показана организация, которая совпадает с архитектурой ЭВМ. На этом рисунке представлена схема мастерской с рабочим местом, где работает плотник. На рабочем месте располагаются стеллажи (регнстры), где лежат материалы, необходимые для работы, Плотник получает команды от мастера (управленне). Мастер дает указания подсобному рабочему, который заполняет стеллажи пиломатериалами н столярным клеем, взятыми со склада (ЗУ), а также обеспечивает внутреннюю транспортировку (передачу) в пределах рабочего помещения и отправляет готовые н полуготовые изделия в отдел снабжения и сбыта (порты ввода — вывода). Мастер получает в свой адрес макрокоманды из отдела планирования (программы вычислений на ЭВМ) „находящегося в главной конторе (программное ЗУ). Макрокоманды имеют форму заказов на изготовление, которые мастер вывешивает на доске приказов (хранение в командном регистре).
Каждая команда имеет номер, который указывает позицию команды в программе (счетчик адресов). Мастер знает, какие специальные операции (команды) необходимо осуществить, и отдает соответствующие указания плотнику и подсобному рабочему либо устно, либо по телефону (через шину управления), если ему необходимо установить контакт со складом или отделом снабжения. В конторке мастера ЗВМ имеется телефон для связи с внешним миром, по которому к нему поступают внешние команды (прерывания). Мастер может быстро сообщить по телефону о необходимости в поставках материалов для производства изделий.
Кроме официальнойпрограммы для осуществления необходимых операций, он может выполнять и срочные специальные операции, если, например, какой-либо клиент потребует срочной поставки изделий определенного типа. Мастер также производит перемещение материалов между внутреннэч складом и внешним большим хранилищем (команды РМА-НО1.0 в ЭВМ, 1Мгес( Мепюгу Ассезз НоЫ вЂ” прямой доступ к памяти с захватом). Если со склада необходимо получить определенные материалы и подсобный рабочий должен ожидать их, стоя у хранилища, то мастер может выдать в адрес этого подсобного рабочего команду ожидания (%А1Т для связи с ЗУ).
Управление мастерской осуществляет лицо, которое занимается планированием производства изделий (программа вычислений на ЭВМ). В соответствии с этой программой отдельные операции выполняются последовательно. Программа составляется таким образом, что мастерская получает вовремя необходимые материалы либо со склада, либо из отдела снабжения. Программа обеспечивает также своевременный вывоз полуготовых и готовых изделий из мастерской. Специальными операциями непосредственно в рабочем помещении управляет заведующий мастерской (микропрограмма).
Основная программа никак не влияет на эти специальные операции. Ответственность за ннх полностью возложена на заведующего мастерской. Передача материалов (данных), а также приказов по мастерской (команд) происходит по одним и тем же каналам (шинам данных). При передаче как материалов, так и приказов мастера можно использовать прямую или косвенную адресацию. Мастер всегда может сказать посыльному: «Пойди к Х и спроси у него, где можно взять материал У». Такой пример косвенной адресации часто встречается при программировании на ЭВМ.
В случае серийного производства отдел планирования может выдать набор инструкций, которые должны быть выполнены в повторяющемся режиме. Если при этом полуфабрикаты не перемещаются, то происходит переполнение стеллажей в мастерской (переполнение). Плотник получает команду следить за этим, и, после того, как такая ситуация возникает, он сообщает о ней мастеру, который принимает соответствующее решение. Транспортировка полуфабрикатов со стеллажей соответствует ветвлению в программе.
Сообщение о переполнении реализуется в микроЭВМ с помощью одноразрядного флажкового регистра. Может возник- 7О путь такая ситуация, когда в процессе непрерывного производства запас деталей на стеллажах истощится, т. е. станет нулевым. В ЭВМ соответствующий флажковый бит называется нулевым. Относительно прерывания деятельности мастера можно также отметить, что мастер может выключить телефон, если он занят, например, анализом какого-либо проекта и при этом не хочет, чтобы ему кто-то мешал. В случае ЭВМ две разные команды делают систему либо восприимчивой к прерыванию, либо нечувствительной к нему. Если необходимо осуществить вывоз изделий через отдел сбыта, то имеется возможность разделить партию изделий перед отправкой на две части и затем вывезти обе половины отдельно одну за другой (последовательно) через ворота наружу, после чего снова объединить обе половины за воротами.
Подобный аналог имеется и в системах обработки данных, в частности в ЗУ МП, которые не имеют достаточного количества внешних выводов (клемм корпусов Р1Р) для того, чтобы вывести наружу слово данных или адрес целиком. Такие слова данных или адреса разделяются на две части, которые с помощью мультиплексора выводятся одна за другой через одни н те же внешние выводы, после чего объединяются. 2.9. Микропроцессор 8085А В предыдущих разделах при обсуждении аналогов мы уже познакомились с большим числом структур, которые имеют организационно-производственную архитектуру, напоминающую архитектуру ЭВМ.