Advanced Load Address Table
Encyclopedia
The advanced load address table (ALAT) is a functional unit in the Intel Itanium
Itanium
Itanium is a family of 64-bit Intel microprocessors that implement the Intel Itanium architecture . Intel markets the processors for enterprise servers and high-performance computing systems...

 processor architecture. It is implemented with an associative memory
Associative memory
Associative memory may refer to:* A type of memory closely associated with neural networks.* A recent technology that involves creating a memory of multiple databases, both structured and unstructured data, and making associations in a manner that is similar to the human brain's memory functions.**...

. The ALAT is used to store information related to advance load instructions, as part of the speculative execution
Speculative execution
Speculative execution in computer systems is doing work, the result of which may not be needed. This performance optimization technique is used in pipelined processors and other systems.-Main idea:...

 process.

An "advanced load" is a method aimed in reducing the latency of costly load operations. If there is a possibility that a data item will be required, the program may specify its advanced load, even before the confirmation that the item will be needed.

In the Itanium
Itanium
Itanium is a family of 64-bit Intel microprocessors that implement the Intel Itanium architecture . Intel markets the processors for enterprise servers and high-performance computing systems...

 architecture, this advanced load order may be issued by an ld.a instruction. This instruction allocates an entry in the advanced load address table and starts the data transfer. The ALAT is used to identify the address from where the data will be read, the length of the required data block, the destination register and the state of the load operation. The success of the advanced load may then be checked with a ld.c or chk.a instruction that looks for the related information in the ALAT.

The ALAT in the original Itanium processor was implemented by a two-way set-associative memory with 32 entries. In the Itanium 2, this unit was changed to a 32 entries fully associative structure. This design required extra hardware elements (longer memory tags, and more tag comparators
Digital comparator
A digital comparator or magnitude comparator is a hardware electronic device that takes two numbers as input in binary form and determines whether one number is greater than, less than or equal to the other number. Comparators are used in a central processing units and microcontrollers...

) but it improved performance of speculative programs since cache miss due to mapping conflicts is avoided.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK