hle Posted February 23, 2018 Report Share Posted February 23, 2018 IEEE 1666-2011 describes wait(int ) as follows: Quote A call to this function shall be equivalent to calling the function wait with an empty argument list for a number of times in immediate succession, the number of times being passed as the value of the argument. It shall be an error to pass an argument value less than or equal to zero. The implementation is expected to optimize the execution speed of this function for clocked thread processes. If my interpretation is correct, wait(3); should always be equivalent to wait(); wait(); wait(); However, after applying such an equivalent transformation to tests/systemc/kernel/reset_signal_is/test02/test02.cpp from the regression suite, I got a different simulation output (with systemc-2.3.2): Quote 0 s: initializing 3 ns: waited 3 4 ns: initializing 5 ns: initializing 8 ns: waited 3 11 ns: waited 3 12 ns: initializing 13 ns: initializing 14 ns: initializing 15 ns: initializing 16 ns: initializing Is this possibly a bug in the reference implementation? Shashidhar and AmeyaVS 2 Quote Link to comment Share on other sites More sharing options...
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.