Chapter 5
Issuing BlockTransfer Commands
5-2
For most operations, the host dictates to the BT module how much data is
to be transferred in a BT Read or Write. There are circumstances, such as
when first configuring a BT module, when the host allows the BT module
to specify the number of words to be transferred. This mode is called
Adapter Decide Length (ADL).
To perform an ADL block transfer, the host issues a
Host BT Read
or
Host
BT Write
to the scanner but specifies a
bt_data_len
of zero. If it is a
Host BT
Write
, the host also supplies as many as 64 words of data to be transfered.
If there are fewer words in
bt_write_data
in the command buffer than the
adapter requests, the scanner returns a confirmation with the error code:
MODULE_REQUESTED_TOO_MUCH_DATA
To prevent this error, we recommend that you place 64 words in
bt_write_data
in the command buffer so that ADL cannot cause this error.
Example:
The host wants to let the adapter decide the length of a BT Write. The host
supplies 16 words of data in
bt_write_data
, sets
bt_data_len
to 0 for Adapter
Decide Length, and sets command length to 35 (3 + (2 * 16 )). The scanner
notifies the adapter that it wants to perform an ADL BT Write. If the
adapter requests more than 16 words of data, which is all the host supplied,
the scanner rejects the adapter’s request and returns a confirmation to the
host with the error code
MODULE_REQUESTED_TOO_MUCH_DATA
.
The host application issues a
Host BT Write
command when it wants to
initiate a block transfer to an adapter. To match the response to the request
on completion of the block transfer, the host must supply:
the
logical rack address
the block-transfer module slot address
the data to write to the module
a unique transaction number
As many as 64 block-transfer commands can be queued at one time, with
the limitation of one BT per block-transfer module (as many as 16 BTs per
logical rack). The scanner sets a 4-second timer for each BT request. If
the timer expires before the BT exchange with the adapter completes, the
BT request is cancelled and a confirmation is returned to the host
indicating there was a BT timeout.
Adapter Decide Length
(ADL)
Host BT Write