Design of an AMBA AHB Reconfigurable Arbiter for On-chip Bus Architecture

Similar documents
Keywords- AMBA, AHB, APB, AHB Master, SOC, Split transaction.

Design of an Efficient FSM for an Implementation of AMBA AHB in SD Host Controller

Design And Implementation of Efficient FSM For AHB Master And Arbiter

Embedded Busses. Large semiconductor. Core vendors. Interconnect IP vendors. STBUS (STMicroelectronics) Many others!

AMBA AHB Bus Protocol Checker

Design of AHB Arbiter with Effective Arbitration Logic for DMA Controller in AMBA Bus

Buses. Maurizio Palesi. Maurizio Palesi 1

SEMICON Solutions. Bus Structure. Created by: Duong Dang Date: 20 th Oct,2010

Design and Implementation of A Reconfigurable Arbiter

Bus AMBA. Advanced Microcontroller Bus Architecture (AMBA)

August Issue Page 96 of 107 ISSN

DEVELOPMENT AND VERIFICATION OF AHB2APB BRIDGE PROTOCOL USING UVM TECHNIQUE

5. On-chip Bus

White Paper AHB to Avalon & Avalon to AHB Bridges

iimplementation of AMBA AHB protocol for high capacity memory management using VHDL

Ref: AMBA Specification Rev. 2.0

IMPLEMENTATION OF AHB PROTOCOL USING FPGA

Verilog AHB Testbench User's Guide

ISSN Vol.03, Issue.08, October-2015, Pages:

Architecture of An AHB Compliant SDRAM Memory Controller

VLSI Design of Multichannel AMBA AHB

Lecture 10 Introduction to AMBA AHB

International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November-2013 ISSN

SoC Design Lecture 11: SoC Bus Architectures. Shaahin Hessabi Department of Computer Engineering Sharif University of Technology

1. INTRODUCTION OF AMBA

Assertion Based Verification of AMBA-AHB Using System Verilog

Design and Implementation of High-Performance Master/Slave Memory Controller with Microcontroller Bus Architecture

Chapter 2 The AMBA SOC Platform

VERIFICATION OF AHB PROTOCOL USING SYSTEM VERILOG ASSERTIONS

Verification of AMBA AXI4 Protocol Using UVM

SOC Design Technique for AMBA AXI4 Using Verilog HDL

Pooja Kawale* et al ISSN: [IJESAT] [International Journal of Engineering Science & Advanced Technology] Volume-6, Issue-3,

International Journal of Applied Sciences, Engineering and Management ISSN , Vol. 05, No. 02, March 2016, pp

Bus Interfaces and Standards. Zeljko Zilic

AMBA Protocol for ALU

AMBA 3 AHB Lite Bus Architecture

AHB-Lite Multilayer Interconnect IP. AHB-Lite Multilayer Interconnect IP User Guide Roa Logic, All rights reserved

ISSN:

DESIGN AND VERIFICATION ANALYSIS OF APB3 PROTOCOL WITH COVERAGE

CHAPTER 6 FPGA IMPLEMENTATION OF ARBITERS ALGORITHM FOR NETWORK-ON-CHIP

Implementation and Performance analysis of SS Arbiter for. System on chip.

VeriFlow Technologies India (P) Ltd

Design of High Speed AMBA Advanced Peripheral Bus Master Data Transfer for Microcontroller

ECE 551 System on Chip Design

UVM BASED TEST BENCH TO VERIFY AMBA AXI4 SLAVE PROTOCOL

Design and Verification of AMBA AHB- Lite protocol using Verilog HDL

The CoreConnect Bus Architecture

DESIGN A APPLICATION OF NETWORK-ON-CHIP USING 8-PORT ROUTER

Serial Peripheral Interface Design for Advanced Microcontroller Bus Architecture Based System-on- Chip

Chapter 6 Storage and Other I/O Topics

SoC Interconnect Bus Structures

World Journal of Engineering Research and Technology WJERT

Design of AMBA Based AHB2APB Bridge

Hardware Implementation of AMBA Processor Interface Using Verilog and FPGA

FSM & Handshaking Based AHB to APB Bridge for High Speed Systems

Design & Implementation of AHB Interface for SOC Application

VERIFICATION ANALYSIS OF AHB-LITE PROTOCOL WITH COVERAGE

FPGA based Design of Low Power Reconfigurable Router for Network on Chip (NoC)

An Efficient Design of Serial Communication Module UART Using Verilog HDL

HARDWARE BUFFER MEMORY OF THE MULTIPROCESSOR SYSTEM

Design and Implementation of AMBA AXI to AHB Bridge K. Lakshmi Shirisha 1 A.Ramkumar 2

