The research paper published by IJSER journal is about Design of Burst Based Transactions in AMBA-AXI Protocol for SoC Integration 1
ISSN 2229-5518
Design of Burst Based Transactions in AMBA- AXI Protocol for SoC Integration
.V.N.M.Brahmanandam K, Choragudi Monohar
Abstract—System-on-a-Chip (SoC) design has become more and more complexly. Because difference functions components or IPs (Intellectual Property) will be integrated within a chip. The challenge of integration is “how to verify on -chip communication properties”. Although traditional simulation-based on-chip bus protocol checking bus signals to obey bus transaction behavior or not, however, they are still lack of a chip -level dynamic verification to assist hardware debugging. W e proposed a rule based synthesizable AMBA AXI protocol . The AXI protocol contains 44 rules to check on-chip communication properties accuracy. In the verification strategy, we use the Synopsys VIP (Verification IP) to verify AXI protocol checker .The chip cost of AXI protocol checker is 70.7K gate counts and critical path is 4.13 ns (about 242 MHz) under TSMC 0.18um CMOS 1P 6M Technology. . In the experimental results, we show the burst based transactions such as read,write,handshake mechanisms and some of the AXI protocol rules stimulated in MODELSIM ALTERA.
Index Terms—: System-on-a-Chip (SoC), simulation-based on-chip bus protocol checking, Verification IP,Verilog,AMBA AXI protocol
In recent years, the improvement of the semiconductor process technology and the market requirement increasing. More difference functions IPs are integrated within a chip. Maybe each IPs had completed design and verification. But the integration of all IPs could not work together. The more common problem is violation bus protocol or transaction error. The bus-based architecture has become the major integrated methodology for implementing a SoC. The on-chip communication specification provides a standard interface that facilitates IPs integration and easily communicates with each IPs in a SoC. The semiconductor process technology is changing at a faster pace during 1971 semiconductor process technology was 10μm, during 2010 the technology is reduced to 32nm and future is promising for a process technology with 10nm. Intel, Toshiba and Samsung have reported that the process technology would be further reduced to 10nm in the future. So with decreasing process technology and increasing consumer design constraints SoC has evolved, where all the functional units of a system are modeled on a single chip.
————————————————
Choragudi Monohar is currently working in KAKINADA INSTITUTE OF ENGINEERING AND TECHNOLOGY , KAKINADA and has an experience of five years in Academics .Completed Masters degree program in Digital Electronics and Commuctuion Systems from Guddlavalleru Engg College,JNTU Kakinada,Andhra Pradesh,India, PH+91-9505042930.
V N M BrahmanandamK is currently pursuing masters degree program in Very Large Scale Integration and System Design in Kakinada Institute of Engg and Technology,JNTU Kakinada, Andhra Pradesh,India, PH-+91-
IJSER © 2012 http://www.ijser.org
The research paper published by IJSER journal is about Design of Burst Based Transactions in AMBA-AXI Protocol for SoC Integration 2
ISSN 2229-5518
synthesizable AMBA AXI protocol checker with an efficient verification mechanism based on rule checking methodology. There are 44 rules to check the AMBA AXI protocol that provide AXI master, slave, and default slave protocol issues.
AMBA AXI [3] supports data transfers up to 256 beats and unaligned data transfers using byte strobes. In AMBA AXI4 system 16 masters and 16 slaves are interfaced. Each master and slave has their own 4 bit ID tags. AMBA AXI4 system consists of master, slave and bus (arbiters and decoders). The system consists of five
channels namely write address channel, write data channel,
read data channel, read address channel, and write response channel. The AXI4
protocol supports the following mechanisms:
Unaligned data transfers and up-dated write response requirements.
Variable-length bursts, from 1 to 16 data transfers per burst.
A burst with a transfer size of 8, 16, 32, 64, 128, 256,
512 or 1024 bits wide is supported.
Updated AWCACHE and ARCACHE signaling
details
Each transaction is burst-based which has address and
control information on the address channel that describes
the nature of the data to be transferred. The data is transferred between master and slave using a write data channel to the slave or a read data channel to the master. Table 1[3] gives the information of signals used in the complete design of the protocol.
The write operation process starts when the master sends an address and control information on the write address channel as shown in fig. 1. The master then sends each item of write data over the write data channel. The master keeps the VALID signal low until the write data is available. The master sends the last data item, the WLAST signal goes HIGH.
Fig. 1: Write address and data burst.
Fig. 2: Read address and data burst.
TABLE 2
IJSER © 2012 http://www.ijser.org
The research paper published by IJSER journal is about Design of Burst Based Transactions in AMBA-AXI Protocol for SoC Integration 3
ISSN 2229-5518
TABLE 1
The protocol supports 16 outstanding transactions, so each read and write transactions have ARID[3:0] and AWID [3:0] tags respectively. Once the read and write operation gets completed the module produces a RID[3:0] and BID[3:0] tags. If both the ID tags match, it indicates that the module has responded to right operation of ID tags. ID tags are needed for any operation because for each transaction concatenated input values are passed to module
AMBA AXI3 protocol has separate address/control and data phases, but AXI4 has updated write response requirements and updated AWCACHE and ARCACHE signaling details. AMBA AXI4 protocol supports for burst lengths up to 256 beats and Quality of Service (QoS) signaling. AXI has additional information on Ordering requirements and details of optional user signaling. AXI has the ability to issue multiple outstanding addresses and out-oforder transaction completion, but AXI has the ability of removal of locked transactions and write interleaving. One major up-dation seen in AXI is that, it includes information on the use of default signaling and discusses the interoperability of components which can’t be seen in AXI3.
In this paper features of AMBA AXI listed above
are designed and verified. The rest of the paper is organized as follows: Section 2 discusses related work. Section 3 of this paper, discusses proposed work. In Section
3, simulation parameters are discussed. Section 4 discusses
results. Future scope and concluding remarks are given in
Section 5.
IJSER © 2012 http://www.ijser.org
The research paper published by IJSER journal is about Design of Burst Based Transactions in AMBA-AXI Protocol for SoC Integration 4
ISSN 2229-5518
In a SoC, it houses many components and electronic modules, to interconnect these a bus is necessary.
There are many buses introduced in the due course some of them being AMBA [2] developed by ARM, CORE CONNECT [4] developed by IBM, WISHBONE [5] developed by Silicore Corporation, etc. Different buses have their own properties the designer selects the bus best suited for his application. The AMBA bus was introduced by ARM Ltd in 1996 which is a registered trademark of ARM Ltd. Later advanced system bus (ASB) and advanced peripheral bus (APB) were released in 1995, AHB in 1999, and AXI in 2003[6]. AMBA bus finds application in wide area. AMBA AXI bus is used to reduce the precharge time using dynamic SDRAM access scheduler (DSAS) [7]. Here the memory controller is capable of predicting future operations thus throughput is improved. Efficient Bus Interface (EBI) [8] is designed for mobile systems to reduce the required memory to be transferred to the IP, through AMBA3 AXI. The advantages of introducing Network-on- chip (NoC) within SoC such as quality of signal, dynamic routing, and communication links was discussed in [9]. To verify on-chip communication properties rule based synthesizable AMBA AXI protocol is used.
a) Master
b) AMBA AXI Interconnect
2.1) Arbiters
2.2) Decoders c) Slave
The master is connected to the interconnect using a slave interface and the slave is connected to the interconnect using a master interface as shown in fig. 3. The AXI master gets connected to the AXI slave interface port of the interconnect and the AXI slave gets connected to the AXI Master interface port of the interconnect. The parallel capability of this interconnects enables master M1 to access one slave at the same as master M0 is accessing the other.
Fig. 3: AMBA AXI slave Read/Write block Diagram
The AXI protocol is burst-based. Every transaction has address and control information on the address channel that describes the nature of the data to be transferred. The data is transferred between master and slave using a write data channel to the slave or a read data channel to the master. In write transactions, in which all the data flows from the master to the slave, the AXI protocol has an additional write response channel to allow the slave to signal to the master the completion of the write transaction.
The AXI protocol enables address information to be issued ahead of the actual data transfer, support for multiple outstanding transactions and out-of-order completion of transactions.
AXI protocol enables address information to be issued ahead of the actual data transfer , multiple outstanding transactions, out-of-order completion of transactions.
Fig. 4 : Channel architecture of reads
IJSER © 2012 http://www.ijser.org
The research paper published by IJSER journal is about Design of Burst Based Transactions in AMBA-AXI Protocol for SoC Integration 5
ISSN 2229-5518
Simulation is being carried out on Model Sim Quretus II[11] which is trademark of Menter Graphics, using Verilog [12] as programming language. The test case is run for multiple operations and the waveforms are visible in discovery visualization environment.
Fig. 5 : Channel architecture of writes
3.1 Simulation inputs
To perform multiple write and read
operations, the concatenated input format and their values
passed to invoke a function is shown in the fig. 6 and 7
respectively. Here the normal type of the burst is passed to module. Internal_lock value is 0, internal_burst value is 1 and internal_prot value is 1,for both read and write operations, which indicate that the burst is of normal type. For write operation address locations passed to module are
40, 12, 35, 42 and 102; for read operations 45, 12, 67 and 98.
3.2 . Simulation outputs
The simulation output signals generated are
Fig. 6: Class diagrams for read/write operations
Fig. 7: One Address for entire burst
Fig 8: Simultaneous read, write transactions
as follows:
From input side the validating signals AWVALID/ARVALID signals are generated by interconnect which gives the information about valid address and ID tags.
For write operations BRESP[1:0] response signal
generated from slave indicates the status of the write transaction. The allowable responses are OKAY, EXOKAY, SLERR, and DECERR.
For read operations RLAST signal is raised by
slave for every transaction which indicates the
completion of operation
Simulation is carried out in Modelsim tool and
Verilog is used as programming language.
4.1. Simulation result for write operation
The AResetn signal is active low. Master drives the address, and the slave accepts it one cycle later. The write address values passed to module are 40, 12, 35, 42 and 102 as shown in fig. 9 and the simulated result for single write data operation is shown in fig. 10. Input AWID[3:0] value is 11 for 40 address location, which is same as the BID[3:0] signal for 40 address location which is identification tag of the write response. The BID[3:0] value is matching with the AWID[3:0] value of the write transaction which indicates the slave is responding correctly. BRESP[1:0] signal that is write response signal
IJSER © 2012 http://www.ijser.org
The research paper published by IJSER journal is about Design of Burst Based Transactions in AMBA-AXI Protocol for SoC Integration 6
ISSN 2229-5518
from slave is 0 which indicates OKAY. Simulation result of slave for multiple write data operation is shown in fig. 11.
Fig. 9 : Simulation result of slave for write address operation
Fig. 10: Simulation result of slave for single write data operation
Fig. 11: Simulation result of slave for multiple write data operation
4.2 Simulation result for read operation
The read address values passed to module are
45, 12, 67, 98 as shown in fig. 12 and the simulated result for
single read data operation is shown in fig. 13.
Fig. 12: Simulation result of slave for read address operation
Input ARID[3:0] value is 3 for 12 address location, which is same as the RID[3:0] signal for 12 address location which is identification tag of the write response. The RID[3:0] and ARID[3:0] values are matching, which indicates slave has responded properly. RLAST signal from slave indicates the last transfer in a read burst. Simulation result of slave for multiple read data operation is shown in fig. 14.
Fig. 13: Simulation result of slave for single read data operation
IJSER © 2012 http://www.ijser.org
The research paper published by IJSER journal is about Design of Burst Based Transactions in AMBA-AXI Protocol for SoC Integration 7
ISSN 2229-5518
Fig. 14: Simulation result of slave for multiple read data operation.
5.1 Future scope
The AMBA AXI4 has limitations with respect to
the burst data and beats of information to be transferred.
The burst must not cross the 4k boundary. Bursts longer than 16 beats are only supported for the INCR burst type. Both WRAP and FIXED burst types remain constrained to a maximum burst length of 16 beats. These are the drawbacks of AMBA AXI system which need to be overcome.
5.2 Conclusion
AMBA AXI is a plug and play IP protocol released
by ARM, defines both bus specification and a technology
independent methodology for designing, implementing and testing customized high-integration embedded interfaces. The data to be read or written to the slave is assumed to be given by the master and is read or written to a particular address location of slave through decoder. In this work, slave was modeled in Verilog with operating frequency of 100MHz and simulation results were shown in Modelsim tool. To perform single read operation it consumed 160ns and for single write operation 565ns.
[1] Shaila S Math, Manjula R B, “Survey of system on chip buses based on industry standards”, Conference on
Evolutionary Trends in Information Technology(CETIT), Bekgaum,Karnataka, India, pp. 52, May 2011
[2] ARM, AMBA Specifications (Rev2.0). [Online]. Available at http://www.arm.com,
[3] ARM, AMBA AXI Protocol Specification (Rev 2.0). [Online]. Available at http://www.arm.com, March 2010 [4] IBM, Core connect bus architecture. IBM Microelectronics. [Online]. Available: http://www.ibm.com/chips/products/coreconnect
[5] Silicore Corporation, Wishbone system-on-chip (soc)
interconnection architecture for portable ip cores,
[6] ARM, AMBA AXI protocol specifications, Available at,
http://www.arm.com, 2003
[7] Jun Zheng, Kang Sun , Xuezeng Pan, and Lingdi Ping
“Design of a Dynamic Memory Access Scheduler”, IEEE
transl, Vol 7, pp. 20-23, 2007
[8] Na Ra Yang, Gilsang Yoon, Jeonghwan Lee, Intae
Hwang, Cheol Hong Kim, Sung Woo Chung and Jong
Myon Kim, “Improving the
System-on-a-Chip Performance for Mobile Systems by
Using Efficient Bus Interface”, IEEE transl, International Conference on Communications and Mobile Computing, Vol 4, pp. 606-608, March 2009
[9] Bruce Mathewson “The Evolution of SOC Interconnect
and How NOC Fits Within It”, IEEE transl, DAC,2010,
California, USA,Vol 6, pp. 312-313, June 2010
[10] Chien-Hung Chen, Jiun-Cheng Ju, and Ing-Jer Huang,
“A Synthesizable AXI Protocol Checker for SoC Integration”, IEEE transl, ISOCC, Vol 8, pp.103-106, 2010 [11] Synopsys, VCS / VCSi User Guide Version
10.3[Online]. Available at, www.synopsys.com, 2005 [12] Samir Palnitkar, Verilog HDL: A Guide to Digital Design and synthesis, 2nd ed, Prentice Hall PTR Pub, 2003
IJSER © 2012 http://www.ijser.org