Source and Destination Initiated 2.3.2
Source and Destination Initiated 2.3.2
Source and Destination Initiated 2.3.2
2
Asynchronous Data Transfer Methods
The asynchronous data transfer between two independent units requires that control signals
be transmitted between the communicating units to indicate when they send the data. Thus,
the two methods can achieve the asynchronous way of data transfer.
The Strobe Control method of asynchronous data transfer employs a single control line to
time each transfer. This control line is also known as a strobe, and it may be achieved either
by source or destination, depending on which initiate the transfer.
a. Source initiated strobe: In the below block diagram, you can see that strobe is
initiated by source, and as shown in the timing diagram, the source unit first places
the data on the data bus.
After a brief delay to ensure that the data resolve to a stable value, the source activates
a strobe pulse. The information on the data bus and strobe control signal remains in
the active state for a sufficient time to allow the destination unit to receive the data.
The destination unit uses a falling edge of strobe control to transfer the contents of a
data bus to one of its internal registers. The source removes the data from the data bus
after it disables its strobe pulse. Thus, new valid data will be available only after the
strobe is enabled again.
In this case, the strobe may be a memory-write control signal from the CPU to a
memory unit. The CPU places the word on the data bus and informs the memory unit,
which is the destination.
b. Destination initiated strobe: In the below block diagram, you see that the strobe
initiated by destination, and in the timing diagram, the destination unit first activates
the strobe pulse, informing the source to provide the data.
The source unit responds by placing the requested binary information on the data bus.
The data must be valid and remain on the bus long enough for the destination unit to
accept it.
The falling edge of the strobe pulse can use again to trigger a destination register. The
destination unit then disables the strobe. Finally, and source removes the data from
the data bus after a determined time interval.
In this case, the strobe may be a memory read control from the CPU to a memory
unit. The CPU initiates the read operation to inform the memory, which is a source
unit, to place the selected word into the data bus.
2. Handshaking Method
The strobe method has the disadvantage that the source unit that initiates the transfer has no
way of knowing whether the destination has received the data that was placed in the bus.
Similarly, a destination unit that initiates the transfer has no way of knowing whether the
source unit has placed data on the bus.
So this problem is solved by the handshaking method. The handshaking method introduces a
second control signal line that replays the unit that initiates the transfer.
In this method, one control line is in the same direction as the data flow in the bus from the
source to the destination. The source unit uses it to inform the destination unit whether there
are valid data in the bus.
The other control line is in the other direction from the destination to the source. This is
because the destination unit uses it to inform the source whether it can accept data. And in it
also, the sequence of control depends on the unit that initiates the transfer. So it means the
sequence of control depends on whether the transfer is initiated by source and destination.
o Source initiated handshaking: In the below block diagram, you can see that 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 the timing relationship of the exchange of signals between
the two units. The source initiates a transfer by placing data on the bus and enabling
its data valid signal. The destination unit then activates the data accepted signal after
it accepts the data from the bus.
The source unit then disables its valid data signal, which invalidates the data on the
bus.
After this, the destination unit disables its data accepted signal, and the system goes
into its initial state. The source unit does not send the next data item until after the
destination unit shows readiness to accept new data by disabling the data accepted
signal.
This sequence of events described in its sequence diagram, which shows the above
sequence in which the system is present at any given time.
o Destination initiated handshaking: In the below block diagram, you see that the two
handshaking lines are "data valid", generated by the source unit, and "ready for
data" generated by the destination unit.
Note that the name of signal data accepted generated by the destination unit has been
changed to ready for data to reflect its new meaning.
The destination transfer is initiated, so the source unit does not place data on the data
bus until it receives a ready data signal from the destination unit. After that, the
handshaking process is the same as that of the source initiated.
The sequence of events is shown in its sequence diagram, and the timing relationship
between signals is shown in its timing diagram. Therefore, the sequence of events in
both cases would be identical.
Asynchronous Data Transfer in computer organization has the following advantages, such as:
o It is more flexible, and devices can exchange information at their own pace. In
addition, individual data characters can complete themselves so that even if one
packet is corrupted, its predecessors and successors will not be affected.
o It does not require complex processes by the receiving device. Furthermore, it means
that inconsistency in data transfer does not result in a big crisis since the device can
keep up with the data stream. It also makes asynchronous transfers suitable for
applications where character data is generated irregularly.
Disadvantages of Asynchronous Data Transfer
There are also some disadvantages of using asynchronous data for transfer in computer
organization, such as:
o The success of these transmissions depends on the start bits and their recognition.
Unfortunately, this can be easily susceptible to line interference, causing these bits to
be corrupted or distorted.
o A large portion of the transmitted data is used to control and identify header bits and
thus carries no helpful information related to the transmitted data. This invariably
means that more data packets need to be sent.
References
Reference Books:
J.P. Hayes, “Computer Architecture and Organization”, Third Edition.
Mano, M., “Computer System Architecture”, Third Edition, Prentice Hall.
Stallings, W., “Computer Organization and Architecture”, Eighth Edition, Pearson
Education.
Text Books:
Carpinelli J.D,” Computer systems organization &Architecture”, Fourth Edition,
Addison Wesley.
Patterson and Hennessy, “Computer Architecture”, Fifth Edition Morgaon Kauffman.
Other References