Login

CoreLink DMAコントローラ

CoreLink DMA Controllers Image (View Larger CoreLink DMA Controllers Image) DMA Controllers

The Direct Memory Access Controller (DMAC) is a hardware feature that enables movement of blocks of data from peripheral to memory, memory-to-peripheral or memory-to-memory. This movement of data by a separate entity significantly reduces the load on the processor. 

A DMAC can save power in a system by putting the CPU in a low power state and using the DMAC (fewer gates/transactions) to move the data. Equally, using a DMAC can achieve higher performance in a system where it moves data in parallel with processing in the CPU.

AMBA DMA Controllers for AXI and AHB

DMA Controllers can have a significant impact on both system performance and system power. It is critical that the design provides for optimum compatibility with the bus architecture (AMBA) and provides the flexibility required to support a wide range of system requirements.

ARM delivers DMA controllers for both high-end, high-performance AXI systems based  on the Cortex-A™ and Cortex-R™ families and cost-efficient AHB systems built around Cortex-M™ and ARM9 processors. 

DMA in high-performance AXI systems

The AMBA AXI-based PrimeCell® DMA Controller, DMA-330, is a highly flexible, high-performance DMAC designed to provide maximum configurability and programmability. Configurability optimizes the gate count for target systems. The size can be as low as 40K for low-end configurations. The DMA-330 also provides a natural migration path for users of the AMBA AHB based DMA Controller, PL080.

An FSM based DMAC can provide only limited functionalities as the gate count increases rapidly with the increase in the number of features supported. In contrast, the DMA-330 is a micro-programmable DMAC, with its own instruction set, and provides a rich set of features while keeping the gate count low. The DMA-330 instruction set design provides flexibility for programming DMA transfers. The program code is stored in system memory that the DMAC accesses using its AMBA AXI interface and the DMA-330 uses an efficient caching system to optimize performance and minimize bus traffic.

DMA in cost-effective AHB systems

For AHB systems based around the Cortex-M™ processors ARM delivers the DMA-230 "micro" DMA controller. Designed for very low gate count and low power operation DMA-230 provides a flexible, high-performance DMA Controller required by such designs.


CoreLink DMAコントローラ Image (View Larger CoreLink DMAコントローラ Image)

DMAコントローラ

DMAC(ダイレクト メモリ アクセス コントローラ)は、ペリフェラルからメモリ、メモリからペリフェラル、メモリからメモリへのデータのブロック転送を可能にするハードウェア機能です。独立したエンティティによるデータ転送は、プロセッサの負荷を大幅に軽減します。 

CPUを低消費電力モードにし、データの移動にはDMAC(より少ないゲート/トランザクション)を使用することで、消費電力を削減できます。同様に、CPUでの処理と並行してデータの移動にDMACを使用できるシステムでは、DMACをパフォーマンスの向上のために使用することもできます。

 


AXIおよびAHB用AMBA DMAコントローラ

DMAコントローラは、システム パフォーマンスと消費電力の両方に大きな影響を与えることができます。バス アーキテクチャ(AMBA)との互換性を保ちながら最適化し、さまざまなシステム要件のサポートに必要な柔軟性を持たせることが重要です。

ARMはDMAコントローラを、Cortex-A™およびCortex-R™ファミリで実装されるハイエンドで高性能のAXIシステム用と、Cortex-M™およびARM9プロセッサに用いられたコスト効率の高いAHBシステム用の両方で提供しています。

高性能AXIシステムでのDMA

AMBA AXIベースのPrimeCell® DMAコントローラであるDMA-330は、柔軟性とパフォーマンスが高く、最大限のコンフィギュラビリティとプログラマビリティが得られるように設計されています。コンフィギュラビリティによって、ターゲット システムのゲート数を最適化できます。サイズは、ローエンドのコンフィギュレーションでは、40 Kまで小さくできます。DMA-330は、AMBA AHBベースのDMAコントローラPL080のユーザ用に、無理のない移行方法も提供しています。

