27
Data Device Corporation
www.ddc-web.com
BU-62743/62843/62864
A-03/03-1M
BC MESSAGE SEQUENCE CONTROL
The PCI Enhanced Mini-ACE BC message sequence control
capability enables a high degree of offloading of the host proces-
sor. This includes using the various timing functions to enable
autonomous structuring of major and minor frames. In addition,
by implementing conditional jumps and subroutine calls, the
message sequence control processor greatly simplifies the
insertion of asynchronous, or "out-of-band" messages.
EXECUTE AND FLIP OPERATION
The PCI Enhanced Mini-ACE BC's XQF, or "Execute and Flip"
operation, provides some unique capabilities. Following execu-
tion of this unconditional instruction, if the condition code tests
TRUE, the BC will modify the value of the current XQF instruc-
tion's pointer parameter by toggling bit 4 in the pointer.That is, if
the selected condition flag tests true, the value of the parameter
will be updated to the value = old address XOR 0010h. As a
result, the next time that this line in the instruction list is execut-
ed, the Message Control/Status Block at the updated address
(old address XOR 0010h), will be processed, rather than the one
at the old address. The operation of the XQF instruction is illus-
trated in FIGURE 4.
There are multiple ways of utilizing the "execute and flip" func-
tionality.One is to facilitate the implementation of a double buffer-
ing data scheme for individual messages. This allows the mes-
sage sequence control processor to "ping-pong" between a pair
of data buffers for a particular message. By so doing, the host
processor can access one of the two Data Word blocks, while the
BC reads or writes the alternate Data Word block.
A second application of the "execute and flip" capability is in
association with message retries. This allows the BC to not only
switch buses when retrying a failed message, but to automati-
cally switch buses permanently for all future times that the same
message is to be processed. This not only provides a high
degree of autonomy from the host CPU, but saves BC band-
width, by eliminating future attempts to process messages on an
RT's failed channel.
XQF
POINTER
XX00h
(part of) BC INSTRUCTION LIST
MESSAGE
CONTROL/STATUS
BLOCK 0
DATA BLOCK 0
XX10h
MESSAGE
CONTROL/STATUS
BLOCK 1
DATA BLOCK 1
POINTER
POINTER
FIGURE 4. USE OF EXECUTE AND FLIP (XQF) OPERATION