Method and apparatus for loading a segment register in a microprocessor capable of operating in multiple modes
AssigneeIntel Corporation
InventorsKamla Huck, Andrew F. Glew, Scott D. Rodgers
Life of this patent
Estimating the term…
Loading patent…
AssigneeIntel Corporation
InventorsKamla Huck, Andrew F. Glew, Scott D. Rodgers
Estimating the term…
A microprocessor contains an address generation unit, including a segment block, for loading descriptor data and a segment selector in a segment register. Two descriptor loads from a global descriptor table (GDT) and a local descriptor table (LDT) are executed. A 64 bit global descriptor from the GDT is loaded into a temporary register, and a 64 bit local descriptor from the LDT is also loaded into a separate temporary register. If a table indicator bit in the segment selector indicates use of the GDT, then the descriptor data from the GDT is selected. Alternatively, if the table indicator bit in the segment selector indicates the use of the LDT, then the descriptor data from the LDT is selected. The segment block splits the 64 bit descriptor data selected into two 32 bit quantities. The two 32 bit data quantities are input to a test programmable logic array (PLA). The test PLA checks for permission violations, or faults, and detects the need for special handling of the register segment load operation. If a fault violation occurs, the segment block signals a fault exception. If no fault is detected, then the segment block loads the two 32 bit descriptor data segments, along with the selector, into the appropriate segment register. If special handling is required, a conditional indirect branch is utilized to reach the handler.
A method for loading a segment register in a microprocessor operable in multiple modes, said method comprising the steps of:
An apparatus for loading a segment register in a microprocessor, wherein said microprocessor is operable in multiple modes, said apparatus comprising:
A microprocessor comprising:
Dependencies are inferred from the claim text.