FC2カウンター FPGAの部屋 現在のオンチップバス仕様
FC2ブログ

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

FPGAの部屋

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

現在のオンチップバス仕様

現在の小さい基板のオンチップバスはコマンドバスとデータ関連に分かれている。
コマンドバスは言わばアドレスバスのようなものでスレーブモジュールを指定してデータ転送をするためにコマンドをマスタが送るバスだ。DMAだけは特殊でソース用とディスティネーション用に2回コマンドを送る。PCIマスタとNBL Controllerは送りと受けに分かれている。マスタはSystem Arbiterにお伺いを立ててGNTがアサートされたらコマンドを出力する。
OCB_1_060720.png

データ関連パスはデータ64ビットと双方向のREADYとバイト・イネーブルなどで構成されるが、データパスにはFIFOが入っている。(System Arbiter) 大体はデータをバーストでデータ転送する。
OCB_2_060720.png

問題はコマンドを1つしかスレーブモジュールが受けられないところだ。処理の途中にコマンドが来ると狂ってしまう。(System Arbiterで調停しているので正常に動く)
あまり詳しく書くとまずいのでこれくらいにするがとにかくブロックしなければいけないのが問題だ。(どのくらいパフォーマンスに関係するかは別問題)
解決方法は複数考えられるので一般的にはどうしているか知りたいと思っている。バスプロトコルではなくてもう1つ上のレベルの問題かもしれないが。。。
  1. 2006年07月20日 21:45 |
  2. その他のFPGAの話題
  3. | トラックバック:0
  4. | コメント:2

コメント

似ているけど

FPGAにぶら下がっている物は去年作って納入した物にぱっと見似てます。
私はデュアルポートRAMを主体にいろんなものをぶら下げました。
バスはFPGA内のPPC405にEMCを付けそののアドレス上に、SDRAM空間、デュアルポートRAM、LANコントローラー、CC-Linkコントローラー等を配置、PCIバスや専用ハード処理結果もDPRAMに接続しました。
一人でPPCやPCのソフト、専用ハードの作りこみボードの設計などやってるとそれなりにこんがらがってしまいましたが。でも一人じゃこの辺りが(年齢的にも)限界かな、なんて思ってます。
専用の並列処理ハードが自由に書けてソフトの負担も減りFPGA様様だと感じています。
  1. 2006/07/22(土) 10:04:48 |
  2. URL |
  3. けむり #-
  4. [ 編集 ]

PPC405内蔵ということはVirtex2proかな?いろいろ作られているんですね。
うちもほとんど1人で各モジュールをスクラッチから書いてあります。内部バス仕様も。本当に大変でした。もう年なので本当に限界です。自分で回路もテストベンチも書いてます。
ソフトウェアはデバドラ、モニタ含めて他の人が書いています。PowerPCのイニシャルコードを最初書きましたが、今はほとんどハード中心です。
  1. 2006/07/22(土) 11:19:37 |
  2. URL |
  3. marsee #-
  4. [ 編集 ]

コメントの投稿


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

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