ia-32_instruction-set-ref_a-m

Ia-32_instruction-set-ref_a-m

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 3-12. For each version of architectural performance monitoring capability, software must enumerate this leaf to discover the programming facilities and the architectural performance events available in the processor. The details are described in Chapter 18, "Debugging and Performance Monitoring," in the Intel 64 and IA-32 Architectures Software Developer's Manual, Volume 3B. METHODS FOR RETURNING BRANDING INFORMATION Use the following techniques to access branding information: 1. Processor brand string method; this method also returns the processor's maximum operating frequency 2. Processor brand index; this method uses a software supplied brand string table. 3-180 Vol. 2 INSTRUCTION SET REFERENCE, A-M These two methods are discussed in the following sections. For methods that are available in early processors, see Section: "Identification of Earlier IA-32 Processors" in Chapter 14 of the Intel 64 and IA-32 Architectures Software Developer's Manual, Volume 1. The Processor Brand String Method Figure 3-8 describes the algorithm used for detection of the brand string. Processor brand identification software should execute this algorithm on all Intel 64 and IA-32 processors. This method (introduced with Pentium 4 processors) returns an ASCII brand identification string and the maximum operating frequency of the processor to the EAX, EBX, ECX, and EDX registers. Input: EAX= 0x80000000 CPUID False Processor Brand String Not Supported IF (EAX & 0x80000000) CPUID Function Supported True Extended EAX Return Value = Max. Extended CPUID Function Index IF (EAX Return Value 0x80000004) True Processor Brand String Supported OM15194 Figure 3-8. Determination of Support for the Processor Brand String Vol. 2 3-181 INSTRUCTION SET REFERENCE, A-M How Brand Strings Work To use the brand string method, execute CPUID with EAX input of 8000002H through 80000004H. For each input value, CPUID returns 16 ASCII characters using EAX, EBX, ECX, and EDX. The returned string will be NULL-terminated. Table 3-18 shows the brand string that is returned by the first processor in the Pentium 4 processor family. Table 3-18. Processor Brand String Returned with Pentium 4 Processor EAX Input Value 80000002H Return Values EAX = 20202020H EBX = 20202020H ECX = 20202020H EDX = 6E492020H EAX = 286C6574H EBX = 50202952H ECX = 69746E65H EDX = 52286D75H EAX = 20342029H EBX = 20555043H ECX = 30303531H EDX = 007A484DH " " " " " " "nI " "(let" "P )R" "itne" "R(mu" " 4 )" " UPC" "0051" "\0zHM" ASCII Equivalent 80000003H 80000004H Extracting the Maximum Processor Frequency from Brand Strings Figure 3-9 provides an algorithm which software can use to extract the maximum processor operating frequency from the processor brand string. NOTE When a frequency is given in a brand string, it is the maximum qualified frequency of the processor, not the frequency at whic...
View Full Document

This note was uploaded on 10/01/2013 for the course CPE 103 taught by Professor Watlins during the Winter '11 term at Mississippi State.

Ask a homework question - tutors are online