Software Archive
Read-only legacy content
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
17060 Discussions

Determining a processor's core stepping

jfpoole
Beginner
521 Views
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 Replies
Frank_W_Intel
Employee
521 Views

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.

0 Kudos
levicki
Valued Contributor I
521 Views
You have to make table with stepping names and compare against family, model and stepping returned by CPUID. There is no other way.
0 Kudos
Reply