- •Мп и их роль в современных компьютерах, cisc, risc и epic мп:
- •Поэтому, для risc – процессоров характерно:
- •К преимуществам мп с risc – архитектурой можно отнести:
- •Краткая история развития мп семейства х86:
- •4. Перспективы развития микропроцессорной техники.
- •Основные причины и результаты усовершенствования мп семейства х86:
- •Системные регистры мп семейства х86:
- •Дескрипторные таблицы Дескрипторные таблицы
- •Назначение и структура дескрипторов кода и данных:
- •Назначение и структура системных дескрипторов:
- •Назначение и структура дескрипторов шлюзов:
- •Теневые регистры и их назначение:
- •Регистр флагов и назначение его отдельных битов:
- •Принцип формирования линейных адресов в реальном режиме работы мп семейства х86:
- •Принцип формирования линейных адресов в защищенном режиме работы мп в семействе х86:
- •Страничное преобразование адресов, ее назначение и принцип реализации:
- •Источники и разновидности запросов прерываний процессора:
- •Организация системы прерываний в реальном режиме работы процессоров семейства х86:
- •Организация системы прерываний в защищенном режиме работы процессоров семейства х86:
- •Организация общей (базовой) защиты в мп х86:
- •Защита по привилегиям сегментов и ее организация:
- •Защита по привилегиям команд:
- •Принципы организации многозадачного режима работы:
- •Сегмент состояния задачи, его структура и назначение:
- •Принципы, лежащие в основе использования кэш-памяти, и организация кэш-памяти прямого отображения:
- •Принципы организации полностью ассоциативной и множественно-ассоциативной кэш-памятей:
- •Принципы организации целостности данных в подсистеме памяти с кэшированием:
- •Описание блок-схем алгоритмов обслуживания запросов в подсистеме памяти с кэшированием:
- •4. Двухуровневое кэширование.
- •Принципы организации конвейерной обработки сигналов в мп х86:
- •Циклы шины и режимы работы мп х86:
- •2. Реальный режим (r86)
- •3. Защищенный режим (p – режим)
- •4. Виртуальный режим (v86)
- •5. Режим smm
- •Принципы организации пакетного режима обмена информацией:
- •Основные особенности микроархитектуры Intel Sandy Bridge и ее структурная схема:
- •Сущность принципа «динамического исполнения команд»:
- •Структурная схема ядер мп Sandy Bridge и их функционирование:
- •Необходимость и общие принципы функционирования блока предсказаний ветвлений:
- •Необходимость предварительного и основного декодирования инструкций х86 в мп микроархитектуры Sandy Bridge:
- •Функционирование системы обнаружения программных циклов и суть работы блока pcu в мп микроархитектуры Sandy Bridge:
- •Сущность технологий макро- и микрослияний инструкций и микрокоманд в мп микроархитектуры Sandy Bridge:
Необходимость предварительного и основного декодирования инструкций х86 в мп микроархитектуры Sandy Bridge:
Кэш L1 инструкций, как это было уже упомянуто, представляет собой восьмиканальную (8-ми входовую) множественно-ассоциативную кэш-память емкостью 32 килобайт с размером строки (блока) равной 16 байт. После выборки из кэш-памяти с помощью блока упреждающей выборки команд, который располагается в модуле предсказания ветвлений (Branch Prediction Unit), строка инструкций Х86 подается на ступень предварительного декодирования (Pre decoder). Дело в том, что инструкции Х86 имеют переменную длину (от одного до 15 байт), а у блоков, которыми информация загружается из кэш памяти, длина фиксирована. Предварительное декодирование заключается в том, что этот сплошной блок кодов, размером в 16 байт каждый, разбивается на отдельные инструкции Х86, и заносятся в буфер очереди команд (Instruction Queue). При предварительном декодировании команд нужно определять границы между отдельными командами. Информация о размерах команд хранится в кэш памяти инструкций L1 в специальных полях (по 3 бита информации на каждый байт инструкций). Процедура предварительного декодирования позволяет поддерживать постоянный темп основного декодирования независимо от длины и структуры команд.
Таким образом, перед собственно декодированием команд производится выделение команд из общего блока. Введение же буфера очереди команд позволяет уменьшить простои конвейера из-за конфликтов по управлению (за счет задержек при выборке команд из памяти). При этом формирование очереди команд осуществляется со скоростью до шести инструкций за такт.
Из буфера очереди команд, работающей по принципу FIFO, инструкции поступают на 4 блока основного декодирования (Decoders), работающих параллельно. Блоки декодирования преобразуют инструкции Х86 разной длины в упорядоченный поток равномерных микрокоманд, которые определяют так называемые микрооперации (мкоп, micro-op, μops), т.е. понятные для данного процессора примитивы. От оперативности работы декодеров, от их согласованности с блоком предсказания ветвлений и «умения» заполнять конвейер непосредственно зависит бесперебойность потока микроопераций, загрузка конвейера и, в конечном счете, производительность микропроцессора.
В принципе, длина одной инструкции системы команд Х86 может достигать 15 байт. Однако средняя длина команд составляет 4 байта. Поэтому в среднем в каждом блоке загружаются 4 команды, которые при использовании четырёхканального декодера одновремённо декодируются за один такт. Естественно, декодирование четырёх инструкций за такт возможно только в том случае, если в одном 16-байтном блоке содержится не менее четырёх инструкций. Однако существуют инструкции и длиннее 4 байт, и при загрузке нескольких таких команд в одном блоке эффективность декодирования снижается.
Этот четырехканальный декодер включает в себя три простых декодера, предназначенных для декодирования простых инструкций (сложения, вычитания, сравнения, логических операций и др., без выборки операндов из памяти) в одну микрокоманду, реализующую одну простую микрооперацию, и один сложный, способный декодировать одну (более сложную) инструкцию в четыре микрокоманды. Однако в любом случае декодеры, вне зависимости от поступающих инструкций выдают на выходе не более четырех микрокоманд за такт. При этом отметим, что все микрокоманды на выходе декодеров, имеют одинаковую фиксированную длину.
Сами все эти декодеры реализуются в аппаратном исполнении.
