Register file

As a register memory (also register bank, Eng. Register file ) refers to a number of registers of a microprocessor, which are organized blocky usually and can be individually controlled via an address decoder. Register memory is thus to be distinguished from the register file of a microprocessor, as it addressed the registers of the register set for reasons of speed over direct control lines. The number of registers in a register file can not be chosen arbitrarily large, since as in the case of the register set register their addresses are used in opcodes and therefore not allowed to be arbitrarily large. To allow at least partially parallel access to multiple registers of a register memory, we used multi-port register file with multiple inputs and output ports.

If you want to use very large register file, so lends itself to the use of so-called occasionally register banks. Here, the register file is divided into a number of blocks, known as register banks. Different parts of the program such as main program, subroutines or exception handlers can now each be allocated exclusively to a register bank. Within such a bank can use relative addressing (ie addressing via the base address of each bank and an offset for the specific determination of the register ) so that the addresses do not become too large within a opcodes.

Sufficiently large within the register banks to the use of register renaming is possible.

  • Technical computer science
676454
de