Если вы видите эту популярную схему конвейера ARM Cortex-A8 в одном из ARM презентации. Понятно, что этап выборки инструкций занимает 3 цикла, но первый цикл как бы со скидкой. Но почему? Есть предположения?
Спасибо...
Если вы видите эту популярную схему конвейера ARM Cortex-A8 в одном из ARM презентации. Понятно, что этап выборки инструкций занимает 3 цикла, но первый цикл как бы со скидкой. Но почему? Есть предположения?
Спасибо...
Из несколько скрытой бумаги о Cortex A8:
Конвейер выборки начинается с этапа F0, на котором создается новый виртуальный адрес. Этот адрес может быть либо целевым адресом ветвления, предоставленным предсказанием ветвления для предыдущей инструкции, либо, если в этом цикле нет предсказания, следующий адрес будет вычисляться последовательно из адреса выборки, использованного в предыдущем цикле. Обратите внимание, что этап F0 Fetch не считается официальным этапом в основном целочисленном конвейере из 13 этапов. Это связано с тем, что конвейеры процессора ARM всегда считали этапы, начиная с доступа к кэшу инструкций, в качестве первого этапа.