 Hello everyone. This is Vishwana Chauhan, Assistant Professor, Department of Computer Science and Engineering, Walchand Institute of Technology, Solapur. Now I am here to explain the asynchronous and synchronous pipeline models. At the end of this session, the students will be able to differentiate asynchronous and synchronous pipeline models. So, here we will focus on linear pipeline processor. So, linear pipeline processor in which the number of different stages they are connected in cascade. So, here we will see the different scenarios. The first model which is an asynchronous pipeline model. So, in case of asynchronous pipeline model, there are n number of stages like stage S1, stage S2, stage S3, S4 up to SK. So, total K number of stages are there. So, these stages are made up of combinational logic circuits and these stages are connected to each other. So, stage S1 is getting the input and it will forward to next stage which is S2. Similarly, S2 to S3, S3 to S4 up to last stage SK and here we will get the output, but we will see how it works. Now, initially the stage for example, the S1 stage sends the request which is called ready to next stage which is S2. So, this stage once it accepts this ready signal, then if it agrees then it will send the acknowledgement back to S1 and hence there is a agreement that is a handshake between stage S1 and S2 takes place and based on this now it will forward the data to its next stage which is S2. So, similarly S2 will forward to S3 based on the handshake signal. So, like this it will go on up to the last stage which is stage SK and at the end of last stage SK the final output will be delivered. So, this is how it is connected in streamline connection. So, S1 is connected to next stage then it is next stage like this. So, streamline connection is so next model will focus on synchronous pipeline model. So, here also we find the K number of stages, but the major difference is here latches are inserted between different stages. So, these stages are made up of combinational circuits and each latch is going to act as a buffer. So, it will pick the data from its previous stage and it will store here and it is going to forward to next stage as soon as it senses the then the signal is fed to latches and the data present in respect to latch will be forwarded to its next stage. So, this is happening at the same time. So, ideally all latches they are going to sense the pulse at the same time, but practically there is a slight difference in sensing the pulses. So, that difference we represent it as a small s which is offset. Now, here the one clock pulse is represented as tau. So, tau indicates total time taken to complete one clock pulse, but this clock pulse is divided into two parts. One is tau m and another is small d. This tau m indicates this is the delay, delay of stage and d indicates delay in latch. So, delay in latch plus delay in stage forms the total cycle which is called tau. So, this is how the synchronous model works. So, this is a reservation table for a four stage linear pipeline. So, along x axis we will find the time, time slot t 1, t 2, t 3, t 4 and along y axis we will find the different stages s 1, s 2, s 3, s 4. So, this x indicates that the stage s 1 is active during time slot t 1. After that the next stage will be active in time slot t 2. Then next s 3 will be active in time slot t 3, then s 4 in t 4 like this. Now, you will see the difference between asynchronous and synchronous model. In case of asynchronous model, the data flow between adjacent stages is controlled by hand shaking protocol as we saw. But in case of synchronous the clocked latches are used to interface between different stages. The second point the different amount of delay may be experienced in different stages in case of asynchronous model. But in case of synchronous approximately equal amount of delay is experienced in all the stages. Next third point the ready and acknowledgement signals are normally used for communication purpose in case of asynchronous and in case of synchronous no such signals are used. Fourth point the transfer of data to various stages is not simultaneous in case of asynchronous. But in case of synchronous all latches they are going to transfer the data to its next stage. The fifth point there is no concept of combinational circuit used in pipeline stages. So, here pipeline stages are combinational logic circuit. So, next we will focus on the term clock cycle and its timing control. So, here the formula is given t is equal to max of tau i where i is varying from 1 to k plus d which is equal to tau i plus d. As we saw the total time taken to one complete cycle is tau m plus d. So, where tau m was the maximum. So, that max is picked from all the tau i's of respective stages which is varying from 1 to k. So, among this the maximum tau value will be picked. So, plus d. So, here it is written as tau i plus d. So, this is the clock cycle period. So, we will focus on the next term which is clock squaring. So, as we saw the small s which indicates that this is the offset value once the pulse is applied to respective latches it own sense at the same time practically. So, that difference is denoted by small s. So, normally that value we call it as squaring. So, this tau value is selected in such a way that it should be in this range. For example, tau should be less than or equal to the latch delay plus the stage delay which is tau max plus s. And this tau value should be less than or is equal to tau m plus d t minus s. This is t minus s it indicates that this is the latch delay. So, this latch delay minimum t value minus sq will be taken plus tau i. So, normally the tau is selected in this range. So, think about this question in which of the following mode different amount of delay may be explained in different stages. Watch this video and write your answer. I hope you have written the answer. The answer is a synchronous model. So, next speed of efficiency and throughput. So, normally the linear pipeline which is having k stages and n task which requires k plus n minus 1 clock cycles. So, k plus n minus 1 into t that in gives the total time taken to execute all the instructions. So, that is tk. Similarly, in case of non-linear pipeline. So, k number of stages takes, performs the task and if there are n number of tasks. So, it will be total nk into t will be your time taken to complete all the instructions. So, the ratio of this t1 and tk that is non-linear to linear gives your speed of factor which is nk divided by k plus n minus 1. So, these are the references.