|
В
1995 году было представлено семейство процессоров
P6, имевшее уже 3 независимых конвейера. Первым
процессором этого семейства был процессор Pentium
Pro. Принципиальное отличие этого семейства
состоит в том, что P6 преобразует команды x86 во
внутренние, RISC-подобные команды, называемые микрокомандами
(micro-ops). Это позволяет устранить многие ограничения,
свойственные набору команд x86, такие как нерегулярность
кодирования команд, операции целочисленных пересылок
регистр-память и переменная длина непосредственных
операндов. Шина адреса процессоров P6 расширилась
до 36 разрядов, что позволяет использовать адресное
пространство размером до 64 гигабайт. CPU
и кэш второго уровня разместились в одном
корпусе. Обмен данными процессора с кэш второго
уровня осуществлялся не по системной шине, а напрямую,
на частоте его ядра.
- Количество
стадий конвейера для целочисленных операций
увеличено с 5 до 12. Рассмотрим поэтапную работу
конвейера процессора P6, состоящего из 12 ступеней.
Конвейер можно разделить на три самостоятельных
функциональных блока - входной блок упорядоченной
обработки (in-order front end), отвечающий за
декодирование и обработку команд, ядро исполнения
с изменением последовательности (out-of-order
core), где, собственно, и происходит выполнение
команд, и конвейер упорядоченного вывода команд
из последовательности (in-order retirement).
- Блок
выборки команды (instruction fetch unit) считывает
поток инструкций из L1-кэша команд порциями
по 32 байта за такт.
- Для
поиска начала команды используется текущий указатель
команды (IP-instruction pointer), а затем выровненные
16 байт команды передаются на три дешифратора.
В случае, если команда находится в конце первой
строки кэша, считывается вторая строка кэша
для получения недостающих байт.
- Реализован
механизм выполнения инструкций с нарушением
очередности их следования (так называемое спекулятивное
ветвление), что позволило Pentium Pro просматривать
до 18 инструкций вперед и обрабатывать их в
зависимости от их готовности, а не от порядка
следования в программе.
- Процессор
Pentium Pro стал родоначальником процессоров
Pentium шестого поколения. Однако изготовление
процессоров такой архитектуры по технологии
0,5 мкм было очень дорого, поэтому процессор
Pentium Pro использовался практически только
в высокопроизводительных серверах.
|