1from m5.params import *
| 1from m5.params import *
|
| 2from m5.proxy import *
|
2from MemObject import MemObject 3 4class RubyPort(MemObject): 5 type = 'RubyPort' 6 abstract = True 7 port = VectorPort("M5 port")
| 3from MemObject import MemObject 4 5class RubyPort(MemObject): 6 type = 'RubyPort' 7 abstract = True 8 port = VectorPort("M5 port")
|
8 controller = Param.RubyController("")
| |
9 version = Param.Int(0, "")
| 9 version = Param.Int(0, "")
|
| 10 pio_port = Port("Ruby_pio_port")
|
10 11class RubySequencer(RubyPort): 12 type = 'RubySequencer' 13 cxx_class = 'Sequencer' 14 icache = Param.RubyCache("") 15 dcache = Param.RubyCache("") 16 max_outstanding_requests = Param.Int(16, 17 "max requests (incl. prefetches) outstanding") 18 deadlock_threshold = Param.Int(500000, 19 "max outstanding cycles for a request before deadlock/livelock declared") 20 funcmem_port = Port("port to functional memory") 21 22class DMASequencer(RubyPort): 23 type = 'DMASequencer'
| 11 12class RubySequencer(RubyPort): 13 type = 'RubySequencer' 14 cxx_class = 'Sequencer' 15 icache = Param.RubyCache("") 16 dcache = Param.RubyCache("") 17 max_outstanding_requests = Param.Int(16, 18 "max requests (incl. prefetches) outstanding") 19 deadlock_threshold = Param.Int(500000, 20 "max outstanding cycles for a request before deadlock/livelock declared") 21 funcmem_port = Port("port to functional memory") 22 23class DMASequencer(RubyPort): 24 type = 'DMASequencer'
|