Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГОСЫ 124-184.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
2.8 Mб
Скачать
  1. Структурна організація і синтез iм – автоматів з послідовною комбінаційною частиною.

10.3. IM–автоматы с последовательной комбинационной частью

Принцип последовательной организации комбинационной части операционного автомата приводит к структурам,

В данном случае комбинационная часть состоит из трех схем Ф1, Ф2, Ф3, реализующих операции из множеств {fk}, {gl}, {hm} соответственно. Операции распространяются на пару слов si sj, которые выбираются на входы А1, А2 комбинационной части под воздействием управляющих сигналов ai, bj, инициирующих передачи А1 := si; А2 := sj. Комбинационные схемы Ф1, Ф2, Ф3 настраиваются на выполнение требуемых микроопераций управляющими сигналами fk, gl, hm, которые инициируют следующие преобразования: А3 := fk(A2); А4 := gl(A1, A3); Z := hm(A4), где А3, А4, Z - вспомогательные переменные. Запись результата Z в память автомата инициируется управляющим сигналом dn: sn := Z. Таким образом, совокупность микроопераций fk, gl, hm над словами si sj с целью вычисления слова sn инициируется набором управляющих сигналов (ai, bj, fk, gl, hm, dn), под воздействием которых автомат за один такт реализует следующее преобразование:

sn := hm(gl(si, fk(sj))), (11.1)

эквивалентное трем последовательно выполняемым микрооперациям fk, gl, hm. За счет этого максимальная производительность IM–автомата со структурой, приведенной на рис.11.3, в три раза превышает производительность М-автомата.

Чтобы обеспечить возможность выполнения микроопераций fk, gl, hm в любом сочетании, каждая из схем Ф1, Ф2, Ф3 должна реализовать микрооперации передачи слов:А3 := А2; А4 := А1; А4 := А3; Z := A4. За счет этого комбинационная часть кроме преобразования (11.1) может выполнять преобразования следующего вида:

Z := A1; Z := A2; Z := fk(A2); Z := gl(A1, A2); Z := hm(A1); Z := gl(A1, fk(A2)) и т.д.

При использовании IM-автоматов в качестве операционных автоматов процессоров комбинационные схемы Ф1, Ф2, Ф3 обычно реализуют следующие функции. Схема Ф1, используется для формирования констант, полей и инверсий слов и называется формирователем кодов. Для формирователя кодов типичен следующий набор микроопераций:

f0: А3 := А2; f4: A3 := 0.A2(1:n);

f1: А3 := 1; f5: А3 := 1.A2(1:n);

f2: А3 := 1510; f6: А3 := 1.┐A2(1:n);

f3: А3 := 1010; f7: А3 := A2(0:7).00…0

и т.д. Микрооперация f0 обеспечивает передачу слова А2 без преобразования. По сигналам f1, f2, f3 на выходе формирователя образуются значения необходимых констант. Микрооперация f4 служит для передачи цифровых разрядов слова А2 (модуля операнда), микрооперация f5: - для передачи слова с обратным знаком. Микрооперация f6 формирует обратный код слова А2, а микрооперация f7 выделяет первый байт операнда. Схема Ф2 используется для выполнения бинарных операций , основной из которых является сложение. Поэтому схему Ф2 часто называют сумматором и возлагают на нее выполнение микроопераций следующего вида:

g0: А4 := А1; g3: А4 := А1  A3;

g1: А4 := А3; g4: A4 := A1  A3;

g2: A4 := A1 + A3; g5: A4 := A1  A3,

где g0, g1 - микрооперации передачи слов с входа на выход сумматора. Комбинационная схема Ф3 используется для выполнения микроопераций сдвига и называется сдвигателем. Сдвигатель реализует микрооперации следующего вида:

h0: Z := A4; h3: Z := R1(A4(n).A4);

h1: Z := R1(0.A4); h4: Z := L1(A4.A4(0));

h2: Z := L1(A4.0); h5: Z := R2(00.A4),

где h0 -микрооперация передачи и h3, h4 - микрооперации циклического сдвига. Различным значениям управляющих сигналов gl, fk, hm соответствуют различные преобразования. Например,

(f1, g2, h0)  Z := A1 + 1;

(f2, g2, h0)  Z := A1 + 1.┐A2(1:n);

(f2, g1, h0)  Z := 1510;

(f4, g2, h1)  Z := R1(0.(A1 + A2(1:n))).

Как и в М-автомате, в комбинационной части IM-автомата могут использоваться расширители для хранения переноса из старшего разряда сумматора и разрядов, спадающих при сдвиге слова А4.

Синтез IM-автомата с последовательной комбинационной частью производится на основе функциональной микропрограммы путем представления последовательностей микроопераций ,…, в форме выражений (11.1). Для этого микропрограмма разделяется на линейные участки (см. рис.11.4), состоящие из последовательностей операторов О1,… Оr.

y1

y2

y3

y4

y5

O1

O2

O3

s1 := ┐s1

s3 := L1(s3.0)

s1 := s1 + s2

s1 := L1(s1.0)

s4 := s4 +1

xj

Рис.11.4. Линейный участок функциональной микропрограммы

Линейные участки классифицируются по рангам r = 1,…, R. К рангу r относится участок, состоящий из r операторов О1,… Оr. В результате функция операционного автомата представляется множествами L1,…, LR линейных участков. Затем определяется множество выражений, порождаемых линейными участками L1,…, LR. Линейным участкам первого ранга соответствуют микрооперации ,…,  Y. Выражения, относящиеся к линейным участкам с рангом r = 2,…, R, находятся следующим образом. Среди микроопераций, входящих в состав

операторов линейного участка, выделяются микрооперации ,…, , связанные с вычислением одного и того же слова sn. Путем последовательных подстановок выражений формируется микрооперация sn := φm( ), которая эквивалентна последовательности микроопераций ,…, ,. Микрооперации ,…, , исключаются из линейного участка, и процесс порождения выражений вида (11.1) повторяется для оставшихся микроопераций линейного участка. Например, линейный участок (рис.11.4) порождает следующие выражения:

s1 := L1((┐s1 + s2).0)

M = s3 := L1(s3.0) (11.2)

s4 := s4 + 1 ,

первое из которых эквивалентно последовательности трех микроопераций y1, y3, y4. Если использовать М-автомат, то участок микропрограммы (рис.11.4) будет выполняться за пять тактов. Если операционный автомат будет построен по выражениям (11.2), то для выполнения этого участка потребуется три такта. Множество выражений, порождаемых линейными участками Lr ранга r , определяется путем объединения выражений, порождаемых отдельными линейными участками (Mr = ), а множество выражений, порождаемых функциональной микропрограммой равно M = . Т.е., множество М содержит все микрооперации из набора Y, которые не покрыты выражениями, полученными из линейных участков, и выражения, сформированные путем объединения микроопераций, последовательно выполняемых на линейных участках микропрограммы.

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

A1 := si; A2 := sj; A3 := fk(A2); A4 := gl(A1, A3); Z := hm(A4); sn := Z,

которые реализуются схемами выборки операндов А1, А2, комбинационной частью и схемой записи результата Z в регистры. По набору операторов строится структурная схема IM-автомата. Количество ступеней в комбинационной части автомата определяется максимальным числом действий в двоичных выражениях М. Так, в (11.2) наиболее сложным является первое выражение, составленное из трех действий: инвертирования, сложения и сдвига.