2011-01-15 5 views
2

イン/アウト命令を使用しても、マッピングされたI/Oのアドレス範囲がライトバック(WB)として入力されている場合、(メモリプロセッサの)メモリマップI/O操作はキャッシュされますか?イン/アウト命令を使用したメモリマップI/O操作(インテルプロセッサで)...まだキャッシュされていますか?

編集: この問題は解決されました。私は、MMIOがキャッシュ可能であることを知りました.MMIO操作は、そのメモリタイプに応じて並べ替えることができます。だから、IntelはMTRRをUC(uncacheable)としてMMIを設定することをお勧めしました。私はIntelのソフトウェア開発者マニュアルv3Aでそれを見つけました。これはamdプロセッサにも適用されるかもしれません...

+3

インとアウト命令によるメモリマッピング - それらはどのように関係していますか? –

+0

メモリマップドI/Oは、同じアドレスバスを使用してメモリとI/Oデバイスの両方に対処します。 – prinzrainer

+2

イン/アウト命令は、システムメモリとは別のアドレス空間を使用します。イン/アウトの使用はmmioではありません。 – Michael

答えて

0

私はMMIO x86システムでは)実際にはキャッシュ可能に設定することができますが、可能であればIO命令を使用するとMMUのその部分をバイパスすると思います.CPUは、あなたが書き込んでいるIOアドレスが内部的にデバイスの同じMMIOアドレスにマッピングされます。どのようにMMIO領域のキャッシュ能力を設定していますか?

+0

いくつかのデバイスIOは、メモリ領域のキャッシュ可能性を制御できるMTRR(メモリタイプ範囲レジスタ)を設定することによって、物理メモリ上の一部の領域にマップされます。 – prinzrainer

+0

遅く返事を申し訳ありません。答え!私がMMIOのキャッシング能力について間違っていたと思います...プリフェッチ可能なMMIO空間をキャッシュ可能に設定するのが一般的であるようです。 –

関連する問題