Ciprico Rimfire 3880 Manuel D’Utilisation

Page de 230
User’s Guide
21020285 D
Chapter 4   Command Operation
 
Using a Command List Structure
 Page 4 - 21
Using a 
Command List 
Structure
The Command List Structure is a fast method of sending commands to the 
RF3880 adapter. This section explains usage of the indexes. It also details 
command issuing procedures. 
Index
Guidelines
These guidelines explain the use of the Command List Indexes:
The respective IN and OUT indexes for the Parameter and Status Blocks 
control each respective circular list. The number placed in each index 
points to an element in an array: a 0 is the first element in an array; 1 is 
the second element in an array; etc.
The IN indexes indicate the next free block of the array to be written from 
the Host side (Parameter Block) or from the adapter side (Status Block). 
The OUT indexes point to the next block of an array to be read in to the 
Host side (Status Block) or to the adapter side (Parameter Block). 
The IN and OUT Indexes are manipulated with standard circular list 
algorithms; If IN is equal to OUT, the list is empty; if IN is equal to OUT 
minus one (modulo list size), the list is full.
The Host side is responsible for updating the Parameter Block IN Index 
and the Status Block OUT Index.
The RF3880 adapter updates the Parameter Block OUT Index and the 
Status Block IN Index. These indexes must not be changed from the Host 
side.
The Parameter Block OUT Index is not necessarily changed at the time 
a command is accepted or for each command read onto the board. To 
reduce system bus activity the adapter performs this action only 
periodically to keep the list from filling up. Therefore, change in the OUT 
Index cannot be used to signal command acceptance.
Command
Guidelines
Use the following guidelines when issuing commands via Command List:
Several commands can be loaded into the Parameter Block array at once 
and issued with a single write of 1 to the Channel Attention Port.
Similarly, the adapter can return several Status Blocks at once; there may 
not be an interrupt received for each Status Block. However, you may 
also receive several interrupts in a row.
The issue of commands and receipt of status occurs asynchronously; there 
are no timing restrictions on either.
The number of possible Parameter and Status Blocks is indicated by the 
two counter fields: Number of Parameter Blocks; and Number of Status 
Blocks.