Hazards of pipeline - computer architecture, Computer Engineering

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.

Posted Date: 10/13/2012 3:59:30 AM | Location : United States







Related Discussions:- Hazards of pipeline - computer architecture, Assignment Help, Ask Question on Hazards of pipeline - computer architecture, Get Answer, Expert's Help, Hazards of pipeline - computer architecture Discussions

Write discussion on Hazards of pipeline - computer architecture
Your posts are moderated
Related Questions
Explain the working of Dynamic RAM? A plain piece of hardware called a DRAM controller can be used to make DRAM behave more like SRAM and the job of the DRAM controller is to p

How to fetch random ID from table by SQL query Select * from Table_Name order by NewID()

Define MFC. To accommodate the variability in response time, the processor waits unless it receives an indication that the requested read operation has been done. The control s

What are the specifications/characteristics used by the manufacturers to describe a digital to analog converter? Explain each one briefly. Ans: D/A converter characteristics

What is e-brokerage? E-brokerage is an investment house that permits you to buy and sell stocks and get investment information from its Web site.

Firewalls use one or more of three methods to control traffic flowing in and out of the network:  Packet filtering - Packets (small chunks of data) are examined against a s

At the bottom of the toolbar there is a box with two lesser boxes and an arrow. The uppermost box displays the present foreground color; the lowermost box shows the present backgro

1. countdown Example: countdown(5,[5,4,3,2,1]).  NOTE - your function should be able to answer questions such as: ?- countdown(5,L).  2. count_occur Example: count_occur(7,[5,2,6

Question: (a) Prepare short notes on the model primitives in Director MX 2004. (b) Therefore using the box primitive write codes to prepare a new model resource of length 50

The implementation of a (non-recursive) binary search of an array. The assumption is that a given array is sorted. We want to see if a particular value, that we'll call the target