ためになるホームページ お問い合わせ




TOP > SystemC > 待ち合わせと通知
プロセスの待ち合わせ
あるプロセス内で、あるイベントが発生するまで待ち合わせをする時はwait()を使用する。以下にwait()の使用方法を示す。

タイプ 使用方法
wait() センシティビティ・リストのイベントが発生するまで待つ wait();
wait(イベント名) ヘッダー内で指定したイベントが発生するまで待つ wait(startEvent);
wait(時間, 単位) 指定した時間まで待つ
このオーバーロードは、SC_CTHREADで指定したプロセス内でのみ使用できる
wait(30, SC_NS);
wait(クロック数) 指定したクロックエッジまで待つ
このオーバーロードは、SC_CTHREADで指定したプロセス内でのみ使用できる
wait(100);

イベントの通知
wait()での待ち合わせを解除するには、notify()を使用する。モジュールヘッダー内でsc_eventで宣言したイベントが発生するまで、あるモジュールが待ち合わせをしている時、notifyメソッドでイベントを通知する。
それにより、 wait(イベント名)で待ち合わせしていたプロセスが起動する。notifyの使用方法は以下の種類がある。

タイプ 使用方法
notify() 即イベントを通知する イベント名.notify();
notify(時間, 単位) 指定した時間後にイベントを通知する イベント名.notify(10, SC_NS);
notify(時間) 指定時間待った後に通知
指定時間はsc_main()による
イベント名.notify();
cancel() 指定イベントの通知をキャンセルする イベント名.cancel();





Copyright 2007 ためになるホームページ All Rights Reserved.