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

What is collective message passing, Q. What is Collective Message Passing? ...

Q. What is Collective Message Passing? In collective message passing all the processes of a group take part in communication. MPI offers a number of functions to apply the coll

Define encapsulation- object oriented technology, Define Encapsulation- obj...

Define Encapsulation- object-oriented technology Encapsulation also called as information hiding, is the characteristic of separating the external aspects of an object, from t

Illustrate benefits of register addressing mode, Q. Illustrate benefits of ...

Q. Illustrate benefits of register addressing mode? The key benefits of register addressing are: Register access is faster than memory access and henceforth register add

Define wilkes control unit, Q. Define Wilkes Control Unit? Prof. M. V. ...

Q. Define Wilkes Control Unit? Prof. M. V. Wilkes of the Cambridge University Mathematical Laboratory invented the term microprogramming in 1951. He offered a systematic altern

How is the command suppress-dialog useful, How is the command Suppress-Dial...

How is the command Suppress-Dialog useful? Suppressing whole screens is possible using this command.  This command permits us to perform screen processing "in the background".

Classify computer systems according to capacity, Classify computer systems ...

Classify computer systems according to capacity. How they are different from computers according to the classification of technology. Provide comparative study also

Explain direct memory access, Explain Direct Memory Access. A modest en...

Explain Direct Memory Access. A modest enhances in hardware enables an IO device to transfer a block of information to or from memory without CPU intervention. This task needs

Explain yet another compiler-compiler, Explain Yet another Compiler-Compile...

Explain Yet another Compiler-Compiler. YACC uses for "Yet another Compiler-Compiler": Computer program input usually has some structure; actually, all computer programs which

Electronic typewriter , Electronic typewriter : An electronic typewriter h...

Electronic typewriter : An electronic typewriter has a 'memory' or 'electronic brain' which enables it to recall the whole document at a time and type it automatically at the pres

Find the width of a time division space switch, I n a time division space s...

I n a time division space switch the size of the control memory is N and its Width:  (A) Log 10 M  (B) Log e M  (C) Log N M  (D) Log 2 M Where N are the ou

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