Design and Verification of Configurable Multichannel

THE INTERNATIONAL JOURNAL OF SCIENCE & TECHNOLEDGE

Fair Chance Round Robin Arbiter

DESIGN AND IMPLEMENTATION OF I2C SINGLE MASTER ON FPGA USING VERILOG

DESIGN OF EFFICIENT ROUTING ALGORITHM FOR CONGESTION CONTROL IN NOC

Design and Implementation of AXI to AHB Bridge Based on AMBA 4.0

Digital Blocks Semiconductor IP

Buses. Disks PCI RDRAM RDRAM LAN. Some slides adapted from lecture by David Culler. Pentium 4 Processor. Memory Controller Hub.

DESIGN OF ON-CHIP BUS OCP PROTOCOL WITH BUS FUNCTIONALITIES

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC

ISSN Vol.03, Issue.02, March-2015, Pages:

Functional Verification of xhci (extensible host controller Interface) for USB 3.1 Using HDL

EECS 373 Design of Microprocessor-Based Systems

SYNTHESIZABLE AXI4 PROTOCOL CHECKER

Verification of AXI Bus Protocol using SystemVerilog

System-Level Power Analysis Methodology Applied to the AMBA AHB Bus

ELCT 912: Advanced Embedded Systems

Improving Memory Access time by Building an AMBA AHB compliant Memory Controller

Verification of Advanced High Speed Bus in UVM Methodology

Design and Simulation of Router Using WWF Arbiter and Crossbar

2. System Interconnect Fabric for Memory-Mapped Interfaces

BUILDING AN AMBA COMPLIANT MEMORY CONTROLLER

CoreAHB. Contents. Product Summary. General Description. Intended Use. Key Features. Benefits. Supported Device Families

An Efficient Multi Mode and Multi Resolution Based AHB Bus Tracer

PrimeCell AHB SDR and SRAM/NOR Memory Controller (PL243)

VLSI DESIGN OF AMBA BASED AHB2APB BRIDGE

of Soft Core Processor Clock Synchronization DDR Controller and SDRAM by Using RISC Architecture

SoC Design. Prof. Dr. Christophe Bobda Institut für Informatik Lehrstuhl für Technische Informatik

protocol transactions

AHB2APB Bridge. User Guide. 11/2013 Capital Microelectronics, Inc. China

ISSN: [IDSTM-18] Impact Factor: 5.164

The SOCks Design Platform. Johannes Grad

Design and Implementation of Low Complexity Router for 2D Mesh Topology using FPGA

Applying the Benefits of Network on a Chip Architecture to FPGA System Design

Energy Estimation Based on Hierarchical Bus Models for Power-Aware Smart Cards

ISSN: [Vani* et al., 5(11): November, 2016] Impact Factor: 4.116

AXI and OCP protocol Interface for Sytem on Chip

Using formal techniques to Debug the AMBA System-on-Chip Bus Protocol

Unit 3 and Unit 4: Chapter 4 INPUT/OUTPUT ORGANIZATION

Transcription:

