Synchronous and Asynchronous Data Transfer
Synchronous and Asynchronous Data Transfer
Maninder Kaur
[email protected]
24-Nov-2010 www.eazynotes.com
24-Nov-2010
In a digital system, the internal operations are synchronized by means of clock pulses supplied by a common pulse generator. In a computer, CPU and an I/O interface are designed independently of each other. If the registers in the interface share a common clock with the CPU registers, the data transfer between two units are said to be synchronous.
2
www.eazynotes.com
24-Nov-2010
In a computer system, CPU and an I/O interface are designed independently of each other. When internal timing in each unit is independent from the other and when registers in interface and registers of CPU uses its own private clock. In that case the two units are said to be asynchronous to each other. CPU and I/O device must coordinate for data transfers.
3
www.eazynotes.com
24-Nov-2010 www.eazynotes.com
Strobe Control: This is one way of transfer i.e. by means of strobe pulse supplied by one of the units to indicate to the other unit when the transfer has to occur.
Handshaking: This method is used to accompany each data item being transferred with a control signal that indicates the presence of data in the bus. The unit receiving the data item responds with another control signal to acknowledge receipt of the data.
4
STROBE CONTROL
24-Nov-2010
Strobe control method of data transfer uses a single control signal for each transfer. The strobe may be activated by either the source unit or the destination unit.
Source Initiated Strobe Destination Initiated Strobe
www.eazynotes.com
Data bus
Source Unit
Strobe
Destination Unit
5
24-Nov-2010 www.eazynotes.com
The data bus carries the binary information from source unit to the destination unit as shown below. The strobe is a single line that informs the destination unit when a valid data word is available in the bus.
Timing diagram Data
Valid data
Strobe
24-Nov-2010
The source unit first places the data on the bus. After a brief delay to ensure that the data settle to a steady value, the source activities the strobe pulse.
www.eazynotes.com
The information of the data bus and the strobe signal remain in the active state for a sufficient time period to allow the destination unit to receive the data.
The source removes the data from the bus for a brief period of time after it disables its strobe pulse.
24-Nov-2010 www.eazynotes.com
First, the destination unit activates the strobe pulse, informing the source to provide the data. The source unit responds by placing the requested binary information on the unit to accept it.
The data must be valid and remain in the bus long enough for the destination unit to accept it.
The falling edge of the strobe pulse can be used again to trigger a destination register. The destination unit then disables the strobe. The source removes the data from the bus after a predetermined time interval.
24-Nov-2010 www.eazynotes.com
Strobe
Block diagram
9
HANDSHAKING
24-Nov-2010
In case of source initiated data transfer under strobe control method, the source unit has no way of knowing whether destination unit has received the data or not. Similarly, destination initiated transfer has no method of knowing whether the source unit has placed the data on the data bus. Handshaking mechanism solves this problem by introducing a second control signal that provides a reply to the unit that initiate the transfer. There are two control lines in handshaking technique:
www.eazynotes.com
10
24-Nov-2010
Handshaking signals are used to synchronize the bus activities. The two handshaking lines are data valid, which is generated by the source unit, and data accepted, generated by the destination unit. The timing diagram shows exchange of signals between two units.
www.eazynotes.com
11
24-Nov-2010 www.eazynotes.com
Data
Valid data
Timing diagram
Strobe
12
Data accepted
24-Nov-2010
www.eazynotes.com
The source unit initiates the transfer by placing the data on the bus and enabling its data valid signal.
The data accepted signals is activated by the destination unit after it accepts the data from the bus.
The source unit then disables its data valid signal, which invalidates the data on the bus. The destination unit the disables its data accepted signal and the system goes into its initial state.
13
Source Unit
Destination Unit
Place data on bus. Enable data valid
www.eazynotes.com
14
Sequence of events
24-Nov-2010
In this case the name of the signal generated by the destination unit is ready for data. The source unit does not place the data on the bus until it receives the ready for data signal from the destination unit. The handshaking procedure follows the same pattern as in source initiated case. The sequence of events in both the cases is almost same except the ready for signal has been converted from data accepted in case of source initiated.
www.eazynotes.com
15
24-Nov-2010 www.eazynotes.com
Timing diagram
Data valid
Data bus
16
Source Unit
Destination Unit
www.eazynotes.com
17
18
24-Nov-2010 www.eazynotes.com