FC2カウンター FPGAの部屋 PCI-Xマスタ・モジュールのテスト2
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

PCI-Xマスタ・モジュールのテスト2

PCI-Xマスタ・モジュールのテストで、ホストからのリードは64ビット幅で要求しても、そのスプリット完了のデータ転送は32ビット幅になってしまうという現象で悩んでいた。
mixiで聞いたり、FPGA Information Ltd.FPGA BBSで聞いたりしてみた。FPGA BBSでは、くりさんにお世話になりました。
その結果、PCI-Xターゲット・モジュールをバースト転送に対応させて、転送長を変更してやってみた。
そうしたところ、このチップセットは、転送長が8バイトでは、REQ64#をアサートしても、スプリット完了のデータ転送は32ビット幅でした。しかし、転送長を16バイトにしてみたところ、スプリット完了のデータ転送は、チップセットがREQ64#をアサートして64ビット幅のデータ転送になった。
下の図のピンクの部分が転送長8バイトでPCI-Xマスタ・リードを発行したところだ。ホスト(チップセット)からは、スプリット応答が帰ってきている。緑色の部分は関係ないPCI-Xターゲット転送だ。
青色の部分がスプリット完了のデータ転送だ。req64x_1d (REQ64#) が0にアサートされていないので、64ビット幅のデータ転送ではなく、32ビット幅のデータ転送だ。32ビット幅なので2クロックで8バイトをデータ転送している。
PCI-X_split_trans_1_070815.png

次に、転送長を16バイトにしてPCI-Xマスタ・リードをやってみた。ピンクの矢印のreq64x_1d (REQ64#) が0にアサートされているので、64ビット幅のデータ転送だ。こちらから ack64x_1d (ACK64#) を0にアサートして応答している。その結果、16バイトが2クロックでデータ転送できた。
PCI-X_split_trans_2_070815.png

よかった。これで先に進むことができる。
  1. 2007年08月15日 18:32 |
  2. PCI
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog.fc2.com/tb.php/549-76066f95
この記事にトラックバックする(FC2ブログユーザー)