Design of an AMBA AHB Reconfigurable Arbiter for On-chip Bus Architecture Pravin S. Shete 1, Dr. Shruti Oza 2 1 Research Fellow, Electronics Department, BVDU College of Engineering, Pune, India. 2 Department of E & TC, BVDU College of Engineering, Pune, India. ABSTRACT A typical System-on Chip (SOC) design is having many different IP cores, which are linked together with complex on-chip bus communication architecture. This on-chip bus communication architecture is a primary determinant of overall performance in complex SOC design. AMBA has a hierarchy of buses with AHB bus that can be used to get connected to high performance peripherals and that APB bus to low performance peripherals. Hence, among all, AMBA is the most preferable communication architecture. Resolution is a big issue in SOC while dealing with multiple masters trying to access a single data bus. At that time an arbiter plays an important role of resource sharing and also ensures that only one bus master at a time is allowed to initiate data transfers. The purpose of this paper is to propose the scheme to design a single AMBA AHB reconfigurable arbiter with four different Arbitration schemes such as High Priority, Fair-Chance, Random Access and Round Robin algorithm, which can be selected using a signal ARBITRATION [1:0]. This reconfigurable arbiter can interface with any common IP core of a system and depending on the requirement of IP cores, any arbitration scheme can be chosen. The design architecture is written using Verilog HDL code using XILINX ISE tools. The architecture is modeled and synthesized using RTL (Register Transfer Level) abstraction. Keywords: AMBA, AHB, APB, Arbiter, SOC, IP, Verilog HDL. 1. INTRODUCTION This on-chip bus communication architecture determines the way these functional cores exchange and synchronize their data and has a great impact on the systems performance [14]. As more and more IP cores are integrated into the design platform, the amount of communication between the IP s is increasing and hence becoming the source of the performance bottlenecks [8]. On-chip bus communication architecture is one of the critical components in a SOC platform. An efficient on-chip communication system has to satisfy the interface behavior of each IP block integrated within the complex SOC [14]. With the increasing number of system components in SOC design, it becomes important that an efficient arbiter is one of the most critical factors for system s high performance. There are many communication architectures defined by commercial standards, which are available in the market with their own particular bus protocol. For example, the PI-Bus of OMI [9], the AMBA bus of ARM [1], the FISP bus of Mentor Graphics [10], the Core-Connect of IBM [11], the Silicon backplane of Sonics [12], the Wishbone of Silicore [13] and others. This paper proposes the scheme to design a single AMBA AHB reconfigurable arbiter with four different Arbitration schemes that can be selected using an input signal. The rest of the paper is organized as follows. An overview of AMBA bus is presented in next section. The architecture design of AHB Reconfigurable Architecture is presented in section III and that of fourth section has the description related to finite state machine designed for AHB Arbiter. Implementation results are provided in fifth section. 2. OVERVIEW OF AMBA BUS The advanced Microcontroller Bus Architecture (AMBA) is an open System-on-Chip bus protocol for high performance buses on low power devices. AMBA is a standard interface specification which makes sure of the compatibility between different IP components provided by different design vendors. AMBA 2.0 specification defines three different buses [1]:- 1. Advanced high Performance Bus (AHB). 2. Advanced System Bus (ASB). 3. Advanced Peripheral Bus (APB). 2.1 Advanced high Performance Bus (AHB):- AHB bus is a new generation of AMBA 2.0 specification which is intended to point out the requirements of highperformance synthesizable designs. AHB is the new level of bus which sits above ASB and APB. The features required for high performance, high clock frequency systems are as follows [1]:- Burst transfers (4/8/16 beat burst) Split transactions Bus master handover in single cycle Single clock edge operation Volume 3, Issue 5, May 2014 Page 245

Wider data bus configuration (8/16/32/64/128/256/512/1024 bits) Pipelined operation Figure 1 Working principle of AHB [1]. An AMBA AHB design is having following components [1]: 2.1.1 AMBA AHB MASTER: An AMBA AHB bus master is able to initiate read and write operations by making use of an address and control information. Only one bus master at a time is allowed to actively use the bus. 2.1.2 AMBA AHB SLAVE: An AMBA AHB bus slave responds to read and write operation initialized by master within a given address space range. The bus slave signals back to active master about the success, failure or waiting of the data transfer. 2.1.3 AMBA AHB ARBITER: An AMBA AHB bus arbiter gives an assurance that only one bus master at a time is allowed to initiate the data transfers. Even though the arbitration scheme is fixed, any arbitration scheme can be used like Round Robin, Fair Chance etc. depending on the application requirement. 2.1.4 AMBA AHB DECODER: The AMBA AHB decoder is used to decode the address of each transfer and provide a select signal for the slave that is involved in the transfer. A single centralized decoder is required in all AHB implementations. Figure 2 shows the working principle of AHB Bus. Before starting the AMBA AHB transfer, the bus master must have to be granted access to the bus. In this process first of all master asserts a request signal to an arbiter. Now the arbiter will indicate when the master will get the grant of the bus. This decision of granting the access to bus is achieved using some arbitration mechanism like priority based or round robin mechanism etc. [1]. A granted bus master then starts the AHB transfer by first driving an address and control signals. These address and control signals provide information about an address, direction and width of the transfer, burst transfer information if the transfer forms the part of the burst [1]. 3 RECONFIGURABLE ARBITER ARCHITECTURE Figure 3 shows the functional block diagram of the reconfigurable arbiter presented in this work. This reconfigurable arbiter can serve up to a maximum of 16 masters, but here we have used four masters out of sixteen (Master 0 through Master_3). The proposed design is a single AMBA AHB reconfigurable arbiter with four different Arbitration schemes such as High Priority, Fair-Chance, Random Access and Round Robin algorithm that can be selected using a signal ARBITRATION. Volume 3, Issue 5, May 2014 Page 246

