Ответ 1
Двойная проблема означает, что каждый такт цикла процессор может перемещать две инструкции с одного этапа трубопровода на другой. Там, где это происходит, зависит от процессора и терминологии компании: это может означать, что две команды переносятся из очереди декодирования в очередь переупорядочения (Intel называет эту проблему), или это может означать инструкции по перемещению (или микрооперации или что-то еще) из переупорядочивание очереди на порт выполнения (afaik IBM называет эту проблему, а Intel называет ее отправкой)
Но в целом говоря, это обычно означает, что вы можете поддерживать выполнение двух инструкций за цикл.
Поскольку вы отметили эту ARM, я думаю, что они используют терминологию Intel. Cortex-A8 и Cortex-A9 могут, каждый цикл, извлекать две инструкции (больше в Thumb-2), декодировать две инструкции и "выдавать" две инструкции. На Cortex-A8 нет выхода из строя, хотя я не могу вспомнить, есть ли еще очередь декодирования, которую вы выдаете, - если бы вы не пошли прямо из инструкций декодирования, чтобы вставить их в два исполнения. На Cortex-A9 есть очередь ошибок, поэтому там декодированные инструкции выдаются - тогда инструкции отправляются до 4 за цикл в конвейеры выполнения.