マルチチップ

投稿者: gao 日付: 2007年12月27日(木) 15:25

コウです。

最近マルチチップの設計をやっています。チップ間でどうやってデータを渡すのがわからないです。 具体的に、例えば、チップ1からチップ2にデータを渡す場合、チップ1のコンフィギュレーションの最後、データがSTXに出力し、チップ2でLDXから入力すればいいですか? 

 もう1つの問題はSTXの個数がすきないので、チップ1の結果をメモリに書き込んで、チップ2でLDBからデータを入力するという設計も考えています。それで1チップは7*7になります。

マルチチップを設計したことがある方、ぜひ教えてください。簡単例が添付してくれれば、幸いです。

投稿者: iwao 日付: 2008年1月10日(木) 10:19

DD2同士でデータのやり取りを行なう場合は、ダイレクトIO経由かPCI経由のどちらかとなります。


ダイレクトIOには、DNA転送とDMA転送の2種類があります。

DNA転送の場合は、STX-LDX間で接続を行なえばOKです。ただし、この場合はDNAを受信待ち状態のコンフィグにしておかなければならないので、リコンフィグを頻繁に行なうシステムには不向きです。

DMA転送の場合は、DAPからダイレクトIO-DMAパケット(通称DAP-IF)を送信します。こちらは、chip1-DRAMからchip2-DRAMに直接転送するイメージなので、DNAコンフィグの状況に左右されません。(chip間転送にDNAが関与しません)

★参考マニュアル★

ftp://ftp.ipflex.com/customers/DAPDNA-2/tecdioJ.pdf


PCI経由の場合は、PCI空間上でデータ共有するイメージとなります。ただし、こちらはダイレクトIOに比べると低速です。


●ネットワーク処理データ(速度重視) →ダイレクトIO-DNA

●画像処理データ(リコンフィグ重視) →ダイレクトIO-DMA

●処理データでない、制御情報等の受け渡し →PCI経由

というような使い分けが向いていると思います。

理由は・・・ ネットワーク処理をハード実装する場合は、せっかくなので数Gbpsクラスの速度は出したいです。 また、フレームに余計なジッター(遅延変動)を生じさせたくないという気持ちもあり、フルパイプラインで組みたいです。

しかし、画像処理の場合は、現時点では入力データが数百Mbps程度のオーダー(=撮像カメラ側がボトルネック)なので、余った時間をリコンフィグで有効活用出来るような設計が好ましいです。 それに画像処理は、1枚のフレームを何回もスキャンして加工~解析を段階的に行なうことが多いので、リコンフィグしたほうがシンプルに処理を組めます。

投稿者: gao 日付: 2008年1月13日(日) 16:57

ありがとうございます。 たいへん勉強になりました。

tecdioJ.pdfのマニュアルも読んでいます。実行の例も少しのってますね。助かりました。