Jump to content

Search the Community

Showing results for tags 'peq'.

  • 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 2.0 Public Review Feedback
  • IP Security
    • SA-EDI Standard Discussion
    • IP Security Assurance Whitepaper Discussion
  • IP-XACT
    • IP-XACT Discussion
  • SystemRDL
    • SystemRDL Discussion
  • IEEE 1735/IP Encryption
    • IEEE 1735/IP Encryption Discussion
  • Commercial Announcements
    • Announcements

Categories

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

Calendars

  • Community Calendar

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests


Biography


Location


Interests


Occupation


Company

Found 2 results

  1. I am looking at MultiSocketSimpleSwitchAT example, and I can't seem to figure out how to implement priority based request selection. For example, in this simple switch, if we get multiple request on a given time, I need a stage where after collecting all the requests I can arbitrate between request in Round Robin manner. In this example, it is just selecting first request that happens to execute. Any suggestion on how can I implement that. Thanks
  2. Hi all, I'm struggling to figure out the difference between peqs. I wrote my own codes but I don't see any usage case difference. Let me to show a simple example for a Target (not a real code but some portions). PEQ WITH GET: In this case along fw path, transaction is inserted in the peq, triggers an event at delay_time. struct Target : sc_module { // DEFINE A PEQ peq_with_get<tlm_generic_payload> peq_target; // DEFINE A THREAD TO TRIGGER PEQ EVENTS void target_thread(); }; tlm_sync_enum Target::nb_transport_fw(tlm_generic_payload& trans, tlm_phase& phase, sc_time& delay) { // GET TRANSACTION // ANNOTATE DELAY TIME REGARDING PROTOCOL delay_time=... // INSERT IN THE PEQ peq_target.notify(trans, delay_time); ... ... return TLM_UPDATE; }; void Target::target_thread(.....) { while(true) { wait(peq_target.get_event()); // GET TRANSACTION! trans = peq_target.get_next_transaction(); // PROCESS TRANSACTION // send response, wait........ } }; peq_with_cb_and_phase: In this case along fw path, transaction is inserted in the peq and after a delay_time triggers a cb. struct Target : sc_module { // DEFINE A PEQ peq_with_cb_and_phase<Target,tlm_generic_payload> peq_target; // DEFINE A THREAD TO TRIGGER PEQ EVENTS void target_cb(); }; // Constructor connect peq to cb Target::Target (......) : peq_target("peq_target", this, &Target::target_cb()) { } tlm_sync_enum Target::nb_transport_fw(tlm_generic_payload& trans, tlm_phase& phase, sc_time& delay) { // GET TRANSACTION // ANNOTATE DELAY/PHASE TIME REGARDING PROTOCOL delay_time=... // INSERT IN THE PEQ peq_target.notify(trans, phase,delay_time); ... ... return TLM_UPDATE; }; void Target::target_cb(.......) { // Triggered from peq calling target_cb at delay_time // Manage Transaction and response return TLM..... } What is the difference ? Can you show me or indicate an example of what can be do with one and can not be do with other ? Sincerely I don't understand. Thank you in advance.
×
×
  • Create New...