 Hello everyone. This is Vishwana Chavan, assistant professor, department of computer science and engineering, Walchand Institute of Technology, SolarPool. Now I am here to explain the collision free scheduling. At the end of this session, the students will be able to illustrate the diagram of given function, which is called state diagram. So here we are going to focus on two main terms. One is collision vector and another is state diagram. So we will focus on these two terms. So this is a state diagram for a given function x. So there are different states are there. We will see how these states are evaluated with example. So this is the given value, which is 1 0 1 1 0 1 0. This is the initial collision vector, which is given. And with respect to this initial collision vector, we will see how it arrived to its different states and how it come back so and so. So we will see one example. Now this is the initial collision vector. We will take this for our reference, which is called initial collision vector 1 0 1 1 0 1 0. Now this initial collision vector, which is having the binary values either 0 or 1. So we need to right shift this initial collision vector by 1 bit. And analyze further to find next state. So after right shifting this initial collision vector as shown in this diagram. So this rightmost 0 will be appear here and all these bits will be shifted 1 bit position. And so in place of leftmost position, which is kept blank where 0 will be inserted. 0 will be inserted and hence our next value will be 0 1 0 1 1 0 1 0. Here it is shown. And this 0 is represented here. And this column indicates that we got this value by right shifting 1 bit position of this initial collision vector. And if we observe this column, either we may get 0 or 1. So if we receive 0, then which is called permissible, which is called permissible. Similarly, next with respect to this value, we are right shifting another 1 bit, which is total 2 bit right shift with respect to this initial collision vector. And we arrive to 0 0 1 0 1 1 0. And this 1 will be shifted here. And this 1 with respect to this, we say that it is a collision. It is a collision. Similarly, after 3 bit right shift, we receive 0, which is permissible. Next 4 bit right shift of this initial collision vector, we will receive 1 here, which is called collision. Similarly, the next after 5 bit right shift of this initial collision vector, we receive these values. So we will get 1, which is collision. Next after 6 bit right shift 0 permissible, 7 bit right shift 1, which is collision. 8 bit right shift 0, which is permissible. Now like this, if we observe this table from shifting 1 bit 1 by 1 up to 8 bit right shift, we receive 0 and 1 here. 0 is permissible, 1 is collision, 1 is collision. So we need to avoid the collision. If there is a collision, then there should not be a next state. It should be avoided. So that's why it is called collision free should only. So to avoid this, we need to identify the permissible ways. So where we receive 0. So here 0 is there, 0 is there. One more after right shifting initial collision vector 3 times, we get another 0 and after this right shifting 6 bit position we will receive here. Then after 8 bit, we will receive 0 here. So these are the 4 different ways where it is allowed. And wherever one is there, that is collision. So we need to identify those collisions and we need to avoid it. So that is what is called collision free should only. Now we will see how to identify the next stage which is permissible, which is collision free. So for example, now this first row is initial collision vector. And the second row is initial collision vector which is right shifted by 1 bit position, R S right shifted by 1 bit position. So this value is right shifted by 1 bit position. After right shifting, this 0 will be that right shifted. So which is 0 is nothing but permissible. And this 1 will appear here next 0, next 1, this is 1, next 0, this is 1. And the leftmost bit which is right shifted by 1 bit vacant where the 0 will be inserted. So this is how the second row is formed. Now go for logical R between initial collision vector and the value which we got after right shifting the initial collision vector by 1 where 0 is identified. So go for logical R 0 1 1, 1 0 1, 0 1 1, 1 1 1, then 1 R with 0 1, 0 1, R 1, 1 0 1. And hence we got 1 1 1, 1 1 1, 1 7 1s. So this is our next state. This is our next state of the initial collision vector because after right shifting we got 0 which is permissible. If it is 1 which is collision so we cannot consider that. So after this, this will be our next state as we saw in the diagram. See here, all 1. So this is our initial collision vector. After this right shifting 1 bit position we got this state, isn't it? Now this is how we find the next state. So see here, 0 is there which is permissible. So that is by right shifting 1 bit and hence we got. Next 0 we are finding here, 3 third position. This is 1, 2 and third position. So if we go for third position, 3 times right shifting this initial collision vector and whatever value you are getting or with this initial collision vector then we will get next state as 1 0 1, 1 0 1 1. So that is why it is represented as 3. So this 3 indicates that after right shifting the initial collision vector 3 bit we will get 0 and that values out with the initial collision vector and this is the next state and hence it is marked as 3. Marked as 3. So this 3 is there then after that 3, 4, 5, 6th position we are getting 0. So go for shifting this 6 times whatever value we are getting take that value or with initial collision vector and you will get the next state which is 1 0 1 1, 0 1 1 and hence it is represented as 6 because it is shifted 6 times and it will come to this state. So next after 6, 7th is 1 neglected because there is a collision. Now after 8th you will receive all 0s all 0s and if you are with all 0 with this initial collision vector we will get the same value and hence it is shown here as 8 plus. So this plus indicates that it will come back to the same state after 8th right shift onwards because we will get all 0. So that is why you will come back to same position. So similarly here if you consider this initial state this as initial state then after right shifting 3 time we will come back to here because 0 is there after 6th you will come back to here itself because in 6th position there is a 0 and in this case if you right shift 8 bit position we will get 0 and hence it will come back to this state. This is how the state diagram can be drawn. So this is the circuit diagram of this state diagram. So here initial collision vector C 1, C 2 up to C n they are the input and the another input is given to this OR gate which is right shifted as we saw. So right shifted value with initial collision vector they are all and final result is stored here and the value which is right shifted the right most 0 value is considered for further because there is no collision. If it is 1 there is a collision and here in MSB position 0 is inserted. So this is how the circuit is going to work for the given operation. So define the collision vector. So pause this video and write your answer. So I hope you have written the answer. The answer is the collision vector is a method of analyzing how often we can initiate a new operation into pipeline and maintain synchronous flow without collision. So this is the state transition diagram for function y, the function y. This is the initial collision vector the same way as we saw go for same kind of operations right shifted to perform logical OR and you will get this as a state diagram for function y. These are the references. Thank you.