Блок выборки команд

Выполнение любой команды ядром процессора начинается с выборки команды из подсистемы памяти (прежде всего из кэш-памяти команд L1К). РНК (регистр текущего номера команды) содержит виртуальный адрес текущего блока командной информации. Этот виртуальный адрес выдается в преобразователь виртуальных адресов в физические адреса (буфера TLB для кэш-памятей L1K, L1D)

Буфер TLB - это специальная кэш-память чисто ассоциативного типа. На вход этой кэш-памяти подается номер виртуальной страницы (старшие разряды виртуального адреса). Выполняется сравнение этого виртуального номера с содержимым каждой ячейки кэш-памяти. При удачном поиске из кэш-памяти извлекается номер физической страницы. К нему присоединяется смещение в странице (младшие разряды виртуального адреса), и физический адрес готов.

Буфер TLB может быть одноуровневым или двухуровневым. В современных ядрах процессоров емкость буфера TLB составляет десятки или даже сотни строк. Это означает, например, что будет быстрое преобразование виртуального адреса в физический адрес (ВА→ФА) для достаточно большого адресного пространства.

В случае неудачного поиска возникает прерывание. Обработка этого прерывания происходит в привелигированном режиме при отключенной кэш-памяти L1K. Время обработки этого прерывания очень большое. Время удачного преобразования виртуального адреса в физический адрес составляет (1 – 2) такта.

Физический адрес блока командной информации подается на вход кэш-памяти команд (L1K).

Кэш-память первого уровня во всех производительных ядрах разбита на два блока – кэш-память команд (L1K) и кэш-память данных (L1D) во избежание структурных конфликтов при одновременном обращении из разных стадий конвейера к первому уровню кэш-памяти.

При неудачном обращении к кэш-памяти команд L1K выполняется обращение к следующим уровням иерархии подсистемы памяти (кэш-памяти второго уровня L2, кэш-памяти третьего уровня L3, оперативной памяти).

Блок командной информации, как правило, это (16 – 32) байта, из кэш-памяти L1K заносится в буфер предварительной дешифрации.

После предварительной дешифрации блока команд (определены границы команд в блоке, их типы и другая необходимая информация) он направляется на входы основных дешифраторов команд.

 








Дата добавления: 2015-09-29; просмотров: 1287;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.