-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/2845/
-----------------------------------------------------------

(Updated May 27, 2015, 6:13 p.m.)


Review request for Default.


Repository: gem5


Description (updated)
-------

Changeset 10850:0c31c4ef98c0
---------------------------
ruby: Expose MessageBuffers as SimObjects

Expose MessageBuffers from SLICC controllers as SimObjects that can be
manipulated in Python. This patch has numerous benefits:
1) First and foremost, it exposes MessageBuffers as SimObjects that can be
manipulated in Python code. This allows parameters to be set and checked in
Python code to avoid obfuscating parameters within protocol files. Further, now
as SimObjects, MessageBuffer parameters are printed to config output files as a
way to track parameters across simulations (e.g. buffer sizes)
2) Cleans up special-case code for responseFromMemory buffers, and aligns their
instantiation and use with mandatoryQueue buffers. These two special buffers
are the only MessageBuffers that are exposed to components outside of SLICC
controllers, and they're both slave ends of these buffers. They should be
exposed outside of SLICC in the same way, and this patch does it.
3) Removes the obfuscated port-like connection of MessageBuffers. Ports are
now connected in the init function of the generated controllers.


Diffs (updated)
-----

  src/mem/protocol/RubySlicc_Defines.sm e61f847e74fd 
  src/mem/ruby/network/MessageBuffer.hh e61f847e74fd 
  src/mem/ruby/network/MessageBuffer.cc e61f847e74fd 
  src/mem/ruby/network/MessageBuffer.py PRE-CREATION 
  src/mem/ruby/network/SConscript e61f847e74fd 
  src/mem/ruby/network/simple/SimpleNetwork.cc e61f847e74fd 
  src/mem/ruby/network/simple/Switch.cc e61f847e74fd 
  src/mem/ruby/slicc_interface/AbstractController.hh e61f847e74fd 
  src/mem/ruby/slicc_interface/AbstractController.cc e61f847e74fd 
  src/mem/slicc/symbols/StateMachine.py e61f847e74fd 
  src/python/swig/pyobject.cc e61f847e74fd 

Diff: http://reviews.gem5.org/r/2845/diff/


Testing
-------

Regression tests with all Ruby protocols. Protocol file changes are in
separate patch (http://reviews.gem5.org/r/2844/) to keep this one slim.


Thanks,

Joel Hestness

_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to