Problem occurs during pipelining , Basic Computer Science

Assignment Help:
While pipelining can cruelly cut the time taken to execute a program, there are troubles that cause it to not work as well as it possibly shall. The three stages of the instruction execution process do not essentially take an equal amount of time, with the time taken for ''execute'' being usually longer than ''fetch''. This makes it much harder to synchronize a variety of stages of the different instructions. Also, some instructions may be dependent on the results of other previous instructions. This can arise when data produced previous needs to be used, or when a conditional branch based on a previous result is used.
One of the easiest ways in which the effects of these troubles can be reduced is by breaking the instruction execution cycle into stages that are more possible to be of an equal duration.
Although, while this may resolve some of the troubles outlined above, it is not without creating further tribulations of its own. Initially, it is not always the case than an instruction will use all six of these stages. Easy load instructions, for example, will not require the use of the final ''write operand'' stage, which would perhaps upset the synchronization. There is also the matter of potential variances within the memory system, as three of the above stages (fetch instruction, fetch operands, write operand) need access to the memory. Many memory management systems would not permit three separate instructions to be accessing the memory immediately, and hence the pipelining would not be as useful as it would first seem.
On top of this, the difficulty of conditional branching and consequence dependant instructions also occurs. This means that the processor requires to be designed well so as to cope with these potential interruptions to the flow of data. As you can tell, there are many subjects which need to be taken into consideration involving to the technique of pipelining. While it is a powerful method for the purpose of increasing CPU performance, it does need careful design and consideration so as to achieve the best possible results.

Related Discussions:- Problem occurs during pipelining

Multithread 1:1 Model, Given an operating system that supports a one – to ...

Given an operating system that supports a one – to –one relationship between user-level threads and kernel – level threads and allows one or more threads from a process to issue b

Describe Priority Scheduling algorithm of operating system?, Priority Sched...

Priority Scheduling • The fundamental idea is straightforward: each process is assigned a priority, and priority is permitted to run. Equal-Priority processes are scheduled in FCF

Application software, Application Software:   Application software is ...

Application Software:   Application software is designed and developed to accomplish one or more specific task or solve a particular problem.    Application software may be

Abstraction is a popular way to organize concurrent programs, 1. The proces...

1. The process abstraction is a popular way to organize concurrent programs, but it is not the only choice. An alternative to the process abstraction is to design a single-threaded

Explain the construction of hard drive, Question 1 Classify and explain th...

Question 1 Classify and explain the different types of computers Question 2 List and explain the commonly used input devices Question 3 What is binary number system? Exp

Explain the terms sampling and aliasing, QUESTION (a) Consider a syste...

QUESTION (a) Consider a system with input x[n] and output y[n] that satisfy the difference equation:                                   Y[n] = x[n] + 0.5 x[n-2] + 0.2 x[n+1]

Operating system services, Operating system services: In this section ...

Operating system services: In this section we consider basic services supported by an operating system. There are many building blocks to be considered, not all of which will

Prelude to programming concepts and design 5th edition, Input a list of pos...

Input a list of positive numbers, terminated by 0, into an array numbers []. Then display the array and the largest and smallest number in it.

Components of a computer, COMPONENTS OF A COMPUTER: We use a computing...

COMPONENTS OF A COMPUTER: We use a computing system basically to feed in some data that is processed by the computer and some information is generated as a result.. For this w

Purchasing a database program, When purchasing a database program, you must...

When purchasing a database program, you must have a clear idea of what you need it for. Ask yourself the following questions. (1) Will it perform all (he operations necessary f

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