|
||
Глава 6
Устройства управления
|
||
|
||
Данная глава освещает различные аспекты структурной организации и функционирования устройства управления вычислительной машины.
. Функции центрального ■ устройства управления
Устройство управления (УУ) вычислительной машины реализует функции управления ходом вычислительного процесса, обеспечивая автоматическое выполнение команд программы. Процесс выполнения программы в ВМ представляет собой последовательность машинных циклов. Детализируем основные целевые функции, реализуемые устройством управления в ходе типового машинного цикла [25]. Для простоты примем, что ВМ обеспечивает одноадресную систему команд. При этом, в частности, полагается, что до начала выполнения двухоперанд-. ной арифметической команды второй операнд уже находится в процессоре.
Первым этапом в машинном цикле является выборка команды из памяти (этап ВК). Целевую функцию этого этапа будем обозначать как ЦФ-ВК.
За выборкой команды следует этап декодирования ее операционной части (кода операции). Для простоты пока будем рассматривать этот этап в качестве составной части этапа ВК.
Вторая целевая функция — формирование адреса следующей команды. На это выделяется специальный такт работы — этап ФАСК, которому соответствует целевая функция ЦФ-ФАСК.
Далее следует этап формирования исполнительного адреса операнда или адреса перехода (этап ФИА), на котором УУ реализует функцию ЦФ-ФИА. Функция имеет столько модификаций, сколько способов адресации (СА) предусмотрено в системе команд ВМ.
На четвертом этапе реализуется целевая функция выборки операнда (ЦФ-ВО) из'памяти по исполнительному адресу, сформированному на предыдущем этапе.
Наконец, на последнем этапе машинного цикла действия задаются целевой функцией исполнения операции — ЦФ-ИО. Очевидно, что количество модификаций ЦФ-ИО равно количеству операций, имеющихся в системе команд ВМ.
|
||
|
||
|
||
2 9 4 Глава 6. Устройства управления
|
||
|
||
Порядок следования целевых функций полностью определяет динамику работы устройства управления и всей ВМв целом. Этот порядок удобно задавать и отображать в виде граф-схемы этапов исполнения команды (ГСЭ). Как и граф-схема микропрограммы, ГСЭ содержит начальную, конечную, операторные и условные вершины. В начальной и конечной вершинах проставляется условное обозначение конкретной команды, а в условной вершине записывается логическое условие, влияющее на порядок следования этапов. В операторные вершины вписываются операторы этапов.
По форме записи оператор этапа — это оператор присваивания, в котором:
• слева от знака присваивания указывается наименование результата действий, выполненных на этапе;
• справа от знака присваивания записывается идентификатор целевой функции,
определяющей текущие действия, а за ним (в скобках) приводится список исходных данных этапа.
Исходной информацией для первого этапа служит хранящийся в счетчике команд адрес AKi текущей команды Ki. Процесс выборки команды отображается оператором первого этапа: К := BK(AKi).
Адрес AKj обеспечивает также второй этап, результатом которого является адрес следующей командыкШ1, поэтому оператор второго этапа имеет вид: АК1+1 := ФАСЩАц).
В качестве исходных данных для третьего этапа машинного цикла выступают содержащиеся в коде текущей команды способ адресации СА, (он определяет конкретную модификацию ЦФ-ФИАО) и код адресной части А,. Результатом становится исполнительный адрес операнда Аисп := ФИА(СА1, А,).
Полученный адрес используется на четвертом этапе для выборки операнда 0,:-В0(Аис„).
Результат исполнения операции PCX , получаемый на пятом этапе машинного цикла, зависит от кода операции г'-й команды ΚΟη (определяет модификацию ЦФ-ИО), кода первого операнда 0 и кода второго операнда — результата предыдущей (г— 1 )-й операции Р0Н: PCX :=ΠΟ(ΚΟη, 0i; ΡΟ^).
В соответствии со структурой граф-схемы этапов все команды ВМ можно разделить на три типа:
• команды типа «Сложение» (Сл);
• команды типа «Запись» (Зп);
• команды типа «Условный переход» (УП).
Типовые граф-схемы этапов представлены на рис. 6.1.
Видно, что количество этапов в командах типа «Сл» (см. рис. 6.1, а) колеблется от трех (для непосредственной адресации НА) до пяти. При непосредственной адресации второй операнд записан в адресной части команды, поэтому нет необходимости в реализации устройством управления целевых функций ЦФ-ФИА, ЦФ-ВО. Количество этапов для команд типа «Зп» постоянно и равно четырем (см. рис. 6.1, б) — здесь отсутствует необходимость в ЦФ-ВО. Машинный цикл команд типа «УП» состоит из трех этапов (см. рис. 6.1, в), поскольку здесь, помимо выборки операнда, можно исключить и этап ФАСК — действия, обычно выполняемые НЭэтом этапе, фактически реализуются на этапе ПО.
|
||
|
||
|
||||
Модель устройства управления 295
|
||||
|
||||
![]() |
![]() |
![]() |
||
|
||||
Рис. 6.1 .Типовые граф-схемы этапов исполнения команды: а — «Сложение»; б — «Запись»;
в— «Условный переход»
Оператор этапа исполнения операции для команд "Зп" имеет смысл записи результата предыдущей операции Р0М в ячейку с адресом Аисп:
0П[Аисл]:=ИО(КОП(,РОм).
Местоположение Р0М определяется кодом операции ΚΟη. Оператор этапа ИО для команд «УП» обеспечивает формирование адреса следующей (i + 1)-й команды в зависимости от Аисп и значения проверяемого условия перехода Уел
Местоположение проверяемого условия также определяется кодом операции КЩ
|
||||
|
||||
I
|
||||
|
||||
Модель устройства управления
|
||||
|
||||
Для выполнения своих функций УУ должно иметь входы, позволяющие определить состояние управляемой системы, и выходы, через которые реализуется управление поведением системы. Модель УУ показана на рис. 6.2 [200]. Входной информацией для устройства управления служат:
• тактовые импульсы — с каждым тактовым импульсом УУ инициирует выполне-
ние одной или нескольких микроопераций;
• код операции — код операции текущей команды поступает из регистра команды и используется, чтобы определить, какие микрооперации должны выполняться в течение машинного цикла;
|
||||
|
||||