Материал: Техническое обеспечение информатики. Афанасьев Л.А

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

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

Из управляющих линий выделим следующие.

Линии занятости. Если она в состоянии ―шина свободна‖, любой задатчик, включая процессор, может начать операцию обмена данными на шине, иначе задатчику придется ожидать, пока шина не освободится.

Линии выполняемой операции. Указывают, какая именно операция будет выполняться. Как минимум необходим следующий набор операций: чтение (задатчик принимает данные от исполнителя), запись (задатчик передает данные исполнителю).

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

21

Синхронизация задатчика

Синхронизация исполнителя

рис. 2.3. Временная диаграмма процесса квитирования

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

Функционирование ЭВМ с шинной структурой можно описать следующим обобщенным алгоритмом (рис. 2.4).

Инициализация

Выборка команды

Увеличение программного счетчика

Дешифрация и выполнение команды

Нет Остановка процессора

Да Инициализация

рис 2.4. Обобщенный алгоритм функционирования фон-неймановской ЭВМ

22

1. Инициализация. После включения ЭВМ или операции сброса в регистры центрального процессора заносятся некоторые начальные значения. Обычно в процессе инициализации в память ЭВМ помещается программа, называемая первичным загрузчиком. Основное назначение первичного загрузчика - загрузить в память с устройства внешней памяти операционную систему. Эта программа может быть размещена в энергозависимом устройстве памяти или автоматически считываться с некоторого устройства внешней памяти. Мы не будем здесь подробно останавливаться на

механизмах загрузки операционной системы, тем более что они могут существенно различаться для разных типов ЭВМ. Пока будем полагать, что в памяти некоторым образом оказалась первая из подлежащих выполнению программ. Программному счетчику присваивается начальное значение, равное адресу первой команды программы, указанной выше.

2.Центральный процессор производит операцию считывания команды из памяти. В качестве адреса ячейки памяти используется содержимое программного счетчика.

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

4.По адресным полям команды устройство управления определяет, имеет ли команда операнды в памяти. Если это так, то на основе указанных в адресных полях режимов адресации вычисляются адреса операндов и производятся операции чтения памяти для считывания операндов.

5.Устройство управления и арифметико-логическое устройство выполняют операцию, указанную в поле кода операции команды. Во флаговом регистре процессора запоминаются признаки результата операции (равно нулю или нет, знак результата, наличие переполнения и т.д.).

6.Если это необходимо, устройство управления выполняет операцию записи для того, чтобы поместить результат выполнения команды в память.

7. Если последняя команда не была командой ОСТАНОВИТЬ ПРОЦЕССОР, то описанная последовательность действий повторяется, начиная с шага 1. Описанная последовательность действий центрального процессора с шага 1 до шага 6 называется циклом процессора.

Большинство мини- и микроЭВМ имеют шинную организацию и их поведение описывается приведенным выше алгоритмом. В различных конкретных ЭВМ реализация этого алгоритма может несколько отличаться. Так, например, по-разному может осуществляться синхронизация задатчиков и исполнителей, процессор может считывать из памяти не одну команду, а сразу несколько и хранить их в специальной очереди команд.

23

Часто используемые программой команды и данные могут храниться не в основной памяти ЭВМ, а в быстродействующей буферной памяти и т.д. Таким образом, функционирование любой фон-неймановской ЭВМ описывается алгоритмом, близким к приведенному выше, и представляет собой последовательность достаточно простых действий.

2.3. ЭВМ с канальной организацией.

В основе этого типа организации ЭВМ лежит множественность каналов связи между устройствами и функциональная специализация узлов. Упрощенная схема организации ЭВМ с каналами приведена на рис. 2.5. Сравним схему ЭВМ с каналами и описанную выше схему ЭВМ с шинной организацией.

Все фон-неймановские ЭВМ очень похожи друг на друга и алгоритм функционирования центрального процессора по сути ничем не отличается от

описанного выше.

 

 

 

 

 

 

 

 

 

ЦП

 

 

Контроллер

 

 

Оперативная

 

 

 

 

оперативной

 

 

память

 

 

 

 

памяти

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

КАНАЛ 0

КАНАЛ 1

….

КАНАЛ 7

 

ВУ

 

ВУ

ВУ

 

 

 

ВУ

ВУ

 

ВУ

Рис. 2.5 Упрощенная схема ЭВМ с канальной организацией: ЦП – центральный процессор; ВУ – внешние устройства

Помимо уже знакомого набора устройств (центральный процессор, память, устройства ввода-вывода) в состав ЭВМ с канальной организацией входят устройства, называемые каналами. Канал – это специализированный процессор, осуществляющий всю работу по управлению контроллерами внешних устройств и обмену данными между основной памятью и внешними устройствами. Устройства группируются по характерной скорости и подключаются к соответствующим каналам. «Быстрые» устройства (например, накопители на магнитных дисках) подсоединяются к

24

селекторным каналам. Такое устройство получает селекторный канал в монопольное использование на все время выполнения операции обмена данными. «Медленные» устройства подключаются к мультиплексным каналам. Мультиплексный канал разделяется (мультиплексируется) между несколькими устройствами, при этом возможен одновременный обмен данными с несколькими устройствами. Доступ к оперативной памяти может получить и центральный процессор, и один из каналов. Для управления очередностью доступа имеется контроллер оперативной памяти. Он определяет приоритетную дисциплину доступа при одновременном

обращении нескольких устройств к памяти. Наименьший приоритет имеет центральный процессор. Среди каналов больший приоритет имеют медленные каналы. Таким образом, приоритет обратно пропорционален частоте обращения устройств к памяти.

За счет существенного усложнения организации ЭВМ упрощается архитектура ввода-вывода. Связь между отдельными узлами осуществляется по схеме, напоминающей треугольник (см. рис. 2.5). Операции обмена данными становятся более простыми. Канал, по сути, представляет собой специализированный «интеллектуальный» контроллер прямого доступа к памяти. Для ускорения обмена данными реализованы несколько трактов обмена данными (процессор – основная память и каналы – основная память). О своем состоянии канал может информировать процессор с помощью прерываний. Все контроллеры внешних устройств подключаются к «своим» каналом с помощью стандартного интерфейса. Свобода подключения внешних устройств сохраняется благодаря стандартному протоколу интерфейса, при этом появляется возможность группировать устройства по характеристикам.

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

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

называемой словом адреса канала CAW (Chanel Adress Word).

Для управления каналами процессор имеет всего несколько команд. Операция обмена данными инициируется центральным процессором с помощью команды НАЧАТЬ ВВОД – ВЫВОД –SIO M,N (Start Input-Output).

25

Операциями команды являются М – номер канала и N – номер устройства в канале. Выдав команду запуска обмена, процессор, не обращая внимания на обменный процесс, продолжает выполнять свою программу. Центральный процессор может проверить состояние канала с помощью команды ОПРОСИТЬ ВВОД – ВЫВОД TIO (Test Input - Output ).

Команда SIO M,N передается во все каналы, но воспринимает ее только канал М. Если канал занят, то он устанавливает соответствующее состояние своих регистров, и процессор по команде TIO может выяснить, что запуск канальной программы не состоялся. Если канал свободен, он выполняет

Источник: https://studfile.net/preview/16568446/