![]() |
![]() |
TOP > SystemC > SystemCファイル構成[インプリメンテーションファイル編] |
![]() |
![]() |
インプリメンテーションファイルの記述
インプリメンテーションファイルは、各モジュールのプロセス・その他のメソッドを実装させるファイルである。
プロセスメソッドは、プロセスタイプにより内部の書き方が異なる。 SC_METHODタイプで記述した場合は、センシティビティ・リストがトリガとなりその度に実行される(呼ばれる)が、SC_THREAD・SC_CTHREADタイプでは、センシティビティ・リストに指定した信号が最初に 変化した時のみ実行される。すなわち、一回のみ実行される。
よって、SC_THREAD・SC_CTHREADプロセス型にした時は、while文等で無限ループにし、wait・notifyを使用して無限ループ内で処理を待つようにする。
インプリメンテーションファイルの例
/*! ******************************************************************************* * \file implementation.cpp * \brief インプリメンテーションファイルの例 * ******************************************************************************* */ /*! ******************************************************************************* * \fn void MODULEA::func(void) * \brief モジュールAプロセスメソッド * ******************************************************************************* */ #include "systemc.h" #include "module.h" void MODULE::func(void) { OUT.write(!IN.read()); return; } |
![]() |
![]() |
Copyright 2007 ためになるホームページ All Rights Reserved. |