Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 3000293.doc
Скачиваний:
11
Добавлен:
30.04.2022
Размер:
1.46 Mб
Скачать

5.2Средства описания функций операционных устройств

Функция ОУ задается (определяется) совокупностью микропрограмм МП1, …, МПG, описывающих алгоритмы операций f1, …, fg. Для описания МП в вычислительной технике используются специальные средства описания - язык функционального микропрограммирования. Функциональная микропрограмма (ФМП) - это микропрограмма, описывающая алгоритм операции без привязки его к конкретной структуре ОУ. Отсюда название языка.

Для описания ФМП в языке используются различные средства, обеспечивающие описание слов, МО, ЛУ, а также средства, описывающие порядок их выполнения во времени.

Описание слов и массивов. Слово описывается своим именем и длиной: C(n1:n2). Здесь С - имя слова, n1, n2 - номера старшего и младшего разрядов слова соответственно. Примеры (смотри МП умножения): А(0:15) и др.

Часть слова называется полем и описывается аналогично словам: А(0:7), А(0:15), В(15), А(0) и т.п.

Слово обычно описывается один раз. После этого можно использовать его сокращенное описание, т.е. только имя А, В, С …

Массивы слов (например, запоминающее устройство) описывается в виде: М[m1:m2](n1:n2). Здесь М - имя массива, m1,m2 - номера первого и последнего элемента (ячейки) массива соответственно, n1, n2 - определены выше. Пример описания локальной памяти как массива регистров: ЛП[0:15](0:31) - 16 тридцатидвухразрядных регистров.

Описание МО. Для описания МО используется оператор присваивания «:=» (или «»). Слева от оператора указывается слово, поле, составное слово или элемент массива. Справа - двоичное выражение, которое описывает правило получения результата МО. Запись двоичного выражения осуществляется при помощи символов, обозначающих различные операции над операндами (словами), представленными в двоичной форме. Например, + - сложение кодов,  - логическая операция или и т.п. Примеры - в МП умножения.

Описание ЛУ. Для описания ЛУ используется различного рода отношения: ”<” - меньше, ”>” - больше, ”=0” - равно нулю, “0” - не равно нулю и т.п.

Примеры: А<0, В0, С=0 и т.п. (смотри МП умножения).

Порядок выполнения МО. Порядок выполнения МО и проверки ЛУ задается в графической форме - в виде так называемой граф-схемы алгоритма (ГСА) (смотри пример МП умножения). ГСА строится с использованием вершин четырех типов: начальной, конечной, операторной и условной и дуг, связывающих эти вершины (рисунок 5.3).

Начальная вершина имеет одну выходящую дугу. Конечная вершина имеет одну входящую дугу. Операторная вершина имеет одну входящую и одну выходящую дугу. В ней записывается один или несколько операторов присваивания, описывающих МО. Условная вершина имеет одну входящую и две исходящих, отмеченных символами «да» (1) и «нет» (0). Выход по дуге «да» осуществляется в случае, если ЛУ принимает истинное значение (1), и по дуге «нет» - если ложное значение (0).

Рисунок 5.3

В качестве примера ГСА смотри МП умножения, рисунок 5.2. Совокупность ГСА1, …, ГСАG и задает функцию ОУ.

5.3Структурная организация операционных устройств

ОУ состоит из двух 2 частей - операционного автомата (ОА) и управляющего автомата (УА) (рисунок 5.4).

Рисунок 5.4

Назначение ОА - выполнение микроопераций из списка Y={y1,…,yM} под воздействием управляющих сигналов ym Y и формирование значений логических условий (осведомительных сигналов) X={x1, …, xL}.

С каждым сигналом ym Y в ОА отождествляется определенная МО. Например, МО сложения в МП умножения у3: С:=С+А. Поступление сигнала у3 в ОА приводит к выполнению этой МО и записи её результата в С.

С каждым логическим условиям xlX в ОА отождествляется значение осведомительного сигнала, который принимает значение истина (единица) или ложь (ноль). Например, в МП умножения логическое условие (ЛУ) x2: СЦ=0 - это булева функция, которая принимает значение “истина” (х2=1), если СЦ=0, и ложь (х2=0), если СЦ0.

Управляющий автомат (УА) предназначен для управления работой ОА. Он задает порядок выполнения МО в ОА путем выработки управляющих сигналов ymY в той последовательности, которая задается микропрограммой операции fgF и значениями осведомительных сигналов X={x1,…xL}, поступающих из ОА. Например, если в ОУ (на вход «g» УА) подан код операции умножения, то управляющие сигналы вырабатываются в соответствии с алгоритмом (микропрограммой) умножения.

Таким образом, ОА является исполнительной (пассивной) частью ОУ, а УА - управляющей (активной) частью ОУ.

Идея декомпозиции ОУ на ОА и УА принадлежит академику В. М. Глушкову. Конструктивность идеи заключается в следующем. Разделение ОУ (АЛУ прежде всего) на две части - пассивную исполнительную (ОА) и активную управляющую (УА) - это не волевое разделение (хочу и буду), а объективное. В.М. Глушков увидел, что в АЛУ часть узлов (сумматор и др. КС) являются исполнителями, а часть узлов (распределитель сигналов, например) являются «командирами». После этого разделения выяснилось, что у них разные принципы построения, организации, причем принципы построения ОА сложнее, чем УА. Кроме того, поскольку принципы организации разные, то и их проектирование тоже раздельное.

Таким образом, идея Глушкова позволила ввести очередной уровень иерархии для целой группы устройств (АЛУ, КПУ) и обобщить принципы их построения в виде абстрактного понятия - ОУ.

Зная внутреннюю структуру ОУ, можно переходить на следующий уровень иерархии - к рассмотрению внутренней структуры ОА и УА. С этой целью сначала необходимо рассмотреть функции ОА и УА.