Jump to content

Search the Community

Showing results for tags 'delta_cycles'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Accellera Systems Initiative
    • Information
    • Announcements
    • In the News
  • SystemC
    • SystemC Language
    • SystemC AMS (Analog/Mixed-Signal)
    • SystemC TLM (Transaction-level Modeling)
    • SystemC Verification (UVM-SystemC, SCV, CRAVE, FC4SC)
    • SystemC CCI (Configuration, Control & Inspection)
    • SystemC Datatypes
  • UVM (Universal Verification Methodology)
    • UVM (IEEE 1800.2) - Methodology and BCL Forum
    • UVM SystemVerilog Discussions
    • UVM Simulator Specific Issues
    • UVM Commercial Announcements
    • UVM (Pre-IEEE) Methodology and BCL Forum
  • Portable Stimulus
    • Portable Stimulus Discussion
    • Portable Stimulus 3.0 Public Review Feedback
  • SystemVerilog-AMS
    • Verilog-AMS 2023 Public Review
  • IP-XACT
    • IP-XACT Discussion
  • SystemRDL
    • SystemRDL Discussion
  • Clock Domain Crossing (CDC)
    • CDC Draft LRM Release Discussion
  • IP Security
    • SA-EDI Standard Discussion
    • IP Security Assurance Whitepaper Discussion
  • IEEE 1735/IP Encryption
    • IEEE 1735/IP Encryption Discussion
  • Commercial Announcements
    • Announcements

Categories

  • SystemC
  • UVM
  • UCIS
  • IEEE 1735/IP Encryption

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Jabber


Skype


AIM


Yahoo


ICQ


Website URL


MSN


Interests


Location


Biography


Location


Interests


Occupation


Company

Found 1 result

  1. Hi everybody, I have a question regarding wait(SC_ZERO_TIME) statements. I am working on a virtual platform for embedded systems with several ISSs, interconnections and memory modules. The memory thread has to be triggered on the positive edge of the request signal and keep on serving subsequent requests if the signal is kept high by the initiator after the first request. The code below shows the memory module implementation. ----------------------------------------------------------------------------- void memory::working() { while (true) { wait(SC_ZERO_TIME); wait(SC_ZERO_TIME); if(!request.read()) wait(request.posedge_event()); data = IO_data.read(); /* ... */ } } ----------------------------------------------------------------------------- My problem is that without the 2 wait(SC_ZERO_TIME) statements, a quick fix made some time ago, the data read is wrong (not current cycle). Since I checked that every master is filling first the data field then raising the request signal, I don't understand the need of two delta cycles to avoid reading the old value. Any idea/suggestion? Ciao, Daniele
×
×
  • Create New...