2015-09-27 3 views
-2

Я смущен в поиске зависимостей RAW, нужно ли нам находить только в смежных инструкциях или несмежных.Чтение после записи (RAW) ОПАСНОСТЬ

рассмотрим следующий код сборки

I1: ADD R1 , R2, R2; 

I2: ADD R3, R2, R1; 

I3: SUB R4, R1 , R5; 

I4: ADD R3, R3, R4; 

найти число считаны после записи (RAW) ЗАВИСИМОСТЕЙ в коде выше. считать ADD x, y, z = x < - y + z

Я получаю 2 зависимости I2-I1 и I4-I3.

+0

Не могли бы вы указать которые являются операндами и который является местом назначения? – hayesti

+0

Я не знаком с вашей домашней работой, но, к моему пониманию конвейерной обработки, вы должны рассматривать не только смежную инструкцию, и, следовательно, l2 зависит от l1, l3 зависит от l1, а l4 зависит от l3 и l2. –

+0

Не нужно кричать, хорошо? И это ваша домашняя работа - вы не узнаете ничего, спросив здесь. –

ответ

0

Допустим, что после того, как инструкция поступит в конвейер, она займет x этапов, после которых любой регистр, записывающий эту инструкцию, будет виден любой следующей инструкции.

Затем вам необходимо позаботиться о зависимостях RAW от каждого набора из x последовательных инструкций. В худшем случае вы можете принять x, чтобы быть максимальным. ступеней в трубопроводе.

Теперь, дело в этом вопросе выглядит как проблема HW и поскольку структура трубопровода не определена, так что вы должны смотреть на RAW зависимости над всеми инструкциями, которые в данном случае являются:

  1. I2 и I1 над R1
  2. I3 и I1 над R1
  3. I4 и I2 через R3
  4. I4 и I3 над R4
Смежные вопросы