ACC Programmer's Reference Guide

92 Chapter3
ZCOM Tables and Data Structures
Interface Table
IFIRQBUF, IRESPBUF, ISTDTBUF - DMA response buffers
These are response buffers that are written to by DM A read requests t o
theMuxinterfacecard.TheFIRQbuffercontainstheresultsofan
$FIRQ backplane transaction. The Response buffer contains the
response that provides the DAM with the completion status from the
Mux card firmware. The Status buffer contains the data returned from a
$STDT transaction. This data is updated into the physical terminal
tables by the DAM. The actual area being used is offset by the number of
bytes specified in IFBOFF. This area is accessed by the pointer set up in
the corresponding pointer fields IFIRQBP, IRESPBP, ISTDTBP. These
fields are not used for ACC E1/T1 cards.
ISCRATCH - Scratch area f or buffer alignment
This area is needed to insure that DMA buffers can be aligned on a
64-byte boundary. This is a requirement of the hardware.
IFPLOOK -Physicalterminaltablelookup
This table is used by the DAM during FIRQ processing to determine the
physical terminal table address based on the port and terminal number
passed back from the Mux interface. It is indexed by the value [(port
number * 8) + terminal number] for the 2/8-channel NIO and EISA ACC
cards. For the ACC E1/T1 and 8-Port PCI cards, it is simply indexed by
the terminal number. The DAM uses this table as an interrupt vector to
the PTT associated with an unsolicited interrupt (FIRQ). This table is
variable in size and is dynamically allocated from HP-UX kernel
memory. Usually only a few of the values in the array are used. Unused
entries are null filled. The LDM creates and initializes this table during
startup of the ZCOM subsystem. This table is not accessible by user
space applications.
This field is an array of pointers, which wil l be accessed by an array
index.