Shelving Buffer - Problems With Data Dependencies

Problems With Data Dependencies

Executing instructions in parallel (i.e. simultaneously) raises problems with data dependencies, meaning that some instructions may be dependent on the results of others, and hence care must be taken to execute in the correct order.

Take for example these sequence of instructions:

r1 = r2 + r3
r7 = r1 + r4

We have a RAW (Read After Write) data dependency here, meaning that we must wait for instruction 1 to finish before executing instruction 2, as we require the correct value of r1 (register 1). Hence these instruction cannot be executed simultaneously.

Read more about this topic:  Shelving Buffer

Famous quotes containing the words problems and/or data:

    Those great ideas which come to you in your sleep just before you awake in morning, those solutions to the world’s problems which, in the light of day, turn out to be duds of the puniest order, couldn’t they be put to some use, after all?
    Robert Benchley (1889–1945)

    To write it, it took three months; to conceive it three minutes; to collect the data in it—all my life.
    F. Scott Fitzgerald (1896–1940)