Система команд x86 |
|
Программирование - Архитектура и система команд микропроцессоров x86 |
PREFETCH
Влияние команды на флаги и форматы команды:
|
|
|
|
|
|
0F 18 /1 |
PREFETCH0 m8 |
Загрузить данные из памяти m8 в КЭШ в режиме t0 |
Pentium III |
prefetch0 [ecx] |
0F 18 /2 |
PREFETCH1 m8 |
Загрузить данные из памяти m8 в КЭШ в режиме t1 |
Pentium III |
prefetch1 [ebx] |
0F 18 /3 |
PREFETCH2 m8 |
Загрузить данные из памяти m8 в КЭШ в режиме t2 |
Pentium III |
prefetch2 [ebp] |
0F 18 /0 |
PREFETCHNTA m8 |
Загрузить данные из памяти m8 в КЭШ в режиме nta |
Pentium III |
prefetchnta [esp] |
Описание:
Команда PREFETCH осуществляет предварительную выборку строки данных из памяти системы (адрес задается m8) в КЭШ процессора. Поддерживается четыре варианта команды PREFETCH:
- временные данные (t0) — загрузить данные как временные во все уровни КЭШ-иерархии;
- временные данные (t1) — загрузить данные как временные во все уровни КЭШ-иерархии, кроме уровня 0.
- временные данные (t2) — загрузить данные как временные во все уровни КЭШ-иерархии, кроме уровня 1 и 0;
- не временные данные (nta) — загрузить данные во все уровни КЭШ-иерархии.
Данная команда не оказывает влияния на состояние процессора, ее эффект скрыт и заключается в увеличении быстродействия при доступе к выбранным в КЭШ данным.
Гарантируется, что PREFETCH будет загружать в КЭШ не менее, чем 32-байта данных. Количество уровней иерархии КЭШ в разных моделях процессоров может быть различным, так что и действие PREFETCH различного уровня может отличаться, а может и быть идентичным. Попытка загрузки данных из некэшируемых областей системной памяти (UC, WC) игнорируется.
Операция:
FETCH (m8);
Особые ситуации защищенного режима:
Нет.
Особые ситуации режима реальной адресации:
Нет.
Особые ситуации режима V86:
Нет.
Все права защищены © Алексей Ровдо, 1994-2023. Перепечатка возможна только по согласованию с владельцем авторских прав. admin@club155.ru