ハードウェア設計も専門の一部なんですが、実際に LSI を設計したことはありません。なんでかなぁ? なので参加したこともありません。あれあれ。VHDL使うって言う時に、もっと強力に反対して Verilog にするべきだった。いや、単なる趣味ですが。でも、Verilog でも良いんだ。
でも、やっぱり仕訳食らっていたらしい。なので、今回は琉大で発表会。おかげで参加できます。
「OSの授業が厳しいので、LSI デザインコンテストへの参加が少ない」えぇ〜? やっぱり 1年後期に移してもらおうかな。1年後期って暇らしいんだよね。
ソフトウェアとハードウェアの差は、
データパス
パイプライン
を自分で設計できるところ。でも、並列プログラミングには、これらも徐々に入りつつあります。それでも、十分な並列度がある場合は、ハードウェアにはかなわないらしい。一つは、
ソフトウェアのメモリ書込が、ハードウェアのワイア
になる場合があるから。特に、表引やシフトで表される計算はコストゼロになったりする。
で、FPGAを、RAM上に作るなんて言う方法もあり、Reconfigurable って言うらしい。発音しにくいです。って、ことは、ハードウェアにコンパイルしながらソフトウェアを実行なんて言うのを研究している人もいるってことですね。でも、
非常に難しい
らしい。つまり、手作業で設計したハードウェアに100倍ぐらいかなわなかったりする。なんでかな〜
最近は、FORTRANで書いた巨大なアプリケーションをFPGA上に構成したりもあるようです。その方が、
早く実行できる分、省エネになる
らしい。GPGPU も流行りですが、やっぱりFPGA上に構成した方が100倍ぐらい速いらしい。この辺りの理由も不明。
どうも、並列処理には何か足りないところがあるっぽいな。それはなんだろう?
No comments:
Post a Comment