UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 20858

LogiCORE PCI/PCI-X - スループットまたは帯域幅について

説明

キーワード : 132, MBytes/sec, speed, 速度, スループット, 帯域幅

重要度: 標準

概要:
PCI/PCI-X コアのスループットまたは帯域幅を教えてください。

ソリューション

PCI または PCI-X コアのスループットは、ユーザー アプリケーションによって決まります。 約 5 - 6 クロック サイクル (転送タイプによる) のトランザクション オーバーヘッドを除いて、データはコアに直接パイプライン処理されます。 つまり、バス上のデータは、後でサイクルのバックサイドに現れます。 PCI には、RapidIO や HyperTransport などの規格と同じようなスループットを遅らせるというフロー制御 (acks/naks) の概念がありません。 ただし、ウェイト ステート、切断、トランザクション オーバーヘッドはあります。

ユーザー アプリケーションで長いバーストを維持でき、使用しているデバイスで切断したりウェイト ステートを挿入せずにバーストを維持できるのであれば、実行しているバス サイズ/速度に対して、理論上の最大帯域幅を達成できます。

32/33 PCI の理論上の最大帯域幅は 132MB/sec ですが、これを 100% 達成するのはまず無理です。 これは、無限に長いバーストと、ウェイト ステートなし、バス遅延なしを想定しているからです。 ただし、PCI には、初期のトランザクション オーバーヘッド、発生する可能性のあるウェイト ステート、発生する可能性のある切断があります。 デザインで達成できる正確な値を知りたいのであれば、転送されるデータ量を転送時間で割って算出する必要があります。

たとえば、ユーザー アプリケーションで、32b/33MHz のバス上で 256 ワード (1024 バイト) のメモリ書き込みをすると想定します。 トランザクション オーバーヘッドは仮に 5 サイクルとします。 ウェイト ステートがないとすると、30ns ごとに 1 ワードを転送します。これを 1 バーストで一度にできれば、7680ns で 256 ワードを転送できます。 5 サイクルのオーバーヘッド (5*30) を追加すると、7830ns で 1024 バイトを転送できることになり、速度は約 130MB/sec になります。

ユーザー アプリケーションがこのバースト長を維持できず、2 つの 128 ワード バーストに分割されると想定した場合、 30ns ごとに 2 つの 128 ワードが転送され (転送ごとに 3840ns)、10 サイクルのオーバーヘッドが加算され (300ns のオーバーヘッド)、1024 バイトのデータに対して 7980ns、つまり速度が 128MB/sec になります。 これには、転送時間は含まれていません。

ユーザー アプリケーションは制限要因となります。 ユーザー アプリケーションがどれだけよく動作するかを把握していれば、スループットを算出できます。 デザイン ガイドを参照し、トランザクション タイプ別にコアで発生するトランザクション オーバーヘッドを算出してください。 この値は、どの転送でも同じです。
AR# 20858
日付 12/15/2012
ステータス アクティブ
種類 一般
このページをブックマークに追加