AMBA based systems follow a rigid hierarchical structure, where different types of buses with varying performance capabilities provide interconnection between different blocks of the SoC. For instance, a system may comprise a processor, memory unit, and I/O subsystem, with each connected via a different type of bus.
Furthermore, AMBA uses different protocols, such as AXI, AHB, and APB, for communication between the different components of the SoC. AXI, which is the most complex protocol, is used in high-bandwidth applications such as memory access. AHB, which provides high-performance interconnection, is generally used to connect high-speed peripherals. Finally, APB, which is designed for low-power devices, typically connects low-speed peripherals such as timers and watchdogs.