background image

CPUID—CPU Identification

INSTRUCTION SET REFERENCE, A-L

Vol. 2A 3-203

A vendor identification string is also returned in EBX, EDX, and ECX. For Intel processors, the string is “Genuin-
eIntel” and is expressed:

EBX ← 756e6547h (* “Genu”, with G in the low eight bits of BL *)

EDX ← 49656e69h (* “ineI”, with i in the low eight bits of DL *)

ECX ← 6c65746eh (* “ntel”, with n in the low eight bits of CL *)

INPUT EAX = 80000000H: Returns CPUID’s Highest Value for Extended Processor Information

When CPUID executes with EAX set to 80000000H, the processor returns the highest value the processor recog-
nizes for returning extended processor information. The value is returned in the EAX register and is processor 
specific.

IA32_BIOS_SIGN_ID Returns Microcode Update Signature

For processors that support the microcode update facility, the IA32_BIOS_SIGN_ID MSR is loaded with the update 
signature whenever CPUID executes. The signature is returned in the upper DWORD. For details, see Chapter 9 in 
the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 3A

INPUT EAX = 01H: Returns Model, Family, Stepping Information

When CPUID executes with EAX set to 01H, version information is returned in EAX (see Figure 3-6). For example: 
model, family, and processor type for the Intel Xeon processor 5100 series is as follows:

Model — 1111B

Family — 0101B

Processor Type — 00B

See Table 3-9 for available processor type values. Stepping IDs are provided as needed.

Figure 3-6.  Version Information Returned by CPUID in EAX

OM16525

Processor Type 

0

3

4

7

8

11

12

13

14

15

16

19

20

27

28

31

EAX

Family (0FH for the Pentium 4 Processor Family)
Model 

Extended
Family ID

Extended

Model ID

Family

ID

Model

Stepping

ID

Extended Family ID (0)

Extended Model ID (0)

Reserved