GR740-UM-DS, Nov 2017, Version 1.7
435
www.cobham.com/gaisler
GR740
37
AMBA AHB controller with plug&play support
37.1
Overview
The AMBA AHB controller is a combined AHB arbiter, bus multiplexer and slave decoder according
to the AMBA 2.0 standard. Each AHB bus in the system has one AHB controller.
Figure 51.
AHB controller block diagram
37.2
Operation
37.2.1 Arbitration
The AHB controller supports round-robin arbitration. In round-robin mode, priority is rotated one
step after each AHB transfer. If no master requests the bus, the last owner will be granted (bus park-
ing).
37.2.2 Decoding
Decoding (generation of HSEL) of AHB slaves is done using the plug&play method explained in the
GRLIB User’s Manual. A slave can occupy any binary aligned address space with a size of 1 - 4096
MiB. A specific I/O area is also decoded, where slaves can occupy 256 byte - 1 MiB. Access to
unused addresses will cause an AHB error response. See the AMBA ERROR propagation description
in section 5.10.
37.2.3 Plug&play information
The plug&play information is mapped on a read-only address area on each AHB bus except the Mas-
ter I/O AHB bus. See the memory map in section 2.3 for the Plug&play area base addresses of the
buses in the system.
The master information is placed on the first 2 KiB of the block (0xFFFFF000 - 0xFFFFF800 for the
Processor AHB bus), while the slave information is placed on the second 2 KiB block. Each unit
occupies 32 bytes, which means that the area has place for 64 masters and 64 slaves. The address of
the plug&play information for a certain unit is defined by its bus index. The address for masters is
thus 0xFF n*32, and 0xFF n*32 for slaves.
MASTER
MASTER
SLAVE
SLAVE
ARBITER/
DECODER
AHBCTRL