Data hazards in computer architecture, Computer Engineering

Assignment Help:

Data hazards - computer architecture:

A main effect of pipelining is to alter the relative timing of instructions by overlapping their execution. This introduces control hazards  and data.  Data hazards take place  when the pipeline changes the  order of read/write accesses to operands so  that  the order differs from the order seen by in sequence  executing instructions on the un pipelined machine.

Assume the pipelined execution of these instructions:

2262_Data hazards in computer architecture.png

All of the instructions after the ADD instruction use the result of the ADD instruction (in R1). Instruction ADD writes the value of R1 in the WB stage (indicated black), and the SUB instruction reads the value at the time ID stage (ID sub). This difficulty is called a data hazard. Unless safety measures are taken to prevent it, the SUB instruction will read the incorrect value and try to use it.

The AND instruction is also affected by this data hazard. The write of R1 does not finish till the end of cycle 5 (indicated black). Therefore, the AND instruction that reads the registers during cycle 4 (ID and) will receive the incorrect result.

The OR instruction can be made to operate without incurring a hazard by a easy implementation technique. This technique is used to perform register file reads in the second half of the cycle, and writes in the first half. Because  WB  for ADD  both instruction  and ID or for OR are performed in 1 cycle 5, the write to register file by ADD instruction will perform in the first half of the cycle, and the read of registers by OR will perform in the second half of the cycle. The XOR instruction operates correctly, because its register read taken place in cycle 6 after the register write by instruction ADD.

The next page described forwarding, a technique to remove the stalls for the hazard involving the SUB and AND both instructions.

We will also categorize the data hazards and consider the cases when stalls cannot be removed. We will see what compiler can do to schedule the pipeline to ignore stalls.

A hazard is build whenever there is dependence amongst instructions, and they are close sufficient that the overlap caused by pipelining would change the order of access to an operand. Our instance hazards have all been with register operands, but it is also possible to build dependence by reading and writing the similar memory location. In DLX pipeline, though, memory references are always kept in order, prevent this type of hazard from arising.

All the data hazards described here involve registers within the CPU.  By convention, the hazards are named by the ordering in the program that has to be preserved by the pipeline.

797_Data hazards in computer architecture1.png

 


Related Discussions:- Data hazards in computer architecture

Explain the input stage of an ADC, Explain the Input Stage of an ADC. ...

Explain the Input Stage of an ADC. Ans. Input Stage- In ADC at the input stage, analog voltage can contain any value in a range although the digital output can contain

Database, I got a graduate level database assignment which is due at Dec 8,...

I got a graduate level database assignment which is due at Dec 8, 11:59p.m. Can you finish it on time in high quality?

Explain about param super computer, Q. Explain about PARAM Super computer? ...

Q. Explain about PARAM Super computer? PARAM is a high-performance, industry standard and scalable computer. It has developed from concepts of distributes scalable computers ma

Illustrate what is universal law of universal gravitation, Q. Illustrate wh...

Q. Illustrate what is the universal law of universal gravitation? Answer:- Declaration that any particle of matter in the universe attracts any other with a force varying

Prolog, Prolog: Still we can take our card game from the previous lect...

Prolog: Still we can take our card game from the previous lecture like a case study for the implementation of a logic-based expert system. So there the rules were: four cards

Time complexity, Take a look at the code and try to understand the logic, p...

Take a look at the code and try to understand the logic, particularly, the way scrambled words are disambiguated, i.e.., whether they are matched successfully against a correct wor

Determine octant to hexadecimal conversion, What is the Octant to hexadecim...

What is the Octant to hexadecimal conversion of 734 ? Ans. (734) 8      = (1 D C) 16 0001 ¦ 1101 ¦ 1100 1         D         C

Stencil duplicating, Stencil Duplicating Equipment Required Stenci...

Stencil Duplicating Equipment Required Stencil Duplicator Thermal copier (optional) Electronic stencil cutter Materials Stencil COPY paper Ink Clean

Sets and bags, Task: Sets and bags In mathematics, the notion of multis...

Task: Sets and bags In mathematics, the notion of multiset (or bag) is a generalisation of the notion of set. A bag is a special kind of container in which the items may be

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