jsmith125x Posted February 1, 2014 Report Share Posted February 1, 2014 Hi, What is that in SystemC? a <= b after 10 ns; -- a and b are signals Quote Link to comment Share on other sites More sharing options...
apfitch Posted February 3, 2014 Report Share Posted February 3, 2014 There's no easy equivalent. You could do int atemp; // or whatever data type a and b are void proc() { while (true) { atemp = a.read(); wait (10, SC_NS); b.write(atemp); } } SC_THREAD(proc); sensitive << b; You might possibly be able to build some kind of wrapper around sc_event_queue regards Alan Quote Link to comment Share on other sites More sharing options...
David Black Posted February 14, 2014 Report Share Posted February 14, 2014 I've often thought of writing a delayed assignment channel for SystemC. Probably just a new signature for sc_signal::write(...). Of course that begs the question of transport vs inertial delay, which would be interesting to use. I think both are likely to have their uses. Perhaps: template<typename T> class sc_signal_delayed : public sc_core::sc_signal<T> { ... void write(const T& value, sc_time delay, bool transport=true) { ...details left to the implementor... } }; Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.