Assembler - язык неограниченных возможностей


. Другие команды - часть 4


Если ЕАХ = 2, CPUID на процессорах семейства Р6 возвращает в регистрах ЕАХ, ЕВХ, ЕСХ и EDX информацию о кэшах и TLB. Самый младший байт ЕАХ (регистр AL) указывает, сколько раз надо вызвать CPUID с ЕАХ = 2, чтобы получить информацию обо всех кэшах (1 для Pentium Pro и Pentium II). Самый старший бит (бит 31) каждого регистра указывает, содержит ли этот регистр правильную информацию (бит 31 = 0) или он зарезервирован (бит 31 = 1). В первом случае регистр содержит информацию в 1-байтных дескрипторах со следующими значениями:

    00h — Пустой дескриптор.

    01h — TLB команд, 4-килобайтные страницы, 4-сторонняя ассоциативность, 32 элемента.

    02h — TLB команд, 4-мегабайтные страницы, 4-сторонняя ассоциативность, 4 элемента.

    03h — TLB данных, 4-килобайтные страницы, 4-сторонняя ассоциативность, 64 элемента.

    04h — TLB данных, 4-мегабайтные страницы, 4-сторонняя ассоциативность, 8 элементов.

    06h — Кэш команд, 8 Кб, 4-сторонняя ассоциативность, 32 байта в строке.

    08h — Кэш команд, 16 Кб, 4-сторонняя ассоциативность, 32 байта в строке.

    0Ah — Кэш данных, 8 Кб, 2-сторонняя ассоциативность, 32 байта в строке.

    0Ch — Кэш данных, 16 Кб, 2-сторонняя ассоциативность, 32 байта в строке.

    41h — Унифицированный кэш, 128 Кб, 4-сторонняя ассоциативность, 32 байта в строке.

    42h — Унифицированный кэш, 256 Кб, 4-сторонняя ассоциативность, 32 байта в строке.

    43h — Унифицированный кэш, 512 Кб, 4-сторонняя ассоциативность, 32 байта в строке.

    44h — Унифицированный кэш, 1 Мб, 4-сторонняя ассоциативность, 32 байта в строке.

Совместимые с Intel процессоры AMD и Cyrix поддерживают вызов «расширенных функций» CPUID со значениями ЕАХ, в которых самый старший бит всегда установлен в 1.

    ЕАХ = 80000000h: Возвращает в ЕАХ максимальный номер расширенной функции CPUID, поддерживаемой данным процессором.




    - Начало -  - Назад -  - Вперед -