GR740-UM-DS, Nov 2017, Version 1.7
155
www.cobham.com/gaisler
GR740
the one in the configuration port). When the RMAP target is disabled, there is no need to include a
protocol ID in the packets and the data can start immediately after the address.
All packets arriving with the extended protocol ID (0x00) are stored to a DMA channel. This means
that the hardware RMAP target will not work if the incoming RMAP packets use the extended proto-
col ID. Note also that packets with the reserved extended protocol identifier (ID = 0x000000) are not
ignored by the AMBA port. It is up to the software to ignore them.
When transmitting packets, the address and protocol-ID fields must be included in the buffers from
where data is fetched. They are
not
automatically added by the AMBA port DMA engine.
Figure 14 shows the packet types accepted by the port. The port also allows reception and transmis-
sion with extended protocol identifiers but without support for RMAP CRC calculations and the
RMAP target.
13.4.3 Time-Code / distributed interrupt interface
13.4.3.1 Sending and receiving Time-Codes
To transmit a Time-Code through the register interface of an AMBA port, the RTR.AMBACTRL.TI
bit should be written to 1. When the bit is written, the AMBA port’s current time value
(RTR.AMBATC.TIMECNT field) is incremented and a Time-Code consisting of the new time value
together with the current control flags (RTR.AMBATC.TCTRL field) is sent. The RTR.AMBAC-
TRL.TI bit will stay high until the Time-Code has been transmitted. Note that whether or not a Time-
Code is forwarded to any other port after it has been sent by an AMBA port depends on the settings
explained in 13.2.17.
A Time-Code that is received by an AMBA port will be stored in the port’s RTR.AMBATC register.
There is also a possibility to generate AMBA interrupts and tick-out pulses that are routed to the
GPTIMER units for time latching (see section 5.9). This is controlled through the RTR.AMBACTRL
and RTR.AMBATC registers. See section 13.4.8 for details about these registers.
13.4.3.2 Sending and receiving distributed interrupts
To transmit a distributed interrupt code through the register interface of an AMBA port, the
RTR.AMBAINTCTRL.II bit in should be written to 1. When the bit is written, the value of the
RTR.AMBAINTCTRL.TXINT field determine which distributed interrupt code that will be sent.
Note that whether or not a distributed interrupt code is forwarded to any other port after it has been
sent by an AMBA port depends on the settings of the router and the state of that specific interrupt in
the network. See 13.2.18 for details.
A distributed interrupt can also be configured to be generated automatically by the AMBA port upon
certain events. This is controlled through the RTR.AMBAINTCTRL and RTR.AMBADMACTRL
registers. See section 13.4.8 for details about these registers and features.
Distributed interrupt codes that are received by an AMBA port can be programmed to generate
AMBA interrupts as well as tick out-pulses that are routed to the GPTIMER units for time latching
(see section 5.9). See section 13.4.8 for details about these features.
Figure 14.
The SpaceWire packet types supported by the port.
Addr ProtID
Dn-2
..
D3
D2
D1
D0
Dn-1
EOP
Addr
D0
Dm-2
..
D4
D3
D2
D1
Dm-1
EOP