DRAMSys_gem5 functional examples, essential files and doc
This commit intends to provide functional examples and doc.
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -20,3 +20,4 @@ DRAMSys/analyzer/scripts/__pycache__/
|
||||
*.pyc
|
||||
*.autosave
|
||||
*__pycache__*
|
||||
DRAMSys/gem5/boot_linux/linux-aarch32-ael.img
|
||||
|
||||
247
DRAMSys/docs/images/gem5_se_mode_arch.svg
Normal file
247
DRAMSys/docs/images/gem5_se_mode_arch.svg
Normal file
@@ -0,0 +1,247 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.38.0 (20140413.2041)
|
||||
-->
|
||||
<!-- Title: G Pages: 1 -->
|
||||
<svg width="582pt" height="970pt"
|
||||
viewBox="0.00 0.00 582.00 970.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 966)">
|
||||
<title>G</title>
|
||||
<polygon fill="white" stroke="none" points="-4,4 -4,-966 578,-966 578,4 -4,4"/>
|
||||
<g id="clust1" class="cluster"><title>cluster_root</title>
|
||||
<g id="a_clust1"><a xlink:title="eventq_index=0 full_system=false sim_quantum=0 time_sync_enable=false time_sync_period=100000000000 time_sync_spin_threshold=100000000">
|
||||
<path fill="#bab6ae" stroke="#000000" d="M20,-8C20,-8 554,-8 554,-8 560,-8 566,-14 566,-20 566,-20 566,-942 566,-942 566,-948 560,-954 554,-954 554,-954 20,-954 20,-954 14,-954 8,-948 8,-942 8,-942 8,-20 8,-20 8,-14 14,-8 20,-8"/>
|
||||
<text text-anchor="middle" x="287" y="-938.8" font-family="Arial" font-size="14.00" fill="#000000">root </text>
|
||||
<text text-anchor="middle" x="287" y="-923.8" font-family="Arial" font-size="14.00" fill="#000000">: Root</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust2" class="cluster"><title>cluster_system</title>
|
||||
<g id="a_clust2"><a xlink:title="boot_osflags=a cache_line_size=64 clk_domain=system.clk_domain default_p_state=UNDEFINED eventq_index=0 exit_on_work_items=false init_param=0 kernel= kernel_addr_check=false kernel_extras= load_addr_mask=18446744073709551615 load_offset=0 mem_mode=timing mem_ranges=0:536870911:0:0:0:0 memories=system.physmem mmap_using_noreserve=false multi_thread=false num_work_ids=16 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 power_model= readfile= symbolfile= thermal_components= thermal_model=Null 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">
|
||||
<path fill="#e4e7eb" stroke="#000000" d="M28,-16C28,-16 546,-16 546,-16 552,-16 558,-22 558,-28 558,-28 558,-896 558,-896 558,-902 552,-908 546,-908 546,-908 28,-908 28,-908 22,-908 16,-902 16,-896 16,-896 16,-28 16,-28 16,-22 22,-16 28,-16"/>
|
||||
<text text-anchor="middle" x="287" y="-892.8" font-family="Arial" font-size="14.00" fill="#000000">system </text>
|
||||
<text text-anchor="middle" x="287" y="-877.8" font-family="Arial" font-size="14.00" fill="#000000">: System</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust3" class="cluster"><title>cluster_system_membus</title>
|
||||
<g id="a_clust3"><a xlink:title="clk_domain=system.clk_domain default_p_state=UNDEFINED eventq_index=0 forward_latency=4 frontend_latency=3 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 point_of_coherency=true point_of_unification=true power_model= response_latency=2 snoop_filter=system.membus.snoop_filter snoop_response_latency=4 system=system use_default_range=false width=16">
|
||||
<path fill="#6f798c" stroke="#000000" d="M317,-155C317,-155 441,-155 441,-155 447,-155 453,-161 453,-167 453,-167 453,-234 453,-234 453,-240 447,-246 441,-246 441,-246 317,-246 317,-246 311,-246 305,-240 305,-234 305,-234 305,-167 305,-167 305,-161 311,-155 317,-155"/>
|
||||
<text text-anchor="middle" x="379" y="-230.8" font-family="Arial" font-size="14.00" fill="#000000">membus </text>
|
||||
<text text-anchor="middle" x="379" y="-215.8" font-family="Arial" font-size="14.00" fill="#000000">: SystemXBar</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust5" class="cluster"><title>cluster_system_external_memory</title>
|
||||
<g id="a_clust5"><a xlink:title="addr_ranges=0:536870911:0:0:0:0 clk_domain=system.clk_domain default_p_state=UNDEFINED eventq_index=0 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 port_data=transactor port_type=tlm_slave power_model=">
|
||||
<path fill="#bab6ae" stroke="#000000" d="M362,-24C362,-24 468,-24 468,-24 474,-24 480,-30 480,-36 480,-36 480,-103 480,-103 480,-109 474,-115 468,-115 468,-115 362,-115 362,-115 356,-115 350,-109 350,-103 350,-103 350,-36 350,-36 350,-30 356,-24 362,-24"/>
|
||||
<text text-anchor="middle" x="415" y="-99.8" font-family="Arial" font-size="14.00" fill="#000000">external_memory </text>
|
||||
<text text-anchor="middle" x="415" y="-84.8" font-family="Arial" font-size="14.00" fill="#000000">: ExternalSlave</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust6" class="cluster"><title>cluster_system_tol2bus</title>
|
||||
<g id="a_clust6"><a xlink:title="clk_domain=system.cpu_clk_domain default_p_state=UNDEFINED eventq_index=0 forward_latency=0 frontend_latency=1 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 point_of_coherency=false point_of_unification=true power_model= response_latency=1 snoop_filter=system.tol2bus.snoop_filter snoop_response_latency=1 system=system use_default_range=false width=32">
|
||||
<path fill="#6f798c" stroke="#000000" d="M351,-417C351,-417 475,-417 475,-417 481,-417 487,-423 487,-429 487,-429 487,-496 487,-496 487,-502 481,-508 475,-508 475,-508 351,-508 351,-508 345,-508 339,-502 339,-496 339,-496 339,-429 339,-429 339,-423 345,-417 351,-417"/>
|
||||
<text text-anchor="middle" x="413" y="-492.8" font-family="Arial" font-size="14.00" fill="#000000">tol2bus </text>
|
||||
<text text-anchor="middle" x="413" y="-477.8" font-family="Arial" font-size="14.00" fill="#000000">: L2XBar</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust11" class="cluster"><title>cluster_system_l2</title>
|
||||
<g id="a_clust11"><a xlink:title="addr_ranges=0:18446744073709551615:0:0:0:0 assoc=8 clk_domain=system.cpu_clk_domain clusivity=mostly_incl data_latency=20 default_p_state=UNDEFINED demand_mshr_reserve=1 eventq_index=0 is_read_only=false max_miss_count=0 mshrs=20 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 power_model= prefetch_on_access=false prefetcher=Null replacement_policy=system.l2.replacement_policy response_latency=20 sequential_access=false size=2097152 system=system tag_latency=20 tags=system.l2.tags tgts_per_mshr=12 warmup_percentage=0 write_buffers=8 writeback_clean=false">
|
||||
<path fill="#bab6ae" stroke="#000000" d="M370,-286C370,-286 538,-286 538,-286 544,-286 550,-292 550,-298 550,-298 550,-365 550,-365 550,-371 544,-377 538,-377 538,-377 370,-377 370,-377 364,-377 358,-371 358,-365 358,-365 358,-298 358,-298 358,-292 364,-286 370,-286"/>
|
||||
<text text-anchor="middle" x="454" y="-361.8" font-family="Arial" font-size="14.00" fill="#000000">l2 </text>
|
||||
<text text-anchor="middle" x="454" y="-346.8" font-family="Arial" font-size="14.00" fill="#000000">: L2Cache</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust17" class="cluster"><title>cluster_system_cpu</title>
|
||||
<g id="a_clust17"><a xlink:title="branchPred=Null checker=Null clk_domain=system.cpu_clk_domain cpu_id=0 default_p_state=UNDEFINED do_checkpoint_insts=true do_quiesce=true do_statistics_insts=true dstage2_mmu=system.cpu.dstage2_mmu dtb=system.cpu.dtb eventq_index=0 function_trace=false function_trace_start=0 interrupts=system.cpu.interrupts isa=system.cpu.isa istage2_mmu=system.cpu.istage2_mmu itb=system.cpu.itb max_insts_all_threads=0 max_insts_any_thread=0 max_loads_all_threads=0 max_loads_any_thread=0 numThreads=1 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 power_gating_on_idle=false power_model= profile=0 progress_interval=0 pwr_gating_latency=300 simpoint_start_insts= socket_id=0 switched_out=false syscallRetryLatency=10000 system=system tracer=system.cpu.tracer wait_for_remote_gdb=false workload=system.cpu.workload">
|
||||
<path fill="#bbc6d9" stroke="#000000" d="M36,-540C36,-540 538,-540 538,-540 544,-540 550,-546 550,-552 550,-552 550,-850 550,-850 550,-856 544,-862 538,-862 538,-862 36,-862 36,-862 30,-862 24,-856 24,-850 24,-850 24,-552 24,-552 24,-546 30,-540 36,-540"/>
|
||||
<text text-anchor="middle" x="287" y="-846.8" font-family="Arial" font-size="14.00" fill="#000000">cpu </text>
|
||||
<text text-anchor="middle" x="287" y="-831.8" font-family="Arial" font-size="14.00" fill="#000000">: TimingSimpleCPU</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust19" class="cluster"><title>cluster_system_cpu_dtb</title>
|
||||
<g id="a_clust19"><a xlink:title="eventq_index=0 is_stage2=false size=64 sys=system walker=system.cpu.dtb.walker">
|
||||
<path fill="#bab6ae" stroke="#000000" d="M258,-671C258,-671 378,-671 378,-671 384,-671 390,-677 390,-683 390,-683 390,-804 390,-804 390,-810 384,-816 378,-816 378,-816 258,-816 258,-816 252,-816 246,-810 246,-804 246,-804 246,-683 246,-683 246,-677 252,-671 258,-671"/>
|
||||
<text text-anchor="middle" x="318" y="-800.8" font-family="Arial" font-size="14.00" fill="#000000">dtb </text>
|
||||
<text text-anchor="middle" x="318" y="-785.8" font-family="Arial" font-size="14.00" fill="#000000">: ArmTLB</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust20" class="cluster"><title>cluster_system_cpu_dtb_walker</title>
|
||||
<g id="a_clust20"><a xlink:title="clk_domain=system.cpu_clk_domain default_p_state=UNDEFINED eventq_index=0 is_stage2=false num_squash_per_cycle=2 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 power_model= sys=system">
|
||||
<path fill="#9f9c95" stroke="#000000" d="M266,-679C266,-679 370,-679 370,-679 376,-679 382,-685 382,-691 382,-691 382,-758 382,-758 382,-764 376,-770 370,-770 370,-770 266,-770 266,-770 260,-770 254,-764 254,-758 254,-758 254,-691 254,-691 254,-685 260,-679 266,-679"/>
|
||||
<text text-anchor="middle" x="318" y="-754.8" font-family="Arial" font-size="14.00" fill="#000000">walker </text>
|
||||
<text text-anchor="middle" x="318" y="-739.8" font-family="Arial" font-size="14.00" fill="#000000">: ArmTableWalker</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust22" class="cluster"><title>cluster_system_cpu_itb</title>
|
||||
<g id="a_clust22"><a xlink:title="eventq_index=0 is_stage2=false size=64 sys=system walker=system.cpu.itb.walker">
|
||||
<path fill="#bab6ae" stroke="#000000" d="M410,-671C410,-671 530,-671 530,-671 536,-671 542,-677 542,-683 542,-683 542,-804 542,-804 542,-810 536,-816 530,-816 530,-816 410,-816 410,-816 404,-816 398,-810 398,-804 398,-804 398,-683 398,-683 398,-677 404,-671 410,-671"/>
|
||||
<text text-anchor="middle" x="470" y="-800.8" font-family="Arial" font-size="14.00" fill="#000000">itb </text>
|
||||
<text text-anchor="middle" x="470" y="-785.8" font-family="Arial" font-size="14.00" fill="#000000">: ArmTLB</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust23" class="cluster"><title>cluster_system_cpu_itb_walker</title>
|
||||
<g id="a_clust23"><a xlink:title="clk_domain=system.cpu_clk_domain default_p_state=UNDEFINED eventq_index=0 is_stage2=false num_squash_per_cycle=2 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 power_model= sys=system">
|
||||
<path fill="#9f9c95" stroke="#000000" d="M418,-679C418,-679 522,-679 522,-679 528,-679 534,-685 534,-691 534,-691 534,-758 534,-758 534,-764 528,-770 522,-770 522,-770 418,-770 418,-770 412,-770 406,-764 406,-758 406,-758 406,-691 406,-691 406,-685 412,-679 418,-679"/>
|
||||
<text text-anchor="middle" x="470" y="-754.8" font-family="Arial" font-size="14.00" fill="#000000">walker </text>
|
||||
<text text-anchor="middle" x="470" y="-739.8" font-family="Arial" font-size="14.00" fill="#000000">: ArmTableWalker</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust30" class="cluster"><title>cluster_system_cpu_icache</title>
|
||||
<g id="a_clust30"><a xlink:title="addr_ranges=0:18446744073709551615:0:0:0:0 assoc=2 clk_domain=system.cpu_clk_domain clusivity=mostly_incl data_latency=2 default_p_state=UNDEFINED demand_mshr_reserve=1 eventq_index=0 is_read_only=true max_miss_count=0 mshrs=4 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 power_model= prefetch_on_access=false prefetcher=Null replacement_policy=system.cpu.icache.replacement_policy response_latency=2 sequential_access=false size=32768 system=system tag_latency=2 tags=system.cpu.icache.tags tgts_per_mshr=20 warmup_percentage=0 write_buffers=8 writeback_clean=true">
|
||||
<path fill="#bab6ae" stroke="#000000" d="M244,-548C244,-548 412,-548 412,-548 418,-548 424,-554 424,-560 424,-560 424,-627 424,-627 424,-633 418,-639 412,-639 412,-639 244,-639 244,-639 238,-639 232,-633 232,-627 232,-627 232,-560 232,-560 232,-554 238,-548 244,-548"/>
|
||||
<text text-anchor="middle" x="328" y="-623.8" font-family="Arial" font-size="14.00" fill="#000000">icache </text>
|
||||
<text text-anchor="middle" x="328" y="-608.8" font-family="Arial" font-size="14.00" fill="#000000">: L1_ICache</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<g id="clust33" class="cluster"><title>cluster_system_cpu_dcache</title>
|
||||
<g id="a_clust33"><a xlink:title="addr_ranges=0:18446744073709551615:0:0:0:0 assoc=2 clk_domain=system.cpu_clk_domain clusivity=mostly_incl data_latency=2 default_p_state=UNDEFINED demand_mshr_reserve=1 eventq_index=0 is_read_only=false max_miss_count=0 mshrs=4 p_state_clk_gate_bins=20 p_state_clk_gate_max=1000000000000 p_state_clk_gate_min=1000 power_model= prefetch_on_access=false prefetcher=Null replacement_policy=system.cpu.dcache.replacement_policy response_latency=2 sequential_access=false size=65536 system=system tag_latency=2 tags=system.cpu.dcache.tags tgts_per_mshr=20 warmup_percentage=0 write_buffers=8 writeback_clean=false">
|
||||
<path fill="#bab6ae" stroke="#000000" d="M44,-548C44,-548 212,-548 212,-548 218,-548 224,-554 224,-560 224,-560 224,-627 224,-627 224,-633 218,-639 212,-639 212,-639 44,-639 44,-639 38,-639 32,-633 32,-627 32,-627 32,-560 32,-560 32,-554 38,-548 44,-548"/>
|
||||
<text text-anchor="middle" x="128" y="-623.8" font-family="Arial" font-size="14.00" fill="#000000">dcache </text>
|
||||
<text text-anchor="middle" x="128" y="-608.8" font-family="Arial" font-size="14.00" fill="#000000">: L1_DCache</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- system_system_port -->
|
||||
<g id="node1" class="node"><title>system_system_port</title>
|
||||
<path fill="#b6b8bc" stroke="#000000" d="M264.5,-294.5C264.5,-294.5 335.5,-294.5 335.5,-294.5 341.5,-294.5 347.5,-300.5 347.5,-306.5 347.5,-306.5 347.5,-318.5 347.5,-318.5 347.5,-324.5 341.5,-330.5 335.5,-330.5 335.5,-330.5 264.5,-330.5 264.5,-330.5 258.5,-330.5 252.5,-324.5 252.5,-318.5 252.5,-318.5 252.5,-306.5 252.5,-306.5 252.5,-300.5 258.5,-294.5 264.5,-294.5"/>
|
||||
<text text-anchor="middle" x="300" y="-308.8" font-family="Arial" font-size="14.00" fill="#000000">system_port</text>
|
||||
</g>
|
||||
<!-- system_membus_slave -->
|
||||
<g id="node3" class="node"><title>system_membus_slave</title>
|
||||
<path fill="#586070" stroke="#000000" d="M325,-163.5C325,-163.5 355,-163.5 355,-163.5 361,-163.5 367,-169.5 367,-175.5 367,-175.5 367,-187.5 367,-187.5 367,-193.5 361,-199.5 355,-199.5 355,-199.5 325,-199.5 325,-199.5 319,-199.5 313,-193.5 313,-187.5 313,-187.5 313,-175.5 313,-175.5 313,-169.5 319,-163.5 325,-163.5"/>
|
||||
<text text-anchor="middle" x="340" y="-177.8" font-family="Arial" font-size="14.00" fill="#000000">slave</text>
|
||||
</g>
|
||||
<!-- system_system_port->system_membus_slave -->
|
||||
<g id="edge1" class="edge"><title>system_system_port->system_membus_slave</title>
|
||||
<path fill="none" stroke="black" d="M305.312,-294.37C312.036,-272.685 323.697,-235.078 331.625,-209.51"/>
|
||||
<polygon fill="black" stroke="black" points="335.048,-210.289 334.666,-199.701 328.362,-208.216 335.048,-210.289"/>
|
||||
</g>
|
||||
<!-- system_membus_master -->
|
||||
<g id="node2" class="node"><title>system_membus_master</title>
|
||||
<path fill="#586070" stroke="#000000" d="M397,-163.5C397,-163.5 433,-163.5 433,-163.5 439,-163.5 445,-169.5 445,-175.5 445,-175.5 445,-187.5 445,-187.5 445,-193.5 439,-199.5 433,-199.5 433,-199.5 397,-199.5 397,-199.5 391,-199.5 385,-193.5 385,-187.5 385,-187.5 385,-175.5 385,-175.5 385,-169.5 391,-163.5 397,-163.5"/>
|
||||
<text text-anchor="middle" x="415" y="-177.8" font-family="Arial" font-size="14.00" fill="#000000">master</text>
|
||||
</g>
|
||||
<!-- system_external_memory_port -->
|
||||
<g id="node4" class="node"><title>system_external_memory_port</title>
|
||||
<path fill="#94918b" stroke="#000000" d="M400,-32.5C400,-32.5 430,-32.5 430,-32.5 436,-32.5 442,-38.5 442,-44.5 442,-44.5 442,-56.5 442,-56.5 442,-62.5 436,-68.5 430,-68.5 430,-68.5 400,-68.5 400,-68.5 394,-68.5 388,-62.5 388,-56.5 388,-56.5 388,-44.5 388,-44.5 388,-38.5 394,-32.5 400,-32.5"/>
|
||||
<text text-anchor="middle" x="415" y="-46.8" font-family="Arial" font-size="14.00" fill="#000000">port</text>
|
||||
</g>
|
||||
<!-- system_membus_master->system_external_memory_port -->
|
||||
<g id="edge2" class="edge"><title>system_membus_master->system_external_memory_port</title>
|
||||
<path fill="none" stroke="black" d="M415,-163.37C415,-141.781 415,-104.412 415,-78.852"/>
|
||||
<polygon fill="black" stroke="black" points="418.5,-78.701 415,-68.7011 411.5,-78.7011 418.5,-78.701"/>
|
||||
</g>
|
||||
<!-- system_tol2bus_master -->
|
||||
<g id="node5" class="node"><title>system_tol2bus_master</title>
|
||||
<path fill="#586070" stroke="#000000" d="M431,-425.5C431,-425.5 467,-425.5 467,-425.5 473,-425.5 479,-431.5 479,-437.5 479,-437.5 479,-449.5 479,-449.5 479,-455.5 473,-461.5 467,-461.5 467,-461.5 431,-461.5 431,-461.5 425,-461.5 419,-455.5 419,-449.5 419,-449.5 419,-437.5 419,-437.5 419,-431.5 425,-425.5 431,-425.5"/>
|
||||
<text text-anchor="middle" x="449" y="-439.8" font-family="Arial" font-size="14.00" fill="#000000">master</text>
|
||||
</g>
|
||||
<!-- system_l2_cpu_side -->
|
||||
<g id="node8" class="node"><title>system_l2_cpu_side</title>
|
||||
<path fill="#94918b" stroke="#000000" d="M377.5,-294.5C377.5,-294.5 428.5,-294.5 428.5,-294.5 434.5,-294.5 440.5,-300.5 440.5,-306.5 440.5,-306.5 440.5,-318.5 440.5,-318.5 440.5,-324.5 434.5,-330.5 428.5,-330.5 428.5,-330.5 377.5,-330.5 377.5,-330.5 371.5,-330.5 365.5,-324.5 365.5,-318.5 365.5,-318.5 365.5,-306.5 365.5,-306.5 365.5,-300.5 371.5,-294.5 377.5,-294.5"/>
|
||||
<text text-anchor="middle" x="403" y="-308.8" font-family="Arial" font-size="14.00" fill="#000000">cpu_side</text>
|
||||
</g>
|
||||
<!-- system_tol2bus_master->system_l2_cpu_side -->
|
||||
<g id="edge3" class="edge"><title>system_tol2bus_master->system_l2_cpu_side</title>
|
||||
<path fill="none" stroke="black" d="M442.892,-425.37C435.124,-403.588 421.63,-365.744 412.51,-340.17"/>
|
||||
<polygon fill="black" stroke="black" points="415.789,-338.945 409.134,-330.701 409.196,-341.296 415.789,-338.945"/>
|
||||
</g>
|
||||
<!-- system_tol2bus_slave -->
|
||||
<g id="node6" class="node"><title>system_tol2bus_slave</title>
|
||||
<path fill="#586070" stroke="#000000" d="M359,-425.5C359,-425.5 389,-425.5 389,-425.5 395,-425.5 401,-431.5 401,-437.5 401,-437.5 401,-449.5 401,-449.5 401,-455.5 395,-461.5 389,-461.5 389,-461.5 359,-461.5 359,-461.5 353,-461.5 347,-455.5 347,-449.5 347,-449.5 347,-437.5 347,-437.5 347,-431.5 353,-425.5 359,-425.5"/>
|
||||
<text text-anchor="middle" x="374" y="-439.8" font-family="Arial" font-size="14.00" fill="#000000">slave</text>
|
||||
</g>
|
||||
<!-- system_l2_mem_side -->
|
||||
<g id="node7" class="node"><title>system_l2_mem_side</title>
|
||||
<path fill="#94918b" stroke="#000000" d="M470,-294.5C470,-294.5 530,-294.5 530,-294.5 536,-294.5 542,-300.5 542,-306.5 542,-306.5 542,-318.5 542,-318.5 542,-324.5 536,-330.5 530,-330.5 530,-330.5 470,-330.5 470,-330.5 464,-330.5 458,-324.5 458,-318.5 458,-318.5 458,-306.5 458,-306.5 458,-300.5 464,-294.5 470,-294.5"/>
|
||||
<text text-anchor="middle" x="500" y="-308.8" font-family="Arial" font-size="14.00" fill="#000000">mem_side</text>
|
||||
</g>
|
||||
<!-- system_l2_mem_side->system_membus_slave -->
|
||||
<g id="edge4" class="edge"><title>system_l2_mem_side->system_membus_slave</title>
|
||||
<path fill="none" stroke="black" d="M466.462,-294.374C430.995,-276.175 379.636,-249.529 376,-246 365.309,-235.623 356.845,-221.384 350.817,-209.019"/>
|
||||
<polygon fill="black" stroke="black" points="353.856,-207.248 346.509,-199.614 347.491,-210.163 353.856,-207.248"/>
|
||||
</g>
|
||||
<!-- system_cpu_icache_port -->
|
||||
<g id="node9" class="node"><title>system_cpu_icache_port</title>
|
||||
<path fill="#959ead" stroke="#000000" d="M158.5,-687.5C158.5,-687.5 225.5,-687.5 225.5,-687.5 231.5,-687.5 237.5,-693.5 237.5,-699.5 237.5,-699.5 237.5,-711.5 237.5,-711.5 237.5,-717.5 231.5,-723.5 225.5,-723.5 225.5,-723.5 158.5,-723.5 158.5,-723.5 152.5,-723.5 146.5,-717.5 146.5,-711.5 146.5,-711.5 146.5,-699.5 146.5,-699.5 146.5,-693.5 152.5,-687.5 158.5,-687.5"/>
|
||||
<text text-anchor="middle" x="192" y="-701.8" font-family="Arial" font-size="14.00" fill="#000000">icache_port</text>
|
||||
</g>
|
||||
<!-- system_cpu_icache_cpu_side -->
|
||||
<g id="node14" class="node"><title>system_cpu_icache_cpu_side</title>
|
||||
<path fill="#94918b" stroke="#000000" d="M251.5,-556.5C251.5,-556.5 302.5,-556.5 302.5,-556.5 308.5,-556.5 314.5,-562.5 314.5,-568.5 314.5,-568.5 314.5,-580.5 314.5,-580.5 314.5,-586.5 308.5,-592.5 302.5,-592.5 302.5,-592.5 251.5,-592.5 251.5,-592.5 245.5,-592.5 239.5,-586.5 239.5,-580.5 239.5,-580.5 239.5,-568.5 239.5,-568.5 239.5,-562.5 245.5,-556.5 251.5,-556.5"/>
|
||||
<text text-anchor="middle" x="277" y="-570.8" font-family="Arial" font-size="14.00" fill="#000000">cpu_side</text>
|
||||
</g>
|
||||
<!-- system_cpu_icache_port->system_cpu_icache_cpu_side -->
|
||||
<g id="edge5" class="edge"><title>system_cpu_icache_port->system_cpu_icache_cpu_side</title>
|
||||
<path fill="none" stroke="black" d="M203.287,-687.37C217.83,-665.299 243.24,-626.736 260.093,-601.158"/>
|
||||
<polygon fill="black" stroke="black" points="263.086,-602.977 265.666,-592.701 257.241,-599.126 263.086,-602.977"/>
|
||||
</g>
|
||||
<!-- system_cpu_dcache_port -->
|
||||
<g id="node10" class="node"><title>system_cpu_dcache_port</title>
|
||||
<path fill="#959ead" stroke="#000000" d="M44,-687.5C44,-687.5 116,-687.5 116,-687.5 122,-687.5 128,-693.5 128,-699.5 128,-699.5 128,-711.5 128,-711.5 128,-717.5 122,-723.5 116,-723.5 116,-723.5 44,-723.5 44,-723.5 38,-723.5 32,-717.5 32,-711.5 32,-711.5 32,-699.5 32,-699.5 32,-693.5 38,-687.5 44,-687.5"/>
|
||||
<text text-anchor="middle" x="80" y="-701.8" font-family="Arial" font-size="14.00" fill="#000000">dcache_port</text>
|
||||
</g>
|
||||
<!-- system_cpu_dcache_cpu_side -->
|
||||
<g id="node16" class="node"><title>system_cpu_dcache_cpu_side</title>
|
||||
<path fill="#94918b" stroke="#000000" d="M51.5,-556.5C51.5,-556.5 102.5,-556.5 102.5,-556.5 108.5,-556.5 114.5,-562.5 114.5,-568.5 114.5,-568.5 114.5,-580.5 114.5,-580.5 114.5,-586.5 108.5,-592.5 102.5,-592.5 102.5,-592.5 51.5,-592.5 51.5,-592.5 45.5,-592.5 39.5,-586.5 39.5,-580.5 39.5,-580.5 39.5,-568.5 39.5,-568.5 39.5,-562.5 45.5,-556.5 51.5,-556.5"/>
|
||||
<text text-anchor="middle" x="77" y="-570.8" font-family="Arial" font-size="14.00" fill="#000000">cpu_side</text>
|
||||
</g>
|
||||
<!-- system_cpu_dcache_port->system_cpu_dcache_cpu_side -->
|
||||
<g id="edge6" class="edge"><title>system_cpu_dcache_port->system_cpu_dcache_cpu_side</title>
|
||||
<path fill="none" stroke="black" d="M79.6016,-687.37C79.0996,-665.781 78.2305,-628.412 77.6361,-602.852"/>
|
||||
<polygon fill="black" stroke="black" points="81.1317,-602.617 77.4,-592.701 74.1336,-602.78 81.1317,-602.617"/>
|
||||
</g>
|
||||
<!-- system_cpu_dtb_walker_port -->
|
||||
<g id="node11" class="node"><title>system_cpu_dtb_walker_port</title>
|
||||
<path fill="#7f7c77" stroke="#000000" d="M332,-687.5C332,-687.5 362,-687.5 362,-687.5 368,-687.5 374,-693.5 374,-699.5 374,-699.5 374,-711.5 374,-711.5 374,-717.5 368,-723.5 362,-723.5 362,-723.5 332,-723.5 332,-723.5 326,-723.5 320,-717.5 320,-711.5 320,-711.5 320,-699.5 320,-699.5 320,-693.5 326,-687.5 332,-687.5"/>
|
||||
<text text-anchor="middle" x="347" y="-701.8" font-family="Arial" font-size="14.00" fill="#000000">port</text>
|
||||
</g>
|
||||
<!-- system_cpu_dtb_walker_port->system_tol2bus_slave -->
|
||||
<g id="edge7" class="edge"><title>system_cpu_dtb_walker_port->system_tol2bus_slave</title>
|
||||
<path fill="none" stroke="black" d="M372.891,-687.286C394.271,-672.443 422.04,-651.485 428,-639 446.956,-599.293 439.197,-582.551 428,-540 427.873,-539.519 404.902,-498.972 388.965,-470.873"/>
|
||||
<polygon fill="black" stroke="black" points="391.851,-468.867 383.873,-461.896 385.763,-472.321 391.851,-468.867"/>
|
||||
</g>
|
||||
<!-- system_cpu_itb_walker_port -->
|
||||
<g id="node12" class="node"><title>system_cpu_itb_walker_port</title>
|
||||
<path fill="#7f7c77" stroke="#000000" d="M440,-687.5C440,-687.5 470,-687.5 470,-687.5 476,-687.5 482,-693.5 482,-699.5 482,-699.5 482,-711.5 482,-711.5 482,-717.5 476,-723.5 470,-723.5 470,-723.5 440,-723.5 440,-723.5 434,-723.5 428,-717.5 428,-711.5 428,-711.5 428,-699.5 428,-699.5 428,-693.5 434,-687.5 440,-687.5"/>
|
||||
<text text-anchor="middle" x="455" y="-701.8" font-family="Arial" font-size="14.00" fill="#000000">port</text>
|
||||
</g>
|
||||
<!-- system_cpu_itb_walker_port->system_tol2bus_slave -->
|
||||
<g id="edge8" class="edge"><title>system_cpu_itb_walker_port->system_tol2bus_slave</title>
|
||||
<path fill="none" stroke="black" d="M456.757,-687.277C459.189,-656.32 461.061,-589.855 439,-540 431.233,-522.448 421.246,-523.554 410,-508 401.505,-496.25 393.412,-482.319 387.059,-470.503"/>
|
||||
<polygon fill="black" stroke="black" points="390.112,-468.788 382.363,-461.563 383.915,-472.044 390.112,-468.788"/>
|
||||
</g>
|
||||
<!-- system_cpu_icache_mem_side -->
|
||||
<g id="node13" class="node"><title>system_cpu_icache_mem_side</title>
|
||||
<path fill="#94918b" stroke="#000000" d="M344,-556.5C344,-556.5 404,-556.5 404,-556.5 410,-556.5 416,-562.5 416,-568.5 416,-568.5 416,-580.5 416,-580.5 416,-586.5 410,-592.5 404,-592.5 404,-592.5 344,-592.5 344,-592.5 338,-592.5 332,-586.5 332,-580.5 332,-580.5 332,-568.5 332,-568.5 332,-562.5 338,-556.5 344,-556.5"/>
|
||||
<text text-anchor="middle" x="374" y="-570.8" font-family="Arial" font-size="14.00" fill="#000000">mem_side</text>
|
||||
</g>
|
||||
<!-- system_cpu_icache_mem_side->system_tol2bus_slave -->
|
||||
<g id="edge9" class="edge"><title>system_cpu_icache_mem_side->system_tol2bus_slave</title>
|
||||
<path fill="none" stroke="black" d="M374,-556.37C374,-534.781 374,-497.412 374,-471.852"/>
|
||||
<polygon fill="black" stroke="black" points="377.5,-471.701 374,-461.701 370.5,-471.701 377.5,-471.701"/>
|
||||
</g>
|
||||
<!-- system_cpu_dcache_mem_side -->
|
||||
<g id="node15" class="node"><title>system_cpu_dcache_mem_side</title>
|
||||
<path fill="#94918b" stroke="#000000" d="M144,-556.5C144,-556.5 204,-556.5 204,-556.5 210,-556.5 216,-562.5 216,-568.5 216,-568.5 216,-580.5 216,-580.5 216,-586.5 210,-592.5 204,-592.5 204,-592.5 144,-592.5 144,-592.5 138,-592.5 132,-586.5 132,-580.5 132,-580.5 132,-568.5 132,-568.5 132,-562.5 138,-556.5 144,-556.5"/>
|
||||
<text text-anchor="middle" x="174" y="-570.8" font-family="Arial" font-size="14.00" fill="#000000">mem_side</text>
|
||||
</g>
|
||||
<!-- system_cpu_dcache_mem_side->system_tol2bus_slave -->
|
||||
<g id="edge10" class="edge"><title>system_cpu_dcache_mem_side->system_tol2bus_slave</title>
|
||||
<path fill="none" stroke="black" d="M200.558,-556.37C236.122,-533.432 299.303,-492.68 338.799,-467.205"/>
|
||||
<polygon fill="black" stroke="black" points="340.825,-470.063 347.332,-461.701 337.031,-464.18 340.825,-470.063"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 28 KiB |
BIN
DRAMSys/gem5/boot_linux/boot_emm.arm
Normal file
BIN
DRAMSys/gem5/boot_linux/boot_emm.arm
Normal file
Binary file not shown.
Binary file not shown.
1636
DRAMSys/gem5/configs/boot_linux.ini
Normal file
1636
DRAMSys/gem5/configs/boot_linux.ini
Normal file
File diff suppressed because it is too large
Load Diff
553
DRAMSys/gem5/configs/bubblesort.ini
Normal file
553
DRAMSys/gem5/configs/bubblesort.ini
Normal file
@@ -0,0 +1,553 @@
|
||||
[root]
|
||||
type=Root
|
||||
children=system
|
||||
eventq_index=0
|
||||
full_system=false
|
||||
sim_quantum=0
|
||||
time_sync_enable=false
|
||||
time_sync_period=100000000000
|
||||
time_sync_spin_threshold=100000000
|
||||
|
||||
[system]
|
||||
type=System
|
||||
children=clk_domain cpu cpu_clk_domain cpu_voltage_domain dvfs_handler external_memory l2 membus physmem tol2bus voltage_domain
|
||||
boot_osflags=a
|
||||
cache_line_size=64
|
||||
clk_domain=system.clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
exit_on_work_items=false
|
||||
init_param=0
|
||||
kernel=
|
||||
kernel_addr_check=false
|
||||
kernel_extras=
|
||||
load_addr_mask=18446744073709551615
|
||||
load_offset=0
|
||||
mem_mode=timing
|
||||
mem_ranges=0:536870911:0:0:0:0
|
||||
memories=system.physmem
|
||||
mmap_using_noreserve=false
|
||||
multi_thread=false
|
||||
num_work_ids=16
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
readfile=
|
||||
symbolfile=
|
||||
thermal_components=
|
||||
thermal_model=Null
|
||||
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.membus.slave[0]
|
||||
|
||||
[system.clk_domain]
|
||||
type=SrcClockDomain
|
||||
clock=1000
|
||||
domain_id=-1
|
||||
eventq_index=0
|
||||
init_perf_level=0
|
||||
voltage_domain=system.voltage_domain
|
||||
|
||||
[system.cpu]
|
||||
type=TimingSimpleCPU
|
||||
children=dcache dstage2_mmu dtb icache interrupts isa istage2_mmu itb tracer workload
|
||||
branchPred=Null
|
||||
checker=Null
|
||||
clk_domain=system.cpu_clk_domain
|
||||
cpu_id=0
|
||||
default_p_state=UNDEFINED
|
||||
do_checkpoint_insts=true
|
||||
do_quiesce=true
|
||||
do_statistics_insts=true
|
||||
dstage2_mmu=system.cpu.dstage2_mmu
|
||||
dtb=system.cpu.dtb
|
||||
eventq_index=0
|
||||
function_trace=false
|
||||
function_trace_start=0
|
||||
interrupts=system.cpu.interrupts
|
||||
isa=system.cpu.isa
|
||||
istage2_mmu=system.cpu.istage2_mmu
|
||||
itb=system.cpu.itb
|
||||
max_insts_all_threads=0
|
||||
max_insts_any_thread=0
|
||||
max_loads_all_threads=0
|
||||
max_loads_any_thread=0
|
||||
numThreads=1
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_gating_on_idle=false
|
||||
power_model=
|
||||
profile=0
|
||||
progress_interval=0
|
||||
pwr_gating_latency=300
|
||||
simpoint_start_insts=
|
||||
socket_id=0
|
||||
switched_out=false
|
||||
syscallRetryLatency=10000
|
||||
system=system
|
||||
tracer=system.cpu.tracer
|
||||
wait_for_remote_gdb=false
|
||||
workload=system.cpu.workload
|
||||
dcache_port=system.cpu.dcache.cpu_side
|
||||
icache_port=system.cpu.icache.cpu_side
|
||||
|
||||
[system.cpu.dcache]
|
||||
type=Cache
|
||||
children=replacement_policy tags
|
||||
addr_ranges=0:18446744073709551615:0:0:0:0
|
||||
assoc=2
|
||||
clk_domain=system.cpu_clk_domain
|
||||
clusivity=mostly_incl
|
||||
data_latency=2
|
||||
default_p_state=UNDEFINED
|
||||
demand_mshr_reserve=1
|
||||
eventq_index=0
|
||||
is_read_only=false
|
||||
max_miss_count=0
|
||||
mshrs=4
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
prefetch_on_access=false
|
||||
prefetcher=Null
|
||||
replacement_policy=system.cpu.dcache.replacement_policy
|
||||
response_latency=2
|
||||
sequential_access=false
|
||||
size=65536
|
||||
system=system
|
||||
tag_latency=2
|
||||
tags=system.cpu.dcache.tags
|
||||
tgts_per_mshr=20
|
||||
warmup_percentage=0
|
||||
write_buffers=8
|
||||
writeback_clean=false
|
||||
cpu_side=system.cpu.dcache_port
|
||||
mem_side=system.tol2bus.slave[1]
|
||||
|
||||
[system.cpu.dcache.replacement_policy]
|
||||
type=LRURP
|
||||
eventq_index=0
|
||||
|
||||
[system.cpu.dcache.tags]
|
||||
type=BaseSetAssoc
|
||||
assoc=2
|
||||
block_size=64
|
||||
clk_domain=system.cpu_clk_domain
|
||||
data_latency=2
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
replacement_policy=system.cpu.dcache.replacement_policy
|
||||
sequential_access=false
|
||||
size=65536
|
||||
tag_latency=2
|
||||
warmup_percentage=0
|
||||
|
||||
[system.cpu.dstage2_mmu]
|
||||
type=ArmStage2MMU
|
||||
children=stage2_tlb
|
||||
eventq_index=0
|
||||
stage2_tlb=system.cpu.dstage2_mmu.stage2_tlb
|
||||
sys=system
|
||||
tlb=system.cpu.dtb
|
||||
|
||||
[system.cpu.dstage2_mmu.stage2_tlb]
|
||||
type=ArmTLB
|
||||
children=walker
|
||||
eventq_index=0
|
||||
is_stage2=true
|
||||
size=32
|
||||
sys=system
|
||||
walker=system.cpu.dstage2_mmu.stage2_tlb.walker
|
||||
|
||||
[system.cpu.dstage2_mmu.stage2_tlb.walker]
|
||||
type=ArmTableWalker
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
is_stage2=true
|
||||
num_squash_per_cycle=2
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
sys=system
|
||||
|
||||
[system.cpu.dtb]
|
||||
type=ArmTLB
|
||||
children=walker
|
||||
eventq_index=0
|
||||
is_stage2=false
|
||||
size=64
|
||||
sys=system
|
||||
walker=system.cpu.dtb.walker
|
||||
|
||||
[system.cpu.dtb.walker]
|
||||
type=ArmTableWalker
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
is_stage2=false
|
||||
num_squash_per_cycle=2
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
sys=system
|
||||
port=system.tol2bus.slave[3]
|
||||
|
||||
[system.cpu.icache]
|
||||
type=Cache
|
||||
children=replacement_policy tags
|
||||
addr_ranges=0:18446744073709551615:0:0:0:0
|
||||
assoc=2
|
||||
clk_domain=system.cpu_clk_domain
|
||||
clusivity=mostly_incl
|
||||
data_latency=2
|
||||
default_p_state=UNDEFINED
|
||||
demand_mshr_reserve=1
|
||||
eventq_index=0
|
||||
is_read_only=true
|
||||
max_miss_count=0
|
||||
mshrs=4
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
prefetch_on_access=false
|
||||
prefetcher=Null
|
||||
replacement_policy=system.cpu.icache.replacement_policy
|
||||
response_latency=2
|
||||
sequential_access=false
|
||||
size=32768
|
||||
system=system
|
||||
tag_latency=2
|
||||
tags=system.cpu.icache.tags
|
||||
tgts_per_mshr=20
|
||||
warmup_percentage=0
|
||||
write_buffers=8
|
||||
writeback_clean=true
|
||||
cpu_side=system.cpu.icache_port
|
||||
mem_side=system.tol2bus.slave[0]
|
||||
|
||||
[system.cpu.icache.replacement_policy]
|
||||
type=LRURP
|
||||
eventq_index=0
|
||||
|
||||
[system.cpu.icache.tags]
|
||||
type=BaseSetAssoc
|
||||
assoc=2
|
||||
block_size=64
|
||||
clk_domain=system.cpu_clk_domain
|
||||
data_latency=2
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
replacement_policy=system.cpu.icache.replacement_policy
|
||||
sequential_access=false
|
||||
size=32768
|
||||
tag_latency=2
|
||||
warmup_percentage=0
|
||||
|
||||
[system.cpu.interrupts]
|
||||
type=ArmInterrupts
|
||||
eventq_index=0
|
||||
|
||||
[system.cpu.isa]
|
||||
type=ArmISA
|
||||
decoderFlavour=Generic
|
||||
eventq_index=0
|
||||
fpsid=1090793632
|
||||
id_aa64afr0_el1=0
|
||||
id_aa64afr1_el1=0
|
||||
id_aa64dfr0_el1=1052678
|
||||
id_aa64dfr1_el1=0
|
||||
id_aa64isar0_el1=0
|
||||
id_aa64isar1_el1=0
|
||||
id_aa64mmfr0_el1=15728642
|
||||
id_aa64mmfr1_el1=0
|
||||
id_isar0=34607377
|
||||
id_isar1=34677009
|
||||
id_isar2=555950401
|
||||
id_isar3=17899825
|
||||
id_isar4=268501314
|
||||
id_isar5=0
|
||||
id_mmfr0=270536963
|
||||
id_mmfr1=0
|
||||
id_mmfr2=19070976
|
||||
id_mmfr3=34611729
|
||||
impdef_nop=false
|
||||
midr=1091551472
|
||||
pmu=Null
|
||||
system=system
|
||||
vecRegRenameMode=Full
|
||||
|
||||
[system.cpu.istage2_mmu]
|
||||
type=ArmStage2MMU
|
||||
children=stage2_tlb
|
||||
eventq_index=0
|
||||
stage2_tlb=system.cpu.istage2_mmu.stage2_tlb
|
||||
sys=system
|
||||
tlb=system.cpu.itb
|
||||
|
||||
[system.cpu.istage2_mmu.stage2_tlb]
|
||||
type=ArmTLB
|
||||
children=walker
|
||||
eventq_index=0
|
||||
is_stage2=true
|
||||
size=32
|
||||
sys=system
|
||||
walker=system.cpu.istage2_mmu.stage2_tlb.walker
|
||||
|
||||
[system.cpu.istage2_mmu.stage2_tlb.walker]
|
||||
type=ArmTableWalker
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
is_stage2=true
|
||||
num_squash_per_cycle=2
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
sys=system
|
||||
|
||||
[system.cpu.itb]
|
||||
type=ArmTLB
|
||||
children=walker
|
||||
eventq_index=0
|
||||
is_stage2=false
|
||||
size=64
|
||||
sys=system
|
||||
walker=system.cpu.itb.walker
|
||||
|
||||
[system.cpu.itb.walker]
|
||||
type=ArmTableWalker
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
is_stage2=false
|
||||
num_squash_per_cycle=2
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
sys=system
|
||||
port=system.tol2bus.slave[2]
|
||||
|
||||
[system.cpu.tracer]
|
||||
type=ExeTracer
|
||||
eventq_index=0
|
||||
|
||||
[system.cpu.workload]
|
||||
type=Process
|
||||
cmd=../../DRAMSys/gem5/gem5_se/Bubblesort
|
||||
cwd=
|
||||
drivers=
|
||||
egid=100
|
||||
env=
|
||||
errout=cerr
|
||||
euid=100
|
||||
eventq_index=0
|
||||
executable=../../DRAMSys/gem5/gem5_se/Bubblesort
|
||||
gid=100
|
||||
input=cin
|
||||
kvmInSE=false
|
||||
maxStackSize=67108864
|
||||
output=cout
|
||||
pgid=100
|
||||
pid=100
|
||||
ppid=0
|
||||
simpoint=0
|
||||
system=system
|
||||
uid=100
|
||||
useArchPT=false
|
||||
|
||||
[system.cpu_clk_domain]
|
||||
type=SrcClockDomain
|
||||
clock=500
|
||||
domain_id=-1
|
||||
eventq_index=0
|
||||
init_perf_level=0
|
||||
voltage_domain=system.cpu_voltage_domain
|
||||
|
||||
[system.cpu_voltage_domain]
|
||||
type=VoltageDomain
|
||||
eventq_index=0
|
||||
voltage=1.0
|
||||
|
||||
[system.dvfs_handler]
|
||||
type=DVFSHandler
|
||||
domains=
|
||||
enable=false
|
||||
eventq_index=0
|
||||
sys_clk_domain=system.clk_domain
|
||||
transition_latency=100000000
|
||||
|
||||
[system.external_memory]
|
||||
type=ExternalSlave
|
||||
addr_ranges=0:536870911:0:0:0:0
|
||||
clk_domain=system.clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
port_data=transactor
|
||||
port_type=tlm_slave
|
||||
power_model=
|
||||
port=system.membus.master[0]
|
||||
|
||||
[system.l2]
|
||||
type=Cache
|
||||
children=replacement_policy tags
|
||||
addr_ranges=0:18446744073709551615:0:0:0:0
|
||||
assoc=8
|
||||
clk_domain=system.cpu_clk_domain
|
||||
clusivity=mostly_incl
|
||||
data_latency=20
|
||||
default_p_state=UNDEFINED
|
||||
demand_mshr_reserve=1
|
||||
eventq_index=0
|
||||
is_read_only=false
|
||||
max_miss_count=0
|
||||
mshrs=20
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
prefetch_on_access=false
|
||||
prefetcher=Null
|
||||
replacement_policy=system.l2.replacement_policy
|
||||
response_latency=20
|
||||
sequential_access=false
|
||||
size=2097152
|
||||
system=system
|
||||
tag_latency=20
|
||||
tags=system.l2.tags
|
||||
tgts_per_mshr=12
|
||||
warmup_percentage=0
|
||||
write_buffers=8
|
||||
writeback_clean=false
|
||||
cpu_side=system.tol2bus.master[0]
|
||||
mem_side=system.membus.slave[1]
|
||||
|
||||
[system.l2.replacement_policy]
|
||||
type=LRURP
|
||||
eventq_index=0
|
||||
|
||||
[system.l2.tags]
|
||||
type=BaseSetAssoc
|
||||
assoc=8
|
||||
block_size=64
|
||||
clk_domain=system.cpu_clk_domain
|
||||
data_latency=20
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
replacement_policy=system.l2.replacement_policy
|
||||
sequential_access=false
|
||||
size=2097152
|
||||
tag_latency=20
|
||||
warmup_percentage=0
|
||||
|
||||
[system.membus]
|
||||
type=CoherentXBar
|
||||
children=snoop_filter
|
||||
clk_domain=system.clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
forward_latency=4
|
||||
frontend_latency=3
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
point_of_coherency=true
|
||||
point_of_unification=true
|
||||
power_model=
|
||||
response_latency=2
|
||||
snoop_filter=system.membus.snoop_filter
|
||||
snoop_response_latency=4
|
||||
system=system
|
||||
use_default_range=false
|
||||
width=16
|
||||
master=system.external_memory.port
|
||||
slave=system.system_port system.l2.mem_side
|
||||
|
||||
[system.membus.snoop_filter]
|
||||
type=SnoopFilter
|
||||
eventq_index=0
|
||||
lookup_latency=1
|
||||
max_capacity=8388608
|
||||
system=system
|
||||
|
||||
[system.physmem]
|
||||
type=SimpleMemory
|
||||
bandwidth=73.000000
|
||||
clk_domain=system.clk_domain
|
||||
conf_table_reported=true
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
in_addr_map=true
|
||||
kvm_map=true
|
||||
latency=30000
|
||||
latency_var=0
|
||||
null=false
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
range=0:134217727:0:0:0:0
|
||||
|
||||
[system.tol2bus]
|
||||
type=CoherentXBar
|
||||
children=snoop_filter
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
forward_latency=0
|
||||
frontend_latency=1
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
point_of_coherency=false
|
||||
point_of_unification=true
|
||||
power_model=
|
||||
response_latency=1
|
||||
snoop_filter=system.tol2bus.snoop_filter
|
||||
snoop_response_latency=1
|
||||
system=system
|
||||
use_default_range=false
|
||||
width=32
|
||||
master=system.l2.cpu_side
|
||||
slave=system.cpu.icache.mem_side system.cpu.dcache.mem_side system.cpu.itb.walker.port system.cpu.dtb.walker.port
|
||||
|
||||
[system.tol2bus.snoop_filter]
|
||||
type=SnoopFilter
|
||||
eventq_index=0
|
||||
lookup_latency=0
|
||||
max_capacity=8388608
|
||||
system=system
|
||||
|
||||
[system.voltage_domain]
|
||||
type=VoltageDomain
|
||||
eventq_index=0
|
||||
voltage=1.0
|
||||
|
||||
553
DRAMSys/gem5/configs/hello.ini
Normal file
553
DRAMSys/gem5/configs/hello.ini
Normal file
@@ -0,0 +1,553 @@
|
||||
[root]
|
||||
type=Root
|
||||
children=system
|
||||
eventq_index=0
|
||||
full_system=false
|
||||
sim_quantum=0
|
||||
time_sync_enable=false
|
||||
time_sync_period=100000000000
|
||||
time_sync_spin_threshold=100000000
|
||||
|
||||
[system]
|
||||
type=System
|
||||
children=clk_domain cpu cpu_clk_domain cpu_voltage_domain dvfs_handler external_memory l2 membus physmem tol2bus voltage_domain
|
||||
boot_osflags=a
|
||||
cache_line_size=64
|
||||
clk_domain=system.clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
exit_on_work_items=false
|
||||
init_param=0
|
||||
kernel=
|
||||
kernel_addr_check=false
|
||||
kernel_extras=
|
||||
load_addr_mask=18446744073709551615
|
||||
load_offset=0
|
||||
mem_mode=timing
|
||||
mem_ranges=0:536870911:0:0:0:0
|
||||
memories=system.physmem
|
||||
mmap_using_noreserve=false
|
||||
multi_thread=false
|
||||
num_work_ids=16
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
readfile=
|
||||
symbolfile=
|
||||
thermal_components=
|
||||
thermal_model=Null
|
||||
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.membus.slave[0]
|
||||
|
||||
[system.clk_domain]
|
||||
type=SrcClockDomain
|
||||
clock=1000
|
||||
domain_id=-1
|
||||
eventq_index=0
|
||||
init_perf_level=0
|
||||
voltage_domain=system.voltage_domain
|
||||
|
||||
[system.cpu]
|
||||
type=TimingSimpleCPU
|
||||
children=dcache dstage2_mmu dtb icache interrupts isa istage2_mmu itb tracer workload
|
||||
branchPred=Null
|
||||
checker=Null
|
||||
clk_domain=system.cpu_clk_domain
|
||||
cpu_id=0
|
||||
default_p_state=UNDEFINED
|
||||
do_checkpoint_insts=true
|
||||
do_quiesce=true
|
||||
do_statistics_insts=true
|
||||
dstage2_mmu=system.cpu.dstage2_mmu
|
||||
dtb=system.cpu.dtb
|
||||
eventq_index=0
|
||||
function_trace=false
|
||||
function_trace_start=0
|
||||
interrupts=system.cpu.interrupts
|
||||
isa=system.cpu.isa
|
||||
istage2_mmu=system.cpu.istage2_mmu
|
||||
itb=system.cpu.itb
|
||||
max_insts_all_threads=0
|
||||
max_insts_any_thread=0
|
||||
max_loads_all_threads=0
|
||||
max_loads_any_thread=0
|
||||
numThreads=1
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_gating_on_idle=false
|
||||
power_model=
|
||||
profile=0
|
||||
progress_interval=0
|
||||
pwr_gating_latency=300
|
||||
simpoint_start_insts=
|
||||
socket_id=0
|
||||
switched_out=false
|
||||
syscallRetryLatency=10000
|
||||
system=system
|
||||
tracer=system.cpu.tracer
|
||||
wait_for_remote_gdb=false
|
||||
workload=system.cpu.workload
|
||||
dcache_port=system.cpu.dcache.cpu_side
|
||||
icache_port=system.cpu.icache.cpu_side
|
||||
|
||||
[system.cpu.dcache]
|
||||
type=Cache
|
||||
children=replacement_policy tags
|
||||
addr_ranges=0:18446744073709551615:0:0:0:0
|
||||
assoc=2
|
||||
clk_domain=system.cpu_clk_domain
|
||||
clusivity=mostly_incl
|
||||
data_latency=2
|
||||
default_p_state=UNDEFINED
|
||||
demand_mshr_reserve=1
|
||||
eventq_index=0
|
||||
is_read_only=false
|
||||
max_miss_count=0
|
||||
mshrs=4
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
prefetch_on_access=false
|
||||
prefetcher=Null
|
||||
replacement_policy=system.cpu.dcache.replacement_policy
|
||||
response_latency=2
|
||||
sequential_access=false
|
||||
size=65536
|
||||
system=system
|
||||
tag_latency=2
|
||||
tags=system.cpu.dcache.tags
|
||||
tgts_per_mshr=20
|
||||
warmup_percentage=0
|
||||
write_buffers=8
|
||||
writeback_clean=false
|
||||
cpu_side=system.cpu.dcache_port
|
||||
mem_side=system.tol2bus.slave[1]
|
||||
|
||||
[system.cpu.dcache.replacement_policy]
|
||||
type=LRURP
|
||||
eventq_index=0
|
||||
|
||||
[system.cpu.dcache.tags]
|
||||
type=BaseSetAssoc
|
||||
assoc=2
|
||||
block_size=64
|
||||
clk_domain=system.cpu_clk_domain
|
||||
data_latency=2
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
replacement_policy=system.cpu.dcache.replacement_policy
|
||||
sequential_access=false
|
||||
size=65536
|
||||
tag_latency=2
|
||||
warmup_percentage=0
|
||||
|
||||
[system.cpu.dstage2_mmu]
|
||||
type=ArmStage2MMU
|
||||
children=stage2_tlb
|
||||
eventq_index=0
|
||||
stage2_tlb=system.cpu.dstage2_mmu.stage2_tlb
|
||||
sys=system
|
||||
tlb=system.cpu.dtb
|
||||
|
||||
[system.cpu.dstage2_mmu.stage2_tlb]
|
||||
type=ArmTLB
|
||||
children=walker
|
||||
eventq_index=0
|
||||
is_stage2=true
|
||||
size=32
|
||||
sys=system
|
||||
walker=system.cpu.dstage2_mmu.stage2_tlb.walker
|
||||
|
||||
[system.cpu.dstage2_mmu.stage2_tlb.walker]
|
||||
type=ArmTableWalker
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
is_stage2=true
|
||||
num_squash_per_cycle=2
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
sys=system
|
||||
|
||||
[system.cpu.dtb]
|
||||
type=ArmTLB
|
||||
children=walker
|
||||
eventq_index=0
|
||||
is_stage2=false
|
||||
size=64
|
||||
sys=system
|
||||
walker=system.cpu.dtb.walker
|
||||
|
||||
[system.cpu.dtb.walker]
|
||||
type=ArmTableWalker
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
is_stage2=false
|
||||
num_squash_per_cycle=2
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
sys=system
|
||||
port=system.tol2bus.slave[3]
|
||||
|
||||
[system.cpu.icache]
|
||||
type=Cache
|
||||
children=replacement_policy tags
|
||||
addr_ranges=0:18446744073709551615:0:0:0:0
|
||||
assoc=2
|
||||
clk_domain=system.cpu_clk_domain
|
||||
clusivity=mostly_incl
|
||||
data_latency=2
|
||||
default_p_state=UNDEFINED
|
||||
demand_mshr_reserve=1
|
||||
eventq_index=0
|
||||
is_read_only=true
|
||||
max_miss_count=0
|
||||
mshrs=4
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
prefetch_on_access=false
|
||||
prefetcher=Null
|
||||
replacement_policy=system.cpu.icache.replacement_policy
|
||||
response_latency=2
|
||||
sequential_access=false
|
||||
size=32768
|
||||
system=system
|
||||
tag_latency=2
|
||||
tags=system.cpu.icache.tags
|
||||
tgts_per_mshr=20
|
||||
warmup_percentage=0
|
||||
write_buffers=8
|
||||
writeback_clean=true
|
||||
cpu_side=system.cpu.icache_port
|
||||
mem_side=system.tol2bus.slave[0]
|
||||
|
||||
[system.cpu.icache.replacement_policy]
|
||||
type=LRURP
|
||||
eventq_index=0
|
||||
|
||||
[system.cpu.icache.tags]
|
||||
type=BaseSetAssoc
|
||||
assoc=2
|
||||
block_size=64
|
||||
clk_domain=system.cpu_clk_domain
|
||||
data_latency=2
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
replacement_policy=system.cpu.icache.replacement_policy
|
||||
sequential_access=false
|
||||
size=32768
|
||||
tag_latency=2
|
||||
warmup_percentage=0
|
||||
|
||||
[system.cpu.interrupts]
|
||||
type=ArmInterrupts
|
||||
eventq_index=0
|
||||
|
||||
[system.cpu.isa]
|
||||
type=ArmISA
|
||||
decoderFlavour=Generic
|
||||
eventq_index=0
|
||||
fpsid=1090793632
|
||||
id_aa64afr0_el1=0
|
||||
id_aa64afr1_el1=0
|
||||
id_aa64dfr0_el1=1052678
|
||||
id_aa64dfr1_el1=0
|
||||
id_aa64isar0_el1=0
|
||||
id_aa64isar1_el1=0
|
||||
id_aa64mmfr0_el1=15728642
|
||||
id_aa64mmfr1_el1=0
|
||||
id_isar0=34607377
|
||||
id_isar1=34677009
|
||||
id_isar2=555950401
|
||||
id_isar3=17899825
|
||||
id_isar4=268501314
|
||||
id_isar5=0
|
||||
id_mmfr0=270536963
|
||||
id_mmfr1=0
|
||||
id_mmfr2=19070976
|
||||
id_mmfr3=34611729
|
||||
impdef_nop=false
|
||||
midr=1091551472
|
||||
pmu=Null
|
||||
system=system
|
||||
vecRegRenameMode=Full
|
||||
|
||||
[system.cpu.istage2_mmu]
|
||||
type=ArmStage2MMU
|
||||
children=stage2_tlb
|
||||
eventq_index=0
|
||||
stage2_tlb=system.cpu.istage2_mmu.stage2_tlb
|
||||
sys=system
|
||||
tlb=system.cpu.itb
|
||||
|
||||
[system.cpu.istage2_mmu.stage2_tlb]
|
||||
type=ArmTLB
|
||||
children=walker
|
||||
eventq_index=0
|
||||
is_stage2=true
|
||||
size=32
|
||||
sys=system
|
||||
walker=system.cpu.istage2_mmu.stage2_tlb.walker
|
||||
|
||||
[system.cpu.istage2_mmu.stage2_tlb.walker]
|
||||
type=ArmTableWalker
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
is_stage2=true
|
||||
num_squash_per_cycle=2
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
sys=system
|
||||
|
||||
[system.cpu.itb]
|
||||
type=ArmTLB
|
||||
children=walker
|
||||
eventq_index=0
|
||||
is_stage2=false
|
||||
size=64
|
||||
sys=system
|
||||
walker=system.cpu.itb.walker
|
||||
|
||||
[system.cpu.itb.walker]
|
||||
type=ArmTableWalker
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
is_stage2=false
|
||||
num_squash_per_cycle=2
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
sys=system
|
||||
port=system.tol2bus.slave[2]
|
||||
|
||||
[system.cpu.tracer]
|
||||
type=ExeTracer
|
||||
eventq_index=0
|
||||
|
||||
[system.cpu.workload]
|
||||
type=Process
|
||||
cmd=../../DRAMSys/gem5/gem5_se/hello
|
||||
cwd=
|
||||
drivers=
|
||||
egid=100
|
||||
env=
|
||||
errout=cerr
|
||||
euid=100
|
||||
eventq_index=0
|
||||
executable=../../DRAMSys/gem5/gem5_se/hello
|
||||
gid=100
|
||||
input=cin
|
||||
kvmInSE=false
|
||||
maxStackSize=67108864
|
||||
output=cout
|
||||
pgid=100
|
||||
pid=100
|
||||
ppid=0
|
||||
simpoint=0
|
||||
system=system
|
||||
uid=100
|
||||
useArchPT=false
|
||||
|
||||
[system.cpu_clk_domain]
|
||||
type=SrcClockDomain
|
||||
clock=500
|
||||
domain_id=-1
|
||||
eventq_index=0
|
||||
init_perf_level=0
|
||||
voltage_domain=system.cpu_voltage_domain
|
||||
|
||||
[system.cpu_voltage_domain]
|
||||
type=VoltageDomain
|
||||
eventq_index=0
|
||||
voltage=1.0
|
||||
|
||||
[system.dvfs_handler]
|
||||
type=DVFSHandler
|
||||
domains=
|
||||
enable=false
|
||||
eventq_index=0
|
||||
sys_clk_domain=system.clk_domain
|
||||
transition_latency=100000000
|
||||
|
||||
[system.external_memory]
|
||||
type=ExternalSlave
|
||||
addr_ranges=0:536870911:0:0:0:0
|
||||
clk_domain=system.clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
port_data=transactor
|
||||
port_type=tlm_slave
|
||||
power_model=
|
||||
port=system.membus.master[0]
|
||||
|
||||
[system.l2]
|
||||
type=Cache
|
||||
children=replacement_policy tags
|
||||
addr_ranges=0:18446744073709551615:0:0:0:0
|
||||
assoc=8
|
||||
clk_domain=system.cpu_clk_domain
|
||||
clusivity=mostly_incl
|
||||
data_latency=20
|
||||
default_p_state=UNDEFINED
|
||||
demand_mshr_reserve=1
|
||||
eventq_index=0
|
||||
is_read_only=false
|
||||
max_miss_count=0
|
||||
mshrs=20
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
prefetch_on_access=false
|
||||
prefetcher=Null
|
||||
replacement_policy=system.l2.replacement_policy
|
||||
response_latency=20
|
||||
sequential_access=false
|
||||
size=2097152
|
||||
system=system
|
||||
tag_latency=20
|
||||
tags=system.l2.tags
|
||||
tgts_per_mshr=12
|
||||
warmup_percentage=0
|
||||
write_buffers=8
|
||||
writeback_clean=false
|
||||
cpu_side=system.tol2bus.master[0]
|
||||
mem_side=system.membus.slave[1]
|
||||
|
||||
[system.l2.replacement_policy]
|
||||
type=LRURP
|
||||
eventq_index=0
|
||||
|
||||
[system.l2.tags]
|
||||
type=BaseSetAssoc
|
||||
assoc=8
|
||||
block_size=64
|
||||
clk_domain=system.cpu_clk_domain
|
||||
data_latency=20
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
replacement_policy=system.l2.replacement_policy
|
||||
sequential_access=false
|
||||
size=2097152
|
||||
tag_latency=20
|
||||
warmup_percentage=0
|
||||
|
||||
[system.membus]
|
||||
type=CoherentXBar
|
||||
children=snoop_filter
|
||||
clk_domain=system.clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
forward_latency=4
|
||||
frontend_latency=3
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
point_of_coherency=true
|
||||
point_of_unification=true
|
||||
power_model=
|
||||
response_latency=2
|
||||
snoop_filter=system.membus.snoop_filter
|
||||
snoop_response_latency=4
|
||||
system=system
|
||||
use_default_range=false
|
||||
width=16
|
||||
master=system.external_memory.port
|
||||
slave=system.system_port system.l2.mem_side
|
||||
|
||||
[system.membus.snoop_filter]
|
||||
type=SnoopFilter
|
||||
eventq_index=0
|
||||
lookup_latency=1
|
||||
max_capacity=8388608
|
||||
system=system
|
||||
|
||||
[system.physmem]
|
||||
type=SimpleMemory
|
||||
bandwidth=73.000000
|
||||
clk_domain=system.clk_domain
|
||||
conf_table_reported=true
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
in_addr_map=true
|
||||
kvm_map=true
|
||||
latency=30000
|
||||
latency_var=0
|
||||
null=false
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
power_model=
|
||||
range=0:134217727:0:0:0:0
|
||||
|
||||
[system.tol2bus]
|
||||
type=CoherentXBar
|
||||
children=snoop_filter
|
||||
clk_domain=system.cpu_clk_domain
|
||||
default_p_state=UNDEFINED
|
||||
eventq_index=0
|
||||
forward_latency=0
|
||||
frontend_latency=1
|
||||
p_state_clk_gate_bins=20
|
||||
p_state_clk_gate_max=1000000000000
|
||||
p_state_clk_gate_min=1000
|
||||
point_of_coherency=false
|
||||
point_of_unification=true
|
||||
power_model=
|
||||
response_latency=1
|
||||
snoop_filter=system.tol2bus.snoop_filter
|
||||
snoop_response_latency=1
|
||||
system=system
|
||||
use_default_range=false
|
||||
width=32
|
||||
master=system.l2.cpu_side
|
||||
slave=system.cpu.icache.mem_side system.cpu.dcache.mem_side system.cpu.itb.walker.port system.cpu.dtb.walker.port
|
||||
|
||||
[system.tol2bus.snoop_filter]
|
||||
type=SnoopFilter
|
||||
eventq_index=0
|
||||
lookup_latency=0
|
||||
max_capacity=8388608
|
||||
system=system
|
||||
|
||||
[system.voltage_domain]
|
||||
type=VoltageDomain
|
||||
eventq_index=0
|
||||
voltage=1.0
|
||||
|
||||
BIN
DRAMSys/gem5/gem5_se/hello
Executable file
BIN
DRAMSys/gem5/gem5_se/hello
Executable file
Binary file not shown.
@@ -0,0 +1,28 @@
|
||||
<simconfig>
|
||||
<SimulationName value="ddr3" />
|
||||
<Debug value="0" />
|
||||
<DatabaseRecording value="1" />
|
||||
<PowerAnalysis value="1" />
|
||||
<EnableWindowing value = "1" />
|
||||
<WindowSize value="1000" />
|
||||
<ThermalSimulation value="0"/>
|
||||
<SimulationProgressBar value="1"/>
|
||||
<NumberOfMemChannels value="1"/>
|
||||
<NumberOfDevicesOnDIMM value = "8" />
|
||||
<CheckTLM2Protocol value = "0" />
|
||||
<AddressOffset value = "0" />
|
||||
<ECCControllerMode value = "Disabled" />
|
||||
<ErrorChipSeed value="42" />
|
||||
<ErrorCSVFile value="" />
|
||||
<!-- Modes:
|
||||
- NoStorage,
|
||||
- Store (store data without errormodel),
|
||||
- ErrorModel (store data with errormodel)
|
||||
-->
|
||||
<StoreMode value="Store" />
|
||||
<!-- Gem5 Related Configuration:
|
||||
In the memory controller file the storage mode should be set to Store
|
||||
E.g. the DRAM is located at 0x80000000 for gem5
|
||||
-->
|
||||
<AddressOffset value = "2147483648" />
|
||||
</simconfig>
|
||||
28
DRAMSys/library/resources/configs/simulator/ddr3_gem5_se.xml
Normal file
28
DRAMSys/library/resources/configs/simulator/ddr3_gem5_se.xml
Normal file
@@ -0,0 +1,28 @@
|
||||
<simconfig>
|
||||
<SimulationName value="ddr3" />
|
||||
<Debug value="0" />
|
||||
<DatabaseRecording value="1" />
|
||||
<PowerAnalysis value="1" />
|
||||
<EnableWindowing value = "1" />
|
||||
<WindowSize value="1000" />
|
||||
<ThermalSimulation value="0"/>
|
||||
<SimulationProgressBar value="1"/>
|
||||
<NumberOfMemChannels value="1"/>
|
||||
<NumberOfDevicesOnDIMM value = "8" />
|
||||
<CheckTLM2Protocol value = "0" />
|
||||
<AddressOffset value = "0" />
|
||||
<ECCControllerMode value = "Disabled" />
|
||||
<ErrorChipSeed value="42" />
|
||||
<ErrorCSVFile value="" />
|
||||
<!-- Modes:
|
||||
- NoStorage,
|
||||
- Store (store data without errormodel),
|
||||
- ErrorModel (store data with errormodel)
|
||||
-->
|
||||
<StoreMode value="Store" />
|
||||
<!-- Gem5 Related Configuration:
|
||||
In the memory controller file the storage mode should be set to Store
|
||||
E.g. the DRAM is located at 0x80000000 for gem5
|
||||
<AddressOffset value = "2147483648" />
|
||||
-->
|
||||
</simconfig>
|
||||
25
DRAMSys/library/resources/simulations/ddr3-boot-linux.xml
Normal file
25
DRAMSys/library/resources/simulations/ddr3-boot-linux.xml
Normal file
@@ -0,0 +1,25 @@
|
||||
<simulation>
|
||||
<!-- Simulation file identifier -->
|
||||
<simulationid id="ddr3-example"></simulationid>
|
||||
<!-- Configuration for the DRAMSys Simulator -->
|
||||
<simconfig src="ddr3_boot_linux.xml" />
|
||||
<!-- Temperature Simulator Configuration -->
|
||||
<thermalconfig src="config.xml" />
|
||||
<!-- Memory Device Specification: Which Device is on the DDR3 DIMM -->
|
||||
<memspec src="MICRON_1Gb_DDR3-1600_8bit_G.xml"></memspec>
|
||||
<!-- Addressmapping Configuration of the Memory Controller -->
|
||||
<addressmapping src="am_ddr3_8x1Gbx8_dimm_p1KB_brc.xml"></addressmapping>
|
||||
<!-- Memory Controller Configuration: -->
|
||||
<mcconfig src="fifoStrict.xml"/>
|
||||
<!--
|
||||
The following trace setup is only used in standalone mode.
|
||||
In library mode e.g. in Platform Architect the trace setup is ignored.
|
||||
-->
|
||||
<tracesetup>
|
||||
<!--
|
||||
This device mimics an image processing application
|
||||
running on an FPGA with 200 Mhz.
|
||||
-->
|
||||
<device clkMhz="200">ddr3_example.stl</device>
|
||||
</tracesetup>
|
||||
</simulation>
|
||||
25
DRAMSys/library/resources/simulations/ddr3-gem5-se.xml
Normal file
25
DRAMSys/library/resources/simulations/ddr3-gem5-se.xml
Normal file
@@ -0,0 +1,25 @@
|
||||
<simulation>
|
||||
<!-- Simulation file identifier -->
|
||||
<simulationid id="ddr3-example"></simulationid>
|
||||
<!-- Configuration for the DRAMSys Simulator -->
|
||||
<simconfig src="ddr3_gem5_se.xml" />
|
||||
<!-- Temperature Simulator Configuration -->
|
||||
<thermalconfig src="config.xml" />
|
||||
<!-- Memory Device Specification: Which Device is on the DDR3 DIMM -->
|
||||
<memspec src="MICRON_1Gb_DDR3-1600_8bit_G.xml"></memspec>
|
||||
<!-- Addressmapping Configuration of the Memory Controller -->
|
||||
<addressmapping src="am_ddr3_8x1Gbx8_dimm_p1KB_brc.xml"></addressmapping>
|
||||
<!-- Memory Controller Configuration: -->
|
||||
<mcconfig src="fifoStrict.xml"/>
|
||||
<!--
|
||||
The following trace setup is only used in standalone mode.
|
||||
In library mode e.g. in Platform Architect the trace setup is ignored.
|
||||
-->
|
||||
<tracesetup>
|
||||
<!--
|
||||
This device mimics an image processing application
|
||||
running on an FPGA with 200 Mhz.
|
||||
-->
|
||||
<device clkMhz="200">ddr3_example.stl</device>
|
||||
</tracesetup>
|
||||
</simulation>
|
||||
67
README.md
67
README.md
@@ -1547,6 +1547,50 @@ Lets run the simulation for some seconds and then stop the simulation with
|
||||
**CTRL-C**. Observe the output of the simulation in the trace analyzer. The trace
|
||||
database file is stored in the gem5 directory in the building directory.
|
||||
|
||||
### Gem5 SE mode and DRAMSys
|
||||
|
||||
All essential files for some functional examples are provided.
|
||||
|
||||
Execute a hello world application:
|
||||
|
||||
``` bash
|
||||
./DRAMSys_gem5 /home/eder/repos/dram.vp.system/DRAMSys/library/resources/simulations/ddr3-gem5-se.xml ../../DRAMSys/gem5/configs/hello.ini
|
||||
```
|
||||
|
||||
A **Hello world!** message should be printed to the standard output.
|
||||
|
||||
Execute a bubble sort application:
|
||||
|
||||
``` bash
|
||||
./DRAMSys_gem5 /home/eder/repos/dram.vp.system/DRAMSys/library/resources/simulations/ddr3-gem5-se.xml ../../DRAMSys/gem5/configs/bubblesort.ini
|
||||
```
|
||||
|
||||
Wait some minutes for the bubble sort application to finish.
|
||||
|
||||
The hello application binary was copied from gem5 repository. The bubble sort application was obtained with [gem5.TnT](https://github.com/tukl-msd/gem5.TnT).
|
||||
|
||||
Command template for generating **.ini** configuration files follows:
|
||||
|
||||
``` bash
|
||||
build/ARM/gem5.opt configs/example/se.py -c <application> --mem-size=512MB --mem-channels=1 --caches --l2cache --mem-type=SimpleMemory --cpu-type=TimingSimpleCPU --num-cpu=1 --tlm-memory=transactor
|
||||
```
|
||||
|
||||
An overview of the architcture being simulated is presented below:
|
||||
|
||||

|
||||
|
||||
Note: this is a gem5 generated file, therefore DRAMSys is omitted. DRAMSys is
|
||||
direct connected as external tlm slave.
|
||||
|
||||
Note: workaround in se.py required:
|
||||
```
|
||||
...
|
||||
if options.tlm_memory:
|
||||
system.physmem = SimpleMemory()
|
||||
MemConfig.config_mem(options, system)
|
||||
...
|
||||
```
|
||||
|
||||
### Boot Linux with gem5 and DRAMSys
|
||||
|
||||
The procedure is very similar to the traffic generator example above.
|
||||
@@ -1607,6 +1651,29 @@ Then start DRAMSys_gem5 with the following command:
|
||||
|
||||
For further sophisticated address mappings or scenarios checkout the file DRAMSys/gem5/main.cpp
|
||||
|
||||
All essential files for a functional example are provided.
|
||||
|
||||
Unzip the disk image:
|
||||
|
||||
``` bash
|
||||
tar -xaf DRAMSys/gem5/boot_linux/linux-aarch32-ael.img.tar.gz -C DRAMSys/gem5/boot_linux/
|
||||
```
|
||||
|
||||
Execute the example:
|
||||
|
||||
``` bash
|
||||
./DRAMSys_gem5 ../../DRAMSys/library/resources/simulations/ddr3-boot-linux.xml ../../DRAMSys/gem5/configs/boot_linux.ini
|
||||
```
|
||||
|
||||
Open a new terminal and connect to gem5:
|
||||
|
||||
``` bash
|
||||
telnet localhost 3456
|
||||
```
|
||||
|
||||
Wait some minutes for the Linux boot process to complete then login. Username is **root** no password required.
|
||||
|
||||
|
||||
### DRAMSys with gem5 Elastic Traces
|
||||
|
||||
For understanding elastic traces and their generation, study the [gem5 wiki](http://gem5.org/TraceCPU) and the paper [13].
|
||||
|
||||
Reference in New Issue
Block a user