National Instruments NI-VXI Network Card User Manual


 
Chapter 3 Software Overview
© National Instruments Corporation 3-39 NI-VXI User Manual
Figure 3-3 provides a graphical overview of the NI-VXI interrupt and
signal functions.
RouteVXIint()
VXI/VME Interrupts 1-7
Hardware
NI-VXI
Software
User
Application
VXIintHandlers SignalHandlers
NI-VXI base Interrupt Service Routines (ISR)
Local VXI Signals
EnableSignalInt()
DisableSignalInt()
RouteSignal()
EnableVXIint()
DisableVXIint()
EnableVXItoSignalInt()
DisableVXItoSignalInt()
SetVXIintHandler()
GetVXIintHandler()
DefaultVXIintHandler()
SignalEnq()
User
ISRs
(1 per VXI/VME interrupt level) (1 per logical address)
SetSignalHandler()
GetSignalHandler()
DefaultSignalHandler()
Signal Processor
Signal Queue
WaitForSignal()
If signal not on queue
enable monitor
block till received
else
SignalDeq()
return signal, mask
SignalDeq()
(uint16)signal
SignalEnq()
SignalDeq()
SignalJam()
(uint16)statusId
WaitForSignal()
(uint16)level, (uint32)statusId
(uint16)signal
(uint16)signal
Get SignalGet Status/Id
VXIintAcknowledgeMode()
Figure 3-3. NI-VXI Interrupt and Signal Model
WaitForSignal Considerations
The function
WaitForSignal
can be used to suspend a
process/function until a particular VXI signal (or one of a set of
signals) arrives. Any signals to be waited on should be routed to the
global signal queue. If the
RouteSignal
function has specified
for the signal to be handled by the interrupt service routine, the
WaitForSignal
call will not detect that the signal and the
process/function may block until a timeout.
WaitForSignal
attempts
to dequeue a signal of the specified type before the process/function is
suspended. If an appropriate signal can be dequeued, the signal is