3. Two Ways of Asynchronous Transfer
3
1. Strobe Signal
It has only one control signal for initiating the
data transfer
2. Handshaking
It has two control signal for communication
4. Strobe Control
4
•Single control line for transfer.
•Either the source or the destination can initiate the transfer.
•Let us see the block diagram and the timing diagram.
Source
unit unit
Data bus
Strobe
Block Diagram
Source-Initiated Strobe
for Data Transfer
Destination
Destination-Initiated Strobe
for Data Transfer
Source
unit
Data bus
Strobe
Block Diagram
Destination
Unit
Data
Strobe
Valid data
Timing Diagram
Data
Strobe
Valid data
Timing Diagram
Memory Write control signals from CPU to
Memory.
Memory Read control signals from Memory
to CPU.
5. Working of Strobe
5
Data Transfer by Source ( Destination)
1. Source places the data on the data bus.
2. Then it activates the strobe pulse.
3. Both data and the strobe remains active for sufficient period of time
so that the destination unit can receive it.
4. Destination uses the falling edge of the strobe pulse to transfer the
data to its register.
5. Then the source removes the data from the data bus.
6. Then it disables the strobe signal.
Data Transfer by Destination
1. Destination activates the strobe pulse informing the source to
provide data.
2. Source responds by placing the data.
3. The data will remain in valid state for sufficient clock pulse.
4. Falling edge may be used to transfer the data.
5. Destination then disable the strobe pulse.
6. Disadvantage of Strobe
6
• Source does not know whether destination has received the data item that is
placed in the bus.
• Destination that initiates the transfer do not know whether the source has
places the data.
• Handshake solves this problem.
Handshake
Basic Principle – two control signal for data transfer
1. One control line as the same direction of data flow from source to
destination.
It is used to inform the destination whether there is valid data in data bus.
2. Another control signal from the destination to source.
It is used to inform the source whether it had accepted data.
Let us see the block diagram, timing diagram and sequence
diagram.
7. Source initiated transfer
7
Block Diagram Source
unit unit
Data accepted
Data valid
Data Bus
Data bus
Data valid
Data accepted
Valid data
Timing Diagram
Sequence of Events Place data on bus
Enable data Valid.
Source unit
Destination unit
Accept data from bus
Enable Data Accepted.
Disable data valid
Invalidate data on bus.
Disable data accepted
Ready to accept data
8. 8
* Allows arbitrary delays from one state to the next
* Permits each unit to respond at its own data transfer rate
* The rate of transfer is determined by the slower unit
Handshake
9. Destination initiated transfer
9
Block Diagram
Timing Diagram
Sequence of Events
Source
Unit Unit
Destination
Data bus
Ready for data
Data valid
Ready for data
Data valid
Data bus Valid data
Place data on bus
and enable data valid.
Ready to accept data.
Disable data valid.
(initial state).
Accept data from bus.
Disable ready for data.
Source unit Destination unit
10. Advantage of Handshake
10
• Handshaking provides high degree of flexibility and
reliability because the successful completion of the data
transfer relies on the active participation by both the
units.
• If one unit is faulty data transfer will not be completed.
•Time out mechanism helps to detect the faulty system.
•Time out is implemented by the internal clock that
starts counting time when the unit enables one of its
handshaking control signal. If the return handshake
does not respond with in the time it assumes an error
occurred.