Software Archive
Read-only legacy content
17061 Discussões

Determining a processor's core stepping

jfpoole
Principiante
464 Visualizações
Hi,

Does anyone know how a program can determine a processor's core stepping? There's no documentation for it in the cpuid instruction, but I've seen a couple of different applications return it, so it's got to be possible.

Thanks,
John
0 Kudos
2 Respostas
Frank_W_Intel
Funcionário
464 Visualizações

If your trying to associate a value to a code name or brand string, then your correct it is not documented.

Otherwise execute the CPUID instruction with EAX initialized to 1. Upon completion of the CPUID(1) function, the EAX register is loaded with the extended family, extended model, type, family, model and stepping.

Software must read EAX and compose the resultant 8-bit family value, 8-bit model value and 4-bit stepping value.

Family = CPUID(1).EAX[27:20] + CPUID(1).EAX[11:8]

Model = (CPUID(1).EAX[19:16] << 4) + CPUID(1).EAX[7:4]

Stepping = CPUID(1).EAX[3:0]

This is documented in the IA-32 Intel Architecture Software Developer's Manual, volume 2A.

levicki
Contribuidor valorado I
464 Visualizações
You have to make table with stepping names and compare against family, model and stepping returned by CPUID. There is no other way.
Responder