SlideShare una empresa de Scribd logo
1 de 43
Presented By                 Guided By
           RAVITESH BAJPAI         Prof. SHIVENDRA SINGH
            0111EC07MT09            ASSISTANT PROFESSER



                   Department of Electronics and
                   Communication Engineering
                     Technocrats Institute of
                     Technology Bhopal M.P

4/3/2013                                                   1
CONTENT
          OBJECTIVE
                                  ADVANTAGE
          PREREQUESTIES
                                  LIMITATION
          INTRODUCTION
                                  FUTURE ENHANCEMENT
          DMA ARCHITECTURE
                                  SUMMARY
          PERFORMANCE
                                  CONCLUSION
          CONCLUSION
                                  REFERENCE
          RESULT


 1.




4/3/2013                                                2
To design and implement an AMBA based advanced DMA controller

 which can support hardware triggers, linking operation and channel chaining
   transfer.
  provide three dimensions transmission.
 which can perform data block moving, data sorting and subframe extraction
   of various data structures.
 which can completes data transfer of different width of read and write.
 which can decrease the power consumption.
 Which can achieves AHB bus and APB bus to run in parallel.
 Which could adopt buffer and non-buffer data transfer mode
   according to the speed of equipments.
4/3/2013                                                                      3
WHAT IS SoC ?

 WHAT IS DMA ?

 WHAT IS AMBA PROTOCOL ?



4/3/2013                   4
What is SoC ?

           System-on-Chip
                Chip +
              Software +
            Integration =Soc




      The SoC chip includes:
       -Embedded processo
           - ASIC Logics and
            analog circuitry
       - Embedded memory



4/3/2013                       5
What is a DMA

Stands for "Direct Memory
Access.“

 DMA is a method of
transferring data from the
computer's RAM to another part
of the computer without
processing it using the CPU
Allows data to be sent directly
from an attached device (such
as a disk drive) to
thememory on the
computer's motherboard.



  4/3/2013                        6
What is AMBA

(AMBA) =The Advanced Microcontroller
Bus Architecture specification defines an
onchip communications standard for
designing high-performance embedded
microcontrollers.




Three distinct buses are defined within
the AMBA specification:
• the Advanced High-performance
  Bus (AHB)
• the Advanced System Bus (ASB)
• the Advanced Peripheral Bus
  (APB)




  4/3/2013                                  7
AMBA AHB                AMBA ASB                     AMBA APB


      * High performance
                               * High Performance                * Low power
     * Pipelined operation
                               * Pipelined operation    * Latched address and control
    * Multiple bus masters
                               * Multiple bus masters         * Simple interface
           * Burst transfers
                                                        * Suitable for many peripherals
      * Split transactions




4/3/2013                                                                             8
AMBA AHB system
      design
• A bus
  master is                           • A bus slave
  able to                               responds to
  initiate                              a read or
  read and                              write
  write                                 operation
  operations                            within a
  by                                    given
  providing        AHB       AHB        address-
  an address                            space range
  and control
                  master     slave
  informatio
  n

                   AHB       AHB
                  arbiter   decoder
• The bus                             • -The AHB
  arbiter                             decoder is used
  ensures that                        to decode
  only one bus                        address of
  master at a                         each transfer
  time is                             and provide a
  allowed to                          select signal
                                      for the slave
  initiate data
  transfers.



  4/3/2013                                              9
Timing Diagram of AMBA AHB
Basic transfer   Transfer type




4/3/2013                         10
Block Diagram of AMBA APB
APB bridge    APB slave




4/3/2013                    11
Timing Diagram of AMBA APB
Write transfer   Read transfer




4/3/2013                         12
Interfacing APB to AHB
Read transfers   Write transfers




4/3/2013                           13
Direct Memory Access controller (DMAC) is an important
 component of SoC architecture and Direct Memory Access
 (DMA) is an important technique to increase data transfer rate
 and MPU (microprocessor unit) efficiency in SoC system.
 There are a few of on-chip bus standards, but AMBA Rev
 2.0[4] (Advance Microcontroller Bus Architecture) has become
 popular industry-standard on-chip bus architecture. The
 design of DMAC is compliance to the AMBA specification
 for easy integration into SoC.


4/3/2013                                                          14
The connectivity of proposed DMAC architecture

   -Uses external memory & memory interface can be used
   -APB bridge & System Arbiter will use APB
   - DMAC contains AHB slave APB master & APB master




4/3/2013                                                  15
A.       Functional Overview

  B.        Dual-Clock Domain Design

  C.        Multi-channel Design and Arbitration Mechanism

 D.        Parameter Sets

 E.         AHB and APB Operation and Parallelism

 F.        Asymmetric Asynchronous FIFO Design

 G.        Interrupt and Error System Design
4/3/2013                                                     16
A. Functional Overview
               ARB Master
                               APB Master
    MPU           module         module
  programs      asserts bus    asserts bus
     the          request         request
  parameter    signal to get     signal to
     set         access to       gain the
                 the ARB        control of
                                APB after
                               arbitration
                                with APB
                Parameter
 Request and                       Bridge
               sets module
   Respond       transfer
   module      parameters
 accepts the     to AHB
  request of                    Interrupt
                  Master
     data                       and error
               module and
   transfer                      module
               APB Master
                                   asserts
                                 interrupt
                                 signal or
                Selected       error signal
                request        When data
  Requests       finds its        transfer
    enter      correspondi      completes
   arbiter          ng            or error
  module.       parameter          occurs
                   set in
                parameter
               sets module

4/3/2013                                      17
B. Dual-Clock Domain Design

 Advantage of using reduced APB clock
frequency
  - Decrease power consumption
  - Reduce area design

 Use of Pulse synchronous circuit
  - To decrease metastability to an
    acceptable level

 Working of Pulse synchronous circuit
  - To synchronized Pulse control signal
    transmission between AHB Master and
    APB Master, or between interrupt and
    Error module and APB Master module

  4/3/2013                                 18
