Home »
Embedded Systems
Handshaking in Computer architecture
In this tutorial, we will learn about the handshaking process which is followed inside the processors and other communicating devices while exchanging the data within them. We will study what does handshaking means concerning microprocessors and how this process takes place within different components inside a computer system?
By Monika Sharma Last updated : May 22, 2023
Handshaking
In a normal lifestyle, handshaking resembles establishing communication or a friendly bond between two people. In terms of the computer system also, it means somewhat the same. Through handshaking, a communication link is established between two different components of a computer. This communication is the transfer of data.
So, in the handshaking process, first, a strobe signal is sent by the source channel to the destination. Then, the destination sends back the acknowledgment that the signal has been received with a signal informing whether the destination channel is free or not for receiving the data. By following these steps, communication is established between the sender and the receiver ends and then the further transfer of data takes place within the two through the data bus.
It should be noted here that although this handshaking may look similar to the three-way handshaking process between different networks, here the case is different. Here, the communication is being done within the different components of the same system which are connected via physical means (through cables and cords). However, there may exist wireless communication between the components of the same system also as we have emerging technologies every day.
Types of handshaking process
There are two types of handshaking process:
- Source Initiated Handshaking
- Destination Initiated Handshaking
1) Source Initiated Handshaking Process
In the source Initiated the handshaking process, the source initiated the process of establishing the connection. This means that, in this process, the sender needs to send the data and so the handshaking process is initiated by the sender. So, in this process, after sending the valid data, the receiver sends the acknowledgment that the data has been received. Hence, the signals 'DATA VALID' is sent by the sender before sending the data and the signal 'DATA ACCEPTED' is sent by the receiver after getting the data.
2) Destination Initiated Handshaking Process
In the destination Initiated the handshaking process, the process of establishing the connection is initiated by the destination. What this means is that, in this process, the receiver needs to receive the data form the sender, hence the handshaking process is initiated by the receiver. So, in this process, the receiver has to first send the request signal to the source channel. After that, the source sends the 'DATA VALID' signal before sending the data and the receiver then again sends a signal 'DATA ACCEPTED' after the data is received by it.