Is there a way to clear pending events of type custom_cycle_event when a DML module is reset?
For events of type simple_cycle_event we call the remove method of the event during reset but Simics documentation specifies the remove method is not supported for custom_cycle_event.
Cancellation is not possible with the
custom_cycle_event. If at most one event can be posted at a given time, then one alternative is to use asimple_cycle_eventand pass event data insavedvariables when posting:An even better solution may be an
afterstatement:The
aftersyntax is more compact and allows the same event method to be called from within different reset domains.Some background: In DML 1.2, cancellation of custom events was permitted, but it was so error-prone that we couldn't find a single device that provided a correct implementation if the event data was more complex than what a
uint64_cycle_eventcan handle. This is why it was removed it in DML 1.4.