SystemC、SpecCについてのスレ

このエントリーをはてなブックマークに追加
377774ワット発電中さん
 SystemCはC++で、ハードウェアを主体としたシステムのモデリングのための
DesignPatternの研究の成果でして、それで留まってくれていれば良かったの
ですが、当時合成では非常の信頼の厚かったSynopsysがぶち上げたものです
から、皆さん勘違いをなさって大変なことになっているんですね。

 SystemCの最初の論文では、

   Simulation高速化のために、記述能力は犠牲にする

とはっきり謳っていますから、Simulation速度を最優先に考えてそれなりに苦労
して記述する事が当たり前の言語なんですね。

 ただね、SystemC1.0では

  −サイクル精度レベル
  −レジスタ転送レベル(RTL)

しかサポートしてなくて、これだと合成可能な範囲だったんですよ。但し、RTLだと
HDLの記述の倍以上の記述量になるし、勿論HDLだとCompilerがメチャクチャ
最適化するから、所詮はg++でしかないSystemCだと、Simulation速度は圧倒的
に遅いんですね。

 で、SystemC2.0登場! しかしです、

   Simualtion高速化のためにモデリングで苦労するのは当たり前やんけえ

という思想だけはしっかり受け継いだ(元々の言語の定義からして受け継がざる
を得なかった)ので、お池にはまってさあ大変! となりました。

 SystemCのSimulation環境、

   クロックの乗り換えとか、Bus周りはRTLで無理矢理書く、

というのが常識となりました(だって、それしかほぼ無理なんだもん)。なので、

   HDLで直接RTL書くほうが楽なんじゃ?

という疑問が普通に出てきます。どうしましょ。