« DMAに失敗する | トップページ | ISE11でPack I/O Registersの設定オプションにご注意 »

2010.03.10

DMAと他人の割り込みとの共存

昨日の問題が解決しました。

特電PCI ExpressボードがDMA転送を行なっている最中に、グラフィックカードが割り込みをかけてきて、特電PCIeのISRが呼び出されて、BAR0に配置した割り込みステータスレジスタを確認しにいっても、うまく動作しつづけられるようにしました。
DMA中にメモリ読み出しリクエストが来た場合、DMAを一旦中断させてメモリリードに応答し、その後、再びDMAに戻るようにしました。
Dmavsint

これで、DMA中にInternetExplorerを数十個立ち上げようが、ISEのコンパイルを走らせようが、何をしてもびくともしなくなりました。合計100ギガバイトくらいのデータをやりとりしていますが、エラーなしです。


|

« DMAに失敗する | トップページ | ISE11でPack I/O Registersの設定オプションにご注意 »

コメント

コメントを書く



(ウェブ上には掲載しません)




« DMAに失敗する | トップページ | ISE11でPack I/O Registersの設定オプションにご注意 »