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