Use of large register file, Computer Engineering

Assignment Help:

Generally the register storage is faster than cache andmain memory. Also register addressing uses much shorter addresses than addresses for cache and main memory. Though the numbers of registers in a machine are less as usually the same chip comprise the ALU and CU.  So a strategy is required that will optimize register use and so, allow most frequently accessed operands to be kept in registers so as to minimize register-memory operations.

Such optimisation can either be entrusted to an optimising compiler that necessitates techniques for program analysis; or we can follow some hardware related techniques. The hardware approach will need the use of more registers so that more variables can be held in registers for longer periods of time. This scheme is used in RISC machines.

Apparently the use of a large set of registers must lead to fewer memory accesses though in general about 32 registers were considered optimum. So how does this large register file further optimize program execution?

As most operand references are to local variables of a function in C they are obvious choice for storing in registers. A number of registers can also be used for global variables. Though the problem here is that program follows function call - return so local variables are related to most recent local function in addition this call - return expects saving the context of calling program and return address. This also needs parameter passing on call. On return from a call the variables of calling program should be restored and results should be passed back to calling program. 

RISC register file offers a support for such call- returns with help of register windows. Register files are broken in multiple small sets of registers as well as assigned to a different function. A function call spontaneouslyalters each of these sets. The usefrom one fixed size window of registers to another instead of saving registers in memory as done in CISC. Windows for adjacent procedures are overlapped. This feature permits parameter passing without moving the variables at all.


Related Discussions:- Use of large register file

General considerations for research -artificial intelligence, General Consi...

General Considerations for Research -artificial intelligence: If we can specify the initial state, the operators or a consumer and the goal check for a search problem, that al

What are the dynapro keywords, What are the dynapro keywords? FIELD, MO...

What are the dynapro keywords? FIELD, MODULE, SELECT, VALUES and CHAIN are the dynapro keywords

Show select tag and pull down lists, The next type of input is a Pull Down ...

The next type of input is a Pull Down List. With this type you have to employ in place of and it also has a closing tag. This control is used when we have a

Explain about the biometrics, Explain about the Biometrics  This inclu...

Explain about the Biometrics  This includes obtaining data and identifying characteristics automatically in security systems e.g. use of palm prints, finger prints, facial ima

Prove, state and prove distributive law?

state and prove distributive law?

What is semaphores, What is semaphores?  A semaphore 'S' is a synchroni...

What is semaphores?  A semaphore 'S' is a synchronization tool which is an integer value that, apart from initialization, is accessed only by two standard atomic operations; wa

Describe ergonomic keyboards, Q. Describe Ergonomic Keyboards? Ergonomi...

Q. Describe Ergonomic Keyboards? Ergonomics is the study of environment, conditions as well as efficiency of workers. Ergonomics proposes that keyboard wasn't designed with hum

Explain the programmable rom (prom) - computer memory, Explain the Programm...

Explain the Programmable ROM (PROM) - Computer Memory? This is a kind of ROM that can be programmed using special equipment it can be written to, but only once and this is usef

Rule in a single direction - equivalences rules, Rule in a single direction...

Rule in a single direction - equivalences rules: Hence there the power to replace  sub expressions always allows use to prove theorems with equivalences: as given in the above

What is interrupt vector table, Interrupt vector table is always created in...

Interrupt vector table is always created in first 1K area of the memory. Explain why? When CPU receives an interrupt type number from PIC, it uses this number to look up corres

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd