Материалы для подготовки к экзамену по дисциплине "Организация ЭВМ", страница 6

Весь цикл исполнения команды можно распределить по ступеням конвейера следующим образом:           1 ступень – выборка команды

2 ступень – выборка операнда по адресу А

3 ступень – выполнение самой операции

4 ступень – запись результата по адресу А

Тогда временная диаграмма будет выглядеть:

такты/ ступени

Т1

Т2

Т3

Т4

1

К1

К2

К3

К4

2

К1

К2

К3

3

К1

К2

4

К1

Конфликты, возникающие в конвейерах при обращении к ОЗУ

В соответствии с диаграммой, в конвейере могли бы обрабатываться 4 команды (К1-К4), однако уже во втором такте возникает конфликт между первой и второй ступенями конвейера при обращении к ОЗУ: на первой ступени – за командой, а на второй ступени – за операндом. На 4 такте добавляется конфликт с 4 ступенью при записи результата в ОЗУ.

Для ликвидации конфликта применяют два способа:

1.  Расслоение ОЗУ по данным когда в одном блоке хранятся команды, а в другом данные.

Недостатком такого способа является:

v Сложность программирования при распределении.

v При увеличении адресности команды приходится увеличивать число блоков ОЗУ данных.

2.  Расслоение ОЗУ по адресам. Это более универсальный способ. ОЗУ в этом случае состоит из m модулей, каждый и которых имеет следующую адресацию: адреса смежных ячеек принадлежат смежным модулям. В соответствии с такой адресацией в модулях размещаются команды и данные.

ОЗУ0

ОЗУ1

ОЗУ2

ОЗУ3

0

4

8

С

1

5

9

D

2

6

A

E

3

7

B

F