Микропрограммный автомат

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 11:14, 14 июня 2016.

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

Основные понятия

Особенности МПА

В отличие от устройств на "жесткой" логике, принцип работы которых однозначно определяется используемыми элементами и способом их соединения, микропрограммные автоматы с помощью одной и той же схемы могут выполнять самые разные функции. То есть они гораздо более гибкие, чем схемы на "жесткой" логике. К тому же проектировать микропрограммные автоматы с точки зрения схемотехники довольно просто. Недостатком любого микропрограммного автомата по сравнению со схемами на "жесткой" логике является меньшее предельное быстродействие и необходимость составления карты прошивки ПЗУ с микропрограммами, часто довольно сложными.

Наиболее распространенная структура микропрограммного автомата включает в себя всего лишь три элемента: ПЗУ, регистр, срабатывающий по фронту, и тактовый генератор.

Принцип микропрограммного управления

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

  1. любая операция, реализуемая устройством, рассматривается как сложное действие, которое разделяется на последовательность элементарных действий, называемых микрооперациями;
  2. для управления порядком следования микроопераций используются логические условия хi , принимающие в зависимости от результатов выполнения микроопераций значения 1 или 0;
  3. процесс выполнения операций в устройстве описывается в форме алгоритма, представленного в терминах микроопераций и логических условий и называемого микропрограммой;
  4. микропрограмма используется как форма представления функции устройства, на основе которой определяются его структура и порядок функционирования.

Концепция управляющего и операционного автоматов

При использовании описанного принципа принято делить ДУ на две части: операционный автомат (ОА) и управляющий автомат (УА).

Обобщенная структурная схема микропрограммного дискретного устройства

ОА предназначен для хранения поступающей информации D, выдачи результатов выполнения операций R, выполнения заданного набора микроопераций, выработки значений логических условий , которые являются оповещающими сигналами для управляющего автомата. УА генерирует последовательность управляющих сигналов в соответствии с заданной микропрограммой и со значениями логических условий X. Каждый управляющий сигнал инициирует выполнение соответствующей микрооперации в ОА. В общем случае ДУ предназначается для выполнения ряда микропрограмм, и на УА подается внешний сигнал q, в соответствии с которым начинается выполнение той или иной микропрограммы. Если ДУ является частью системы обработки информации, то оно может также обмениваться специальными сигналами логических условий и управления с другими блоками системы. В состав ОА входят главным образом типовые функциональные узлы: регистры, счетчики, сумматоры, дешифраторы, шифраторы, арифметико-логические устройства (АЛУ), схемы сравнения, блоки памяти, схемы пересылки данных и т.п. Число элементов памяти (ЭП), содержащихся в ОА, определяется разрядностью обрабатываемых данных , которая может быть достаточно большой. Однако трудоемкость и сложность проектирования ОА, как правило, слабо зависят от в силу широкого использования стандартных узлов. Таким образом, ОА является исполнительной частью устройства; его состав и структура могут быть одинаковыми для реализации многих алгоритмов одного класса. Элементарный неделимый акт обработки информации в операционном автомате, происходящий в течение одного момента автоматного времени (одного такта работы автомата), называется микрооперацией. Примерами микроопераций могут служить «Сдвиг информации», «+1», «Инверсия переменной» и т.д. Если в операционном автомате одновременно реализуется несколько микроопераций, то такое множество микроопераций называется микрокомандой. Не исключен случай, когда множество микроопераций, образующих микрокоманду, пусто. Реализация такой микрокоманды в операционном автомате равносильна отсутствию выполнения каких-либо элементарных операций. В случае синхронных дискретных устройств пустая микрокоманда интерпретируется как пропуск такта, когда никакие сигналы от управляющего автомата на операционный автомат не поступают. Микрооперации возбуждаются выходными сигналами управляющего автомата, а их последовательность во времени определяется функциями перехода управляющего автомата. Совокупность микрокоманд и функций перехода образует микропрограмму. Таким образом, для описания микропрограммы необходимо задать множество микрокоманд и функций перехода, определяющих порядок их выполнения. Для описания микропрограмм удобно использовать язык граф-схем алгоритмов (ГСА).