FSMベースのDMACは、サポートされる機能の数が増えるとゲート数も急速に増加するため、制限された機能しか提供できません。対照的に、DMA-330はマイクロプログラマブルDMACであり、独自の命令セットにより、ゲート数は抑えながら、豊富な機能を提供しています。DMA-330独自の命令セットは、DMA転送のプログラミングに柔軟性を持たせています。プログラム コードは、DMACが、AMBA AXIインタフェースを使って、アクセスするシステム メモリに格納され、DMA-330は効率的なキャッシュ システムを使って、パフォーマンスを最適化し、バス トラフィックを最小化します。

コスト効率が高いAHBシステムでのDMA

Cortex-M™プロセッサで使用されるAHBシステム用に、ARMはDMA-230 "マイクロ" DMAコントローラを提供しています。非常に低いゲート数と低消費電力で動作するように設計されており、柔軟性と高い性能を備えています。


AMBA DMAコントローラのパフォーマンス

DMA-230およびDMA-330 DMAコントローラは、柔軟なコンフィグレーション設定が可能です。そのため、消費電力、パフォーマンス、およびエリアサイズは、コンフィギュレーションに依存します。

  • DMA-230は、非常に小さい面積用に設計されており、一般的なコンフィギュレーションでは3 K~10 Kゲートです。
  • DMA-330は、高性能用に設計されており、NIC-301インターコネクトのクロック周波数で動作します。

パフォーマンスの詳細については、直接お問い合わせください。


DMA-330:AMBA AXI DMAコントローラ

AMBA AXIベースのDMAコントローラ(DMA-330)は、柔軟性とパフォーマンスが高く、最大限のコンフィギュラビリティとプログラマビリティが得られるように設計されています。コンフィギュラビリティによって、ターゲット システムのゲート数を最適化できます。サイズは、ローエンドのコンフィギュレーションでは、40 Kまで小さくできます。DMA-330は、AMBA AHBベースのDMAコントローラPL080およびPL081のユーザ用に、無理のない移行方法も提供しています。

機能  利点 
DMAリソースの集中化 オーバーヘッドを最小化し、統合を簡易化
シンプルで強力な命令セット  DMA転送用プログラミングに柔軟性を提供  
単一のAXIマスタ インタフェース  DMA転送を行い、実装を簡易化 
セキュアおよびノンセキュアプログラミング  TrustZone®テクノロジをサポートし、チャネルごとに個別のセキュリティ管理が可能
複数の転送モードをサポート  メモリからメモリ、メモリからペリフェラル、ペリフェラルからメモリ、スキャッタギャザー 
AMBAデザイナーで構成可能 アプリケーションに応じてDMACの最適化が可能
DMAチャネル間でリソースを共有  面積と消費電力の最小化

DMA-230:AMBA AHB µDMAコントローラ 

DMA-230は、ARMのローゲートDMAコントローラです。AMBA AHB-Liteプロトコルをサポートし、Cortex-M™マイクロコントローラ設計での使用に適しています。単一のAPBと単一のAHB-Liteポート、およびオンチップ メモリへのダイレクト アクセスから成るシステムに、容易に組み込むことができます。

DMA-230のプログラマ モデルは、単純でありながら、転送モード(スキャッタ ギャザ、ピンポン、およびプライマリ オルタネイト)用の高度なプログラミング機能を持っています。

DMA-230 Example with Cortex-M3


AMBA DMAコントローラ:関連製品

DMA-330およびDMA-230 DMAコントローラは、ARMの以下のIP製品群との互換性を維持するように設計されています。

種類 名前
構成および連結  AMBAデザイナ  
性能調査および機能の検証    AMBA VPE
AXIおよびAHBインターコネクト    NIC-301QoS-301ADK 
プロセッサ  Cortex-ACortex-RARM11ARM9Cortex-M(DMA-230)
メディア プロセッサ    Maliグラフィックス プロセッサおよびビデオ エンジン  
メモリ コントローラ  DMC-34XSMC-35XPL24X
                 




Cookies

We use cookies to give you the best experience on our website. By continuing to use our site you consent to our cookies.

Change Settings

Find out more about the cookies we set