National Instruments NI-VXI Network Card User Manual


 
Chapter 3 Software Overview
© National Instruments Corporation 3-9 NI-VXI User Manual
Figure 3-1 gives a precise description of this two-level mutual
exclusion algorithm. Notice that this mutual exclusion is on a per
logical address basis. Any number of logical addresses can have Word
Serial transfers in progress without conflict. If the application is to be
compatible with IEEE 488.2, the application must perform trigger and
write calls in sequential order.
WSwrt, WSwrtf WStrg WSrd, WSrdf
Wrt and Trg Exclusion
Write and trigger ordering for IEEE 488.2
compatible operation must be done by the
application. No attempt is made to order or
perform mutual exclusion between write and 
trigger calls. In addition, no mutual exclusion
is done between multiple writes or multiple
triggers. No more than one write or trigger
call may be pending at any one time (per
logical address).
Local CPU VXI A16 Window
VXIbus
Remote Word Serial Hardware
WScmd, WSclr,
WSLcmd, WSEcmd
Rd/Wrt/Trg Exclusion
Command Priority Override
All Word Serial command functions have priority over the read
and write functions. If a command call is underway, all read
and write calls will be suspended until the command transfer
is complete. If a read or write call is already underway when
a command call is made, the command call will cause the read
or write call to suspend before the next individual read or write
command/query is sent (Byte Available for WSwrt, WSwrtf, or
Byte Request for WSrd, WSrdf). When the command transfer is
complete, the read or write call will continue exactly from where
it was suspended. No mutual exclusion is done between multiple
command calls. The application must guarantee that only one
command call is pending at one time.
Read held off if write or trigger underway. Write and trigger
held off if read underway. No mutual exclusion is done between
multiple reads or multiple writes and triggers. No more than
one read call may be pending at any one time (per logical
address). No more than one write or trigger call may be
pending at any one time (per logical address).
Figure 3-1. Preemptive Word Serial Mutual Exclusion (Per Logical Address)
The Commander Word Serial functions are fully reentrant and
preemptive on a per logical address basis. Any number of logical
addresses can have Commander Word Serial functions in progress
without conflict.
Because Commander Word Serial is a protocol involving extensive
polling, support has been added for a round-robin effect of
Commander Word Serial function calls. If a particular logical address
does not respond within a set number of polls to a particular Word
Serial command or query, the process is suspended and another process
(possibly with a different Commander Word Serial call in progress) can
continue to execute. The amount of time for which the process is
suspended is dependent upon the operating system. When the original
process is resumed, the polling will continue. The polling will continue