AMBA AHB & APB

Advanced high performance bus (AHB) and AMBA advanced peripheral bus (APB) to connect with processors and IP

Quick Explanation

  • Supports read, write. Retry and split operations
  • Supports single-edge clock protocol
  • Supports multiple bus masters and slaves
  • Supports burst transfers
  • Supports pipelined address phase operations
  • Supports single cycle bus master handover
  • Supports round robin algorithm

Protocol

  • ARM AMBA AHB
  • ARM AMBA APB

Introduction

Advanced Peripheral Bus (APB) is designed for low bandwidth control accesses, like register interfaces on system peripherals. This bus has an address and data phase similar to AHB, but a much reduced, low complexity signal list. The Advanced High performance Bus (AHB) is also a bus protocol introduced by ARM. It has larger bus widths compared to the previous releases. AHB is capable of waits, errors and bursts.

Overview

This library provides a system-level modelling implementation of the AMBA 2 and the updated AMBA 3 specification from ARM. This library supports the AHB, AHB-lite, multi-layer AHB and APB. The blocks are completely flexible and can be configured for almost any topology. The blocks can be connected to hardware components, accelerators or custom-programmed blocks- SystemC or using the VisualSim graphical environment. Using these components, the user can assemble, configure, simulate, debug and analyse the power consumption and performance of the next-generation SoC. The performance attributes and the various power modes of the AHB/APB embedded in the library block. The library contains a number of traffic models that have been pre-built and parameterized to simulate dynamic system operations.

Parameters Used

The library contains over 20 application templates that provides detailed examples of usage along with different ARM processors, Network-on-Chip (NoC), memory controllers, DDR, accelerators, bridges, crossbars, media devices, Wi-Fi and I/O’s. The reports and statistics provide detailed report on activity per connected node, read and write latency, utilization, throughput and buffer activity. Some of the parameters used in AMBA APB/AHB are as follows:

  • Bus_Speed_Mhz: Speed of the bus
  • Burst_Size_Bytes: Determines the maximum length of the transaction
  • FIFO_Buffers: Size of the buffer at each master or slave
  • FCFS- First-Come First-Serve
  • Round_Robin_Port_Array: Order of each master and slave port for the Round Robin arbitration
  • Devices connected via each port
  • Split and Retry

Features

The model, containing the AHB/APB can accept an Excel spreadsheet to define the traffic sequences. Some of the key features of VisualSim AMBA AHB model are as follows:

  • Single edge clock protocol
  • Split transactions
  • Multiple bus masters and slaves
  • Burst transfers
  • Retry transactions
  • Wait states
  • Single outstanding transaction
  • Pipelined address phase operations
  • Single-cycle bus master handover
  • Large bus widths
  • AHB Bus Matrix

Library Components:

  • AHB
  • APB
  • Bridge

AMBA - Implements data transfer between processor and memory through AMBA bus