Applistar

1. 1 計算モデル (MoC, Model of Computation)

TOP > 1 はじめに > 1. 1 計算モデル (MoC, Model of Computation)
  1. 1 計算モデル (MoC, Model of Computation)  

ここでは、システムレベル設計での 計算モデル(Models of Computation)に ついて説明します。

従来のRTLの設計モデルでは、コンポーネント間の通信のモデルは固定的なモデル、 すなわち、入出力ピン(ポート)の信号の受け渡しだけでした。 SystemCでは、ユーザ定義のclassを用いたインタフェース定義、 チャネル、ポート定義など、いろいろな通信メソッドを実装できます。

  RTL BL UTF TF TLM
構造レベルの正確さ        
ピンレベルの正確さ      
タイミングの正確さ  
クロック・サイクルの正確さ        
コミュニケーションプロトコルの正確さ      
データ構造の正確さ      
機能の正確さ

1. 1. 1 トランザクションレベルモデリング (TLM, Transaction Level Modeling)

トランザクション・レベル・モデリング(Transaction Level Modeling) とは、コンポーネントの動作をトランザクションの抽象度でモデル化します。ハードウェアを設計するうえで、設計対象の抽象度をあげて、プロセス間の計算と通信をモデル化したものです。

トランザクションとは、データベース・システムなどで用いられる用語で、1つの指令を意味します。例えば、データの格納、データの読み出しなどです。このレベルでは、データの大きさが1ブロック256バイトなど1つのバスサイクルで送れないこともあります。すなわち、複数のバスサイクルを必要とする転送指令も1つのトランザクションと、考えることで、抽象度があがります。イベントの減少につながり、シミュレーションの速度も向上します。

1. 1. 2 Un-Timed Function Modeling (UTF)

このレベルでは、システムの実行可能な仕様 (executable specification)を作成できます。システムは機能モジュールに分割され、モジュール間は抽象化された通信チャネルを介して通信を行うモデルでモデル化されます。

UTFでの通信はポイント・ポイント間通信で、後の設計ではより詳細化(複雑化)された通信モデルに置換されます。この時系列の通信はマスタ・スレーブ・プロトコル(MasterSlaveProtocol)でバス上を通信する、ソフトウェア?ハードウェア・システムをモデル化するのに適しています。そのようなシステムでは通常幾つかの並列プロセスで表現できます。それぞれの並列プロセス(Thread)では、一組の時系列な通信がモデル化されます。 UTFの抽象レベルでは、実行の順序については正確にモデル化されますが、 "実行時間"についてはモデル化されません。すべてのプロセスの“実行時間”は“0”ですが、指定された順序で実行されます。

1. 1. 3 Timed Function Modeling (TF)

このレベルではプロセスには“実行時間”または期間を絶対時間単位で割付けられます。これは、ソフトウェア・ハードウェア分割のトレードオフやリソース割付にかかわる、性能重視のモデリングに有用です。

この段階ではシステムはクロックで同期をとる詳細度にはいたっていません。 TF レベルでは、有限の実行時間をもつリソース(資源)を用いてモデル化します。

システムはUTFのプロセスやTFのプロセス間の相互接続を記述することもできます。 UTFでモデル化されたときのプロセスの実行順序については、モデルがTFに詳細化されても変わりません。 TFへの変換は、単純にUTFモデルを時間軸に対応づけたことになります。プロセスの“実行時間”はいくつかの異なる単位・期間を反映できます。

1. 1. 4 Register Transfer Level (RTL)

レジスタ転送モデルでは、ディジタルシステムの動作モデルをレジスタ間のデータ転送と演算によって記述します。この設計表現をRTL(Register Transfer Level)モデルと呼んでいます。このモデル用記述言語をレジスタ転送言語(Register Transfer Language) とも呼びます。

RTLモデルの設計言語として、VerilogHDLやVHDLなどが広く使われています。

RTLモデルでは、論理合成を行うことで、ネット記述まで自動変換する設計方法が広く利用されています。

  1. 1 計算モデル (MoC, Model of Computation)  
TOP > 1 はじめに > 1. 1 計算モデル (MoC, Model of Computation)