私は PCIe の初心者で、単純な PCIe ドライバーを開発する必要があります。
メモリが 1kByte の PCIe デバイスがある場合、BAR には何が含まれていますか? 1kByte空間のアドレスは?また、BAR がメモリまたは I/O アドレス空間に「マップ」されるとはどういう意味ですか?
さまざまな本で答えを見つけようとしましたが、成功しませんでした...
よろしくトーマス
私は PCIe の初心者で、単純な PCIe ドライバーを開発する必要があります。
メモリが 1kByte の PCIe デバイスがある場合、BAR には何が含まれていますか? 1kByte空間のアドレスは?また、BAR がメモリまたは I/O アドレス空間に「マップ」されるとはどういう意味ですか?
さまざまな本で答えを見つけようとしましたが、成功しませんでした...
よろしくトーマス
BAR には、要求されたメモリのタイプ (ビット 0 - MEM または IO) が最初に含まれます。それが MEM バーである場合、32b または 64b リージョン バーであるかどうか、およびプリフェッチ可能 (キャッシュ可能) に対応するかどうかを選択する必要があります。領域。これらの属性は 4 つの LSB または BAR を占有します。バーの残りの部分は、割り当て用に要求されたサイズです。デバイスが割り当て用に要求するサイズ (バイト単位のビット) は、値が 0 の読み取り専用ビットである必要があります。たとえば、1 kb のメモリは次のように表す必要があります。ビット 4 ~ 9 の読み取り専用値が 0 に設定されているバー。ビット 3 ~ 0 には属性があります。