Uploaded by Алексей Кищин

Модуль 6 Принцип микропрограммного управления и обобщенная структура операционных устройств.

advertisement
Модуль 6: Принцип микропрограммного
управления и обобщенная структура
операционных устройств.
1. Структурное представление устройств обработки информации
(операционных устройств) в виде композиции двух автоматов –
операционного и управляющего.
2. Основные понятия микропрограммного управления:
3. Граф микропрограммы (ГМП). Пример.
4. Выделение из ГМП функций операционного и управляющего
автоматов . Граф-схема алгоритма (ГСА) – как начальный язык
описания поведения управляющего автомата.
5. Структурный базис операционных автоматов (ОА).
6. Организация ОА магистрального типа с арифметикологическим устройством (АЛУ) комбинационного типа.
7. Контрольные вопросы.
Теория автоматов
1/33
Структурное представление устройств обработки
информации в виде композиции двух автоматов –
операционного и управляющего
При описании работы широкого класса устройств обработки информации широко
используется их представление в виде композиции операционного (ОА) и
управляющего автомата(УА). Такой подход впервые использовал В. М.
Глушков (1962 г).
КОП
Пуск
Конец
Clk
Yt , t =1,…,T
УА
X={xk
}
ОА
ОА принимает из внешней
Данныесреды, хранит и преобразует (в
R соответствии с кодом заданной
операцией (КОП)) входные
из множества D и выдаёт
D слова
во внешнюю среду результат
(слова из множества R) .
Структурно ОА состоит обычно из многоцелевых управляемых
комбинационных схем, выполняющих какой-либо набор арифметических и
логических операторов, и регистровой памяти для хранения промежуточных
результатов в процессе обработки информации. Задачей УА является выработка
распределённой во времени последовательности управляющих сигналов, под
воздействием которых в ОА и выполняется некоторая операция.
Теория автоматов
2/33
Основные понятия микропрограммного
управления
Каждое элементарное действие по преобразованию или передачи информации,
выполняемое за один такт автоматного времени, назовём микрооперацией.
Пусть Y={y1 ,…, yN} – множество микроопераций, реализуемых в ОА,
которые возбуждаются сигналами y1 ,…, yN из УА (для обозначения этих
сигналов и микроопераций удобно использовать одни и те же символы).
Совокупность микроопераций, выполняемых одновременно за один такт
автоматного времени, образует микрокоманду (МК) Yt , t =1, … , T.
В частном случае, МК может состоять из одной микрооперации. В общем
случае справедливо: Yt  Y , т.е. множество Y включает подмножество Yt .
Для задания порядка следования МК Yt используются специальные
переменные, называемые логическими условиями xk из множества
X={x1 ,…, xK}, вырабатываемые операционным автоматом ОА. Проверка
значения логического условия, которому удовлетворяет или не
удовлетворяет результат выполнения МК в текущем такте работы УА,
позволяет определить очередную МК для следующего такта.
Теория автоматов
3/33
Основные понятия микропрограммного
управления (продолжение)
Если быть точным, то последовательность выполнения МК определяется функциями
перехода – булевыми функциями αij (i,j=1,…,T) - аргументами которых являются
логические условия из множества X={x1 ,…, xK}.
Свяжем с каждой МК Yi множество функций перехода (αi1 , …, αiT) таких, что если
αit=1 после выполнения МК Yi , то следующей будет выполняться
МК Yt. Множество функций перехода для одной и той же микрокоманды Yi обладает:
а) свойством ортогональности
(αij & αit=0 при j≠t ) и
б) полноты
 T




1


ij
j

1


