[root]
type=Root
children=system
full_system=false
time_sync_enable=false
time_sync_period=100000000
time_sync_spin_threshold=100000

[system]
type=System
children=dir_cntrl0 l1_cntrl0 l2_cntrl0 physmem ruby sys_port_proxy tester
boot_osflags=a
init_param=0
kernel=
load_addr_mask=1099511627775
mem_mode=timing
memories=system.physmem
num_work_ids=16
readfile=
symbolfile=
work_begin_ckpt_count=0
work_begin_cpu_id_exit=-1
work_begin_exit_count=0
work_cpus_ckpt_count=0
work_end_ckpt_count=0
work_end_exit_count=0
work_item_id=-1
system_port=system.sys_port_proxy.slave[0]

[system.dir_cntrl0]
type=Directory_Controller
children=directory memBuffer
buffer_size=0
cntrl_id=2
directory=system.dir_cntrl0.directory
directory_latency=5
distributed_persistent=true
fixed_timeout_latency=100
l2_select_num_bits=0
memBuffer=system.dir_cntrl0.memBuffer
number_of_TBEs=256
recycle_latency=10
ruby_system=system.ruby
transitions_per_cycle=32
version=0

[system.dir_cntrl0.directory]
type=RubyDirectoryMemory
map_levels=4
numa_high_bit=6
size=134217728
use_map=false
version=0

[system.dir_cntrl0.memBuffer]
type=RubyMemoryControl
bank_bit_0=8
bank_busy_time=11
bank_queue_size=12
banks_per_rank=8
basic_bus_busy_time=2
dimm_bit_0=12
dimms_per_channel=2
mem_bus_cycle_multiplier=10
mem_ctl_latency=12
mem_fixed_delay=0
mem_random_arbitrate=0
rank_bit_0=11
rank_rank_delay=1
ranks_per_dimm=2
read_write_delay=2
refresh_period=1560
tFaw=0
version=0

[system.l1_cntrl0]
type=L1Cache_Controller
children=L1DcacheMemory L1IcacheMemory sequencer
L1DcacheMemory=system.l1_cntrl0.L1DcacheMemory
L1IcacheMemory=system.l1_cntrl0.L1IcacheMemory
N_tokens=2
buffer_size=0
cntrl_id=0
dynamic_timeout_enabled=true
fixed_timeout_latency=300
l1_request_latency=2
l1_response_latency=2
l2_select_num_bits=0
no_mig_atomic=true
number_of_TBEs=256
recycle_latency=10
retry_threshold=1
ruby_system=system.ruby
send_evictions=false
sequencer=system.l1_cntrl0.sequencer
transitions_per_cycle=32
version=0

[system.l1_cntrl0.L1DcacheMemory]
type=RubyCache
assoc=2
is_icache=false
latency=2
replacement_policy=PSEUDO_LRU
size=256
start_index_bit=6

[system.l1_cntrl0.L1IcacheMemory]
type=RubyCache
assoc=2
is_icache=false
latency=2
replacement_policy=PSEUDO_LRU
size=256
start_index_bit=6

[system.l1_cntrl0.sequencer]
type=RubySequencer
access_phys_mem=false
dcache=system.l1_cntrl0.L1DcacheMemory
deadlock_threshold=500000
icache=system.l1_cntrl0.L1IcacheMemory
max_outstanding_requests=16
ruby_system=system.ruby
support_data_reqs=true
support_inst_reqs=true
system=system
using_network_tester=false
using_ruby_tester=true
version=0
slave=system.tester.cpuDataPort[0] system.tester.cpuInstPort[0]

[system.l2_cntrl0]
type=L2Cache_Controller
children=L2cacheMemory
L2cacheMemory=system.l2_cntrl0.L2cacheMemory
N_tokens=2
buffer_size=0
cntrl_id=1
filtering_enabled=true
l2_request_latency=5
l2_response_latency=5
number_of_TBEs=256
recycle_latency=10
ruby_system=system.ruby
transitions_per_cycle=32
version=0

