Суперконвейерный подход - применение относительно длинных конвейеров с довольно большим числом коротких ступеней; увеличение количества ступеней конвейера может быть достигнуто как за счет добавления новых ступенией, так и путем дробления имеющихся ступеней на несколько простых подступеней. Главное требование – возможность реализации операции в каждой подступени наиболее простыми техническими средствами, а значит, с минимальными затратами времени, вторым, не менее важным, является одинаковость задержки во всех подступенях. Идеология суперконвейерного подхода эффективна, если выполнение потока команд в конвейере не нарушается командами перехода, когда конвейер приходится запускать вновь, что приводит к большим задержкам. Критерием для причисления процессора к суперконвейерным служит число ступеней в конвейере команд – их должно быть больше шести. Таким первым серийным процем считается MIPS R4000 (8 ступеней), где суперконвейеризация стала следствием разбиения этапов выборки команды и выборки операнда, а также введения в конвейер доп.этапа проверки тега.
Процессоры, имеющие в своем составе более одного конвейера, называются суперскалярными. Такие процессоры выполняют одновременно более, чем одну скалярную команду.
Блок выборка команд извлекает команды из основной памяти через кэш-память команд. Этот блок хранит несколько значений счетчика команд и обрабатывает команды условного перехода.
Блок декодирования расшифровываеткод операции, содержащийся в извлеченных из кэш-памяти командах, В некоторых суперскалярных процессорах, например в микропроцессорах фирмы Intel, блоки выборки и декодирования совмещены.
Блоки диспетчеризации и распределениявзаимодействуют между собой и в совокупности играют в суперскалярном процессоре роль контроллера трафика. Оба блока хранят очереди декодированных команд. Очередь блока распределения часто рассредоточивается по нескольким самостоятельным буферам — накопителям команд или схемам резервирования {reservation station), — предназначенным для хранения команд, которые уже декодированы, но еще не выполнены. Блок диспетчеризации хранит также число свободных функциональных блоков (табло). Блок исполнения состоит из набора функц-х блоков (целочисл. операционных, блоков умножения и сложения с плавающей запятой, блоков доступа к памяти). Когда исполнение команды завершается, ее результат записывается и анализируется блоком обновления состояния, обеспечивающим учет полученного результата теми командами в очередях распределения, где этот результат выступает в качестве одного из операндов.