Eliminating data hazards - computer architecture, Computer Engineering

Assignment Help:

Eliminating data hazards:

Forwarding

NOTE: In the following instance, computed values are in bold, whereas Register numbers are not.

Forwarding involves adding output data into a previous stage of the pipeline. For example, let's assume we desire to write the value 3 to register 1, (which already contains a six), and then add 7 to register 1 and hold the result in register 2, for instance

Instruction 0: Register 1 = 6

Instruction 1: Register 1 = 3

Instruction 2: Register 2 = Register 1 + 7 = 10

Following execution, register 2 would contain the value 10. Though, if Instruction 1 (write 3 to register 1) does not fully exit the pipeline before Instruction 2 begins execution, it means that Register 1 does not contain the value 3 when Instruction 2 performs its addition operation. In such type of event, Instruction 2 adds 7 to the old value of register 1 (6), and so register 2 would contain 13 instead for example Instruction 0: Register 1 = 6

Instruction 1: Register 1 = 3

Instruction 2: Register 2 = Register 1 + 7 = 13

This error takes place because before Instruction 1 has committed/stored Instruction 2 reads1 Register the result of its write operation to Register 1. Thus when Instruction 2 is reading the contents of Register 1, register 1 still contains 6, not 3.

Forwarding (described below) helps right such errors by depending on the fact that the output of Instruction 1 (which is 3) may be utilized by subsequent instructions before the value 3 is committed to/stored in Register 1.

Forwarding is implemented by putting back the output of an instruction into the previous stage(s) of the pipeline as soon as the output of that instruction is available.  Forwarding applied to our instance means that we do not wait to commit/store the output of Instruction 1 in Register 1 (in this instance, the output is 3) before making that output accessible to the subsequent instruction (in this particular case, Instruction 2). The effect is that Instruction 2 uses the right (the more recent) value of Register

1: the commit/store was made instantly and not pipelined.

With forwarding enabled, the ID/EX[clarification needed] stage of the pipeline now has 2 inputs: the value read from the register mention (in this instance, the value 6 from Register 1), and the new value of Register 1 (in this instance, this value is 3) which is sent from the next stage (EX/MEM)[clarification needed]. Additional control logic is utilized to determine which input to use.

813_Eliminating data hazards.png


Related Discussions:- Eliminating data hazards - computer architecture

Explain resource request and allocation graph (rrag), Explain Resource requ...

Explain Resource request and allocation graph (RRAG) Deadlocks can be explained by a directed bipartite graph known as a Resource-Request-Allocation graph (RRAG).A graph G = (V

A function declaration and function definition, Explain the difference betw...

Explain the difference between a function declaration and function definition.    Function declaration and Function definition:  A function declaration having the name of th

Which one logic gate can generate any logic function, A universal logic gat...

A universal logic gate is one, which can be used to generate any logic function.  Which one is a universal logic gate? Ans. NAND gate is a universal logic gate; it can generate

Develop an object-oriented design, Investigate the MIPS programmers model a...

Investigate the MIPS programmers model and develop an object-oriented design that will reflect aspects of the MIPS architecture. Consider the functional units of the architecture a

Value - elements of composition, Value Value is the relative amount of ...

Value Value is the relative amount of light and darkness in an image or a particular colour within an image. Value is also known as Tone and refers to the way the artist has re

Illustrates about metal fix, Illustrates about Metal Fix. A Metal Fix i...

Illustrates about Metal Fix. A Metal Fix implies that only the upper metal interconnects layers are influenced. Connections may be made or broken, but new cells may not be adde

Anti reflection coating, expression for thickness and refractive index of c...

expression for thickness and refractive index of coating material to act as anti reflection coating

Which important terminal required between dte and pstn, An important termin...

An important terminal that is required between DTE and PSTN is (A)  Server                                      (B) MODEM (C)  Relay

What is the need of modem in data communication, What is the need of MODEM ...

What is the need of MODEM in data communication? Need of Modem: Modems are utilized to interface computer networks, computers and other terminal equipment for radio channels

Zero address instruction format, Zero address instruction format is used fo...

Zero address instruction format is used for  (A) RISC architecture.      (B) CISC architecture.  (C) Von-Neuman architecture.   (D) Stack-organized architecture.

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