Ортогональность говорит о том, что после данной МК (при определённых значениях
логических условий) может выполниться только одна МК, а полнота – что она выполнится
обязательно.
Описание операции в терминах микрокоманд и логических условий будем называть
микропрограммой этой операции, а сам принцип разбиения выполняемой операции на
микрокоманды (микрооперации) – носит название принципа микропрограммного
управления.
В свою очередь УА, осуществляющий управление ОА для реализации микропрограммы
операции называется микропрограммным автоматом.
Теория автоматов
4/33
Граф микропрограммы
Представление микропрограммы выполнения какой-либо операции в графическом виде
получило название графа микропрограммы (граф МП). Граф МП представляет собой
ориентированный граф, содержащий одну начальную и одну конечную вершины, а
также произвольное множество промежуточных вершин , составленных из операторных
и условных.
Конечная, операторная и условная вершины могут иметь несколько входов. У
начальной и операторных вершин по одному выходу, у условной – два выхода,
помеченных символами 1 и 0.
Начало
Конец
Yt
0
xk
1
В каждой операторной вершине записывается оператор или МК Yt - подмножество
множества микроопераций Y={y1, …, yN}.
Условная вершина соответствует проверяемому логическому условию, в ней помещается
один из элементов множества X={x1, …, xk}. Один из выходов условной вершины может
соединяться с её входом, такие вершины будем называть ждущими или возвратными.
При составлении графа МП необходимо руководствоваться следующими правилами:
1) входы и выходы различных вершин соединяются дугами, с указанием направления
передачи информации;
2) каждый выход соединяется только с одним входом;
3) для любой вершины графа МП существует по крайней мере один путь из этой вершины к
конечной.
Теория автоматов
5/33
Язык функционального микропрограммирования
Язык функционального микропрограммирования является средством
описания цифровых устройств (ЦУ) обработки информации на уровне микропрограмм.
При этом средства языка должны обеспечивать описание алгоритма выполнения
операций с помощью микропрограммы с такой степенью детализации, которая бы
обеспечивала проведение синтеза структуры соответствующего цифрового устройства.
В настоящее время разработаны разнообразные системы автоматизированного
проектирования (САПР) цифровых устройств с использования графических и
языковых средств описания проектов. Языки описания аппаратуры (HDL, Hardware
Description Languages) подразделяются на языки низкого и высокого уровней.
Языки низкого уровня (ABEL, AlteraHDL) ориентированы на определённые
аппаратные средства , языки же высокого уровня (Verilog и VHDL) более
универсальны и содержат разнообразные языковые конструкции для задания
алгоритмов работы цифровых систем. САПР с использованием HDL-языков, в
наибольшей степени, ориентированы на использование в качестве аппаратной среды
программируемых логических матриц (ПЛМ) и микросхем с программируемой логикой.
К наиболее распространённым САПР применительно к разработке ЦУ (в
конструкции «УА-ОА») относится программа StateCAD пакета Workview Office фирмы
Viewlogic (допускает возможность выбора произвольного HDL-языка) и пакет
MAX+plusII фирмы Altera (язык AlteraHDL).
Изложенное выше, выходит за рамки учебного курса теории автоматов.
Теория автоматов
6/33
Система микрокоманд
В дальнейшем, при описании алгоритмов реализации вычислительных процедур
реализуемых в ОА под управлением УА, введём в рассмотрение систему микрокоманд
из четырёх групп: микрокоманды пересылки, двоичной арифметики, логической
обработки, сдвига и вращения. На основе данных микрокоманд и будет проводиться
разработка графа МП. Для обозначения каждой микрокоманды введём мнемокод
[mnemonic], отражающий содержательный смысл микрокоманды. Мнемокод представляется
в виде краткой последовательности букв или символов (от 3 до 5), представляющих собой
сокращение соответствующих англоязычных слов или их аббревиатуру.
Флаги условий CF ZF SF OF
Логические
x1 x2 x3 x4
условия {xk}
В качестве логических условий X={xk}
(k =1, ...,K) будем использовать флаги
условий в традиционном их представлении.
Набор используемых в ОА микрокоманд МК и анализируемых логических условий должен
быть полным, т.е. обеспечивать возможность составления микропрограмм для всего
множества вычислительных процедур, предназначенных для реализации на данном ОА.
Кроме того он должен быть эффективным с целью минимизации оного из показателей времени выполнения микропрограммы или необходимых на её реализацию аппаратных
затрат. Отметим, что поиск набора МК, удовлетворяющих таким требованиям
представляет сложную задачу. На практике он подбирается опытным путём.
Представленный здесь набор команд ориентирован на реализацию простых
вычислительных процедур, реализуемых в лабораторном практикуме по курсу.
Теория автоматов
7/33
Мнемокод МК
Содержание
IN Ri, data8
MOV Ri, Rj
MOV Ri, const8
ADD Ri, Rj
ADC Ri, Rj
SUB Ri, Rj
SBB Ri, Rj
CMP Ri, Rj
CMP Ri, const8
DEC Ri
INC Ri
AND Ri, Rj
OR Ri, Rj
XOR Ri, Rj
NEG Ri
ROL Ri
(Ri)  data8; i=1,.. ,8
(Ri)  (Rj); i, j=1,.. ,8
(Ri)  const8 ; i=1, ...,8
(Ri)  (Ri) + (Rj); i, j=1,.. ,8
(Ri)  (Ri) + (Rj) +CF; i, j=1,.. ,8
(Ri)  (Ri) - (Rj); i, j=1,.. ,8
(Ri) (Ri) - (Rj) - CF; i, j=1,.. ,8
(Ri)- (Rj); i, j=1,.. ,8
(Ri)-const8; i=1,.. ,8
(Ri)  (Ri) - 1; i=1,.. ,8
(Ri)  (Ri)+1; i=1,…, 8
(Ri ) (Ri) (Rj); i, j=1,.. ,8
(Ri ) (Ri)  (Rj); i, j=1,…,8
(Ri ) (Ri)  (Rj); i, j=1,.. ,8
(Ri ) (0 - Ri); i=1, …, 8
ROR Ri
CF
Ri
CF
Ri
SAR Ri
SAL Ri
Ri
CF
Ri
CF
0
Влияние на флаги
Не влияет
Не влияет
Влияет
на все флаги
Влияет на все
флаги, кроме CF
Влияет на все
флаги,
OF=CF=0
Влияет на все флаги
Только на
флаг CF
Влияет на все
флаги. OF=1, если при
сдвиге произошло
изменение старшего бита
8/33
Замечания к использованию предложенного
набора МК
1. Форматы микрокоманд представлены как однооперандными, так двухоперандными,
использующимися для выполнения бинарных операций. При этом сам операнд
представлен содержимым одного из восьми регистров (Ri, .., Rj) байтового типа. При
выполнении бинарных операций регистр, следующий в записи за мнемокодом МК,
является приёмником результата (или как считают в программировании - местом
назначения destination).
2. Все операнды, используемые в МК поделим на три группы: внешние (они имеют
определённые символьные обозначения в вычислительных процедурах – A, B, C, .. ),
промежуточные, получаемые в процессе вычислений в ОА, а также некоторые
константы, необходимые для алгоритмической реализации процедуры и вводящиеся
непосредственно в качестве операнда источника (например, CMP Ri, const8). Так,
например, при реализации процедуры операнды (А, В)
4 B  A, если B  0 являются внешними и могут вводится МК IN Ri, data8 в
какой-либо регистр ОА:
S 
IN Ri, A
;A→ Ri
 B, если 0  B  10
