Hazards of pipeline - computer architecture, Computer Engineering

Assignment Help:

Hazards of pipeline - computer architecture:

Hazards: When a programmer (or compiler) writes assembly program code, they make the supposition that each instruction is executed before execution of the subsequent instruction is started. This supposition is invalidated by pipelining. When it causes a program to behave not correctly, this situation is known as a hazard. many techniques for resolving hazards such as stalling exist and forwarding.

Non-pipeline architecture is not efficient because some CPU components (modules) are idle as another module is active at the time instruction cycle. Pipelining does not fully cancel out idle time in a CPU but building those modules work in parallel improves program execution considerably.

Processors having pipelining are organized inside into stages which can semi-independently work on distant jobs. Each stage is organized and connected into a 'chain' so each stage's output is fed to another stage till the job is done. This organization of the processor permits overall processing time to be considerably reduced.

A deeper pipeline means that there are more stages in the pipeline, and so, fewer logic gates in each pipeline. It usually means that the processor's frequency may be increased as the cycle time is lowered. It happens due to the reason of fewer components in each stage of the pipeline; as a result the propagation delay is decreased for the whole stage.

Unluckily, not all of the instructions are independent. In a pipeline, finishing an instruction may need 5 stages. To operate at complete performance, this pipeline will required to run 4 subsequent independent instructions as the first is completing. If four instructions that do not depend on the output of the initial instruction are not available, the pipeline control logic has to insert a stall or wasted clock cycle into the pipeline till the dependency is resolved. Luckily, techniques like forwarding can considerably reduce the cases where stalling is needed. Whereas pipelining may in theory increase performance on a un pipelined core by a factor of the number of stages (presumptuous the clock frequency also scales with the number of stages), in fact, most of the code does not permit for ideal execution.


Related Discussions:- Hazards of pipeline - computer architecture

How to add a wait state when creating a verification point, 1. Start to mak...

1. Start to make the verification point. 2. In the confirmation Point Name dialog box, select Apply wait state to confirmation point. 3. Type values for the following option

Differentiate between the message and method in c++, Message in C++ : *...

Message in C++ : * Objects converse by sending messages to each other. * A message is sent to invoke a method in C++.   Method in C++: * Gives response to a message

Jsbjj, what are the output deice

what are the output deice

Explain the wap stack in brief, Discuss the WAP stack in brief. The pro...

Discuss the WAP stack in brief. The protocol stacks part implemented by WAP Stack for the WAP development and research platform. The protocol stack will be exploited into many

What is null pointer, What is NULL POINTER Inside main, a FILE * called...

What is NULL POINTER Inside main, a FILE * called file. Afterwards, the fopen function, passing it the path to data file, as well as "r", only intending to read from the file.

Binary floating-point number range, Q. Binary floating-point number range? ...

Q. Binary floating-point number range? Smallest Negative number   Maximum mantissa and maximum exponent     =    - (1 -2 -24 ) × 2 127   Largest negative number

List the steps needed to perform page replacement, List the steps needed to...

List the steps needed to perform page replacement. The steps required to perform page replacement are: 1. Find out which page is to be removed from the memory. 2. Perfor

Advantage of wrapping database calls into mts transactions, Advantage of wr...

Advantage of wrapping database calls into MTS transaction If database calls are complete within the context of a transaction, aborting the transaction will undo and changes that

Defined for a push button fields in the screen attributes, What is to be de...

What is to be defined for a push button fields in the screen attributes? A function code has to be described in the screen attributes for the push buttons in a screen.

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