Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория автоматов для студ / Теория автоматов. МУ по курс.пр..doc
Скачиваний:
57
Добавлен:
27.04.2015
Размер:
294.91 Кб
Скачать

4.4. Построение микропрограммы

В соответствии с алгоритмом выполнения заданной операции разрабатывается микропрограмма, которая представляется в виде содержательной граф-схемы. ГСА строится с использованием вершины четырёх типов (рис. 4.1)

а) б)

Рис. 4.1. Вершины содержательной граф-схемы.

а) начальная вершина обозначает начало алгоритма;

б) конечная вершина обозначает конец микропрограммы;

в) операторная вершина обозначает одну микрокоманду, т.е. совокупность микроопераций, выполняемых параллельно в одном такте машинного времени;

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

Содержательная граф-схема алгоритма должна удовлетворять всем условиям, предъявляемых ГСА.

При разработке содержательной ГСА приняты следующие условные обозначения микроопераций:

  1. Инвертирование содержимого регистра А: А: = 7А;

  2. Сложение на сумматоре с содержимым регистра А в кодах: СМ: = [CМ]+[А];

  3. Сдвиг содержимого регистра А вправо на один разряд: А: = R I (A);

  4. Сдвиг влево на один разряд: А: = L I (A);

  5. Загрузка в сумматор в кодах: СМ: = [A];

  6. Загрузка в регистр в кодах: A: = [В];

  7. Уменьшение содержимого счётчика на I: СЧ: = СЧ – I;

  8. Формирование сигнала переполнения: ПП: = I.

Логические выражения, стоящие в условных вершинах, должны выбираться таким образом, чтобы обеспечивались минимальные затраты на реализацию комбинационных схем, осуществляющих в ОА проверку этих условий. Например, проверка на равенство 1 одного разряда, проверка на равенство нулю информации, записанной в устройстве или сравнение двух рядов и т.п.

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

Управление переходом из начального состояния в следующее обычно осуществляется по внешнему логическому сигналу «Пуск».

В Приложении 4 на рис. 4.1 приведена содержательная ГСА операций сдвигов. В операции участвуют два операнда: над первым выполняется сдвиг на один разряд вправо или влево, второй определяет число выполняемых сдвигов. Первый операнд загружается в регистр А, второй – в счётчик СЧ. Переменная С определяет направление сдвига: С=0 – сдвиг влево С=1 сдвиг вправо.

4.5. Построение гса и лса.

Граф-схема алгоритма строится по содержательной ГСА следующим образом:

  1. В каждой условной вершине записывается один из множества осведомительных сигналов Х={x1, x2, …, xn}, т.е. из множества логических условий. В различных условных вершинах можно записывать одинаковые элементы хi . Сигнал «Пуск» в отличие от сигналов х, поступающих с ОА на УА, обозначается буквой В.

  2. В каждой операторной вершине записываются операторы из множества Y={y1, y2, …, yn} – множества микроопераций. Моно записывать в различных операторных вершинах одинаковые элементы множества Y.

На рис. 4.2 Приложения 4 показана ГСА операций сдвига. Логическая схема алгоритма (ЛСА) записывается в виде конечной строки, состоящей из символов операндов, логических условий, верхних и нижних стрелок с метками (i=1,2,…). При записи ЛСА оказывается удобным использовать логическое условие, тождественно равное нулю, обозначаемое . Для ГСА на рис. 4.3 ЛСА имеет вид: 1 1 2 4 3 4 5 2 5 2 3

yнB x1x2y2y3y1y2yk