Операнд S – результат операции, размещается в регистр R1 и остаётся в ОА.
Численная константа «10», может использоваться в командах, как передачи
(MOV Ri, const8), так и сравнения (CMP Ri, const8), например:
CMP Ri,10
;10 - десятичная запись константы,
CMP Ri,00001010
;00001010b - двоичная запись константы.
Теория автоматов
9/33
Пример на составление графа МП операции сложения
S=A+B чисел A и B, представленных в прямом коде
Результат сложения S так же должен быть представлен в прямом коде.
Алгоритм сложения в описательной форме.
1. Ввод операндов А и В в регистры ОА с последующим формированием их модулей
|A| и | B | (в других регистрах) в качестве промежуточных величин.
2. Выполнение сравнения знаковых разрядов:
a) если Sign A =Sign B, то
S=Sign A.{| A | + | B |};
б) если Sign A≠ Sign B и
 | A | ≥ | B |, то
S=Sign A.{| A | - | B |};
 | A | < | B |, то
S= not Sign A.{| B | - | A |}.
Исходя из выбранного алгоритма произведём назначение используемых регистров.
A
R1
S  A B
B
R2
результат
сравнения
R3
A
A B
A B
R4
R5
R6
B
Для определения модулей операндов и выделения знаковых разрядов введём маски:
maska_1=0111 1111b,
maska_2=1000 0000b.
Используемые флаги условий: SF, CF, OF.
Теория автоматов
10/33
Граф МП операции сложения чисел S=A+B в прямом коде
Y0
Начало
Y1
In R1, A
Y2
In R2, B
Y3 Mov R5, maska_1
Y4 Mov R6, maska_2
Y5
Mov R3, R1
Y6
And R3, R5
Y7
Mov R4, R2
Y8
And R4, R5
Y9
Xor R2, R1
SignA  SignB 1
|A|-|B| →R3
A B
(0 - R3)
«not
Sign
→R3
A»
Sub R3, R4
x3
0
CF
SF
0
A →R1
B →R2
maska_1 → R5; maska_1=0111
maska_2 → R6;
maska_2=1000
1111b
0000b
|A|→R3
|B|→R4
(A xor B) → R2
SignA  SignB
x1
Y13
A B
Add R3, R4
Y10
x2
1
Neg R3
Neg R1
Y14
Y15
OF
|A|+|B| →R3
1
0
Y11
Y12
And R1, R6
Or R1, R3
Yk
Теория автоматов
R1=Sign
S=(A+B)
→R1
A.0000000
Конец
11/33
Функции операционного и управляющего автоматов
Функция ОА представляется
таблицами, содержащими список
микрокоманд и список логических
условий.
Идентификатор МК Микрокоманда
Y1
In R1, A
Y2
In R2, B
Y3
Mov R5, maska_1
Y4
Mov R6, maska_2
Y5
Mov R3, R1
Y6
And R3, R5
Y7
Mov R4, R2
---------Y11
And R1, R6
Y12
Or R1, R3
Y13
Sub R3, R4
Y14
Neg R3
Y15
Neg R1
Логическое условие
x1
x2
x3
Функция УА
представляется графсхемой алгоритма
(ГСА), получаемой
путём замены
микрокоманд в
операторных вершинах
графа МП
соответствующими
идентификаторами Yt и
xk . Данные
идентификаторы будем
также отождествлять с
управляющими и
осведомительными
сигналами.
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
YY9
9
1
x1
Y13
x3
0
Y10
0
1
0
Y14
Y15
Флаг условия
SF
OF
CF
Y11
Y12
Конец
Теория автоматов
1
x2
Yk
12/33
Структурный базис операционных автоматов (ОА)
Набор элементов, на основе которых могут строиться операционные
структуры с заданными свойствами, называется структурным
базисом.
Такой набор для ОА должен включать:
управляемые шины и мультиплексоры
регистры
комбинационные схемы.
Теория автоматов
13/33
Шины, управляемые шины
Структурный уровень
a)
Шина (а) − совокупность цепей,
используемых для передачи слова.
1
2
n
б ) An : 1
Управляемая шина (б) реализует
микрооперации вида B := A
Теория автоматов
An : 1
An : 1
yi
yi
Bn : 1
Bn : 1
14/33
Функциональный уровень управляемой шины
в)
0, yi  0
Bn : 1 : 
 An : 1, если yi  1
