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

Difference among activity and sequence diagram, a. Activity diagram: Activi...

a. Activity diagram: Activity diagram is used for functional modelling. Captures the process flow. b.  Sequence diagram :  Sequence diagram is  used for dynamic modeling.

Object-oriented control architecture for ams manufacturing, Object-Oriented...

Object-Oriented Control Architecture For Ams Manufacturing Introduction     In recent past, the industrial sectors have started presenting additional inclination toward

Determine about the term- voice synthesis, Voice synthesis Loud speakers ...

Voice synthesis Loud speakers and special software are used to output information in the form of sound to help blind and partially-sighted people; it also helps people who have d

Explain about the links and association, Links and Association Links a...

Links and Association Links and associations are the basic means used for establishing relationships among objects and classes of the system. In the next subsection we will di

What are digital signatures and its uses, What are Digital Signatures and i...

What are Digital Signatures and its uses? A digital signature is an electronic quite than a written signature which can be used through someone to authenticate the identity of

History of e-commerce, In 1960: The purpose of e-commerce was to exchange t...

In 1960: The purpose of e-commerce was to exchange the electronic data. In 1970s: Electronic Fund Transfers or EFT was developed which considered as huge impact in the emerging

Explain communications and synchronization, Communications Parallel t...

Communications Parallel tasks normally have to exchange data. There are various manners in which this can be achieved like over a network or through a shared memory bus. The

Enumerate the design reusability of vhdl, Enumerate the Design reusability ...

Enumerate the Design reusability of VHDL VHDL.  Functions  and  Procedures  may  be  placed  in  a  package  so  that  they  are  available  to  any design-unit which wishes t

Back propagation learning routine, Back propagation Learning Routine - Aart...

Back propagation Learning Routine - Aartificial intelligence As with perceptrons, the information in the network is stored in the weights, so the learning problem comes down to

Write a program using linq to find the sum of first 5 prime , Class Program...

Class Program { static void Main() { int[] MyPrimeNumbers = {1,2,3,5,7}; // Use the Count() and Sum() Standard Query Operators to // compute the count an whole su

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