Jump to content
Sign in to follow this  
jsmith125x

vhdl after construct

Recommended Posts

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

Share this post


Link to post
Share on other sites

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... }

};

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×