技術文献

Catapult C Synthesisの 高度なクロック・ゲーティング・テクニック

Posted in: 高位合成

今日、消費電力は、SoC(System-on-a-Chip)設計において面積や性能と同等の重要性を持った品質指標となっています。 ESL(Electronic System Level)設計手法では、従来のRTL設計手法では不可能であった消費電力最適化の機会を手にすることができます。Catapult C Synthesisは、消費電力を考慮したアーキテクチャ検討機能に加えて、設計の消費電力を最小化する複数の消費電力最適化テクニックを備えています。本稿では、Catapult C Synthesisで使用されている最も重要な消費電力最適化テクニックの1つである、高度なクロック・ゲーティング最適化および解析機能について紹介します。

Download

Eigenvalue Decomposition Designed with C: Catapult C Synthesis Methodology(Cによる固有値分解のハードウェア化)
Technology Reports

Posted in: 高位合成

本稿は、「固有値分解」のハードウェア化についてのレポートです。固有値分解は、多岐にわたる分野で応用されています。画像、通信、音声での固有値分解を使った応用例は、KL変換による画像認識、MIMOアンテナによる高速通信、MUSIC法による電波、音波の到来方向推定があります。将来MIMO通信、 MUSIC法の電波到来方向推定で多用されるアンテナ数は4本以上であることが予測されます。アンテナ4本だと、行列サイズが複素数での4x4行列サイズとなるため計算負荷が増大し、固有方程式から直接、固有値を求めることが妥当かどうかを検証します。そこで東芝情報システムでは、固有値を求めるための有力な2つのアルゴリズムを提案し、アルゴリズム段階で2つの方式の面積とサイクル数を比較検討するためにCatapult C Synthesisで合成を試みました。

Download

Algorithmic C データタイプのアプリケーションノート「固定小数点を利用した RGB YCbCr 変換、画像処理の実例」とソースコード」

Posted in: 高位合成

メンター・グラフィックスが提供する高速データ型のAlgorithmic Cデータタイプを使用した RGB YCbCr 変換画像処理の実例を示し、浮動小数点を使用した場合と、特定のビット幅での 固定小数点を使用した際の違いをシミュレーションして実際の画像で確認することができます。 Algorithmic Cデータタイプを使用することで、アルゴリズム設計者、システム設計者、ハードウェア設計者は、ビット精度の動作をC++仕様において正確にモデル化するとともに、 シミュレーション速度を10倍から200倍高速化することが可能です。ダウンロードファイルにはアプリケーションノートと共に、ソースコードが含まれております。 GCC 3.2.3(およびそれ以降)やMicrosoft Visual C++ 2005のCコンパイラを使用していただくと、Algorithmic Cデータタイプを使用した実例を体験いただくことができます。

メンター・グラフィックスは、このデータ型を、エレクトロニクス設計者および EDAツールベンダ向けに、以下のサイト(英語ページ)から無償で提供しています。またこのアプリケーションノートのご利用にも必要となりますので予めダウンロードしてご使用ください。 http://www.mentor.com/products/esl/high_level_synthesis/ac_datatypes

Download

Catapult C SynthesisとAlteraのAccelerated Libraryを用いた高性能DSPハードウェアの設計

Posted in: 高位合成

昨今の高性能FPGAは、次世代ワイヤレスおよびビデオ・アルゴリズムの実装に必要な処理要求を満たすハードウェア・プラットフォームを提供します。これらのデバイスにはMAC(積和演算)などのDSPアルゴリズムの基本構成要素を実装する際に必要な専用ハードウェアが用意されています。しかし、アルゴリズムを構想段階からRTL実装までを迅速に進めるには様々な課題があります。従来の設計フローでは、ANSI C++などの高位言語でアルゴリズムの機能をモデル化し、これらを手作業でRTLにする手法が用いられていました。手作業によるRTL作成は多大な時間を要し、不良混入が起こりやすいばかりでなく、多くの場合バックエンドの配線遅延の問題に大きな影響を及ぼしてしまいます。Catapult C Synthesisの機能とAccelerated Libraryを組み合わせることにより、ANSI C++でモデル化されたアルゴリズムから、FPGAハードウェア用に最適化されたRTLを生成することができるようになりました。ANSI C++からFPGA DSPブロックを直接生成し、高位合成からの制約を使ってバックエンドのタイミング問題を簡単に解決することが可能です。

Download

Catapult C Synthesisベースの設計フロー:インプリメンテーション期間短縮と柔軟性向上

Posted in: 高位合成

ハイエンド・エレクトロニクス設計における従来の設計フローでは、VerilogあるいはVHDL表現のハンド・コーディング工程を必要としていました。これは過去においては有効でしたが今日の新しいデザインで使用されているアルゴリズムは非常に複雑なものであり、これまでの設計手法では不十分なことが多くなってきています。従来の設計フローに関連したこれらの問題はC記述のシミュレーションおよび合成に基づいたフローを用いることで対応できます。このホワイトペーパーではまず今日使われている設計フローを説明し、これに関連した諸問題について検討します。次に、CおよびC++を使った新しいハードウェア設計アプローチについて見ていきます。これには、SystemC、Handel-C、ならびにメンター・グラフィックスのCatapult C Synthesisツールで使用される純粋なアンタイムドC++のサブセットも含まれています。最後に、Nokia Research Centerのケーススタディにより、Catapult C Synthesisベースのフローを用いることによって実現された生産性と実装の柔軟性向上について詳しく紹介します。

Download

FPGA開発におけるCベース設計適用による効果と課題: Catapult C Synthesisを使ったCベース設計手法の適用

Posted in: 高位合成

富士通株式会社の移動体システム設計部門では、従来から機能/性能アルゴリズム検証のために、C/C++モデルを開発・検証していました。従来のC モデルからHDLを生成する高位合成ツールでは、その品質(サイズ、タイミングなど)が、ハンドコーディングのそれに劣り、かつ、設計検証環境が整っていないため、顧客要求を満足するFPGA/ASICを開発できなかったため、このC/C++モデルは、あくまでHDL設計のリファレンスとして用いられるだけでした。ところが、ここ数年の間にISV(独立系ソフトウェア・ベンダ)各社の Cベース設計環境が整いつつあるため、最新のメンター・グラフィックス製高位合成ツールCatapult C Synthesisの状況とそれを用いた場合の設計フローを、上記移動体システムのFPGA開発を題材として調査・検証しました。

Download

メンター・グラフィックスのESL Surveyによって明らかになったESL設計の現況(英語)

Posted in: 高位合成

ESL設計における業界の認識および適用の動向を計測するため、メンター・グラフィクスはヨーロッパのエレクトロニクス専門家に対してアンケート調査を実施しました。その調査では、現在および以前のアプリケーション、遭遇した一般的な設計での問題点、そしてESL設計メソドロジについての認識と経験について質問しています。そこでは、多くの設計者がESL設計によって解決するであろう様々な種類の困難に遭遇していることを発見しました。なぜある設計者は ESL設計を行い、ある設計者はそれを行わないのか、ESLメソドロジを適用することで何がもたらされるのか、いつそれが起こりえるのかという、興味深いデータを得ることができました。

Download