National Instruments NI-VXI User Manual

Page 47

Advertising
background image

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

Advertising