Граф-схемы алгоритмов

ГСА – это ориентированный связный граф, задающий последовательность выполнения операций данного алгоритма и содержащий ряд операторных и условных вершин, а также одну начальную и одну конечную вершины. Операторной называется вершина, которой сопоставляется одна или несколько микроопераций и отмечается соответствующими управляющими сигналами У, а условной – вершина, которой сопоставляется некоторое логическое условие X. Любая вершина ГСА, кроме вершины «Начало», имеет по одному входу. Вершина «Начало» входов не имеет. Вершина «Начало» и любая операторная вершина имеют по одному выходу. Вершина «Конец» выходов не имеет. Любая условная вершина имеет два выхода, помечаемых символами «Да» и «Нет»: Вместо этих символов могут быть использованы цифры «1» и «0» соответственно. Изображение вершин «Начало», «Конец», операторной вершины и условной вершины ГСА составляют так, чтобы обеспечить выполнение необходимых операций и проверку логических условий в соответствии со словесным описанием алгоритма. На основании перечня микроопераций и реализующих их функциональных узлов составляется структурная схема ОА. На ней широкими стрелками показывают шины, по которым передается информация, а тонкими – сигналы у, управляющие работой отдельных узлов или передачей информации по шинам. ГСА должна удовлетворять следующим условиям:

  • Входы и выходы вершин соединяются друг с другом с помощью направленных всегда от выхода к входу.
  • Каждый выход соединен только с одним входом.
  • Любой вход соединяется, по крайней мере, с одним выходом.
  • Любая вершина ГСА лежит, по крайней мере, на одном пути из вершины «Начало» в вершину «Конец».
  • Один из выходов условной вершины может соединяться с ее входом, что недопустимо для операторной вершины. Такие условные вершины иногда называются возвратными.
  • В каждой условной вершине записывается логическое условие из множества логических условий. Разрешается в различных условных вершинах записывать одинаковые логические условия.
  • В каждой операторной вершине записывается оператор, представляющий собой выходной сигнал или совокупность выходных сигналов управляющего автомата. Разрешается в различных операторных вершинах записывать одинаковые операторы.

Взаимосвязь МПА и КА

Конечный управляющий автомат, реализующий микропрограмму работы дискретного устройства, принято называть микропрограммным автоматом. Как уже отмечалось, микропрограмма отображается с помощью ГСА. Рассмотрим последовательность этапов синтеза управляющего автомата по его ГСА.

  1. Запись словесного алгоритма функционирования операционного автомата (выполняемых операций) с учетом структуры операционного автомата.
  2. Построение содержательной ГСА функционирования операционного автомата.
  3. Построение отмеченной ГСА с учетом типа автомата.
  4. Построение графа переходов автомата или таблицы переходов.
  5. Проведение структурного синтеза автомата по его графу переходов известными методами, например, с помощью канонического метода структурного синтеза.

Построение отмеченной ГСА производится по содержательной ГСА. Для автоматов Мили и Мура процедура разметки имеет различия.

См. также

Источники

  • Самофалов К.Г., Романкевич А.М., и др. Прикладная теория цифровых автоматов. – Киев. «Вища школа» 1987.
  • Соловьев Г.Н. Арифметические устройства ЭВМ. – М. «Энергия». 1978.
  • Савельев А.Я. Прикладная теория цифровых автоматов – М. «Высшая школа». 1987.
  • Каган Б.М. Электронные вычислительные машины и системы. – М. Энергоатомиздат. 1985.
  • Лысиков Б.Г. Арифметические и логические основы цифровых автоматов. – Минск. «Вышэйшая школа». 1980.