SystemCでモデリングできたよ!

以前に使ったことのあるエラーの起きる伝送路と、冗長化、復元回路のモデリングを
SystemCでやってみた。
ファイル一式はここ。
いろいろと苦労をしたけど、なんとか動いた。上手く動くと面白い。
・デバッグの半分はSystemCの動きで、残りの半分はC++のテンプレートとの戦い。
モデリングが動くまでに山が沢山ある。SystemC自体がテンプレートを使った
環境になっているので、上手く行かないときのエラーが理解できないときが
多い。
・今回のようにアルゴリズムそのものをモデリングしようとすると全てを
テンプレートで書きたくなる。実際、今回の例はsc_mainを除いて全部
テンプレートになった。
・システムの評価という点では、テンプレートを使ってビット幅などを自由に
変えられるのはとても面白い。Verilogに比べて自由度が高く、このまま合成まで
行ってくれれば本当にパラダイムシフトを起こせる。
・SystemC用の構文チェッカーが欲しい。lintまではいらないが、SC_MODULEの
宣言のあとに;がありませんとか、sc_mainはint sc_main(int, char **)で宣言
してください、とかそういうレベルで警告を出してくれると非常に助かる。
・Verilogに比べると、コーディングが楽しい。
always @ (posedge ・・・ なんて何回も書くのまんどくせ。
・結局C++だ。遠回りしてでも、C++を一通り勉強して、コーディングできるように
しないと、ただのコピペエンジニアになってしまう。
そんなこんなでC++のテンプレートの本をアマゾンで注文。
勉強しよう。
The comments to this entry are closed.


Comments
> 全てをテンプレートで書きたくなる。
なんですよお...
でも、なかなか理解してもらえません。
人間にも合成系にも...時々コンパイラにも...
Posted by: noboshemon | 2006.12.02 12:41 PM
noboshemonさん
> でも、なかなか理解してもらえません。
偉い人には・・・って奴ですね。
実際問題は、デバッグとかメンテがきついのと思います。
こんなの使って楽にならないかな、と調査中。
http://www.bdsoft.com/tools/stlfilt.html
Posted by: なつたん | 2006.12.04 08:38 PM