再帰ですよ再帰。
まあ、再帰の発表の人は、どっかいっちゃってこなかったんですが。
[ T1.C: Design Technuiques I ]
Mapping Recursive Functions to Reconfigurable Hardware
発表者こなかった。となりの人が「金返せよなー」、と(笑)。
A System Design Methodology for Reducing System Integration Time and Facilitating Modular Design Verification
設計期間にしめる、integration と検証の時間の割合はかなり長いので、これをなんとかしようぜ、という話。SIMPPL SoC Model を提案。定義済みのモジュール間接続機構 (CE: Communication Element) をつかうことで世の中を簡単にしようとする。
はじめの段階ではシミュレーションで検証をするんだけど、PE と CE の integration が終わったら、個々の PE を取り出して、実機で動かして system C とかの上位言語で書かれた何かを走らせた結果と照合する。
この方法で学生に MPEG-1 decoder を作らせてみたら、開発期間の 85% が、最初のモジュール実装になった。
Micro-coded Datapathes: Populating the Space Between Finite State Machine and Processor
回路としてできあがったり、そこに load されるものは、わしのシミュレータの制御機構みたいに、instruction code によってデータパスをばしばし切り替えるようなものなのだが、それを全部自動生成するような感じになっている模様。デザイン空間探索とかもするようになっており、けっこうちゃんとしたツールだ。しかし、生成ツールに与える言語は専用のものみたいなので、残念ながらすぐは使えないね。FSM によるものより(たいてい)遅くて大きいけど、MicroBlaze より小さくて速い。ほへー。自動っていうのがいいですね。
[ T2.B: Multiprocessor Systems ]
Efficient Automated Synthesis, Programming, and Implementation of Multiprocessor Platforms on FPGA Chips
マルチプロセッサ+HW IP なシステムを FPGA なんかに構築する場合、共有バスだけでは性能が出ないので、そこをうまくやる手法の開発。
プロセッサ (PPC, MicroBlaze) 、メモリ、モジュール間の通信コンポーネントなどを parameterizable にした。Kahn Process Networks というのを使ってシステムを記述する。Platform, Mapping と KPN を XML で記述してツールに食わせると、RTL な記述とかが出てくる。ほへー。
TMD-MPI: An MPI Implementation for Multiple Processors Across Multiplie FPGAs
びびっときたので内職してました。くそ、発表も面白かったのにな。
通信の信頼性について質問とか出てました。on-chip はもちろん安心。off-chip は MGT 使うのですが、ま、そのへんでエラー訂正みたいなのとか(できれば)する感じ。
ARCHLOG: High-level Synthesis of Reconfigurable Multiprocessors for Logic Programming
専用の言語でほげほげ、と記述して、multi PicoBlaze なシステムを作る。
PicoBlaze は configurable processor だからな。楽しげ。しかも速いぜ!
なんかに使えないかなー。