AXI Compliant DDR3 Controller

Similar documents
International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November ISSN

Implementation of Interface between AXI and DDR3 memory Controller for SoC

High Performance AXI Protocol Based Improved DDR3 Memory Controller With Improved Memory Bandwidth

4GB Unbuffered VLP DDR3 SDRAM DIMM with SPD

2GB DDR3 SDRAM SODIMM with SPD

A Low Power DDR SDRAM Controller Design P.Anup, R.Ramana Reddy

Architecture of An AHB Compliant SDRAM Memory Controller

Performance Evolution of DDR3 SDRAM Controller for Communication Networks

APPROVAL SHEET. Apacer Technology Inc. Apacer Technology Inc. CUSTOMER: 研華股份有限公司 APPROVED NO. : T0031 PCB PART NO. :

Datasheet. Zetta 4Gbit DDR3L SDRAM. Features VDD=VDDQ=1.35V / V. Fully differential clock inputs (CK, CK ) operation

ISSN: [Bilani* et al.,7(2): February, 2018] Impact Factor: 5.164

EECS150 - Digital Design Lecture 17 Memory 2

Features. DDR2 UDIMM with ECC Product Specification. Rev. 1.2 Aug. 2011

Basics DRAM ORGANIZATION. Storage element (capacitor) Data In/Out Buffers. Word Line. Bit Line. Switching element HIGH-SPEED MEMORY SYSTEMS

ECE 485/585 Microprocessor System Design

DEVELOPMENT AND VERIFICATION OF AHB2APB BRIDGE PROTOCOL USING UVM TECHNIQUE

2GB DDR3 SDRAM 72bit SO-DIMM

Features. DDR2 UDIMM w/o ECC Product Specification. Rev. 1.1 Aug. 2011

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

SDRAM DDR3 256MX8 ½ Density Device Technical Note

APPROVAL SHEET. Apacer Technology Inc. Apacer Technology Inc. CUSTOMER: 研華股份有限公司 APPROVED NO. : T0026 PCB PART NO. :

Real Time Embedded Systems

SDRAM DDR3 512MX8 ½ Density Device Technical Note

Organization Row Address Column Address Bank Address Auto Precharge 128Mx8 (1GB) based module A0-A13 A0-A9 BA0-BA2 A10

SDRAM DDR3 512MX8 ½ Density Device Technical Note

Computer Systems Laboratory Sungkyunkwan University

COMPUTER ARCHITECTURES

LE4ASS21PEH 16GB Unbuffered 2048Mx64 DDR4 SO-DIMM 1.2V Up to PC CL

DO-254 AXI 7 Series DDRx (Limited) 1.00a Certifiable Data Package (DAL A) General Description. Features. August 29, 2014, Rev. -

DDR SDRAM Bus Monitoring using Mentor Verification IP by Nikhil Jain, Mentor Graphics

THE synchronous DRAM (SDRAM) has been widely

Design and Implementation of High Performance DDR3 SDRAM controller

Design and Verification of Configurable Multichannel

ISSN Vol.05, Issue.12, December-2017, Pages:

DDR2 Controller Using Virtex-4 Devices Author: Tze Yi Yeoh

Bandwidth, Area Efficient and Target Device Independent DDR SDRAM Controller

Mainstream Computer System Components

Verification of AMBA AXI4 Protocol Using UVM

IMM128M64D1DVD8AG (Die Revision F) 1GByte (128M x 64 Bit)

SC64G1A08. DDR3-1600F(CL7) 240-Pin XMP(ver 2.0) U-DIMM 1GB (128M x 64-bits)

4GB DDR3 SDRAM SO-DIMM

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

ADQVD1B16. DDR2-800+(CL4) 240-Pin EPP U-DIMM 2GB (256M x 64-bits)

