ホーム
サポート
DMAやIRQとは何ですか?GPIBでどのように使われますか?
DMAやIRQとは何ですか?GPIBでどのように使われますか?
更新しました Jan 12, 2023
使用製品
使用製品とは、この記事で説明されている解決策で動作することが確認された製品を示しています。この解決策は、他の同様の製品やアプリケーションにも適用される可能性があります。
ドライバ
GPIB Software
Miscellaneous GPIB Software (Legacy)
問題
DMAやIRQとは何ですか?また、GPIBではどのように使われますか?
解決策
DMAとは、Direct Memory Access(ダイレクトメモリアクセス)の略です。コンピュータにはDMAコントローラ(DMAC)が搭載されていて、デバイスからコンピュータのメインメモリへデータを直接転送する際に使用されます。ナショナルインスツルメンツ(NI)のGPIB製品は、DMAコントローラを使用してデータを直接メモリに転送するように設計されています。DMAはGPIBを使用する際に必ず必要なわけではなく、GPIB構成ユーティリティで無効化することができます。
IRQとは、Interrupt Request(割り込み要求)の略です。割り込みは、自動シリアルポーリングや非同期(バックグラウンド)データ転送をおこないます。ハンドラは、Service Request(SRQ)ラインがアサートされた際にバス上にあるすべてのデバイスにシリアルポーリングをおこないます。割り込みが無効化されていて自動シリアルポーリングが有効の場合、ハンドラはGPIB関数が呼び出された際にのみポーリングします。また、割り込みが無効の場合、非同期転送は同期転送として処理されます。DMAと同様に、割り込みはGPIBを使用する際に必須ではありません。
追加情報
NI製品は、DMAを無効化するとPIO(Programmed I/O)を使用してGPIB通信をおこないます。PIOは、GPIBデバイスでステータスレジスタをポーリングして、データを1バイトずつ転送します。さらに、ハンドラはGPIBデバイスがデータの送受信準備が整うたびにCPUを割り込みします。
DMAを使用する利点は、DMACがデータ転送を実行することです。CPUはDMACを動作させるために使用されますが、転送中に割り込みされることはありません。一般的にDMA転送は、PIO転送に比べて高速で大容量のデータ転送に有利です。
関連リンク
Configuring the Data Transfer Mechanism (Interrupts or DMA) in DAQmx and Traditional DAQ
Changing the IRQ and DMA Settings of a GPIB-USB Device
その他のサポートオプション
NIコミュニティに聞く
ディスカッションフォーラムで他のユーザーとコラボレーション
NIコミュニティでソリューションを検索する
エンジニアからのサポートをリクエストする
有効なサービス契約または有効なソフトウェアサブスクリプションが必要な場合があります。サポートオプションは国によって異なります。
サービスリクエストを開く
ソフトウェアサブスクリプションとサービスの詳細を見る
ハードウェアサービスプログラムの詳細を見る
Tariff Impact Update
Learn more
この情報はお役に立ちましたでしょうか。
はい
いいえ
Tell us more.