コンピュータ--DMAアクセスモードの原則

 DMA(ダイレクトメモリアクセス)ダイレクト・メモリ・アクセス

高速・大容量のメモリとメインメモリとの間で切り替えるときに、直接転送プログラム又はプログラムの使用は、送信を中断し、次のような問題が発生します。
    1)直接転送手順、作業効率が制限されたホストです。
    2)割り込み制御を用いたデータ転送は、ホストの効率を改善するが、高速周辺機器と情報のホスト交換のために、頻繁に中断してホストを入れて、プロセスに戻り、それによって、割り込み(旧サイトの、すなわち保護に関連した追加の負担を増やすことができますCPUのパフォーマンスが低下し、新しいサイト)、だけでなく、データの損失の可能性を復元します。

DMAは、主にI / Oデバイスとメインメモリとの間の高速データ転送のグループに対して、L / O装置およびハードウェアの主記憶装置との間の直接のデータパスです。
データ転送は、DMAコントローラの制御下で行われる場合、DMAコントローラは、現在、メイン・メモリ・アドレスによって与えられているデータワードを送信し、データのセットを送信するかどうかを決定するために送信されたデータの数をカウントすることは完了しました。データ転送を提供又は受信するための継続的専用バッファ開口するメイン・メモリ・アドレスです。DMAコントローラのバッファ、およびプログラムデータ転送の前に、または中断する前処理および後処理の後。
 ディスクは、データブロックの開始位置が連続的に読んでいますと、ブロック単位で行われる読み込みます。

DMAコントローラ

主な特長:

 

作曲:

DMA制御装置は、複数のレジスタ、割り込み制御およびDMA制御ロジックを含みます。主レジスタがある:
  (1)メイン・メモリ・アドレス・レジスタ(MAR):ストレージは、メインメモリアドレスデータを交換する、
  (2)周辺アドレスレジスタ(ADR):デバイスコードを格納するI / Oデバイス、または表すデバイス情報記憶領域情報を扱います。
  (3)ワードカウンタ(WC):データ転送統計のワードの総数。
  (4)制御およびステータスレジスタ(CSR):制御およびステータスの単語を格納します。
  (5)データバッファレジスタ(DBR):一時的に各データ転送を格納します。

 DMA転送処理

DMAデータ転送プロセスは、3つの段階に分けることができます。

DMA预处理
DMA数据传送
DMA传送后处理

 

 

 

在上面数据传送的过程中,CPU和DMA控制器访问主存时可能会产生冲突 ,争夺总线的访问权。那么应该如何安排CPU和DMA的访存?

 

DMA传送方式

 

DMA方式特点

DMA方式与中断方式比较

 

おすすめ

転載: www.cnblogs.com/wkfvawl/p/10958751.html