Design Issues of RISC                                                                                                                                   Print this page
  Last |  Next >>       

The use of a large register file:

For fast execution of instructions, it is desirable of quick access to operands.

There is large proportion of assignment statements in HLL programs, and many of these are of the simple form AB. Also there are significant number of operand accesses per HLL Statement.

Also it is observed that most of the accesses are local scalars. To get a fast response, we must have an easy excess to these local scalars, and so the use of register storage is suggested.

Since registers are the fastest available storage devices, faster than both main memory and cache, so the uses of registers are preferable. The register file is physically small, and on the same chip as the ALU and Control Unit. A strategy is needed that will allow the most frequently accessed operands to be kept in registers and to minimize register-memory operations.

Two basic approaches are possible, one is based on software and the other on hardware.

  • The software approach is to rely on the compiler to maximize register uses. The compiler will attempt to allocate registers to those variables that will be used the most in a given time period.
  • The hardware approach is simply to use more registers so that more variables can be held in registers for longer period of time.
    In hardware approach, it uses the concept of register windows.
 Last |  Next >>