Bn : 1
Теория автоматов
yi
a1
&
b1
a2
&
b2
an
&
..
An : 1
bn
15/33
Шинные мультиплексоры
На структурном уровне, мультиплексор (MUX) представляется
совокупностью управляемых шин объединённых операцией ИЛИ
Bn : 1
y1
C n : 1
y2
Dn : 1
y3
An : 1
 Bn : 1, если y1 y2 y3  1

An : 1  C n : 1, если y1 y2 y3  1

 Dn : 1, если y1 y2 y3  1
Теория автоматов
16/33
Функциональный уровень MUX
б)
D
C
B
y1 y2 y3
b1
&
c1
 Bn : 1, если y1 y2 y3  1

An : 1  C n : 1, если y1 y2 y3  1

 Dn : 1, если y1 y2 y3  1
a1
&
d1
1
&
An : 1
an
bn
cn
dn
&
&
1
&
Теория автоматов
17/33
Пример шинного (8-разряд.) MUX (4→1)
Функциональный уровень на
основе одноразрядных MUX(4→1)
Структурный уровень
(детализ. вариант)
B8 : 1
C 8 : 1
E 8 : 1
G8 : 1
8
8
8
8
A2
A1
D0 8  разр.
F 8 : 1
MUX
D1
8
4 1
D2
D3
A2
A1
G
E
C
B
b1
g1
A2
D0 MUX
D1 4  1
D2
f1
F
D3
A2
A1
A1
1
Мультиплексор управляются не унарным
кодом (код «1 из N»), а двоичным.
Взаимосвязь управляющих кодов (адресных
и унарных) показана в данной таблице
A2
0
0
1
1
A1
0
1
0
1
y1 y2 y3 y4
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
F 8 : 1
b8
F(8:1)
B(8:1)
C(8:1)
E(8:1)
G(8:1)
g8
D0 MUX
D1 4  1
D2
f8
F
D3
A2
A1
Теория автоматов
8
18/33
Двунаправленные шины данных
Данные по шине могут передаваться в двух направлениях (рис. а) – от модуля А к
модулю В или наоборот. Модуль снабжается буфером, находящимся в одном из трёх
состояний вывода: ввод, вывод и состояние выключено, когда буфер со стороны
выхода приобретает высокий импеданс (состояние Z ).
б)
a)
Out A
Buf A
Buf B
In A
A
B
In A
Out A
A
Out B
In B
На рис .(б) показана схема буфера применительно к
одной физической линии. В свою очередь, данные
буфера управляются сигналами с однонаправленных
шин управления.
Теория автоматов
Out A In A
0
1
1
1
0
1
Сост.
буфера
вывод
ввод
z  сост
19/33
Регистры
Регистры в составе ОА предназначены для кратковременного хранения
информации во время исполнения одной или нескольких микрокоманд.
Функциональный
уровень
y1
Структурный уровень
B16 : 1
y1
RG
y2
0
B16 : 1
1
16
1 RG 1
2
&
RG(16 : 1) 
 B(16 : 1), если y1  1, y2  0

