摘要:
A microprocessor employs an instruction redefinition register which programmably redefines the operation performed by one or more instructions. Instructions may be added to the instruction set executed by the microprocessor without consuming opcode encodings. One or more new instructions may be mapped to an opcode assigned to a redefinable instruction (e.g. a seldom-used instruction selected during the design of the microprocessor to be redefinable to one or more of the added instructions). A particular application program may select the architecturally defined operation corresponding to the redefinable instruction or one of the operations corresponding to the new operations by coding the instruction redefinition register. In one particular embodiment, the instruction redefinition register is a model specific register (MSR) as defined by the x86 microprocessor architecture. A frequently-used instruction may also be selected as a redefinable instruction for purposes of expanding the microprocessor resources available as operands of that instruction.
摘要:
A microprocessor in which a register file of the microprocessor includes a standard register set and an extension register set. The extension register set is available on an instruction-by-instruction basis based on the contents of an extension register key field of the microprocessor instruction. In one embodiment, the instruction set is compliant with an X86 type instruction set in all cases when the extension register key field is not equal to an extension register key value. A microprocessor comprises a register file and an instruction decode circuit. The register file includes a standard register set comprising a plurality of standard registers and an extension register set comprising a plurality of extension registers. The instruction decode circuit is adapted to receive a microprocessor instruction that includes an extension register key field. If the contents of the extension register key field is equal to an extension register key value, then the instruction decode circuit is configured to access the contents of a selected extension register of the extension register set in response to receiving the microprocessor instruction. If, on the other hand, the contents of the extension register key field equal a value other than the extension register key value, then the instruction decode circuit is configured to access the contents of a selected standard register of the standard register set in response to receiving the microprocessor instruction.
摘要:
A microprocessor is provided including a branch prediction unit configured to select one of multiple sets of condition flags for use by a branch instruction according to the segment register override prefix byte which may be included with the instruction. Branch instructions may be scheduled distant from the instruction which sets the condition flags tested by the branch instruction. Numerous instructions may be placed between the two instructions, such that the condition flags may be available at the time the instruction is fetched. The branch instruction may be executed without stalling until the condition flags are available. In another embodiment, the branch prediction unit is configured to predict the direction a branch instruction may take according to a branch prediction scheme. Additionally, upon detection of a segment override prefix byte, the branch prediction unit uses an alternative branch prediction scheme. The alternative branch prediction scheme may be to predict the branch taken if a particular segment register override prefix byte is detected, and to predict the branch not taken if another particular segment register override prefix byte is detected.
摘要:
A connecting joint for connecting two tubular members together has a pin and a box, each containing conical threaded sections. The pin and the box each has a locking section for locking the pin and box together during make-up. Each locking section has at least one circumferential profile with a crest. The crests are dimensioned so that they interfere with each during make-up. A shoulder locates below each crest. This shoulder is conical and opposite to the taper of the threaded section. The decree of taper of this shoulder is high relative to the longitudinal axis of the pin and box, requiring a large breakout force.
摘要:
A processing core of a plurality of processing cores is configured to execute a speculative region of code as a single atomic memory transaction with respect one or more others of the plurality of processing cores. In response to determining an abort condition for an issued one of the plurality of program instructions and in response to determining that the issued program instruction is not part of a mispredicted execution path, the processing core is configured to abort an attempt to execute the speculative region of code.
摘要:
A method is provided for identifying a first portion of a computer program for speculative execution by a first processor element. At least one memory object is declared as being protected during the speculative execution. Thereafter, if a first signal is received indicating that the at least one protected memory object is to be accessed by a second processor element, then delivery of the first signal is delayed for a preselected duration of time to potentially allow the speculative execution to complete. The speculative execution of the first portion of the computer program may be aborted in response to receiving the delayed first signal before the speculative execution of the first portion of the computer program has been completed.
摘要:
A subsea wellhead assembly that includes a wellhead housing, a production tree, a tubing hanger adapted to land in the wellhead assembly inside the wellhead housing, and a bore formed through the production tree having an inner diameter greater than the tubing hanger outer diameter. A hanger adapter may be included having an annular body disposed on the tubing hanger upper surface and a flange member projecting radially outward from the annular body.
摘要:
A system and method are disclosed wherein a processor of a plurality of processors coupled to shared memory, is configured to initiate execution of a section of code according to a first transactional mode of the processor. The processor is configured to execute a plurality of protected memory access operations to the shared memory within the section of code as a single atomic transaction with respect to the plurality of processors. The processor is further configured to initiate, within the section of code, execution of a subsection of the section of code according to a second transactional mode of the processor, wherein the first and second transactional modes are each associated with respective recovery actions that the processor is configured to perform in response to detecting an abort condition.
摘要:
A computer-implemented method and article of manufacture is disclosed for enabling computer programs utilizing hardware transactional memory to safely interact with code utilizing traditional locks. A thread executing on a processor of a plurality of processors in a shared-memory system may initiate transactional execution of a section of code, which includes a plurality of access operations to the shared-memory, including one or more to locations protected by a lock. Before executing any operations accessing the location associated with the lock, the thread reads the value of the lock as part of the transaction, and only proceeds if the lock is not held. If the lock is acquired by another thread during transactional execution, the processor detects this acquisition, aborts the transaction, and attempts to re-execute it.
摘要:
A system and method is disclosed for implementing a hardware transactional memory system capable of executing a speculative section of code containing both protected and unprotected memory access operations. A processor in a multi-processor system is configured to execute a section of code that performs a transaction using shared memory, such that a first subset of memory operations in the section of code is performed atomically with respect to the concurrent execution of the one or more other processors and a second subset of memory operations in the section of code is not. In some embodiments, the section of code includes a plurality of declarator operations, each of which is executable to designate a respective location in the shared memory as protected.