Review Board 2.0.15


ruby: Atomic Message Interface Support

Review Request #1629 - Created Jan. 14, 2013 and updated

Information
Derek Hower
gem5
default
Reviewers
Default
Changeset 9475:6f76e7b25361
---------------------------
ruby: Atomic Message Interface Support

This patch adds Atomic Message Interfaces to SLICC/Ruby.  AMIs look a lot like
conventional MessageBuffers, except they guarantee immediate consumption of
an enqueued message by the receiving controller, before any other activity.
This feature simplifies protocols with co-located controllers where messages
and information can be passed between the two, without worrying about
unecessary races.

   

Issue Summary

7 5 0 2
Review request changed
Updated (Jan. 16, 2013, 3:28 a.m.)

Description:

~  

Changeset 9475:907f1c21dc04

  ~

Changeset 9475:6f76e7b25361

   
   

ruby: Atomic Message Interface Support

   
   

This patch adds Atomic Message Interfaces to SLICC/Ruby. AMIs look a lot like

    conventional MessageBuffers, except they guarantee immediate consumption of
    an enqueued message by the receiving controller, before any other activity.
    This feature simplifies protocols with co-located controllers where messages
    and information can be passed between the two, without worrying about
    unecessary races.

-  
-  

Note This patch was created by Brad Beckmann (Brad.Beckmann@amd.com)

Diff:

Revision 2 (+559 -214)

Show changes

Posted (Jan. 17, 2013, 2:46 a.m.)



  
Can you explain what sim object members / methods are being used by this class?
You should avoid using g_system_ptr->getTime(). The plan is to remove this 
function altogether. While I don't understand what the structure 
AtomicMessageInterface is meant for, it should be using the clock of any 
clocked object it is naturally associated with. In this case, it might be 
the controller.
Same comment as above.
Same as above.
Same as above.