SystemC技術を用いたアーキテクチャ探索  
 


仕様設計

電子機器システムの上流設計は、大きく分けて仕様設計とアーキテクチャ設計に分かれます。仕様設計の段階では、顧客要求やマーケティングによる市場分析から要求仕様を抽出し、標準化団体等で策定している様々な標準規格の下で,システム要件をまとめます。アーキテクチャ設計では、システム要件から、システムの動作速度、システムの機能安全、採算性などを考えハードウエア構成を考えます。その結果、現実的な機能仕様、設計仕様ができあがり、具体的なソフトウエア設計、ハードウエア設計に移行していきます。

仕様設計は、今まで文章で行なっていましたが、最近ではシステム記述言語が登場し、メイテナンス性がよく、コンピュータ上で数学的に検証可能な仕様設計が提唱されています。システム記述言語としては、ADL(アーキテクチャ記述言語Architecture Description Language)SysMLがあります。システム言語には、様々な人が仕様設計に関われるよう、可視性が高く、単純な言語形態が求められます。SysMLは、可視性を重要視した言語形体で、数種類の図面で描いていきます。SysMLには、システムレベルの検証の為、パラメトリック図が用意されています。パラメトリック図では、システムに現れるさまざまな値の間に成り立つ制約を、数式で表現する図面です。 パラメトリック図を使って、機能仕様、性能仕様に必要なパラメータを特定するなどの分析を行うことができます。

数式による検証可能なシステムレベルのモデリングツールとしては、MatLabが有名です。SysMLやMatLabでは、数式を簡単に図面に入力し、解析することに主眼が置かれています。システムの要件を考えるには、アーキテクチャー構築のために必要な、採算性、安全性というパラメータも考慮しなければなりません。近年、システムレベルのモデリングツールはこれらを考慮したものも登場しています。

SystemCは、システム記述言語がターゲットにしている仕様設計から、具体的なソフト・ハード設計までをシームレスに行なえる画期的な言語形体です。SystemCでは、数学的な方程式や空気上を電波が伝播する伝播方程式、モータ等の物理モデルなどが、C言語で築かれた豊富なライブラリを使って表現することができます。SystemCは、これらを1つ1つのプロセスとして平行動作させ、fifoによって接続することで、有機的な接続による動作を検証することができます。

SystemCは、TLM2.0で定義されたトランザクションレベルモデリング(TLM)が存在します。TLMでは、接続はソケットと呼ばれる接続点を用意しています。ソケットを利用するればすべての物体に接続することが可能です。TLMにはペイロードと呼ばれるデータ構造があります。ペイロードを使うことで、送信側、受信側のデータに対する認識が統一化され、どのような物体とも送受信可能になります。

SystemCには、HDLレベルの記述も容易されています。SystemCでは、HDLレベルのシミュレーションとトランザクションレベル、システムレベルすべてを混在でシミュレーションすることも可能です。