0, если y1  0, y2  1
y2
1
16
C
R
RG16 : 1
16
Как считывание информации, так и её запись, может осуществляться как
полноразрядными словами, так и отдельными полями
A8 : 1
B16 : 1
y1
1
y2
RG
y3
C 16 : 1  RG16:1, если y3 1
y4
D8 :1  RG16: 9, если y4 1
16
Теория автоматов
20/33
Комбинационные схемы
Комбинационные схемы (КС) в ОА предназначены для реализации
арифметических и логических операторов в микрокомандах (МК).
С помощью КС осуществляется так же выработка признаков или флагов
условий.
С целью экономии оборудования в ОА используются универсальные
(многоцелевые) КС, каждая из которых реализует микрооперации,
относящиеся к одной из групп однотипных микроопераций, а именно –
микрооперации суммирования, поразрядные логические операции и
сдвига, формирователи кода и констант.
КС настраивается на реализацию конкретной микрооперации из группы с
помощью управляющих сигналов.
В качестве примера рассмотрим реализацию КС, относящуюся к группе
микроопераций суммирования.
Теория автоматов
21/33
Пример многоцелевой КС, относящейся к группе
микроопераций суммирования
Набор МК суммирования
Обобщённая МК суммирования
 R3, Y2  1
R1  R 2  A1  A2, где A1  
notR3, Y3  1
Y1 : R1  R2  1
Y2 : R1  R2  R3
Y3 : R1  R 2  notR3  1
1, Y1  Y3  1
A2  
0, в других случаях
Структурная схема КС
Y1  Y2  Y3
R2
Y2

