Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая Вариант 18.docx
Скачиваний:
25
Добавлен:
17.06.2016
Размер:
188.59 Кб
Скачать

3.2. Организация конвейерной обработки команд

При конвейеризации очередность команд, заданная программистом при написании программы, нарушается. Исполнения команд (текущей i-й и i+1-й) перекрываются во времени и возникают зависимости операций, запускаемых i+1 и i+2 командами от результатов i-й команды. Эти зависимости вызывают помехи для выполнения команд. При конвейеризации необходимо обнаружить и устранить помехи.

С целью анализа возможности перекрытия команд целесообразно создать таблицу занятости для моделирования бесконвейерной структуры ЭВМ, используемой для выполнения команд. В структуре ЭВМ используется не расслоенная память RAM и бесконвейерное CPU. Когда функционирует память, то CPU простаивает и наоборот. В таблице занятости будет две ступени: RAM и CPU.

t

RAM

CPU

ADD 20 такт

DECODE ENDOP

IFETCH EADDR OFETCH EXEC

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

WR 17 тактов

DECODE EXEC ENDOP

IFETCH EADDR STORE

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

JMP 11 тактов

DECODE ENDOP

IFETCH

X

X

X

X

X

X

X

X

X

X

X

CHANGE IP

JS переход выполняется 12 тактов

DECODE ENDOP

IFETCH

X

X

X

X

X

X

X

X

X

X

X

X

TEST CHANGE IP

JS переход не выполняется 11 тактов

DECODE ENDOP

IFETCH

X

X

X

X

X

X

X

X

X

X

X

TEST

READ 17 тактов

DECODE EXEC ENDOP

IFETCH EADDR OFETCH

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

Inc 23 такта

DECODE ENDOP

IFETCH EADDR OFETCH EXEC STORE

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X