Figure 2 Functional block diagram of AHB ARBITER With the reconfigurable functionality, it can assign any arbitration scheme among four which are designed, depending on the requirement of IP cores. First of all, any master among the four can request for an access of the bus. Then depending on the requirement of an application, we can choose any arbitration scheme using input signal ARBITRATION [1:0]. Now, as per the selected arbitration scheme, grant signal will be generated to any particular master and hence master will get bus access. Choice of the arbitration algorithm can selected as follows. ARBITRATION [1:0] Table 1 Selection of Arbitration algorithm. Arbitration Selection Algorithm 00 High Priority Algorithm 01 Fair Chance Algorithm 10 Random Access Algorithm 11 Round Robin Algorithm 4 FINITE STATE MACHINE FOR AHB ARBITER Figure 4 shows Finite State machine for AHB reconfigurable arbiter. Master asserts request to an arbiter and arbiter grants access to the bus master based on any particular arbitration scheme. Arbiter gives an assurance of granting request to only one bus master at a time. The following section contains the brief description of every state in the diagram. 4.1 IDLE: FSM of AHB arbiter starts with IDLE state and this is the default state in the state machine. When reset signal HRESETn is active, master has finished the transaction or master has lost the grant in the middle of the transaction anyhow, at that time arbiter will stay in this state. When master wants to perform any transaction, the master asserts request signal to an arbiter and then arbiter will move into next state i.e. ARBITRATION state to choose arbitration scheme, else arbiter will wait in this state until it gets any request or requests. 4.2 ARBITRATION: When an arbiter will get any request or requests i.e. HBUSREQx is active, it will move to this state from IDLE state. In this state depending on the application requirement any particular arbitration scheme can be chosen among the four with the help of a signal ARBITRATION [1:0]. Proposed arbitration schemes are High Priority, Fair-Chance, Random Access and Round Robin. Choice of the arbitration scheme is given in Table 1. Now, as per the selected arbitration scheme arbiter will move into next state i.e. suppose, if ARBITRATION = 01 an arbiter will move to Fair-chance state to grant an access. Volume 3, Issue 5, May 2014 Page 247

4.3 HIGH_PRIORITY: Figure 3 FSM of AHB Arbiter. Figure 4 High-Priority algorithm. When arbitration scheme selection signal ARBITRATION = 00, arbiter enters into this state. In High-Priority arbitration algorithm, priority is already fixed and as per this fixed priority master requests will be granted. Request signals for Master_0, Master_1, Master_2 and Master_3 are assigned to HBUSREQ_0, HBUSREQ_1, HBUSREQ_2 and HBUSREQ_3 respectively. Priority for this algorithm is HBUSREQ_0 > HBUSREQ_1 > HBUSREQ_2 > HBUSREQ_3. Suppose Master_1 and Master_3 are asserting request for bus access, out of two Master_1 will get grant. When no master will get grant or no one master is requesting the bus access, DEFAULT Master will be granted till any master or masters asserts request and Volume 3, Issue 5, May 2014 Page 248

grants the access. After granting any particular master arbiter will move to the HMASTER state to generate the master number which has granted the access. 4.4 FAIR-CHANCE: When arbitration scheme selection signal ARBITRATION = 01, arbiter enters into this state. In Fair-Chance arbitration algorithm there is no chance of starvation, because each and every request is given a fair chance according to the token bus priority. In each cycle one of the request has the highest priority (i.e. own the token) for access. If the tokenholding request does not need access of the bus then the request with next highest priority can be granted the access. Figure 6 shows the Fair-Chance algorithm generated to handle four requests. Figure 5 Fair-Chance algorithm. In this algorithm there are four priority logic blocks to handle four requests and to produce four grants according to the token employed through the ring counter. In priority logic 0, the HBUSREQ_0 is assigned the highest priority then HBUSREQ_1 then HBUSREQ_2 and finally HBUSREQ_3 is assigned the lowest priority. These priorities rotate in the circular fashion. Like for priority logic 1, HBUSREQ_1 is having the highest priority and HBUSREQ_0 with lowest and so on. The possession of the token allows the priority logic block to be enabled. Thus only one logic block is enabled at one token value which asserts the grant signal. 4.5 RANDOM ACCESS: Figure 6 Random Access algorithm. When arbitration scheme selection signal ARBITRATION = 10, arbiter enters into this state. The Random access algorithm is implemented using the random number generator and the comparator as shown in Figure 7. The random Volume 3, Issue 5, May 2014 Page 249

