GR740-UM-DS, Nov 2017, Version 1.7
282
www.cobham.com/gaisler
GR740
18
Bridge connecting Slave I/O AHB bus to Processor AHB bus
18.1
Overview
A uni-directional AHB/AHB bridge is used to connect the Processor AHB bus to the Slave I/O bus.
The buses are connected through a pair consisting of an AHB slave and an AHB master interface.
AHB transfer forwarding is performed in one direction, where AHB transfers to the slave interface are
forwarded to the master interface.
Features offered by the uni-directional AHB to AHB bridge are:
•
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.
18.2
Operation
18.2.1 General
The bridge is capable of handling single and burst transfers of all burst types. Supported transfer sizes
(HSIZE) are BYTE, HALF-WORD, WORD, DWORD, 4WORD and 8WORD.
For AHB write transfers write data is always buffered in an internal FIFO implementing posted
writes. For AHB read transfers the bridge uses GRLIB’s 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 always receives a SPLIT response on the first
transfer attempt to allow other masters to use the Processor AHB bus while the bridge performs the
read transfer on the Slave I/O AHB bus.
18.2.2 AHB read transfers
When a read transfer is registered on the slave interface the bridge (connected to the Processor AHB
bus) gives a SPLIT response. The master 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 (on the
Slave I/O bus). The master interface requests the bus and starts the read transfer on the master side.
Single transfers on the Processor AHB bus are normally translated to single transfers with the same
AHB address and control signals on the master side, however read combining can translate one access
into several smaller accesses. Translation of burst transfers from the Processor AHB bus to the Slave
I/O bus 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 SPLIT burst on the slave side was an incremental burst of unspecified
length (INCR), the master interface performs an incremental burst up to a 32-byte address boundary.
When the burst transfer is completed on the Slave I/O AHB bus side, the SPLIT master that initiated
the transfer (on the Processor AHB bus) is allowed in bus arbitration by asserting the appropriate
HSPLIT signal to the AHB controller. The SPLIT 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-