R3
R1
Ясно, что МК из данного набора могут
выполняться последовательно друг за
другом , а не параллельно.
Y1  Y3
Y3
1
Теория автоматов
22/33
Организация операционного автомата
На структуру и способ построения ОА в наибольшей степени влияет формат
обрабатываемых слов (фиксированная или плавающая запятая).
Из ОА предназначенных для обработки целочисленных данных, наибольшее
распространение получили ОА с магистральной организацией
информационных связей между его основными элементам.
Наличие информационных шин, являющихся общими для всех источников
(приёмников) данных, минимизирует число индивидуальных физических линий
между элементами структуры и делает её практически независимой от
характера выполняемой операции.
Процесс обработки информации в ОА заключается в выполнении им некоторой
последовательности микрокоманд. Настройка ОА на выполнение конкретной МК
из данной последовательности осуществляется управляющими сигналами,
которые поступают из управляющего автомата (УА).
Теория автоматов
23/33
Формирование управляющих сигналов
УА для ОА
(один из возможных вариантов)
Формирователь микроинструкций ФМИ
Х (из ОА)
КОП
DC
F1
Fg
FG
Блок
УA(Fg)
{bi}t
Сигналы
управления
Двоичный
{Y1, Y5 …,Yt, …}g
CD
в форме кода
«1 из N»
{cj}t
код
адреса
Теория автоматов
PROM
.
.
ОА
{hp}t
24/33
Структурная схема ОА магистрального типа
Yt
Ф
M
И
Адрес
записи и
чтения
порта А
Память
B
Управлен
ие MUX
MUX
Машинный такт
X  xk 
В упр. автомат
Addr РЗУ
Чтение из РЗУ
A
Buffer RG
D
C
Временные диаграммы работы ОА
Запись в РЗУ
Буфер RG прозрачен Буфер RG блокирован
при Clk=0
при Clk=0
Clk
Регистровое ЗУ
Адрес
чтения
порта В
Управлен
ие ALU
Clk
A
ALU
S
Шина результата
С целью разрыва информационного кольца
{Вых. РЗУ – ALU – Вход РЗУ} в процессе
обработки информации в ОА введён Buffer
RG c противофазной (относительно РЗУ)
синхронизацией
Теория автоматов. Модуль 6
25/33
Арифметико-логическое устройство
ALU – Arithmetic and Logical Unit, L-SM – logical and Summing Unit (device) – блок
поразрядных операций и суммирования; Shift – универсальный сдвигатель.
D
C
Форм. кодов
Флаги :
n 1
CF  Cn
n 1
OF  Cn  Cn 1
n 1
0
D
E
D
0
L  SM
0
"1"
Clk
Обработка МК.
Трансляция CF
Запись флага
CF в RG Flags
G
n 1
ZF   si
CF
i 0
n 1
SF  sn
Cn 1
Cn  CF
Shift
S
CF
КС формирования флагов
SF ZF OF CF
RG Flags
в YA
X  xk 
В РЗУ или во
внешнюю память
0
Clk
C Tc
D
Операционные
автоматы
Теория
автоматов.
Модуль 6
Кольцо для сдвигов с
учётом флага CF.
Флаг был определён
предыдущей МК
26/33
Арифметические операции суммирования и
вычитания
D
C
Форм. кодов
n 1
n 1
0
n 1
0
D
E
D
L  SM
0
"1"
G
CF
n 1
Cn 1 Cn  CF
Shift
S
CF
X  xk 
Сложение S  C  D
Сложение с переносом S  C  D  CF
0
КС формирования флагов
RG Flags SF ZF OF CF
в YA
дополнительный код
Clk
C Tc
D
Вычитание S  C  D. Реализуется как C  D  1
Вычитаниес заёмом S  C  D  BF. Реализуется как :
С  D  BF  C  D  1  CF   C  D  1  CF  C  D  1  1  CF  C  D  CF
Операционные
Теория
автоматов.автоматы
Модуль 6
27
27/33
Блок поразрядных логических операций и
суммирования L-SM (logical and SummingUnit)
b0
a0
a
b CI
C0
P
s
G
Q Q0
ai
bi
a
P0
G0
s0
Одноразрядный L-SM
ci
y4 y3 y2 y1
C1
si
s
si  ai  bi  ci H co
b S co
a
s
Pi =ai bi
HS co
Gi =ai bi
b*

