GR740-UM-DS, Nov 2017, Version 1.7
385
www.cobham.com/gaisler
GR740
32
Bridge connecting Debug AHB bus to Processor AHB bus
32.1
Overview
The Debug AHB bus is connected to the Processor AHB bus via a uni-directional AHB/AHB bridge.
The bridge provides:
•
Propagation of single and burst AHB transfers
•
Data buffering in internal FIFOs
•
Efficient bus utilization through use of AMBA SPLIT response and data prefetching
•
Posted writes
•
Read and write combining, improves bus utilization and allows connecting cores with differing
AMBA access size restrictions.
32.2
Operation
32.2.1 General
For AHB write transfers write data is always buffered in an internal FIFO implementing posted
writes. For AHB read transfers the bridge uses AMBA Plug&Play information to determine whether
the read data will be prefetched and buffered in an internal FIFO. If the target address for an AHB
read burst transfer is a prefetchable location the read data will be prefetched and buffered.
An AHB master initiating a read transfer to the bridge is always splitted on the first transfer attempt to
allow other masters to use the slave bus while the bridge performs read transfer on the master bus.
32.2.2 AHB read transfers
When a read transfer is registered on the slave interface the bridge gives a SPLIT response. The mas-
ter that initiated the transfer will be de-granted allowing other bus masters to use the slave bus while
the bridge performs a read transfer on the master side. The master interface then requests the bus and
starts the read transfer on the master side. Single transfers on the slave side are normally translated to
single transfers with the same AHB address and control signals on the master side, however read com-
bining can translate one access into several smaller accesses. Translation of burst transfers from the
slave to the master side depends on the burst type, burst length and access size.
If the transfer is a burst transfer to a prefetchable location, the master interface will prefetch data in
the internal read FIFO. If the splitted burst on the slave side was an incremental burst of unspecified
length (INCR), the length of the burst is unknown. In this case the master interface performs an incre-
mental burst up to a 32-byte address boundary
.
When the burst transfer is completed on the master
side, the splitted master that initiated the transfer (on the slave side) is allowed in bus arbitration by
asserting the appropriate HSPLIT signal to the AHB controller. The splitted master re-attempts the
transfer and the bridge will return data with zero wait states.
If the burst is to non-prefetchable area, the burst transfer on the master side is performed using
sequence of NONSEQ, BUSY and SEQ transfers. The first access in the burst on the master side is of
NONSEQ type. Since the master interface can not decide whether the splitted burst will continue on
the slave side or not, the master bus is held by performing BUSY transfers. On the slave side the split-
ted master that initiated the transfer is allowed in bus arbitration. The first access in the transfer is
completed by returning read data. The next access in the transfer on the slave side is extended by
asserting HREADY low. On the master side the next access is started by performing a SEQ transfer
(and then holding the bus using BUSY transfers). This sequence is repeated until the transfer is ended
on the slave side.