Vengineerの妄想(準備期間)

人生は短いけど、長いです。人生を楽しみましょう!

Cといっても、


Brian BaileyのブログThe ESL EdgeThere is C, C and oh yes Cがアップされました。
この記事を読んで感じました。次のようなこと。

Cベースの合成ツールが出始めたと、夢のツールの出現と言われていました。
それからかなりの時間が経っていますが、そんな夢のようなツールはまだ存在しません。
Softwareとして表現された「C」の記述がそのままHardwareに変換できる「C」にはなりません。
Hardwareにできる「C」の記述は、そのツールが理解できる制約に固められたものです。
ですから、他のツールにもっていくのも大変です。

SystemCの合成サブセットは、そういう意味では制約ではありますが、ルールを守っている記述は
サブセットをサポートしているツールであれば、それなり処理をしてくれます。

そんな中で、MathWorksC/C++コードの自動生成するものをリリースするようになりました。
ここで生成されるC/C++のコードは、シングルプロセッサが処理できるもののようです。
Hardware用の「C」ではありません。そして、マルチプロセッサが処理できるコードでも無いようです。

「C」は、何でも書ける便利なツールです。でも、その便利さをHardwareに利用するには制約があります。
そこを理解しないと、「「C」で書けばいいじゃん。」が、都市伝説化、してしまいます。

どうでしょうか?

検証、Verification、HLS