GR712RC-UM, Jun 2017, Version 2.9 118 www.cobham.com/gaisler
GR712RC
16.6.4 Read commands
Read commands are performed on the fly when the reply is sent. Thus if an AHB error occurs the
packet will be truncated and ended with an EEP. There are no restrictions for incrementing reads but
non-incrementing reads have the same alignment restrictions as non-verified writes. Note that the
“Authorization failure” error code will be sent in the reply if a violation was detected even if the
length field was zero. Also note that no data is sent in the reply if an error was detected i.e. if the status
field is non-zero.
16.6.5 RMW commands
All read-modify-write sizes are supported except 6 which would have caused 3 B being read and writ-
ten on the bus. The RMW bus accesses have the same restrictions as the verified writes. As in the ver-
ified write case, the incrementing bit can be set to any value since only one AHB bus operation will be
performed for each RMW command. Cargo too large is detected after the bus accesses so this error
will not prevent the operation from being performed. No data is sent in a reply if an error is detected
i.e. the status field is non-zero.
16.6.6 Control
The RMAP command handler mostly runs in the background without any external intervention, but
there are a few control possibilities.
There is an enable bit in the control register of the GRSPW which can be used to completely disable
the RMAP command handler. When it is set to ‘0’ no RMAP packets will be handled in hardware,
instead they are all stored to the DMA channel.
There is a possibility that RMAP commands will not be performed in the order they arrive. This can
happen if a read arrives before one or more writes. Since the command handler stores replies in a buf-
fer with more than one entry several commands can be processed even if no replies are sent. Data for
read replies is read when the reply is sent and thus writes coming after the read might have been per-
formed already if there was congestion in the transmitter. To avoid this the RMAP buffer disable bit
can be set to force the command handler to only use one buffer which prevents this situation.
The last control option for the command handler is the possibility to set the destination key which is
found in a separate register.