Конвейерная обработка микропроцессоров — аналогия с фабрикой роботов

Опубликовано: 24/01/2021 Время на прочтение: 10 минут

Заводской робот перемещает пакеты на воображаемом складе для обработки. Перемещение соответствует инструкциям ЦП, а пакеты можно рассматривать как обрабатываемые данные.

Ускорение процессоров за счет увеличения тактовой частоты

Складской робот перемещает оранжевую упаковку к концу очереди.

Преимущества небольших процессоров

С меньшими расстояниями задача перемещения может выполняться быстрее.

Параллельное выполнение

Векторная обработка

Одновременное перемещение нескольких пакетов соответствует выполнению одной и той же операции над несколькими частями данных одновременно. Это то, что мы называем векторной обработкой.

Несколько ядер микропроцессора

В многоядерном процессоре несколько инструкций выполняются параллельно. В принципе, каждый складской робот может работать независимо от другого.

Конвейерная обработка

Разделение перемещения пакета на 3 отдельных шага. Каждый робот несет пакет только на 1/3 пути.

Такт — 1

Два других складских робота сначала должны бездействовать, пока «трубопровод» заполняется. Первый робот перемещает оранжевый пакет на 1/3 пути. Это 1-й такт.

Первый тактовый цикл завершен. Второй робот не готов забрать оранжевый пакет и переместить его на 2/3 от конечного пункта назначения.

Такт — 2

Первый и второй складские роботы теперь могут перемещать пакеты параллельно. Но они должны делать это синхронно, чтобы избежать столкновения. Это второй такт.

2-й такт завершен. Теперь весь «трубопровод» заполнен. В следующем тактовом цикле все три робота могут выполнять работу параллельно.

Такт — 3

Все три робота перемещают пакет синхронно. «Конвейер» заполнен, и именно тогда он работает наиболее эффективно, так как каждый такт мы доставляем пакет в конце и забираем новый.

Преимущества и проблемы конвейерной обработки

RISC против микропроцессоров CISC

Слишком далеко зайти в конвейер



прокрутка вверх