Мой метод fsm1
выполняется один раз даже без события, и поэтому id1_cmd.read()
и id1_value.read()
содержат 0, а не правильные значения.
//------------------------------------------------------------------
// Method: control::fsm1()
// Parameter: None
// @Sensitivity: ID_1_cmd (unsigned int)
//------------------------------------------------------------------
void control::fsm1() {
cout << id1_cmd.read() << endl;
cout << id1_value.read() << endl;
}
//------------------------------------------------------------------
// Method: Constructor
//------------------------------------------------------------------
SC_CTOR(control) {
SC_METHOD(fsm1);
sensitive << id1_cmd;
}
Существует способ предотвратить его выполнение один раз или я должен всегда обрабатывать этот случай в моих методах?