FC2カウンター FPGAの部屋 Spartan-6のPCIe Endpoint Block IPの勉強3(ユーザーズ・ガイドで勉強)
FC2ブログ

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

FPGAの部屋

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

Spartan-6のPCIe Endpoint Block IPの勉強3(ユーザーズ・ガイドで勉強)

Spartan-6 FPGA PCI Express 用インテグレイテッド エンドポイント ブロック ユーザー ガイド (英語版)”(UG654)でSpartan-6 FPGA PCI Express用インテグレイテッド エンドポイント ブロック(PCIe EP)を勉強中。
MCBもセレクトIOもそうだが、新しいFPGAが出るといろいろ勉強する必要があることがたくさん増える。(今日もSpartan-6ファミリセミナにXilinx社(大崎)に行ってきます)特にSpartan-6はハードIPのMCBやPCIe EPがあるので、読むマニュアルが沢山ある。Spartan-6 FPGA PCI Express 用インテグレイテッド エンドポイント ブロック ユーザー ガイド (英語版)は、234ページもあって理解するのが大変だ。マニュアルが多いということは、ユーザーに伝えなくてはいけないことが多いということだと思う。PCIe EPはこの前からシミュレーションをしているが、シミュレーションをするには、Root Port側のシミュレーション・モデルが必要で、それをハードIPのEnd Pointのシミュレーション・モデルと接続してシミュレーションを行う必要がある。
Example DesignでのRoot PortとEnd Point、それにPIOと呼ばれているProgrammed Input Output Exampel Designの関連を図示した、UG654の40ページのFigure 4-1: Simulation Example Design Block Diagramを下図に引用する。
pcie_example_design_1_100526.png

上図の様に、上の四角で囲まれた部分がRoot Portのシミュレーション・モデルで、それは、右の四角のTest Programに従って動作する。そのTest Programが”SP605でPCIe Coreを生成してみる3(PCIeユーザーズガイドを調べる)”で書いた、sample_smoke_test0, sample_smoke_test1, pio_writeReadBack_test0...だ。デフォルトでは、sample_smoke_test0が実行されるが、コマンドラインからISimを起動するときに、-testplusarg TESTNAME=sample_smoke_test1 をコマンドラインに追加すれば、sample_smoke_test1が実行される。pio_writeReadBack_test0...などのTest Programは、ファイルがないので実行できない。
Test Programに使用されるTaskもUG654の151ページからのRoot Port Model TPI Task Listに記述されている。
なお、私のブログで、”SP605でPCIe Coreを生成してみる2(シミュレーション)”はEnd Pointの波形を見ていて、”Spartan-6のPCIe Endpoint Block IPの勉強1(シミュレーションでRoot Portの動作を確認)”と”Spartan-6のPCIe Endpoint Block IPの勉強2(シミュレーションでRoot Portの動作を確認2)”はRoot Portの波形と動作を見ている。

さて、このようにEnd PointのテストはRoot PortのTest Programで行うようだ。pio_writeReadBack_test0...などのTest Programは、ファイルがないので実行できないと書いたが、pio_writeReadBack_test0は、UG654の150ページにソースが載っているので、PIOの構造をもう少し調べてから、ソースを打ち込んで試してみたいと思う。
Root Port Model TPI Taskを勉強すれば、自分でテストプログラムも書けそうだ。
  1. 2010年05月26日 05:26 |
  2. PCI Express
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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