- •I. Структура и функции процессоров
- •I.I. Процессоры, их назначение и особенности
- •1.2. Операционные устройства их структура и функции
- •I.3. Процессор как операционное устройство
- •1.4. Минимальный набор операций алу
- •1.5. Выбор системы команд специализированной эвм
- •1.6. Форматы команд и операндов
- •2. Проектирование операционных автоматов процессора
- •2.1. Содержательные графы микропрограмм операций алу.
- •2.2. Микропрограммы уцу
- •2.3. Операционные элементы
- •2.4. Синтез операционного автомата с закрепленными микрооперациями.
- •2.6. Синтез операционных автоматов уцу
- •2.7. Закодированные графы микропрограмм
- •2.8. Оценка времени реализации алгоритма
- •3.1. Принцип микропрограммного управления
- •3.3. Управляющие автоматы с принудительной и естественной адресацией мк
- •3.4. Организация муу с ортогональной системой адресации
- •3.5. Организация стека адресов возврата в муу
- •1. Структура и функции процессоров 3
- •1.1. Процессоры, их назначение и особенности . . . . 3
1.2. Операционные устройства их структура и функции
Современные преобразователи цифровой информации строятся в виде композиции операционных устройств (ОУ), назначением каждого из которых является выполнение фиксированного конечного набора операций F ={f1 , f2,……,fQ}, преобразующих по правилу
,
q=1,2,…,Q
входные слова dк1 , dk2……,dкn из множества D={d1, d2,…,dH} в выходные слова η из множества R={r1, r2,…..,r6}; при этом cчитаетcя, что входные и выходные слова заданы в двоичном алфавите.
Под функцией устройства понимают правило получения результатов, определяемых назначением устройства. Следовательно, функция всякого операционного устройства состоит в выполнении конечного набора операций F .
Структура операционного устройства есть фиксированная совокупность элементов и связей между ними. Под элементом понимается некоторая часть устройства, выполняющая определенную функцию. Структура операционного устройства изображается в форме схемы. Схема - совокупность условных графических обозначений элементов и связей между ними, соответствующая структуре устройства.
Задача синтеза операционного устройства состоит в том, чтобы разработать схему устройства, обеспечивающую реализацию заданного набора операций с заданным быстродействием и являющуюся минимальной в смысле количества используемого оборудования. Множества D, F, R и требования к быстродействию должны быть заданы перед проектированием. Поскольку элементы операционного устройства могут быть выбраны различным образом и выполнять функции различной сложности, можно строить различные схемы, раскрывающие структуру операционного устройства с различной степенью детализации.
П
роектирование
операционных устройств основано на
представлении каждой операции из F
в виде микропрограммы,
т.е. алгоритма, выраженного через
некоторые элементарные операции,
называемые микрооперациями (МО), для
изменения порядка следования которых
используются логические условия,
принимающие значение "истина" или
"ложь" (I или 0) в зависимости от
значений слов, преобразуемых
микрооперациями. Операционное устройство
при этом естественным образом
представляется в виде композиции
автоматов (рис .I
.I).
Операционный автомат (OA)
служит для хранения
слов информации, выполнения набора
микроопераций и вычисления логических
условий. Микрооперации, реализуемые
OA,
инициируются множеством
управляющих сигналов Y={y1,
y2,…..,ym},
c
каждым из которых отождествляется
определенная микрооперация. Каждое
логическое условие отождествляется с
одним из осведомительных сигналов X
={х1,
х2,…..,хi
}. Хранение информации в OA
обеспечивается наличием
в нем множества внутренних слов S
={s1,
s2,…..,sn}.
Считается, что входные и выходные слова
совпадают с определенными внутренними
словами, т.е. D
S
и R
S.
Микрооперации
реализуют присваивание
слову Sa
S
значение
,
определяемого как результат применения
вычислимой функции
к значениям слов
,т.е.
S2
:=
Значения осведомительных
сигналов
вычисляются
в OA
с помощи, соотнесения
,
где
- булева функция, a
Управляющий (микропрограммный) автомат (УА) в соответствии с кодом операции g генерирует последовательность управляющих сигналов, предписанную микропрограммой и соответствующую значениям логических условий. По отношению к УА сигналы ,g1,g2,…..gh, посредством которых кодируется наименование операции, и осведомительные сигналы х2, x2,…..xL , формируемые в OA, играют одинаковую роль: они влияют на порядок выработки управляющих сигналов Y. Поэтому сигналы g1,g2,…..gh , х2, x2,…..xL относятся к одному классу осведомительных сигналов. Выполнение микроопераций приводит к изменению состояния памяти - значений слов S2, S2,…..SL. Состояния памяти S отображаются множеством осведомительных сигналов X , которые анализируются управляющим автоматом для определения следующего набора микроопераций.
Таким образом, задача синтеза операционного устройства сводится к задаче разработки схем операционного и управляющего автоматов. Оба автомата функционируют в одном и том же дискретном времени t =0, I, 2,…. Промежуток между двумя моментами t и (t + I) дискретного времени называется тактом. В течение такта формируется набор управляющих сигналов, выполняются соответствующие микрооперации и вычисляются значения логических условий. Длительность такта Т зависит от сложности микроопераций и логических условий, а также быстродействия элементов, реализующих микрооперации и условия.
Для одной и той же операции fq можно построить сколько угодно алгоритмов с использованием различных наборов функций , определяющих микрооперации. Каждая из этих функций реализуется аппаратно и ее значения вычисляются за один такт. Прогресс в технологии интегральных схем дает возможность реализовать аппаратно и вычислять за один такт значения все более и более сложных функций.
Алгоритм выполнения операций часто представляется в виде содержательных графов микропрограмм. Каждая операторная вершина такого графа содержит совокупность функционально совместимых (допускающих одновременное выполнение) микроопераций, а условная вершина содержит одно из условий, используемых для разветвления вычислительного процесса. Поскольку каждая микрооперация и каждое условие, используемые в алгоритме заполнения операции, принадлежат какой-либо вершине содержательного графа микропрограммы, из этого графа всегда можно извлечь совокупность всех используемых в алгоритме слов и функций, определяющих микрооперации и логические условия, а затем найти структуру и закон функционирования OA. Если при этом каждая микрооперация и каждое логическое условие связаны с вполне определенным внутренним словом, получается OA с закрепленными микрооперациями; если же аргументами каждой функции, определяющей микрооперацию или логическое условие, могут быть значения любых внутренних слов и результат вычисления этой функции может быть присвоен любому внутреннему слову, получается OA с общими микрооперациями. На практике оказываются удобными и различные варианты OA с частичным закреплением микроопераций.
По отношению к управляющему автомату микрооперации и логические условия следует рассматривать как элементарные символы, которые автомат интерпретирует в виде управляющих сигналов Y={y1,y2,…..ym} и воспринимает как осведомительные сигналы X={x1,x2,…..xL}. Поэтому закон функционирования УА представляется в виде графа микропрограммы, в котором символы y1,y2,…..ym заменяют соответствующие им микрооперации, а символы x1,x2,…..xL соответствующие логические условия. Такой граф микропрограммы называют закодированным графом. По закодированному графу всегда можно построить схему УА для соответствующей операции. Если объединить содержательные графы микропрограмм всех операций в единый содержательный граф объединенной микропрограммы, то по соответствующему закодированному графу можно построить схему УА, единого для всех операций. Осведомительными сигналами для этого автомата будут как сигналы x1,x2,…..xL, так и сигналы g1,g2,…..gh, значения которых кодируют наименования операций.
Таким образом, основой синтеза операционных устройств является содержательные графы микропрограмм. Правила их составления и язык микропрограммирования изложены в работе [I].
