First page Back Continue Last page Overview Graphics
Synchronous vs. Asynchronous
Synchronous data transfer - the sender and receiver follows the same clock signal
- supports high data transfer rate
- needs clock signal between the sender and the receiver
- requires master/slave configuration
Asynchronous data transfer - the sender provides a synchronization signal to the receiver before starting the transfer of each message
- does not need clock signal between the sender and the receiver
- slower data transfer rate
There are many serial data transfer protocols. The protocols for serial data transfer can be characterized as either synchronous and asynchronous. For synchronous data transfer, both the sender and receiver access data according to the same clock. Therefore, a special line for the clock signal is required. A master (or one of the senders) should provide the clock signal to all the receivers in the synchronous data transfer.
For asynchronous data transfer, there is no common clock signal between the sender and the receivers. When using asynchronous data transfer, the sender and the receiver first need to agree on a data transfer speed. This speed usually does not change after the data transfer starts. Both the sender and receiver set up their own internal circuits to make sure that the data access is follows the agreed upon conventions. However, just as some watches run faster than others, computer clocks also differ in accuracy. Even a very small difference can accumulate fast and eventually cause errors in data transfer. This problem is solved by adding synchronization bits at the beginning, middle or end of the data. Since the synchronization is done periodically, the receiver can correct the clock accumulation error. The synchronization information may be added to every byte of data or to every frame of data. Sending these extra synchronization bits may account for up to 50% data transfer overhead and hence slows down the actual data transfer rate.