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

Define wait protocol, Q. Define Wait protocol? The wait protocol is use...

Q. Define Wait protocol? The wait protocol is used for resolving conflicts that arise due to some multiprocessors requiring same resource. There are 2 kinds of wait protocols:

Background, Background, Examples and Hypothesis: Now we will switch of...

Background, Examples and Hypothesis: Now we will switch off with three logic programs. So very firstly, we will have the logic program representing a set of positive examples

Give examples of different parameter-passing mechanisms, Explain different ...

Explain different parameter passing mechanisms to a function with the help of example? The different parameter-passing mechanisms are given below: 1.   Call by value 2.

What is process, What is Process? Process: A process is a program in ...

What is Process? Process: A process is a program in execution. It is an active entity, represented through the value of the program counter and the contents of registers o

Operating system, what is batch system?how the disadvantage of batch system...

what is batch system?how the disadvantage of batch system are overcome in multi-programming operating system?also describe how multi-programmed operating system is milestone in dev

Define von neumann architecture, Von Neumann architecture was first majoran...

Von Neumann architecture was first majoranticipated structure for general-purpose computer. However before consideringmain components of von Neumann architecture let us first elabo

Evaluate the damping coefficient, A certain car has suspension modes which ...

A certain car has suspension modes which are uncoupled front to back.  When a person with a mass of 60 kg sits in the rear of a car, in the centre of the seat which is directly ove

Which datatype cannot be used to define parameters, Which datatype cannot b...

Which datatype cannot be used to define parameters. Type F datatype is not used to explain parameters.

Explain the virtual memory, What is virtual memory?  Virtual memory is ...

What is virtual memory?  Virtual memory is a technique that permits the execution of processes that may not be completely in memory. It is the separation of user logical memory

How do you traverse a btree in backward in-order, Put the node in the right...

Put the node in the right subtree Then, Put the root  Put the node in the left subtree

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