Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

hey I have been studying non linear instruction pipeline but I am confused in the collision vector and the state transition diagram that is used

hey I have been studying non linear instruction pipeline but I am confused in the collision vector and the state transition diagram that is used to decide the latency or after how many cycles the next instruction should go to the pipeline as input so I know the algorithm how to construct the collision vector that is nothing but a vector that stores for the pipeline instruction which cycle interval can be used to send the next instruction without collision with any previous instruction before it so the places i where the collision vector is 0 means this is allowed possible latency for the next instruction so we right shift the collision vector with that many places to get the collision vector for the next instruction and then take a OR with the initial collision vector to get the final collision vector for next of this next instruction sent at latency i this is what i think it is happening and in the graph we label the directed edge as ith latency so why we are taking a OR with the original collision vector maybe i think as the next of these two instructions should not collide with the third instruction and right shift by i places=> as that many cycles have already crossed so now the not allowed latency is shifted by i positions to the right and my another doubt is that the unique states other than the latency for the very first instruction for determining the next instruction collision vector we are taking logical or with the original state only after the shifted by i places for this collision vector why is that why are we not taking or with initial as well as the state we used to calculate the shifted by i positions collision vector for this state collision should not happen with initial as well as the next instructions as well isn't it can you clearify my understanding my question is if the intial collision vector is 1,0,0,1,0 and so for the 2nd instruction if I decide the latency as 1 then we are right shifting by one position and checking for sending the 3rd instruction which are the safe cycles combining both safe cycles of instruction 1 and 2 by taking logical 0r so for third instruction the collision vector becomes (1,0,0,1,0) or (0,1,0,0,1)=(1,1,0,1,1) for the third instruction the safe latency would be now right shift by 3 cycles of 1,1,0,1,1 i.e.0,0,0,1,1 so the 4th instruction the or should be taken combined of instruction 1 and 2 i.e 1,1,0,1,1 and 0,0,0,1,1 but in the algorithm what we do is taking the or of 0,0,0,1,1 with only the initial 1,0,01,0 why is that why the combined collsion vector of 1 and 2 is not used for the 3rd collison vector determination?

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions