amitk3553 Posted May 3, 2013 Report Share Posted May 3, 2013 What is the difference between initialisation and elaboration phase in steps of simulation?? Quote Link to comment Share on other sites More sharing options...
apfitch Posted May 3, 2013 Report Share Posted May 3, 2013 See section 4 of the IEEE 1666-2011 SystemC Language Reference Manual for a description of the steps taken in Elaboration and Simulation. Roughly speaking, elaboration is the construction of the network of processes and channels that are your SystemC model; the initialisation phase occurs near the start of simulation, and is the part of the scheduler when all processes are run once at time zero regards Alan amitk3553 1 Quote Link to comment Share on other sites More sharing options...
amitk3553 Posted May 6, 2013 Author Report Share Posted May 6, 2013 See section 4 of the IEEE 1666-2011 SystemC Language Reference Manual for a description of the steps taken in Elaboration and Simulation. Roughly speaking, elaboration is the construction of the network of processes and channels that are your SystemC model; the initialisation phase occurs near the start of simulation, and is the part of the scheduler when all processes are run once at time zero regards Alan Thanks alan, one more thing what is the difference between initialisation and evaluate phase? In evaluate phase processes are resumed???What does it means?? Is this means that some part of process is executed in initialisation phase ?? Then like we had a process in which two variables are going to add......how would this add operation be performed in initialisation and evaluate phases??like in initialisation values are to be assigned and in evaluate phase added value is to produced?? Please explain this with some example Thanks with Regards Amit Quote Link to comment Share on other sites More sharing options...
apfitch Posted May 6, 2013 Report Share Posted May 6, 2013 Initialisation only happens once. Evaluation happens during the rest of simulation. You could say that initialisation is the very first evaluation, Alan amitk3553 1 Quote Link to comment Share on other sites More sharing options...
amitk3553 Posted May 8, 2013 Author Report Share Posted May 8, 2013 Hello alan, I had picked an example that you had given in another thread. So please now tell me in the the following example that which part of process is in initial phase and which in evaluate phase. void e() { cout << "this is a dynamic process" << endl; } SC_MODULE(M) { void f() { cout << "This is a static process" << endl; wait(10, SC_NS); sc_spawn (&e); } SC_CTOR(M) { SC_THREAD(f) } }; Regards Cam Quote Link to comment Share on other sites More sharing options...
apfitch Posted May 8, 2013 Report Share Posted May 8, 2013 Every SC_METHOD runs and returns during initialisation. Every SC_THREAD runs until it suspends. In my (untested!) example above, the SC_THREAD f() would execute cout << "This is a static process" << endl; and then suspend at this statement: wait(10, SC_NS); The dynamic process e() obviously wouldn't run during intialisation as it has not yet been spawned. regards Alan 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.