Декомпозиция устройств обработки цифровой информации

 

В любом устройстве или системе обработки цифровой информации можно выделить два существенно различающихся блока (рис.63):

- операционный блок (или операционный автомат);

- управляющий блок (или управляющий автомат).

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

U={u1, ...,ui, ..., uI},

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

Выполнение этих элементарных преобразований (операций) инициируется поступающими в операционный автомат соответствующими управляющими сигналами из множества

W={w1, ..., wg, ..., wG}.

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

Управляющий автомат (блок) вырабатывает распределённую во времени последовательность управляющих сигналов wt1, ..., wtj, ..., wtJ (wtjÎW), порождающих в операционном автомате нужную последовательность микроопераций.

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

Z={z1, ..., zf, ..., zF},

и сигналами

U={u1, ...,ui, ..., uI},

зависящими от операндов и промежуточных результатов преобразований.

Операционный автомат задаётся его структурой, то есть составом узлов и связями между ними, и выполняемым операционным блоком набором микроопераций.

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

Таким образом, функционирование устройства или системы обработки цифровой информации может быть описано совокупностью реализуемых в нём микропрограмм.

Все самые сложные операции, выполняемые цифровыми автоматами (в том числе и ЭЦВМ) могут быть реализованы последовательным выполнением некоторых элементарных операций, например, функциональной полнотой обладает набор из четырёх микроопераций:

- пересылка информации из любой ячейки памяти в любую другую ячейку;

- сложение кода с +1 (инкремент) или с -1 (декремент);

- условный переход по совпадению кодов;

- безусловный останов.

По этой причине операционные автоматы (блоки) имеют фактически унифицированную структуру для различных цифровых устройств и систем обработки цифровой информации и фиксированный набор выполняемых элементарных операций (например, арифметико-логические устройства (АЛУ) микропроцессоров 580ВМ80, 80*86, 1804ВС1 и т. д.). Таким образом, операционные автоматы при проектировании цифровых устройств и систем выбираются из серийно выпускаемых промышленностью.

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