pattern generator is implemented by Linear Feedback Shift Register (LFSR) approach. Each master will be assigned a random number generated by a random number generator. Now, the master with the maximum number will be granted access to the bus from the comparator output i.e. comparator compares these random numbers and the master with maximum number will get grant. When no master will get grant or no one master is requesting the bus access, DEFAULT Master will be granted till any master or masters asserts request and grants the access. After granting any particular master arbiter will move to the HMASTER state to generate the master number which has granted the access. 4.6 ROUND ROBIN: When arbitration scheme selection signal ARBITRATION = 11, arbiter enters into this state. In order to process requests fairly, a Round Robin algorithm employs time sharing, giving each master a time slot and interrupting the master if it is unable to complete the transaction within prescribed time slots. Figure 7 Round-Robin algorithm. The time slots are assigned to masters based on the number of beat burst operation i.e. HBURST [2:0]. There is 4-beat, 8- beat or 16-beat burst operations either incrementing or wrapping. If 4-beat burst operation, 4 time slots to complete the transaction and so on. After granting access to any particular master arbiter will move to the HMASTER state to generate the master number which has granted the access. 4.7 HMASTER: An arbiter enters into this state, when any particular master has granted bus access. In this state arbiter generates master number who has just granted access. There are maximum 16 masters supported by AMBA 2.0 specification and accordingly HMASTER [3:0] can generate up to 16 numbers. Numbers for Master_0, Master_1, Master_2 and Master_3 are assigned to 0000, 0001, 0010 and 0011 respectively. Now, after generating the master number an arbiter moves to the MASTER OPERATION state where master starts its read and write operation. 4.8 MASTER OPERATION: After accessing the grant, master starts read and write data operations in this state with the help of address and control information. If master lost grant in the middle, it has to again assert the request to have an access of the bus. After completion of data transfer or anyhow if master lost its grant, an arbiter moves to an IDLE state and the cycle starts again. 5 RESULTS After the completion of this design architecture, any hardware description language can be used to implement it and checked for functionality correctness. Volume 3, Issue 5, May 2014 Page 250

Figure 8 Simulation waveform of AHB Arbiter with High Priority arbitration algorithm Figure 9 Simulation waveform of AHB Arbiter with Fair-Chance arbitration algorithm Figure 10 Simulation waveform of AHB Arbiter with Random Access arbitration algorithm Volume 3, Issue 5, May 2014 Page 251

In this Paper, the design architecture is written in Verilog HDL language using XILINX ISE tools. The Figures 8, 9 and 10 as shown above indicates the operation of an AHB reconfigurable arbiter with High-Priority, Fair-Chance and Random Access as an arbitration schemes respectively. The arbitration schemes can be chosen using an input signal ARBITRATION [1:0]. 6. CONCLUSION The design of an AMBA AHB reconfigurable arbiter including four different arbitration schemes such as High-Priority, Fair-Chance, Random Access and Round Robin is proposed in this paper. This helps in achieving better compatibility with different IP cores on SOC platform. Depending on the application requirement any arbitration scheme can be selected and selection is done through a signal ARBITRATION [1:0] which is an input signal. Also, we can replace or add other arbitration schemes. REFERENCES [1] AMBA Specification Rev 2.0. ARM Ltd, 1999. [2] http://www.arm.com/pdfs/ahb_overview.pdf. [3] AMBA Design Kit revision r3p0, Technical Reference Manual, ARM Inc. [4] AHB Example AMBA System, Technical Reference Manual, ARM Inc. [5] A Verilog HDL test bench primer. [6] Verilog HDL A guide to digital design and synthesis by Samir Palnitkar. [7] YJ Huang, YH chen, CK yang, and SJ Lin, Design and Implementation of a Reconfigurable Arbiter, 7 th WSEAS International conference Signal, Speech and Image Processing, China, 2007. [8] M. Conti, M. Caldari, G. B. Vece and S. Orcioni, C. Turchetti, Performance analysis of different arbitration algorithms of the AMBA AHB bus, Design Automation Conference, 2004. [9] Open Microprocessor systems Initiative, DRAFT STANDARD OMI 324: PI-Bus Rev. 0.3d, 1994. [10] http://www.mentor.com [11] http://www01.ibm.com/chips/techlib/techlib.nsf/p roductfamilies/coreconnect_bus_architecture [12] Sonics Integration Architecture, Sonics Inc. Available: http://www.sonicsinc.com. [13] W. Peterson. Design Philosophy of the Wishbone SOC Architecture. In Silicore Corporation, 1999. Available: http://www.silicore.net/wishbone.htm. [14] Yu-Jung Huang, Ching-Mai Ko, and Hsien-Chiao Teng Design and Performance Analysis of A Reconfigurable Arbiter, ISSN: 1109-9445 Issue 4, Volume 5, April 2008. [15] Rohit Hardia, Prof. Jai Karan Singh, Prof. Mukesh Tiwari Design And Simulation of a typical high performance AHB Reconfigurable Master For On-chip bus Architecture using Verilog HDL, International Conference on Communication Systems and Network Technologies, IEEE 2011. Volume 3, Issue 5, May 2014 Page 252