summaryrefslogtreecommitdiff
path: root/src/mem/ruby/config/MI_example.rb
blob: 3196bb639b4b4b40a36501f9415ecc6754e564f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

class MI_example_CacheController < L1CacheController
  attr :cache
  def initialize(obj_name, mach_type, cache, sequencer)
    super(obj_name, mach_type, [cache], sequencer)
    @cache = cache
  end
  def argv()
    vec = super()
    vec += " cache " + @cache.obj_name
    vec += " issue_latency "+issue_latency.to_s
    vec += " cache_response_latency "+cache_response_latency.to_s
  end

end

class MI_example_DirectoryController < DirectoryController
  def initialize(obj_name, mach_type, directory, memory_control)
    super(obj_name, mach_type, directory, memory_control)
  end
  def argv()
    vec = super()
    vec += " directory_latency "+directory_latency.to_s
  end
end

class MI_example_DMAController < DMAController
  def initialize(obj_name, mach_type, dma_sequencer)
    super(obj_name, mach_type, dma_sequencer)
  end
  def argv()
    vec = super
    vec += " request_latency "+request_latency.to_s
  end
end