В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

 
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации





Главная страница > Обзоры по типам > Микроконтроллеры > ARM
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации


2.3.1. Конвейер

ЦПУ Cortex способно выполнять большинство инструкций за один цикл. Также как и у ЦПУ ARM7 и ARM9, это достигается с помощью трехступенчатого конвейера.

ЦПУ Cortex-M3, также как и ARM7/ARM9, использует трехступенчатый конвейер
ЦПУ Cortex-M3, также как и ARM7/ARM9, использует трехступенчатый конвейер. Однако Cortex-M3 также поддерживает предсказание переходов для минимизации количества перезагрузок конвейера

Во время выполнения одной инструкции, следующая - дешифрируется, а третья - считывается из памяти. Этот механизм отлично работает с линейным кодом, но, если требуется выполнить переход, то, прежде чем продолжить выполнение кода программы, потребуется очистка и перезагрузка конвейера. У ЦПУ ARM7 и ARM9 переходы существенно ограничивают производительность исполнения кода программы. Во избежание этого, трехступенчатый конвейер ЦПУ Cortex оснащен логикой предсказания переходов. Это означает, что при достижении инструкции условного перехода выполняется упреждающая выборка и, в результате, оба назначения инструкции условного перехода будут доступны для исполнения и снижение производительности не произойдет. Хуже обстоят дела с инструкциями косвенного перехода, т.к. в этом случае упреждающую выборку выполнить нельзя и перезагрузка конвейера может оказаться неизбежной.

Таким образом, конвейер - инструмент, от которого зависит результирующая производительность ЦПУ Cortex и который не требует каких-либо действий со стороны кода программы.



<--Предыдущая страница Оглавление Следующая страница -->