[system.l2_cntrl0.L2cacheMemory]
type=RubyCache
assoc=2
is_icache=false
latency=10
replacement_policy=PSEUDO_LRU
size=512
start_index_bit=6

[system.physmem]
type=SimpleMemory
conf_table_reported=false
file=
in_addr_map=true
latency=30
latency_var=0
null=false
range=0:134217727
zero=false

[system.ruby]
type=RubySystem
children=network profiler
block_size_bytes=64
clock=1
mem_size=134217728
no_mem_vec=false
random_seed=1234
randomization=true
stats_filename=ruby.stats

[system.ruby.network]
type=SimpleNetwork
children=topology
adaptive_routing=false
buffer_size=0
control_msg_size=8
endpoint_bandwidth=1000
number_of_virtual_networks=10
ruby_system=system.ruby
topology=system.ruby.network.topology

[system.ruby.network.topology]
type=Topology
children=ext_links0 ext_links1 ext_links2 int_links0 int_links1 int_links2 routers0 routers1 routers2 routers3
description=Crossbar
ext_links=system.ruby.network.topology.ext_links0 system.ruby.network.topology.ext_links1 system.ruby.network.topology.ext_links2
int_links=system.ruby.network.topology.int_links0 system.ruby.network.topology.int_links1 system.ruby.network.topology.int_links2
print_config=false
routers=system.ruby.network.topology.routers0 system.ruby.network.topology.routers1 system.ruby.network.topology.routers2 system.ruby.network.topology.routers3

[system.ruby.network.topology.ext_links0]
type=SimpleExtLink
bandwidth_factor=16
ext_node=system.l1_cntrl0
int_node=system.ruby.network.topology.routers0
latency=1
link_id=0
weight=1

[system.ruby.network.topology.ext_links1]
type=SimpleExtLink
bandwidth_factor=16
ext_node=system.l2_cntrl0
int_node=system.ruby.network.topology.routers1
latency=1
link_id=1
weight=1

[system.ruby.network.topology.ext_links2]
type=SimpleExtLink
bandwidth_factor=16
ext_node=system.dir_cntrl0
int_node=system.ruby.network.topology.routers2
latency=1
link_id=2
weight=1

[system.ruby.network.topology.int_links0]
type=SimpleIntLink
bandwidth_factor=16
latency=1
link_id=3
node_a=system.ruby.network.topology.routers0
node_b=system.ruby.network.topology.routers3
weight=1

[system.ruby.network.topology.int_links1]
type=SimpleIntLink
bandwidth_factor=16
latency=1
link_id=4
node_a=system.ruby.network.topology.routers1
node_b=system.ruby.network.topology.routers3
weight=1

[system.ruby.network.topology.int_links2]
type=SimpleIntLink
bandwidth_factor=16
latency=1
link_id=5
node_a=system.ruby.network.topology.routers2
node_b=system.ruby.network.topology.routers3
weight=1

[system.ruby.network.topology.routers0]
type=BasicRouter
router_id=0

[system.ruby.network.topology.routers1]
type=BasicRouter
router_id=1

[system.ruby.network.topology.routers2]
type=BasicRouter
router_id=2

[system.ruby.network.topology.routers3]
type=BasicRouter
router_id=3

[system.ruby.profiler]
type=RubyProfiler
all_instructions=false
hot_lines=false
num_of_sequencers=1
ruby_system=system.ruby

[system.sys_port_proxy]
type=RubyPortProxy
access_phys_mem=true
ruby_system=system.ruby
support_data_reqs=true
support_inst_reqs=true
system=system
using_network_tester=false
using_ruby_tester=false
version=0
slave=system.system_port

[system.tester]
type=RubyTester
check_flush=false
checks_to_complete=100
deadlock_threshold=50000
num_cpus=1
system=system
wakeup_frequency=10
cpuDataPort=system.l1_cntrl0.sequencer.slave[0]
cpuInstPort=system.l1_cntrl0.sequencer.slave[1]

