Таблица 4.7 Сложные дизьюктивные нормальные функции (DNF) FSD соответствующие подготовленным путям данных
Сложные DNF |
Состояние назначения |
Одночлен т EM |
Длина l(m) |
|
IR[31 :26] |
IR[5 : 0] |
|||
Dl |
alu |
000000 |
100*** |
9 |
D2 |
aluI |
001*** |
****** |
3 |
D3 |
shift |
000000 000000 |
0001*0 00011* |
11 11 |
D4 |
shiftI |
000000 000000 |
0000*0 00001* |
11 11 |
D5 |
test |
000000 |
101*** |
9 |
D6 |
testI |
011*** |
****** |
3 |
D7 |
savePC |
010111 000011 |
****** ****** |
6 6 |
D8 |
addrS |
10100* 1010*1 |
****** ****** |
5 5 |
D9 |
addrL |
100*0* 1000*1 10000* |
****** |
4 5 5 |
DNF |
Сигналы Mealy |
|||
D10 |
Rtype |
000000 |
****** |
6 |
D4 |
shiftl |
000000 000000 |
0000*0 00001* |
(10) (10) |
D7 |
Jlink |
010111 000011 |
****** |
(6) (6) |
D11 |
jumpR |
01011* |
****** |
5 |
D12 |
Jjump |
00001* |
****** |
5 |
D13 |
jump |
D11 OR D12 |
||
D14 |
branch |
00010* |
****** |
5 |
D15 |
bzero |
*****0 |
****** |
1 |
Таблица 4.8 Пути path(t) через FSD для каждого типа t команд DLX
Тип команды DLX |
Путь через FSD |
addi, subi, andi, on, xori, lhgi |
fetch, decode, aluI, passC, wb |
add, sub, and, or, xor, lhg |
fetch, decode, alu, passC, wb |
clri, sgri, seqi, sgei, slsi, snei, slei, seti |
fetch, decode, testI, passC, wb |
clr, sgr, seq, sge, sls, sne, sle, set |
fetch, decode, test, passC, wb |
slli, srli, srai |
fetch, decode, shiftl, passC, wb |
sll, srl, sra |
fetch, decode, shift, passC, wb |
lb, lh, lw, lbu, lhu |
fetch, decode, addrL, load, sh41 |
sb, sh, sw |
fetch, decode, addrS, store, noWB |
jalr, jal |
fetch, decode, savePC, passC, wb |
другие |
fetch, decode, noEX, noM, noWB |
3. Сигналы Mealy активированные в состоянии IDтеперь активируются в каждом такте; они имеют значение только когда full1 = 1. Таким образом, сигналы Mealy зависят только от входов IR, но не от текущего состояния.
4. Видно, что на рисунке 4.8 только состояние decodeимеет разветвление по выходу больше единицы. На этапе IDмы поэтому заранее можем вычислить управляющие сигналы для всех этапов и синхронизировать их с регистром R..2 € out(1). Таблица 4.9 перечисляет для каждого состояния сигналы синхронизируемые с этим регистром. Входы регистра R.2 вычисляются в каждом такте, но они синхронизируются в R.2 только когда
ue.1 = full.1 /\ /busy = 1.
Регистр R.2 содержит три класса сигналов:
(a) сигналы xиспользуемые в следующем цикле управляют только этапом EX,
(b) сигналы у используемые в следующих двух циклах управляют этапами EX и M,
(c) сигналы zиспользуемые в следующих трех циклах управляют этапами EX, M и WB.
Управляющие сигналы у этапа M задерживаются одним дополнительным регистром R.3 € out(2), тогда как сигналы этапа WB задерживаются регистрами R.3 и R.4 € out(3), как показано на рисунке 4.9.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.