Написать SW в безопасном коде сборки для MIPS
Я проектирую 32-битный конвейер с VHDL, в котором нет модуля для обнаружения опасностей. Поэтому, чтобы протестировать конструкцию, мне нужно иметь векторы безопасных сборочных кодов в моем стенде.
Взглянув на книгу организации "Patterson Computer", я нашел упражнение, в котором говорится, что следующий набор кодов безопасен:
--lw $t1, 0($t0)
--lw $t2, 4($t0)
--lw $t4, 8($t0)
--add $t3, $t1,$t2
--sw $t3, 12($t0)
--add $t5, $t1, $t4
--sw $t5, 16($t0)
Тем не менее, я думаю, что SW вызывает здесь опасность. Пожалуйста, дайте мне знать, как отсортировать этот код таким образом, чтобы я мог иметь код сборки без каких-либо опасностей.
Кроме того, если я хочу добавить другие ассемблерные коды R-типа, я должен включить "NOOP" или есть еще один способ сделать это?