C. Multi-channel Design and Arbitration Mechanism

    Multi-channel Design          Arbitration Mechanism



                                           ensures the
             allow chaining of         only one channel has
              several transfers         access to the bus by
           through one transfer           observing which
               occurrence.               channel has the
                                         greatest weight.




                   The
            channel chaining
            capability for the        The greatest weighted
            DMAC allows the
                                         channel will get
             completion of a           access to the bus,In
             DMAC channel               hardware channel
            transfer to trigger              priority
                 another
             DMAC channel
               transfer.



4/3/2013                                                       19
D. Parameter Sets
 Each parameter set is organized into eight words
 (32bit), and for contiguous data transfer, configure
 four words, the remaining words use default values



           Each parameter set includes source
           address,destination address, offset address index
           (SRCARY,DSTARY, SRCFRM, DSTFRM), data
           width, burst size(ACNT, BCNT, CCNT


                 control information, such as address
                 mode, transfer type, data flow control, link
                 address, chaining transfer control, interrupt and
                 error masking.

4/3/2013                                                             20
E. AHB and APB Operation and Parallelism


                AHB
              slave-to-
                AHB
                                      AHB Master        APB Master
                slave
                                       module            module
     APB                    AHB
  periphera     Four      slave-to-     Between ARB       Between ARB
  l-to-APB    Transfer       APB        slave and APB     slave and APB
  periphera     type      periphera       peripheral        peripheral
       l                      l

                                                            Between
                                       Between FIFO
                 APB                   and ARB slave.     FIFO and APB
              periphera                                     peripheral
              l-to-AHB
                 salve



4/3/2013                                                              21
Data transfer in all four modes
Data transfer in AHB slave-to-AHB slave   Data transfer in ARB slave-to-APB
& APB peripheral-to-APB peripheral        peripheral APB peripheral-to-ARB slave

  DMAC reads data from AHB                If the APB peripheral is slow
   slave for one burst, writing into        equipment, user adopt FIFO
   FIFO, and asserts request bus            buffer by set transfer mode
   signal for write operation to            register in parameter set, and
   meet the requirements of real-           the process is like AHB
   time.                                    slave-to-AHB slave.
  When one burst data is read             ARB read operation is in parallel
   completely and DMAC occupies             with APB write
   bus again, DMAC writes data to           operation, forming a two-stage
   ARB slave.                               pipeline, thus transfer speed is
  Transfer operations carry out in         increased greatly
   order, until task terminates.
4/3/2013                                                                           22
F. Asymmetric Asynchronous FIFO Design

              • To reading & writing data width of different
   WHY USED     size


              • for AHB slave to-APB peripheral
      WHERE
      USED
              • for APB peripheral- to AHB slave.

              • data buffer in one clock domain.
     HOW IT
              • In write port, can write and read data
     WORKS    • In read port, we only read data.
4/3/2013                                                       23
Block Description


      DualRAM       • It is a 128*32bit
                      asynchronous dual-port
       module         SRAM




                  • Write alignment saves
                    data when, write data
                    width < read data width
      fifo_align
       module • Read alignment saves data
                    when, write data width >
                    read data width



                    • controls reading or writing
     fifo_control   dual-ram
        module    • Generates write full signal
                      and read empty signal



4/3/2013                                            24
G. Interrupt and Error
      System Design
                                ERROR IN
                                                       ERROR IN LINK
FOR INTERRUPT DESIGN           PARAMETER
                                                           SET
DMAC will generate interrupt      SET
     signal to MPU

                                 The data transfer          Data transfer
                                    request is            corresponding to
                                   abandoned.            link parameter set is
Data transfer terminates and                                 abandoned.
  describe which channel
    request is complete.
                                DMAC will generate
                                error signal to MPU
                                and describe which       DMAC will generate
                                channel is error and     error signal to MPU
                                   finish the next        and describe which
Finish the next channel data        channel data         link parameter set is
                                       transfer                  error.
   transfer immediately.            immediately.



4/3/2013                                                                     25
The DMA is designed in Verilog language and successfully
 synthesized into the gate-level circuit. The delay of critical path
 is 2.45ns, that is, the maximum frequency is 408 MRZ.




4/3/2013                                                               26
Performance Comparision

 No. of Cycles in
this DMA taken in
                                  AN2548   PL081 DMA   PDMA         PDMA
buffer mode are
                                    DMA                (buffer)   (non-buffer)
just half to
AN2548 but
greater than than
PL081                AHB to AHB    1920       989        989           -

 For non –
buffer mode this     AHB to APB    3072      1320       1564          1012
DMA uses one
third of tatal       APB to AHB    3072      1320       1564          1012
cycles of AN2548
& also less than     APB to APB    3840      1728       1883           -
PL081.

 4/3/2013                                                                    27
• AN2548         • PL081 DMA       • PROPOSED
         DMA                                DMA

       - No busrt
       mode             - No busrt
                                          -Busrt mode
                        mode
       -No parallel                       - Parallel
       operation        -No parallel
                                          operation
                        operation
       -Function of                       -Function of
       APB bridge       -Function of
                                          APB bridge
                        APB bridge
       -No non-buffer                     -No non-buffer
       mode             -No non-buffer
                                          mode
                        mode
       - Less high                        - High transfer
       transfer rates   - High transfer
                                          rates
                        rates
4/3/2013                                                    28
DMA controls directly data,address
              and control signals on APB



            It achieves AHB operation and APB
                 operation run in parallel.


            Data transfer mode can be buffer and
           non-buffer mode according to practical
           application by setting control register.
4/3/2013                                              29
Metastability could never been avoided in anytime when
 transmitting signals between asynchronous clock domains.




4/3/2013                                                    30
Number of hardware & software channels can also
       Software channels can also be implemented.
                                                                be increased upto two decimals.




                                           Design and Implementation
                                              of an Advanced DMA
                                           Controller on AMBA-Based
                                                       SoC




                                                          Can also work upon other than 0.18 µm library
           Other addressing modes are also possible                    technology of SMIC.


4/3/2013                                                                                                   31
In the design and implementation of an AMBA based advanced DMA controller .The
 DMAC has 6 channels which support hardware triggers, linking operation and channel
 chaining transfer to improve the real-time processing capability and provides three
 dimensions transmission so as to perform data block moving, data sorting and subframe
 extraction of various data structures. Channel arbitration mechanism adopts hardware
 priority so that meet the different requirements of fairness and the priority in different
 systems and the DMAC supports incrementing and wrapping address modes and
 completes data transfer which the data width of read and write is different by
 asymmetric asynchronous FIFO. Moreover the DMAC adopts dual-clock domain design
 so as to decrease the power consumption.Furthermore the DMAC has the function of
 APB Bridge, and it can control address, data and control signals independently and
 achieve ARB bus and APB bus to run in parallel. And the DMAC could adopt buffer and
 non-buffer data transfer mode according to the speed of equipments. Non-buffer mode
 can enhance the data transfer rate significantly.




4/3/2013                                                                                      32
The performance of our DMAC is better. Each data transfer
 rate is increased by about 50%. Between ARB slave and APB
 peripheral, this DMA adopts non-buffer mode to transfer
 data, and the rate is increased by 67%.If this DMA uses buffer
 mode, the performance of PL081 is better than this. But the time
 spent more than PL081 is used in signals synchronization. This
 DMA adopts dual-clock domain design, and PL081 only has one
 clock RCLK. When this DMAC uses non-buffer, even though
 signal synchronization will occupy much time, the performance
 of this DMA is better than PL081, and the data transfer rate is
 increased by 23.3%.And this DMA has more features than
 PL081.
4/3/2013                                                            33
Transfer from AHB slave_to AHB master




4/3/2013                                   34
Transfer from APB Master




4/3/2013                     35
Transfer from APB to AHB




4/3/2013                     36
Transfer from AHB to APB




4/3/2013                      37
Experimental results show that the DMAC has the

 advantage of high speed transfer rate and is much

 suitable   to various application fields, such as

 multimedia processing.



4/3/2013                                             38
[1] Guoliang Ma; Hu He ,Design And Implementation Of An Advanced Dma controller On
 Amba-Based SoC, ASIC, 2009. ASICON '09. IEEE 8th International Conference on Digital
 Object, Page(s): 419 – 422
 [2] Hessel, S.; Szczesny, D.; Bruns, F.; Bilgic, A.; Hausner, J.Vehicular, Architectural
 Analysis of a Smart DMA Controller for Protocol Stack Acceleration in LTE
 Terminals,Technology Conference Fall (VTC 2010-Fall), 2010 IEEE 72nd Digital
 Object, Page(s): 1 – 5.
 [3] Jaehoon Song; Piljae Min; Hyunbean Yi; Design of Test Access Mechanism for AMBA-
 Based System-on-a-Chip,Sungju ParkVLSI Test Symposium, 2007. 25th IEEE , Page(s): 375
 – 380
 [4] Hang Yuan; Hongyi Chen; An improved DMA controller for high speed data transfer in
 MPU based SOC, Guoqiang Bai Solid-State and Integrated Circuits Technology, 2004.
 Proceedings. 7th International Conference on Digital Object, Page(s): 1372 - 1375 vol.2.

4/3/2013                                                                                    39
[5] Lufeng Qiao; Design of DMA controller for multichannel PCI bus frame engine and
    data link manager,Zhigong Wang Communications, Circuits and Systems and West
    SinoExpositions, IEEE 2002 International Conference on Digital Object,Page(s): 1481 -
    1485 vol.2.
    [6] Szczesny, D.; Hessel, S.; Traboulsi, S.; Optimizing the Processing Performance of a
    Smart DMA Controller for LTE Terminals,Bilgic, A. Embedded and Real-Time Computing
    Systems and Applications (RTCSA), 2010 IEEE 16th International Conference on Digital
    Object,Page(s):309-315
    [7] Chia-Hao Yu; Chung-Kai Liu; Chih-Heng Kang; Tsun-Hsien Wang; Chih-Chien Shen;
    An Efficient DMA Controller for Multimedia Application in MPU Based SOC, Shau-Yin
    Tseng,Multimedia and Expo, 2007 IEEE International Conference on, Page(s): 80 – 83
    [8]    Prokin;   DMA      transfer   method   for   wide-range   speed   and   frequency
    measurement, M.Instrumentation and Measurement, IEEE Transactions on Volume: 42
    , Issue: 4 , Page(s): 842 – 846
    .
4/3/2013                                                                                       40
[9] Osborne, S.; Erdogan, A.T.; Arslan, T.; Bus encoding architecture for low-power implementation of
an AMBA-based SoC platform, Robinson, D.Computers and Digital Techniques, IEEE Proceedings -
 Volume: 149 , Issue: 4 , Page(s): 152 – 156
[10] Pockrandt, M.; Herber, P.; Model checking a SystemC/TLM design of the AMBA
AHB protocol, Glesner, S. Embedded Systems for Real-Time Multimedia (ESTIMedia), 2011 9th IEEE
Symposium on, Page(s): 66 – 75
[11] Osborne, S.; Erdogan, A.T.; Arslan, T.; Bus encoding architecture for low-power implementation of
an AMBA-based SoC platform,Robinson, D.Computers and Digital Techniques, IEEE Proceedings -
Volume: 149 , Issue: 4 , Page(s): 152 - 156
[12] Yi-Ting Lin; Chien-Chou Wang; AMBA AHB bus potocol checker with efficient debugging
mechanismIng-Jer Huang Circuits and Systems, 2008. ISCAS 2008. IEEE International Symposium
on , Page(s): 928 – 93


  4/3/2013                                                                                        41
[13] Dubois, M.; Savaria, Y.; A generic AHB bus for implementing high-speed locally synchronous
islands,Bois, G.SoutheastCon, 2005. Proceedings. IEEE , Page(s): 11 – 16
[14] Toal, C.; Sezer, S.; A pipelined SoPC architecture for 2.5 Gbps network processing,Xing Yu
Field-Programmable Custom Computing Machines, 2003. FCCM 2003. 11th Annual IEEE
Symposium on , Page(s): 271 – 272
[15] Sezer, S.; Toal, C.; A pipelined SoPC architecture for data link layer protocol processing,Xing Yu
SOC Conference, 2003. Proceedings. IEEE International [Systems-on-Chip] , Page(s): 277 – 278
[16] Toal, C.; A 32-bit SoPC implementation of a P5,Sezer, S.Computers and Communication, 2003.
(ISCC 2003). Proceedings. Eighth IEEE International Symposium on , Page(s): 504 - 507 vol.1
[17] AN2548 Application note. http://www.st.com.
[18]                                   AMBA                     Specification                  (rev2.1)
[19]       TMS320DM643x      DMP      EDMA3        User's   Guide.     SPRU987,      January     2007.



4/3/2013                                                                                            42
4/3/2013   43

Más contenido relacionado

La actualidad más candente (20)

Ambha axi
Ambha axiAmbha axi
Ambha axi
 
AMBA AHB 5
AMBA AHB 5AMBA AHB 5
AMBA AHB 5
 
Axi
AxiAxi
Axi
 
SOC Verification using SystemVerilog
SOC Verification using SystemVerilog SOC Verification using SystemVerilog
SOC Verification using SystemVerilog
 
ASIC design verification
ASIC design verificationASIC design verification
ASIC design verification
 
AMBA 2.0 PPT
AMBA 2.0 PPTAMBA 2.0 PPT
AMBA 2.0 PPT
 
AMBA BUS.pptx
AMBA BUS.pptxAMBA BUS.pptx
AMBA BUS.pptx
 
Axi
AxiAxi
Axi
 
AMBA3.0 james_20110801
AMBA3.0 james_20110801AMBA3.0 james_20110801
AMBA3.0 james_20110801
 
Lec13
Lec13Lec13
Lec13
 
VLSI DESIGN OF AMBA BASED AHB2APB BRIDGE
VLSI DESIGN OF AMBA BASED AHB2APB BRIDGEVLSI DESIGN OF AMBA BASED AHB2APB BRIDGE
VLSI DESIGN OF AMBA BASED AHB2APB BRIDGE
 
System verilog coverage
System verilog coverageSystem verilog coverage
System verilog coverage
 
Coverage and Introduction to UVM
Coverage and Introduction to UVMCoverage and Introduction to UVM
Coverage and Introduction to UVM
 
High Bandwidth Memory(HBM)
High Bandwidth Memory(HBM)High Bandwidth Memory(HBM)
High Bandwidth Memory(HBM)
 
Ral by pushpa
Ral by pushpa Ral by pushpa
Ral by pushpa
 
Amba axi 29 3_2015
Amba axi 29 3_2015Amba axi 29 3_2015
Amba axi 29 3_2015
 
dual-port RAM (DPRAM)
dual-port RAM (DPRAM)dual-port RAM (DPRAM)
dual-port RAM (DPRAM)
 
Microblaze
MicroblazeMicroblaze
Microblaze
 
Double data rate (ddr)
Double data rate (ddr)Double data rate (ddr)
Double data rate (ddr)
 
Amba presentation2
Amba presentation2Amba presentation2
Amba presentation2
 

Similar a Design and Implementation of an Advanced DMA Controller on AMBA-Based SoC

Design and Implementation of AMBA ASB apb bridge
Design and Implementation of AMBA ASB apb bridgeDesign and Implementation of AMBA ASB apb bridge
Design and Implementation of AMBA ASB apb bridgeManu BN
 
An On-Chip Bus Tracer Analyzer With Amba AHB For Real Time Tracing With Lossl...
An On-Chip Bus Tracer Analyzer With Amba AHB For Real Time Tracing With Lossl...An On-Chip Bus Tracer Analyzer With Amba AHB For Real Time Tracing With Lossl...
An On-Chip Bus Tracer Analyzer With Amba AHB For Real Time Tracing With Lossl...IJERA Editor
 
Design and Analysis of Xilinx Verified AMBA Bridge for SoC Systems
Design and Analysis of Xilinx Verified AMBA Bridge for SoC SystemsDesign and Analysis of Xilinx Verified AMBA Bridge for SoC Systems
Design and Analysis of Xilinx Verified AMBA Bridge for SoC Systemsidescitation
 
VLSI DESIGN OF AMBA BASED AHB2APB BRIDGE
VLSI DESIGN OF AMBA BASED AHB2APB BRIDGEVLSI DESIGN OF AMBA BASED AHB2APB BRIDGE
VLSI DESIGN OF AMBA BASED AHB2APB BRIDGEVLSICS Design
 
VLSI DESIGN OF AMBA BASED AHB2APBBRIDGE
VLSI DESIGN OF AMBA BASED AHB2APBBRIDGEVLSI DESIGN OF AMBA BASED AHB2APBBRIDGE
VLSI DESIGN OF AMBA BASED AHB2APBBRIDGEVLSICS Design
 
Design And Verification of AMBA APB Protocol
Design And Verification of AMBA APB ProtocolDesign And Verification of AMBA APB Protocol
Design And Verification of AMBA APB ProtocolIJERA Editor
 
IRJET - Design of AMBA based AHB2APB Protocol for Efficient Utilization of AH...
IRJET - Design of AMBA based AHB2APB Protocol for Efficient Utilization of AH...IRJET - Design of AMBA based AHB2APB Protocol for Efficient Utilization of AH...
IRJET - Design of AMBA based AHB2APB Protocol for Efficient Utilization of AH...IRJET Journal
 
IRJET - Analysis of Different Arbitration Algorithms for Amba Ahb Bus Protoco...
IRJET - Analysis of Different Arbitration Algorithms for Amba Ahb Bus Protoco...IRJET - Analysis of Different Arbitration Algorithms for Amba Ahb Bus Protoco...
IRJET - Analysis of Different Arbitration Algorithms for Amba Ahb Bus Protoco...IRJET Journal
 
A Review On AMBA AHB Lite Protocol And Verification Using UVM Methodology
A Review On AMBA AHB Lite Protocol And Verification Using UVM MethodologyA Review On AMBA AHB Lite Protocol And Verification Using UVM Methodology
A Review On AMBA AHB Lite Protocol And Verification Using UVM MethodologyTodd Turner
 
A Proficient Recognition Method for ML-AHB Bus Matrix
A Proficient Recognition Method for ML-AHB Bus MatrixA Proficient Recognition Method for ML-AHB Bus Matrix
A Proficient Recognition Method for ML-AHB Bus MatrixIRJET Journal
 
System on chip buses
System on chip busesSystem on chip buses
System on chip busesA B Shinde
 
Area Efficient VHDL implementation of AHB arbiter IP
Area Efficient VHDL implementation of AHB arbiter IPArea Efficient VHDL implementation of AHB arbiter IP
Area Efficient VHDL implementation of AHB arbiter IPIRJET Journal
 
Design and FPGA Implementation of AMBA APB Bridge with Clock Skew Minimizatio...
Design and FPGA Implementation of AMBA APB Bridge with Clock Skew Minimizatio...Design and FPGA Implementation of AMBA APB Bridge with Clock Skew Minimizatio...
Design and FPGA Implementation of AMBA APB Bridge with Clock Skew Minimizatio...IOSRJVSP
 

Similar a Design and Implementation of an Advanced DMA Controller on AMBA-Based SoC (20)

Design and Implementation of AMBA ASB apb bridge
Design and Implementation of AMBA ASB apb bridgeDesign and Implementation of AMBA ASB apb bridge
Design and Implementation of AMBA ASB apb bridge
 
An On-Chip Bus Tracer Analyzer With Amba AHB For Real Time Tracing With Lossl...
An On-Chip Bus Tracer Analyzer With Amba AHB For Real Time Tracing With Lossl...An On-Chip Bus Tracer Analyzer With Amba AHB For Real Time Tracing With Lossl...
An On-Chip Bus Tracer Analyzer With Amba AHB For Real Time Tracing With Lossl...
 
AMBA 2.0 REPORT
AMBA 2.0 REPORTAMBA 2.0 REPORT
AMBA 2.0 REPORT
 
Design and Analysis of Xilinx Verified AMBA Bridge for SoC Systems
Design and Analysis of Xilinx Verified AMBA Bridge for SoC SystemsDesign and Analysis of Xilinx Verified AMBA Bridge for SoC Systems
Design and Analysis of Xilinx Verified AMBA Bridge for SoC Systems
 
VLSI DESIGN OF AMBA BASED AHB2APB BRIDGE
VLSI DESIGN OF AMBA BASED AHB2APB BRIDGEVLSI DESIGN OF AMBA BASED AHB2APB BRIDGE
VLSI DESIGN OF AMBA BASED AHB2APB BRIDGE
 
VLSI DESIGN OF AMBA BASED AHB2APBBRIDGE
VLSI DESIGN OF AMBA BASED AHB2APBBRIDGEVLSI DESIGN OF AMBA BASED AHB2APBBRIDGE
VLSI DESIGN OF AMBA BASED AHB2APBBRIDGE
 
Ey3110051010
Ey3110051010Ey3110051010
Ey3110051010
 
Design And Verification of AMBA APB Protocol
Design And Verification of AMBA APB ProtocolDesign And Verification of AMBA APB Protocol
Design And Verification of AMBA APB Protocol
 
IRJET - Design of AMBA based AHB2APB Protocol for Efficient Utilization of AH...
IRJET - Design of AMBA based AHB2APB Protocol for Efficient Utilization of AH...IRJET - Design of AMBA based AHB2APB Protocol for Efficient Utilization of AH...
IRJET - Design of AMBA based AHB2APB Protocol for Efficient Utilization of AH...
 
IRJET - Analysis of Different Arbitration Algorithms for Amba Ahb Bus Protoco...
IRJET - Analysis of Different Arbitration Algorithms for Amba Ahb Bus Protoco...IRJET - Analysis of Different Arbitration Algorithms for Amba Ahb Bus Protoco...
IRJET - Analysis of Different Arbitration Algorithms for Amba Ahb Bus Protoco...
 
A Review On AMBA AHB Lite Protocol And Verification Using UVM Methodology
A Review On AMBA AHB Lite Protocol And Verification Using UVM MethodologyA Review On AMBA AHB Lite Protocol And Verification Using UVM Methodology
A Review On AMBA AHB Lite Protocol And Verification Using UVM Methodology
 
A Proficient Recognition Method for ML-AHB Bus Matrix
A Proficient Recognition Method for ML-AHB Bus MatrixA Proficient Recognition Method for ML-AHB Bus Matrix
A Proficient Recognition Method for ML-AHB Bus Matrix
 
System on chip buses
System on chip busesSystem on chip buses
System on chip buses
 
As35252256
As35252256As35252256
As35252256
 
Ed24825831
Ed24825831Ed24825831
Ed24825831
 
call for papers, research paper publishing, where to publish research paper, ...
call for papers, research paper publishing, where to publish research paper, ...call for papers, research paper publishing, where to publish research paper, ...
call for papers, research paper publishing, where to publish research paper, ...
 
Area Efficient VHDL implementation of AHB arbiter IP
Area Efficient VHDL implementation of AHB arbiter IPArea Efficient VHDL implementation of AHB arbiter IP
Area Efficient VHDL implementation of AHB arbiter IP
 
Design and FPGA Implementation of AMBA APB Bridge with Clock Skew Minimizatio...
Design and FPGA Implementation of AMBA APB Bridge with Clock Skew Minimizatio...Design and FPGA Implementation of AMBA APB Bridge with Clock Skew Minimizatio...
Design and FPGA Implementation of AMBA APB Bridge with Clock Skew Minimizatio...
 
BT multicast plans 2007
BT multicast plans 2007BT multicast plans 2007
BT multicast plans 2007
 
Router architectures in no c
Router architectures in no cRouter architectures in no c
Router architectures in no c
 

Más de Rabindranath Tagore University, Bhopal (11)

Charged pump plls
Charged pump pllsCharged pump plls
Charged pump plls
 
Datapath subsystem multiplication
Datapath subsystem multiplicationDatapath subsystem multiplication
Datapath subsystem multiplication
 
Flip flo ps
Flip flo psFlip flo ps
Flip flo ps
 
Non ideal effects of pll
Non ideal effects of pllNon ideal effects of pll
Non ideal effects of pll
 
PHASE LOCK LOOPs
PHASE LOCK LOOPsPHASE LOCK LOOPs
PHASE LOCK LOOPs
 
ALGORITHMIC STATE MACHINES
ALGORITHMIC STATE MACHINESALGORITHMIC STATE MACHINES
ALGORITHMIC STATE MACHINES
 
Controllers
ControllersControllers
Controllers
 
Hardware firmware algorithm
Hardware firmware algorithmHardware firmware algorithm
Hardware firmware algorithm
 
Data system designing
Data system designingData system designing
Data system designing
 
ROM
ROMROM
ROM
 
Shifters
ShiftersShifters
Shifters
 

Design and Implementation of an Advanced DMA Controller on AMBA-Based SoC

  • 1. Presented By Guided By RAVITESH BAJPAI Prof. SHIVENDRA SINGH 0111EC07MT09 ASSISTANT PROFESSER Department of Electronics and Communication Engineering Technocrats Institute of Technology Bhopal M.P 4/3/2013 1
  • 2. CONTENT  OBJECTIVE  ADVANTAGE  PREREQUESTIES  LIMITATION  INTRODUCTION  FUTURE ENHANCEMENT  DMA ARCHITECTURE  SUMMARY  PERFORMANCE  CONCLUSION  CONCLUSION  REFERENCE  RESULT 1. 4/3/2013 2
  • 3. To design and implement an AMBA based advanced DMA controller which can support hardware triggers, linking operation and channel chaining transfer.  provide three dimensions transmission. which can perform data block moving, data sorting and subframe extraction of various data structures. which can completes data transfer of different width of read and write. which can decrease the power consumption. Which can achieves AHB bus and APB bus to run in parallel. Which could adopt buffer and non-buffer data transfer mode according to the speed of equipments. 4/3/2013 3
  • 4. WHAT IS SoC ? WHAT IS DMA ? WHAT IS AMBA PROTOCOL ? 4/3/2013 4
  • 5. What is SoC ? System-on-Chip Chip + Software + Integration =Soc The SoC chip includes: -Embedded processo - ASIC Logics and analog circuitry - Embedded memory 4/3/2013 5
  • 6. What is a DMA Stands for "Direct Memory Access.“ DMA is a method of transferring data from the computer's RAM to another part of the computer without processing it using the CPU Allows data to be sent directly from an attached device (such as a disk drive) to thememory on the computer's motherboard. 4/3/2013 6
  • 7. What is AMBA (AMBA) =The Advanced Microcontroller Bus Architecture specification defines an onchip communications standard for designing high-performance embedded microcontrollers. Three distinct buses are defined within the AMBA specification: • the Advanced High-performance Bus (AHB) • the Advanced System Bus (ASB) • the Advanced Peripheral Bus (APB) 4/3/2013 7
  • 8. AMBA AHB AMBA ASB AMBA APB * High performance * High Performance * Low power * Pipelined operation * Pipelined operation * Latched address and control * Multiple bus masters * Multiple bus masters * Simple interface * Burst transfers * Suitable for many peripherals * Split transactions 4/3/2013 8
  • 9. AMBA AHB system design • A bus master is • A bus slave able to responds to initiate a read or read and write write operation operations within a by given providing AHB AHB address- an address space range and control master slave informatio n AHB AHB arbiter decoder • The bus • -The AHB arbiter decoder is used ensures that to decode only one bus address of master at a each transfer time is and provide a allowed to select signal for the slave initiate data transfers. 4/3/2013 9
  • 10. Timing Diagram of AMBA AHB Basic transfer Transfer type 4/3/2013 10
  • 11. Block Diagram of AMBA APB APB bridge APB slave 4/3/2013 11
  • 12. Timing Diagram of AMBA APB Write transfer Read transfer 4/3/2013 12
  • 13. Interfacing APB to AHB Read transfers Write transfers 4/3/2013 13
  • 14. Direct Memory Access controller (DMAC) is an important component of SoC architecture and Direct Memory Access (DMA) is an important technique to increase data transfer rate and MPU (microprocessor unit) efficiency in SoC system. There are a few of on-chip bus standards, but AMBA Rev 2.0[4] (Advance Microcontroller Bus Architecture) has become popular industry-standard on-chip bus architecture. The design of DMAC is compliance to the AMBA specification for easy integration into SoC. 4/3/2013 14
  • 15. The connectivity of proposed DMAC architecture -Uses external memory & memory interface can be used -APB bridge & System Arbiter will use APB - DMAC contains AHB slave APB master & APB master 4/3/2013 15
  • 16. A. Functional Overview B. Dual-Clock Domain Design C. Multi-channel Design and Arbitration Mechanism D. Parameter Sets E. AHB and APB Operation and Parallelism F. Asymmetric Asynchronous FIFO Design G. Interrupt and Error System Design 4/3/2013 16
  • 17. A. Functional Overview ARB Master APB Master MPU module module programs asserts bus asserts bus the request request parameter signal to get signal to set access to gain the the ARB control of APB after arbitration with APB Parameter Request and Bridge sets module Respond transfer module parameters accepts the to AHB request of Interrupt Master data and error module and transfer module APB Master asserts interrupt signal or Selected error signal request When data Requests finds its transfer enter correspondi completes arbiter ng or error module. parameter occurs set in parameter sets module 4/3/2013 17
  • 18. B. Dual-Clock Domain Design Advantage of using reduced APB clock frequency - Decrease power consumption - Reduce area design Use of Pulse synchronous circuit - To decrease metastability to an acceptable level Working of Pulse synchronous circuit - To synchronized Pulse control signal transmission between AHB Master and APB Master, or between interrupt and Error module and APB Master module 4/3/2013 18
  • 19. C. Multi-channel Design and Arbitration Mechanism Multi-channel Design Arbitration Mechanism ensures the allow chaining of only one channel has several transfers access to the bus by through one transfer observing which occurrence. channel has the greatest weight. The channel chaining capability for the The greatest weighted DMAC allows the channel will get completion of a access to the bus,In DMAC channel hardware channel transfer to trigger priority another DMAC channel transfer. 4/3/2013 19
  • 20. D. Parameter Sets Each parameter set is organized into eight words (32bit), and for contiguous data transfer, configure four words, the remaining words use default values Each parameter set includes source address,destination address, offset address index (SRCARY,DSTARY, SRCFRM, DSTFRM), data width, burst size(ACNT, BCNT, CCNT control information, such as address mode, transfer type, data flow control, link address, chaining transfer control, interrupt and error masking. 4/3/2013 20
  • 21. E. AHB and APB Operation and Parallelism AHB slave-to- AHB AHB Master APB Master slave module module APB AHB periphera Four slave-to- Between ARB Between ARB l-to-APB Transfer APB slave and APB slave and APB periphera type periphera peripheral peripheral l l Between Between FIFO APB and ARB slave. FIFO and APB periphera peripheral l-to-AHB salve 4/3/2013 21
  • 22. Data transfer in all four modes Data transfer in AHB slave-to-AHB slave Data transfer in ARB slave-to-APB & APB peripheral-to-APB peripheral peripheral APB peripheral-to-ARB slave  DMAC reads data from AHB  If the APB peripheral is slow slave for one burst, writing into equipment, user adopt FIFO FIFO, and asserts request bus buffer by set transfer mode signal for write operation to register in parameter set, and meet the requirements of real- the process is like AHB time. slave-to-AHB slave.  When one burst data is read  ARB read operation is in parallel completely and DMAC occupies with APB write bus again, DMAC writes data to operation, forming a two-stage ARB slave. pipeline, thus transfer speed is  Transfer operations carry out in increased greatly order, until task terminates. 4/3/2013 22
  • 23. F. Asymmetric Asynchronous FIFO Design • To reading & writing data width of different WHY USED size • for AHB slave to-APB peripheral WHERE USED • for APB peripheral- to AHB slave. • data buffer in one clock domain. HOW IT • In write port, can write and read data WORKS • In read port, we only read data. 4/3/2013 23
  • 24. Block Description DualRAM • It is a 128*32bit asynchronous dual-port module SRAM • Write alignment saves data when, write data width < read data width fifo_align module • Read alignment saves data when, write data width > read data width • controls reading or writing fifo_control dual-ram module • Generates write full signal and read empty signal 4/3/2013 24
  • 25. G. Interrupt and Error System Design ERROR IN ERROR IN LINK FOR INTERRUPT DESIGN PARAMETER SET DMAC will generate interrupt SET signal to MPU The data transfer Data transfer request is corresponding to abandoned. link parameter set is Data transfer terminates and abandoned. describe which channel request is complete. DMAC will generate error signal to MPU and describe which DMAC will generate channel is error and error signal to MPU finish the next and describe which Finish the next channel data channel data link parameter set is transfer error. transfer immediately. immediately. 4/3/2013 25
  • 26. The DMA is designed in Verilog language and successfully synthesized into the gate-level circuit. The delay of critical path is 2.45ns, that is, the maximum frequency is 408 MRZ. 4/3/2013 26
  • 27. Performance Comparision  No. of Cycles in this DMA taken in AN2548 PL081 DMA PDMA PDMA buffer mode are DMA (buffer) (non-buffer) just half to AN2548 but greater than than PL081 AHB to AHB 1920 989 989 -  For non – buffer mode this AHB to APB 3072 1320 1564 1012 DMA uses one third of tatal APB to AHB 3072 1320 1564 1012 cycles of AN2548 & also less than APB to APB 3840 1728 1883 - PL081. 4/3/2013 27
  • 28. • AN2548 • PL081 DMA • PROPOSED DMA DMA - No busrt mode - No busrt -Busrt mode mode -No parallel - Parallel operation -No parallel operation operation -Function of -Function of APB bridge -Function of APB bridge APB bridge -No non-buffer -No non-buffer mode -No non-buffer mode mode - Less high - High transfer transfer rates - High transfer rates rates 4/3/2013 28
  • 29. DMA controls directly data,address and control signals on APB It achieves AHB operation and APB operation run in parallel. Data transfer mode can be buffer and non-buffer mode according to practical application by setting control register. 4/3/2013 29
  • 30. Metastability could never been avoided in anytime when transmitting signals between asynchronous clock domains. 4/3/2013 30
  • 31. Number of hardware & software channels can also Software channels can also be implemented. be increased upto two decimals. Design and Implementation of an Advanced DMA Controller on AMBA-Based SoC Can also work upon other than 0.18 µm library Other addressing modes are also possible technology of SMIC. 4/3/2013 31
  • 32. In the design and implementation of an AMBA based advanced DMA controller .The DMAC has 6 channels which support hardware triggers, linking operation and channel chaining transfer to improve the real-time processing capability and provides three dimensions transmission so as to perform data block moving, data sorting and subframe extraction of various data structures. Channel arbitration mechanism adopts hardware priority so that meet the different requirements of fairness and the priority in different systems and the DMAC supports incrementing and wrapping address modes and completes data transfer which the data width of read and write is different by asymmetric asynchronous FIFO. Moreover the DMAC adopts dual-clock domain design so as to decrease the power consumption.Furthermore the DMAC has the function of APB Bridge, and it can control address, data and control signals independently and achieve ARB bus and APB bus to run in parallel. And the DMAC could adopt buffer and non-buffer data transfer mode according to the speed of equipments. Non-buffer mode can enhance the data transfer rate significantly. 4/3/2013 32
  • 33. The performance of our DMAC is better. Each data transfer rate is increased by about 50%. Between ARB slave and APB peripheral, this DMA adopts non-buffer mode to transfer data, and the rate is increased by 67%.If this DMA uses buffer mode, the performance of PL081 is better than this. But the time spent more than PL081 is used in signals synchronization. This DMA adopts dual-clock domain design, and PL081 only has one clock RCLK. When this DMAC uses non-buffer, even though signal synchronization will occupy much time, the performance of this DMA is better than PL081, and the data transfer rate is increased by 23.3%.And this DMA has more features than PL081. 4/3/2013 33
  • 34. Transfer from AHB slave_to AHB master 4/3/2013 34
  • 35. Transfer from APB Master 4/3/2013 35
  • 36. Transfer from APB to AHB 4/3/2013 36
  • 37. Transfer from AHB to APB 4/3/2013 37
  • 38. Experimental results show that the DMAC has the advantage of high speed transfer rate and is much suitable to various application fields, such as multimedia processing. 4/3/2013 38
  • 39. [1] Guoliang Ma; Hu He ,Design And Implementation Of An Advanced Dma controller On Amba-Based SoC, ASIC, 2009. ASICON '09. IEEE 8th International Conference on Digital Object, Page(s): 419 – 422 [2] Hessel, S.; Szczesny, D.; Bruns, F.; Bilgic, A.; Hausner, J.Vehicular, Architectural Analysis of a Smart DMA Controller for Protocol Stack Acceleration in LTE Terminals,Technology Conference Fall (VTC 2010-Fall), 2010 IEEE 72nd Digital Object, Page(s): 1 – 5. [3] Jaehoon Song; Piljae Min; Hyunbean Yi; Design of Test Access Mechanism for AMBA- Based System-on-a-Chip,Sungju ParkVLSI Test Symposium, 2007. 25th IEEE , Page(s): 375 – 380 [4] Hang Yuan; Hongyi Chen; An improved DMA controller for high speed data transfer in MPU based SOC, Guoqiang Bai Solid-State and Integrated Circuits Technology, 2004. Proceedings. 7th International Conference on Digital Object, Page(s): 1372 - 1375 vol.2. 4/3/2013 39
  • 40. [5] Lufeng Qiao; Design of DMA controller for multichannel PCI bus frame engine and data link manager,Zhigong Wang Communications, Circuits and Systems and West SinoExpositions, IEEE 2002 International Conference on Digital Object,Page(s): 1481 - 1485 vol.2. [6] Szczesny, D.; Hessel, S.; Traboulsi, S.; Optimizing the Processing Performance of a Smart DMA Controller for LTE Terminals,Bilgic, A. Embedded and Real-Time Computing Systems and Applications (RTCSA), 2010 IEEE 16th International Conference on Digital Object,Page(s):309-315 [7] Chia-Hao Yu; Chung-Kai Liu; Chih-Heng Kang; Tsun-Hsien Wang; Chih-Chien Shen; An Efficient DMA Controller for Multimedia Application in MPU Based SOC, Shau-Yin Tseng,Multimedia and Expo, 2007 IEEE International Conference on, Page(s): 80 – 83 [8] Prokin; DMA transfer method for wide-range speed and frequency measurement, M.Instrumentation and Measurement, IEEE Transactions on Volume: 42 , Issue: 4 , Page(s): 842 – 846 . 4/3/2013 40
  • 41. [9] Osborne, S.; Erdogan, A.T.; Arslan, T.; Bus encoding architecture for low-power implementation of an AMBA-based SoC platform, Robinson, D.Computers and Digital Techniques, IEEE Proceedings - Volume: 149 , Issue: 4 , Page(s): 152 – 156 [10] Pockrandt, M.; Herber, P.; Model checking a SystemC/TLM design of the AMBA AHB protocol, Glesner, S. Embedded Systems for Real-Time Multimedia (ESTIMedia), 2011 9th IEEE Symposium on, Page(s): 66 – 75 [11] Osborne, S.; Erdogan, A.T.; Arslan, T.; Bus encoding architecture for low-power implementation of an AMBA-based SoC platform,Robinson, D.Computers and Digital Techniques, IEEE Proceedings - Volume: 149 , Issue: 4 , Page(s): 152 - 156 [12] Yi-Ting Lin; Chien-Chou Wang; AMBA AHB bus potocol checker with efficient debugging mechanismIng-Jer Huang Circuits and Systems, 2008. ISCAS 2008. IEEE International Symposium on , Page(s): 928 – 93 4/3/2013 41
  • 42. [13] Dubois, M.; Savaria, Y.; A generic AHB bus for implementing high-speed locally synchronous islands,Bois, G.SoutheastCon, 2005. Proceedings. IEEE , Page(s): 11 – 16 [14] Toal, C.; Sezer, S.; A pipelined SoPC architecture for 2.5 Gbps network processing,Xing Yu Field-Programmable Custom Computing Machines, 2003. FCCM 2003. 11th Annual IEEE Symposium on , Page(s): 271 – 272 [15] Sezer, S.; Toal, C.; A pipelined SoPC architecture for data link layer protocol processing,Xing Yu SOC Conference, 2003. Proceedings. IEEE International [Systems-on-Chip] , Page(s): 277 – 278 [16] Toal, C.; A 32-bit SoPC implementation of a P5,Sezer, S.Computers and Communication, 2003. (ISCC 2003). Proceedings. Eighth IEEE International Symposium on , Page(s): 504 - 507 vol.1 [17] AN2548 Application note. http://www.st.com. [18] AMBA Specification (rev2.1) [19] TMS320DM643x DMP EDMA3 User's Guide. SPRU987, January 2007. 4/3/2013 42
  • 43. 4/3/2013 43