バスマスタのモード

バスマスタのMODE 0〜3の違いを教えてください。



バスマスタ方式はDMA(Direct Memory Access)方式とも呼ばれていますが,CPUをできるだけ介さずに,入出力デバイス(ここではHDD)とメモリ間で直接データを転送する方式です。HDDのデータ読み書きのさいにCPUの負荷が大幅に軽減されるため,とくにマルチタスクOSなどでパフォーマンス向上を図るのに有効です。バスマスタ方式を実現するためには,別途高速なDMAコントローラを用意する必要がありますが,430FX(Triton)以降のIntel PCIチップセットでは,このバスマスタ転送を実現するDMAコントローラが内蔵され,手軽に利用できるようになりました。
 従来のPIO方式はCPUを用いてディスクのデータの読み書きを行う方式です。データの転送サイクルにより,表1のように分類されています。最近発売される大容量HDDでは,ほとんどがMODE 4まで対応しています。
 バスマスタ方式も,PIO方式と同様に転送サイクルにより分類されます。また,1回のDMA要求で1ワード(2バイト)のみのデータ転送を行うシングルワード,複数ワードのデータ転送が可能なマルチワードという分類もあります。以上を整理すると,表2のようになります。ここ半年以内に発売されたE-IDE HDDは,ほとんどがマルチワードバスマスタモードに対応しています。
 また最近では,Intel 430TXやVIA Apollo VP1/VP2チップセットで,さらに高速なUltra-ATA規格に対応しました。とくにUltra-ATA DMA MODE 2は,DMA/33とも呼ばれる非常に高速な転送モードで,最大転送速度は33.3MB/secとなっています。
(伊勢雅英)


表1 PIO転送モード


表2 バスマスタ転送モード分類