Browse Prior Art Database

Method for a history register file

IP.com Disclosure Number: IPCOM000127011D
Publication Date: 2005-Aug-17
Document File: 6 page(s) / 60K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a method for a history register file. Benefits include improved functionality and improved performance.

This text was extracted from a Microsoft Word document.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 43% of the total text.

Method for a history register file

Disclosed is a method for a history register file. Benefits include improved functionality and improved performance.

General description

              The disclosed method automatically stores the values in general purpose registers (GPRs) into separate register files. As a result, the values can be reused. No additional move instructions are required.

Advantages

              The disclosed method provides advantages, including:

•             Improved functionality due to providing a very fast, associative register cache

•             Improved functionality due to providing the automatic storage of the historical values of GPRs

•             Improved performance due to storing values to history registers using one clock cycle

•             Improved performance due to requiring only a move from the history registered to perform a pop operation

Detailed description

              The disclosed method associates at least one history register with each GPR. Storing an old value in a history register can be an implicit action with every modification of a GPR. If the depth of the history register file is greater than one, storing previous values is propagated through the history register set associated with the updated GPR (see Figure 1).

              The explicit disabling and enabling of this capability is available so that a history register can store a particular value for a specified time period. The explicit action can be designated, using additional bits within an instruction. The stored old value must be accessible as a parameter for any operation. As a result, additional instructions are required to take advantage of the history register file. Additionally, the use of an extended history set requires some extensions and simplification to the register renaming technique.

              The history registers can be used as a short automatic push stack in some compilations or executions. For example, the depth of a stack can be equal to the depth of history register file.

              Other architectures may require alterations to the implementation. Additional instructions operating on the history registers arrive as micro-operations. The push action in the pipeline is deferred while a value is pushed to the history register. The pop operation arrives when the appropriate value is stored within one of the history registers. Only the retrieval of the value from the register is required. This technique requires storing the appropriate stack pointers associated with the history registers. The pointers must be associatively searched for a particular stack address (see Figure 2).

              The disclosed method includes an additional caching capability that is realized with the history registers. This caching is very fast because storing within the history registers is automatic and takes one clock cycle or less. Because the history register file is located close to the GPR, the processing cost of associative detection and retrieving...