Qi  ai  bi
b3
a3
C3
a
b CI
P
s
G
Q3
Q
s3
P3
G3
Схема ускоренного переноса
В рассмотренный ранее
одноразрядный сумматор внесём
изменение, дополнив
реализуемые им логические
операции операцией ИЛИ.
C0
P0
&
G0
&
Q0
&
s0
&
P
G
P3
y1 : ai  bi
y2 : ai bi
y3 : ai  bi
y4 : si 
ai  bi  ci
&
G3
&
Q3
&
s3
&
Операционные
автоматы
Операционные автоматы.
Поразрядные
логические микрооперации
1
1
28
28/33
CF
G (7 : 0)
y1
y5
y2
y3
y6
Shift
y4
CF L
Синтез универсального
сдвигателя
CF
S (7 : 0) CF R
Выполняемая
МО
y7
y8
Ограничимся синтезом разнообразных
операций сдвига вправо: y1, y2, y3, y4.
Функционирование сдвигателя задаётся
таблицей
Выходные переменные
Управляю-
щие сигналы CF L S7
Трансляция S(7:0)=G(7:0)
Лог. сдвиг -> (SHR)
S(7:0)=0.G(7:1), CF R=G(0)
y1
Цикл. сдвиг -> (ROR)
S(7:0)=G(0).G(7:1), CF R=G(0)
y2
Цикл. сдвиг -> (RCR)
S(7:0)=CF.G(7:1), CF R=G(0)
y3
Арифмет. сдвиг вправо
S(7:0)=G(7).G(7:1), CF R=G(0)
y4
S6
….
S1
S0 CF R
0
g7
g6
g1
g0
0
0
0
g7
g2
g1
g0
0
g0
g7
g2
g1
g0
0
CF
g7
g2
g1
g0
0
g7
g7
g2
g1
g0
Теория автоматов. Модуль 6
29/33
Логические уравнения, описывающие работу
сдвигателя
Введём обозначения:
Тогда:
z 1 = y 1 y 2 y 8
z2 = y1 ∨ y 2 ∨ y 3 ∨ y 4
s i = g i z 1 если i = 0 ,  ,7
s j = g j +1z 2 если j = 0 ,  ,6
- все сдвиги вправо
s 7 = g 7 z 1 ∨ g 0y 2 ∨ (CF & y 3 ) ∨ g 7y 4
Выполняемая МО
(1)
- трансляция
CF L=0, CF R=g0z2
(2)
(3)
Выходные переменные
Управляющие сигналы CF L S7 S6
….
S1 S0 CF R
Трансляция S(7:0)=G(7:0)
Лог. сдвиг -> (SHR)
S(7:0)=0.G(7:1), CF R=G(0)
y1
Цикл. сдвиг -> (ROR)
S(7:0)=G(0).G(7:1), CF R=G(0)
y2
Цикл. сдвиг -> (RCR)
S(7:0)=CF.G(7:1), CF R=G(0)
y3
Арифмет. сдвиг вправо
S(7:0)=G(7).G(7:1), CF R=G(0)
y4
0
g7
g6
g1
g0
0
0
0
g7
g2
g1
g0
0
g0
g7
g2
g1
g0
0
CF
g7
g2
g1
g0
0
g7
g7
g2
g1
g0
Операционные
автоматы
Теория
автоматов.
Модуль 6
30
30/33
Логические уравнения, описывающие работу
сдвигателя (окончание)
На предыдущем слайде было получено было получено
Введём обозначения:
Тогда:
z 1 = y 1 y 2 y 8
z2 = y1 ∨ y 2 ∨ y 3 ∨ y 4
s i = g i z 1 если i = 0 ,  ,7
s j = g j +1z 2 если j = 0 ,  ,6
s 7 = g 7 z 1 ∨ g 0y 2 ∨ (CF & y 3 ) ∨ g 7y 4
- трансляция
- все сдвиги вправо
CF L=0, CF R=g0z2
(1)
(2)
(3)
В окончательном виде систему уравнений (1 - 3) можно переписать
следующим образом:
s 0 = g 0 z 1 ∨ g 1z 2
s 6 = g 6z 1 ∨ g 7z 2
s1 = g1z 1 ∨ g 2z 2
s 7 = g 7 z 1 ∨ g 0y 2 ∨ (CF & y 3 ) ∨ g 7y 4
.............
CF L=0, CF R=g0z2
Операционные
автоматы
Теория
автоматов.
Модуль 6
31
31/33
Контрольные вопросы
1. Перечислите состав структурного базиса операционных автоматов (ОА).
2. Определите управляемую шину на структурном и функциональном уровнях.
3. Представьте шинный мультиплексор на структурном и функциональном
уровнях.
4. Структурное представление двунаправленной шины данных.
5. В какие типовые группы можно объединить всю совокупность микроопераций,
использующихся в ОА?
6. Какие функции выполняют комбинационные схемы в операционных
автоматах.
7. Каким образом осуществляется «настройка» комбинационной схемы на
выполнение конкретной микрооперации из группы ей подобных.
Операционные
автоматы
Теория
автоматов.
Модуль 6
32/33
Контрольные вопросы
(окончание)
8. Нарисуйте структурную схему ОА магистрального типа.
9. Изобразите структуру универсального АLU.
10. Приведите соотношения, показывающие реализацию операций
суммирования и вычитания в ALU дополнительном коде.
11. Поясните суть схемотехнических решений, которые позволят
использовать многоразрядный сумматор для выполнения
поразрядных логических операций.
Теория автоматов. Модуль 6
33/33
Download