Mainstream Computer System Components CPU Core 2 GHz GHz 4-way Superscaler (RISC or RISC-core (x86): Dynamic scheduling, Hardware speculation

DDR SDRAM UDIMM. Draft 9/ 9/ MT18VDDT6472A 512MB 1 MT18VDDT12872A 1GB For component data sheets, refer to Micron s Web site:

Key Features 240-pin, dual in-line memory module (DIMM) ECC 1-bit error detection and correction. Registered inputs with one-clock delay.

An introduction to SDRAM and memory controllers. 5kk73

An Efficient AXI Read and Write Channel for Memory Interface in System-on-Chip

SDRAM CONTROLLER Specification. Author: Dinesh Annayya

RML1531MH48D8F-667A. Ver1.0/Oct,05 1/8

IMM128M72D1SOD8AG (Die Revision F) 1GByte (128M x 72 Bit)

Architecture for Carbon Nanotube Based Memory (NRAM)

4GB DDR3 SDRAM SO-DIMM

The CoreConnect Bus Architecture

DESIGN AND IMPLEMENTATION OF SDR SDRAM CONTROLLER IN VHDL. Shruti Hathwalia* 1, Meenakshi Yadav 2

Design and Implementation of Refresh and Timing Controller Unit for LPDDR2 Memory Controller

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

VERIFICATION OF AHB PROTOCOL USING SYSTEM VERILOG ASSERTIONS

Improved DDR3 SDRAM with Added Proficiencies

Adapting Controllers for STT-MRAM

Design and Implementation of Memory Controller for Real Time Video Display Using DDR3 SDRAM

Datasheet. Zetta 4Gbit DDR4 SDRAM. Features. RTT_NOM switchable by ODT pin Asynchronous RESET pin supported

Features. DDR3 Registered DIMM Spec Sheet

Features. DDR3 UDIMM w/o ECC Product Specification. Rev. 14 Dec. 2011

Design and Verification of High Speed SDRAM Controller with Adaptive Bank Management and Command Pipeline

Memory System Overview. DMA & Endian-ness. Technology. Architectural. Problem: The Memory Wall

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

IMM64M64D1SOD16AG (Die Revision D) 512MByte (64M x 64 Bit)

Mark Redekopp, All rights reserved. EE 352 Unit 10. Memory System Overview SRAM vs. DRAM DMA & Endian-ness

Organization Row Address Column Address Bank Address Auto Precharge 256Mx4 (1GB) based module A0-A13 A0-A9 BA0-BA2 A10

CorePCI Target+DMA Master 33/66MHz

SOC Design Technique for AMBA AXI4 Using Verilog HDL

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 7: Memory Organization Part II

CS698Y: Modern Memory Systems Lecture-16 (DRAM Timing Constraints) Biswabandan Panda

Lecture 15: DRAM Main Memory Systems. Today: DRAM basics and innovations (Section 2.3)

ISSN: [Mahajan* et al., 5(12): December, 2016] Impact Factor: 4.116

Xilinx Answer Xilinx MIG 7 Series DDR2 and DDR3 Performance Estimation Guide

TwinDie 1.35V DDR3L SDRAM

Structure of Computer Systems. advantage of low latency, read and write operations with auto-precharge are recommended.

DIRECT Rambus DRAM has a high-speed interface of

Design and Characterization of SDRAM Controller IP Core with Built In Refined ECC Module

Design & Implementation of AHB Interface for SOC Application

Speedster22i DDR3 Controller User Guide UG031 Nov 18, 2014

UNIVERSAL VERIFICATION METHODOLOGY BASED VERIFICATION ENVIRONMENT FOR PCIE DATA LINK LAYER

IMM64M72D1SCS8AG (Die Revision D) 512MByte (64M x 72 Bit)

MT51J256M32 16 Meg x 32 I/O x 16 banks, 32 Meg x 16 I/O x 16 banks. Options 1. Note:

LogiCORE IP AXI Video Direct Memory Access v5.00.a

IMM64M64D1DVS8AG (Die Revision D) 512MByte (64M x 64 Bit)

Options. Data Rate (MT/s) CL = 3 CL = 2.5 CL = 2-40B PC PC PC

DDR and DDR2 SDRAM Controller Compiler User Guide

DDR3(L) 4GB / 8GB SODIMM

A Universal Test Pattern Generator for DDR SDRAM *

Lecture 5: Computing Platforms. Asbjørn Djupdal ARM Norway, IDI NTNU 2013 TDT

Design of Dual Port SDRAM Controller with Time Slot Register

256MEGX72 (DDR2-SOCDIMM W/PLL)

IMPLEMENTATION OF DDR I SDRAM MEMORY CONTROLLER USING ACTEL FPGA

Chapter 8 Memory Basics

1024MB DDR2 SDRAM SO-DIMM

Interfacing DDR2 SDRAM with Stratix II, Stratix II GX, and Arria GX Devices

TECHNOLOGY BRIEF. Double Data Rate SDRAM: Fast Performance at an Economical Price EXECUTIVE SUMMARY C ONTENTS

Transcription:

2010 Second International Conference on Computer Modeling and Simulation AXI Compliant ler Vikky Lakhmani, M.Tech(Sequential) Student Department of Electrical & Electronics Engineering, Uttar Pradesh Technical University, Lucknow (Uttarpradesh), INDIA Email: vikkylakhmani@gmail.com Nusrat Ali Project (VLSI Division), HCL Technologies, Noida,INDIA Email: nusrata@hcl.in Dr. Vijay Shankar Tripathi Department of Electronics & Communication Motilal Nehru National Institute of Technology, (MNNIT), Allahabad (U.P), INDIA Email: vijay_s_t@yahoo.com Abstract This paper describes the implementation of AXI compliant memory controller. It discusses the overall architecture of the controller along with the detailed design and operation of its individual sub blocks, the pipelining implemented in the design to increase the design throughput. It also discusses the advantage of memories over DDR2 memories and the AXI protocol operation Keywords- memory, AXI Interface, AXI access, DDR2 memories, AXI protocol operation Write Write Data Write Response Read Read Data AXI Interface AXI Interface AXI-IF Burst Storage I. INTRODUCTION The AXI compliant ler permits access of memory through AXI Bus interface[1-4]. The controller works as an important bridge between the AXI host and memory. It takes care of the initialization and various timing requirements of the memory. The controller performs multiple schemes to increases the effective memory throughput[3]. These schemes include combining and reordering the Read/Write commands. For attaining the maximum throughput from the memory, It operates all the memory banks in parallel and minimizes the effect of precharge/refresh and other internal operations [2]. Power Down Central Initialization Refresh Manag AXI Access Memory AXI Compliant ler Architecture The architecture of the design is shown in the fig.1. The design consists of following blocks- AXI interface AXI access ler ler Fig.1 AXI compliant controller A. AXI Interface: AXI-Interface block interacts with HOST processor and AXI access manager. It is responsible for accepting and interpreting the AXI commands issued by the processor and responding to Read / Write requests in AXI protocol as requested by processor. It also maintains an arbiter block which is responsible for arbitrating between Read/Write commands. Arbitration is required between the commands 978-0-7695-3941-6/10 $26.00 2010 IEEE DOI 10.1109/ICCMS.2010.291 387 391

because of parallel/independent Read/Write command received at the AXI interface. It maintains asynchronous FIFO s to store the command and the data. The Read command gets stored in (Read ), Write command gets stored in (Write block), Read data gets stored in (Read Data block), and Write data gets stored in (Write Data ). The stored commands are supplied to the AXI access manager whenever AXI access manager is free. Now since the storage can have both Read and Write commands in the respective block hence it maintains an arbiter which arbitrates between Read/Write command and whenever Burst is free one of the present command is supplied to the Burst. burst. The AXI access manager combines the command wherever possible to improve the performance and passes the final command to controller. To insure maximum throughput it pre-fetches the commands from AXI interface converts into memory transactions and maintains locally. These stored commands are supplied to the ler whenever ler is not busy in the very next clock. The AXI-IF block interacts with the AXI interface block and receives commands. The received commands are stored in the Storage control block. The Burst converts the AXI command into burst. The address control block is responsible for generation of address. The overall operation of various blocks in the AXI access manager is controlled by the Logic. The fig.3 shows the AXI Access - Read Channel Read Logic Write Channel Write AXI-IF Storage Read Data Channel Read Data Arbiter Burst Write Data Channel Write Data Write Response Channel Write Response C. ler : Fig.3 AXI Access B. AXI Access : Fig.2 AXI Interface The main function of the AXI-Access is to convert the AXI commands into memory access commands for maximum utilization of the Band Width. The memory takes command only in burst 4 or 8 mode whereas the AXI command could be a smaller or longer The main function of controller is to interact with the memory. This is the heart of the AXI compliant controller and responsible for understanding the protocol and communicating with the memory [4]. ler also issues Refresh, Power down, Selfrefresh command along with the read or write command as per the user configuration [1]. The internal blocks of controller are shown in the fig.4-388 392

Power Down Central Initialization Fig.4 ler The Power Down takes care of generating the power down command to the memory whenever the host commands it to go to Power saving mode. The refresh control block takes care of refreshing the memory as per the user supplied configuration. The initialization control blocks take care of initializing the memory after reset. To control the timings of individual banks it contains manager which track the timing requirements for the individual banks. The address control block is responsible for generating the address to the memory. The control block interacts with the memory and based on the manager inputs drives the bus. It is also responsible for receiving the data during the Read operation. The Central manager coordinates between the individual Mangers and maintains the overall timing requirement of memory. II Refresh DDR FEATURES COMPARRISON: offers a substantial performance improvement over previous DDR2 & DDR memory systems. New features, all transparently implemented in the memory controller, improve the signal integrity characteristics of designs so that higher performance is achieved without an undue burden for the system designer. If proper consideration is given to any new DDR2 memory design, it can be a relatively easy upgrade to support in the next generation design. III Feature DDR DDR2 Data Rate 200-400 400-800 800-1600 Mbps Mbps Mbps Burst BL=2,4,8 BL=4,8 BL=4,8 Length No. of 4 banks 512Mb : 4 512Mb/1 Gb : 8 s s 1 Gb : 8 s Prefetch 2 bits 4 bits 8 bits CL/tRCD/ trp Source sync. 15/15/15 ns 15/15/15 ns 12/12/12 ns Bidirectional DQS (single ended Bi-directional DQS (Single/Diff. Bi-directional DQS (Differential Vdd/Vddq 2.5+/- 0.2 V 1.8+/- 0.1 V 1.5+/- 0.075 V Reset No No Yes ODT No Yes Yes Table 1: feature Comparison SIMULATION, TESTING & VERIFICATION Verification is important part of complete design process. It takes almost 60% of design process flow so to minimize time to market in complete design we do verification process in parallel with design process. The verification of AXI compliant controller is accomplished by sending the AXI transaction through the AXI Bus Functional Model. The response from the AXI compliant controller is received by the AXI Bus Functional Model and is passed to the Checker. The checker also picks the expected response from the Local memory and compares it based on the comparison the environment prints passed and failed messages and the associated data mismatch if any. The verification environment for AXI compliant controller is shown in fig.5. 389 393

AXI BFM ler Design Memory Checker Pass/Fail Local Memor Fig.5 Verification of ler FIG6.2- BL8, RANDOM READ/WRITE The AXI Bus Functional Model consists of generator, driver, monitor and scoreboard. The generator generates AXI transactions. Driver is used to drive the DUT (Device under Test) here DUT is AXI interface. The AXI transaction is also passed to the local memory which prepares the expected response which is passed to the checker whenever the checker asks for it. Upon receiving the response from the memory checker commands the local memory to give back the stored expected response and compares the controller response with the expected response. IV: SIMULATION RESULTS: Fig6.3- AL0, BL4 The below figures are showing snapshot of the controller operation in various modes. The design has been coded in Verilog HDL language. The functional simulation tool used in IUS6.1 from Cadence. Fig6.4- BL4, AL0 V: CONCLUSION FIG6.1- AL0,BL4 The design has been verified by the exhaustive functional verification. We examined the performance of the design by generating different type of AXI commands and noting down the time taken by the controller in finishing them. In most of the scenario the throughput of the design is close to the theoretical max. The latency of the design is between 10 to 35 clocks based on the command generated and the internal DDR state. 390 394

VI: FUTURE IMPROVMENTS Future improvements in AXI interface block is to add more features like fixed address mode, address wrapping mode and write response signal generation other than OKEY response. In fixed burst, the address remain all the same for every transfer in the burst. This burst type is for every repeated accesses to the same location such as when loading or emptying a peripheral FIFO and wrapping burst is similar to an incrementing burst, in that the address for each transfer in the burst is an increment of the previous transfer address. However in wrapping burst the address wraps around to a lower address when a wrap boundary is reached. The write response signal other then OKEY are EXOKAY SLVERR and DECERR. Future Improvement in ler is to add Reorder block in between AXI Access and ler block. The Reorder block will enhance the performance of complete ler because it sends same row address command first then sends other row address commands. When we switch the transaction from Row address X to other Row address Y first we have to close corresponding to that Row address X means precharge that and it take trp time to precharge the particular bank. So to achieve high performance we have to order the same row address command with coming data from AXI Interface block. But at this time we are not implementing this block because this is applicable when we are firing random row address command means that depend on open the customer requirements because this reorder block increase cost and size of the chip. REFERENCES [1] Churoo (Chul-Woo) Park, HoeJu Chung, Yun-Sang Lee, Jun-Ho Shin, Jin-Hyung Cho, Seunghoon Lee, Ki- Whan Song, Kyu-Hyoun Kim,Jung-Bae Lee, Changhyun Kim, Senior Member, IEEE, and Soo-In Cho. A 512-Mb SDRAM Prototype and Self- Calibration Techniques Proc. IEEE JOURNAL OF SOLID-STATE CIRCUITS, VOL. 41,NO.4, APRIL 2006 [2] K. Kim et al, A 1.4 Gb/s DLL using 2 nd order chargepump scheme with low phase/duty error for high-speed DRAM application, in IEEE Int. Solid-state Circuits Conf. (ISSCC) Dig. Tech. Papers, 2004, pp. 212-523. [3] S.Lee et al, A. 1.6 Gbs/pin double data rate SDRAM with wavepiplined CAS latency control, in IEEE Int. Solid-State Circuits conf. (ISSCC) Dig. Tech. Papers, 2004, pp.210-213. [4] H. Song et al, A 1.2 Gbs/pin double data rate SDRAM with on die-termination, in IEEE Int. Solid-State Circuits Conf. (ISSCC) Dig. Tech. Papers, 2003, pp. 314-496. 391 395