GR740-UM-DS, Nov 2017, Version 1.7
248
www.cobham.com/gaisler
GR740
16.5
Remote Terminal Operation
16.5.1 Overview
When operating as Remote Terminal, the core acts as a slave on the MIL-STD-1553B bus. It listens
for requests to its own RT address (or broadcast transfers), checks whether they are configured as
legal and, if legal, performs the corresponding transfer or, if illegal, sets the message error flag in the
status word. Legality is controlled by the subaddress control word for data transfers and by the mode
code control register for mode codes.
To start the RT, set up the subaddress table and log ring buffer, and then write the address and RT
enable bit into the RT Config Register.
16.5.2 Data transfer handling
The Remote Terminal mode uses a three-level structure to handle data transfer DMA. The top level is
a subaddress table, where each subaddress has a subaddress control word, and pointers to a transmit
descriptor and a receive descriptor. Each descriptor in turn contains a descriptor control/status word,
pointer to a data buffer, and a pointer to a next descriptor, forming a linked list or ring of descriptors.
Data buffers can reside anywhere in memory with 16-bit alignment.
When the RT receives a data transfer request, it checks in the subaddress table that the request is legal.
If it is legal, the transfer is then performed with DMA to or from the corresponding data buffer. After
a data transfer, the descriptor’s control/status word is updated with success or failure status and the
subaddress table pointer is changed to point to the next descriptor.
If logging is enabled, a log entry will be written into a log ring buffer area. A transfer-triggered IRQ
may also be enabled. To identify which transfer caused the interrupt, the RT Event Log IRQ Position
points to the corresponding log entry. For that reason, logging must be enabled in order to enable
interrupts.
If a request is legal but can not be fulfilled, either because there is no valid descriptor ready or because
the data cannot be accessed within the required response time, the core will signal a RT table access
error interrupt and not respond to the request. Optionally, the terminal flag status bit can be automati-
cally set on these error conditions.
SA ctrl word
Transmit descr. ptr
Receive descr. ptr
SA N
SA N-1
SA N+1
Descriptor ctrl/stat
Data buffer ptr.
Next pointer
Descriptor ctrl/stat
Data buffer ptr.
Next pointer
Descriptor ctrl/stat
Data buffer ptr.
Next pointer
0x3
Transmit data
Receive buffer
Receive buffer
Subaddress table
Figure 20.
RT subaddress data structure example diagram