Jump to content

Dineshkumar

Members
  • Content Count

    8
  • Joined

  • Last visited

About Dineshkumar

  • Rank
    Member

Profile Information

  • Gender
    Male
  • Location
    Bangalore

Recent Profile Visitors

253 profile views
  1. Dineshkumar

    Will SC_THREAD create a real thread?

    Hi Arya, As far as the your TLM platform is concerned, there will be no issue. But I did not understand the problem you mentioned about RTL simulation. If two masters try to access the bus at same clock cycle, the arbiter within the bus IP must arbitrate between these two requests and send grant to only one master. Why does it result in simulation error? what is the multi layer matrix ? Did you mean some sort of arbitration only? If you have used LT coding style(blocking transport), then you may not need any arbitration as it is based on first come first serve. It simply blocks the bus till a response is returned from slave. But it you have used AT coding style, then there is provision to do arbitration if you wish. Regards, Dinesh.
  2. HI Arya, Thanks for starting this topic. Hi Ruchir, Your posts provided a lot of info about using UVM for SC verification. Thanks.I have few questions here. 1) You mentioned UVM connect is open source, does it mean I can just download and use in gcc/MSVC environment. Or it require any EDA tools support? 2) Can I get access to UVM-SC draft version? Regards, Dinesh.
  3. Dineshkumar

    systemc softwares features

    HI, I am not sure what document you are looking for. If you are interested in knowing the systemc features( that are referred in High Level Synthesis tool's datasheet), you can refer to SystemC LRM. Regards, Dinesh.
  4. Dineshkumar

    Shared Variables in SC_THREAD

    Hi, You can make t1 as static variable. Regards, Dinesh.
  5. Hi, You can use SystemC Verification 2.0 standard for LT model verification. Regards, Dinesh
  6. Dineshkumar

    segmentation fault in sc_core::sc_process_b::semantics

    Hi, Thanks for your suggestion.
  7. Hi, I have a complex design that consists of multiple static and dynamic (spawned) process. I am getting a segmentation fault in sc_core::sc_process_b::semantics function at run time (probably at time when the method is to be invoked). The back trace is as follows. #0 0x00000000006a3395 in sc_core::sc_process_b::semantics (this=0x1ac81f0) at <Local Installation Path>/systemc-src_2.3.0/src/sysc/kernel/sc_process.h:669 #1 0x00000000006a395f in sc_core::sc_method_process::run_process (this=0x1ac81f0) at <Local Installation Path>/systemc-src_2.3.0/src/sysc/kernel/sc_method_process.h:300 #2 0x00000000006a4a83 in sc_core::sc_simcontext::crunch (this=0xa2d430, once=false) at <Local Installation Path>/systemc-src_2.3.0/src/sysc/kernel/sc_simcontext.cpp:488 #3 0x00000000006a18cc in sc_core::sc_simcontext::simulate (this=0xa2d430, duration=...) at <Local Installation Path>/systemc-src_2.3.0/src/sysc/kernel/sc_simcontext.cpp:890 #4 0x00000000006a2e0a in sc_core::sc_start (duration=..., p=sc_core::SC_RUN_TO_TIME) at <Local Installation Path>/systemc-src_2.3.0/src/sysc/kernel/sc_simcontext.cpp:1583 #5 0x0000000000436c75 in sc_core::sc_start (duration=1000, unit=sc_core::SC_NS, p=sc_core::SC_RUN_TO_TIME) at <Local Installation Path>/systemc-install_2.3.0/include/sysc/kernel/sc_simcontext.h:118 #6 0x00000000004358b5 in sc_main (argc=3, argv=0xa3cdb0) at mnoc_746_main.cpp:50 #7 0x000000000068d366 in sc_core::sc_elab_and_sim (argc=3, argv=0x7fffffff7fa8) at <Local Installation Path>/systemc-src_2.3.0/src/sysc/kernel/sc_main_main.cpp:81 #8 0x000000000068d264 in main (argc=3, argv=0x7fffffff7fa8) at <Local Installation Path>/systemc-src_2.3.0/src/sysc/kernel/sc_main.cpp:34 Any idea of root cause? I could not share the design due to its complexity and too many files Thanks for your help Regards, Dinesh.
  8. Hi, You can try any of these options 1) Use of TLM 2.0 PEQ. It provides a very simple way to deal with your requirements at the cost of bringing in extra tlm headers/libraries 2) Use of sc_event _queue. Requester can schedule this event queue with resource specific delay and dispatcher can be made sensitive to this event. With the use of sc_event_queue, you can ensure new event schedule is not overriding prev ones.Identification of resource at dispatcher side is possible if the resource object carries an extra filed of initiated time stamp and dispatcher simply compares current time stamp with resource initiated time stamp+resource specific delay. Regards, Dinesh.
×