3. 1. 1. 1 C言語で記述された制御ソフトウェア
制御ソフトウェアは「バジェット追加プログラム」を用いて SystemC のモジュールに自動変換します。このときに、ターゲットCPUでの実行サイクル数の算出値が SystemCの wait 文として挿入されます。
RTOSへのサービスコールも自動変換されます。
高速協調検証システムでは、SoCシステム設計における、 ソフトウェア・ハードウェアのトレードオフ設計をサポートします。
本節では、 SoC システムレベル設計工程の中での高速協調検証システムの位置付けや、従来の ISS との比較について説明します。
高速協調検証システムの処理の流れを以下にします。

高速協調検証システムでは、
の連携を検証できます。 これらの連携はすべてSystemCシミュレータ上で検証できます。
以下に処理の流れを説明します。
制御ソフトウェアは「バジェット追加プログラム」を用いて SystemC のモジュールに自動変換します。このときに、ターゲットCPUでの実行サイクル数の算出値が SystemCの wait 文として挿入されます。
RTOSへのサービスコールも自動変換されます。
リアルタイムOSは、SystemC のひとつモジュールとして変換します。
サービスコールは、SystemC のインタフェース関数として実装されます。 タスク切り替えは、SystemCのThread 切替の機構と、イベントの通知・待ち受けにより実現しています。
アプリケーションソフトウェアからみると階層チャネルとして RTOSは実装されることになります。
周辺ハードウェアは、直接SystemCのモジュールとして記述します。
また、すでにRTLでハードウェア側の記述が利用できる場合には RTL記述を 抽象度をあげた SystemCの 記述に変換することで、 協調検証システムのシミュレーション速度を向上することができます。
本マニュアルでは、どのような方法で抽象度を上げ、 イベント数を減らすか、モデリング方法を解説しています。
周辺ハードウェアは、直接SystemCのモジュールとして記述します。
また、すでにRTLでハードウェア側の記述が利用できる場合には RTL記述を 抽象度をあげた SystemCの 記述に変換することで、 協調検証システムのシミュレーション速度を向上することができます。
本マニュアルでは、どのような方法で抽象度を上げ、 イベント数を減らすか、モデリング方法を解説しています。