config.json (11731:c473ca7cc650) config.json (12062:d6ee16239a26)
1{
2 "name": null,
3 "sim_quantum": 0,
4 "system": {
5 "kernel": "",
6 "mmap_using_noreserve": false,
7 "kernel_addr_check": true,
8 "symbolfile": "",
9 "readfile": "",
10 "thermal_model": null,
11 "cxx_class": "System",
12 "work_begin_cpu_id_exit": -1,
13 "load_offset": 0,
14 "work_begin_exit_count": 0,
15 "p_state_clk_gate_min": 1,
16 "memories": [
17 "system.mem_ctrls"
18 ],
19 "work_begin_ckpt_count": 0,
20 "clk_domain": {
21 "name": "clk_domain",
22 "clock": [
23 1
24 ],
25 "init_perf_level": 0,
26 "voltage_domain": "system.voltage_domain",
27 "eventq_index": 0,
28 "cxx_class": "SrcClockDomain",
29 "path": "system.clk_domain",
30 "type": "SrcClockDomain",
31 "domain_id": -1
32 },
33 "mem_ranges": [
34 "0:268435455:0:0:0:0"
35 ],
36 "eventq_index": 0,
37 "default_p_state": "UNDEFINED",
38 "p_state_clk_gate_max": 1000000000,
39 "dvfs_handler": {
40 "enable": false,
41 "name": "dvfs_handler",
42 "sys_clk_domain": "system.clk_domain",
43 "transition_latency": 100000,
44 "eventq_index": 0,
45 "cxx_class": "DVFSHandler",
46 "domains": [],
47 "path": "system.dvfs_handler",
48 "type": "DVFSHandler"
49 },
50 "work_end_exit_count": 0,
51 "type": "System",
52 "voltage_domain": {
53 "name": "voltage_domain",
54 "eventq_index": 0,
55 "voltage": [
56 "1.0"
57 ],
58 "cxx_class": "VoltageDomain",
59 "path": "system.voltage_domain",
60 "type": "VoltageDomain"
61 },
62 "cache_line_size": 64,
63 "boot_osflags": "a",
64 "system_port": {
65 "peer": "system.sys_port_proxy.slave[0]",
66 "role": "MASTER"
67 },
68 "sys_port_proxy": {
69 "system": "system",
70 "support_inst_reqs": true,
71 "slave": {
72 "peer": [
73 "system.system_port"
74 ],
75 "role": "SLAVE"
76 },
77 "name": "sys_port_proxy",
78 "p_state_clk_gate_min": 1,
79 "no_retry_on_stall": false,
80 "p_state_clk_gate_bins": 20,
81 "support_data_reqs": true,
82 "cxx_class": "RubyPortProxy",
83 "clk_domain": "system.clk_domain",
84 "power_model": null,
85 "is_cpu_sequencer": true,
86 "version": 0,
87 "eventq_index": 0,
88 "using_ruby_tester": false,
89 "default_p_state": "UNDEFINED",
90 "p_state_clk_gate_max": 1000000000,
91 "path": "system.sys_port_proxy",
92 "type": "RubyPortProxy",
93 "ruby_system": "system.ruby"
94 },
95 "power_model": null,
96 "work_cpus_ckpt_count": 0,
97 "thermal_components": [],
98 "path": "system",
99 "ruby": {
100 "all_instructions": false,
101 "memory_size_bits": 48,
102 "cxx_class": "RubySystem",
103 "l1_cntrl0": {
104 "requestFromCache": {
105 "ordered": true,
106 "name": "requestFromCache",
107 "cxx_class": "MessageBuffer",
108 "randomization": false,
109 "eventq_index": 0,
110 "master": {
111 "peer": "system.ruby.network.slave[0]",
112 "role": "MASTER"
113 },
114 "buffer_size": 0,
115 "path": "system.ruby.l1_cntrl0.requestFromCache",
116 "type": "MessageBuffer"
117 },
118 "cxx_class": "L1Cache_Controller",
119 "forwardToCache": {
120 "ordered": true,
121 "name": "forwardToCache",
122 "cxx_class": "MessageBuffer",
123 "slave": {
124 "peer": "system.ruby.network.master[0]",
125 "role": "SLAVE"
126 },
127 "randomization": false,
128 "eventq_index": 0,
129 "buffer_size": 0,
130 "path": "system.ruby.l1_cntrl0.forwardToCache",
131 "type": "MessageBuffer"
132 },
133 "system": "system",
134 "cluster_id": 0,
135 "sequencer": {
136 "no_retry_on_stall": false,
137 "deadlock_threshold": 500000,
138 "using_ruby_tester": false,
139 "system": "system",
140 "dcache": "system.ruby.l1_cntrl0.cacheMemory",
141 "cxx_class": "Sequencer",
142 "garnet_standalone": false,
143 "clk_domain": "system.cpu.clk_domain",
144 "icache_hit_latency": 1,
145 "version": 0,
146 "eventq_index": 0,
147 "default_p_state": "UNDEFINED",
148 "p_state_clk_gate_max": 1000000000,
149 "type": "RubySequencer",
150 "icache": "system.ruby.l1_cntrl0.cacheMemory",
151 "slave": {
152 "peer": [
153 "system.cpu.icache_port",
154 "system.cpu.dcache_port"
155 ],
156 "role": "SLAVE"
157 },
158 "p_state_clk_gate_min": 1,
159 "power_model": null,
160 "coreid": 99,
161 "path": "system.ruby.l1_cntrl0.sequencer",
162 "ruby_system": "system.ruby",
163 "support_inst_reqs": true,
164 "name": "sequencer",
165 "max_outstanding_requests": 16,
166 "p_state_clk_gate_bins": 20,
167 "dcache_hit_latency": 1,
168 "support_data_reqs": true,
169 "is_cpu_sequencer": true
170 },
171 "type": "L1Cache_Controller",
172 "issue_latency": 2,
173 "recycle_latency": 10,
174 "clk_domain": "system.cpu.clk_domain",
175 "version": 0,
176 "eventq_index": 0,
177 "default_p_state": "UNDEFINED",
178 "p_state_clk_gate_max": 1000000000,
179 "number_of_TBEs": 256,
180 "p_state_clk_gate_min": 1,
181 "responseToCache": {
182 "ordered": true,
183 "name": "responseToCache",
184 "cxx_class": "MessageBuffer",
185 "slave": {
186 "peer": "system.ruby.network.master[1]",
187 "role": "SLAVE"
188 },
189 "randomization": false,
190 "eventq_index": 0,
191 "buffer_size": 0,
192 "path": "system.ruby.l1_cntrl0.responseToCache",
193 "type": "MessageBuffer"
194 },
195 "transitions_per_cycle": 4,
196 "responseFromCache": {
197 "ordered": true,
198 "name": "responseFromCache",
199 "cxx_class": "MessageBuffer",
200 "randomization": false,
201 "eventq_index": 0,
202 "master": {
203 "peer": "system.ruby.network.slave[1]",
204 "role": "MASTER"
205 },
206 "buffer_size": 0,
207 "path": "system.ruby.l1_cntrl0.responseFromCache",
208 "type": "MessageBuffer"
209 },
210 "power_model": null,
211 "cache_response_latency": 12,
212 "buffer_size": 0,
213 "send_evictions": false,
214 "cacheMemory": {
215 "size": 256,
216 "resourceStalls": false,
217 "is_icache": false,
218 "name": "cacheMemory",
219 "eventq_index": 0,
220 "dataAccessLatency": 1,
221 "tagArrayBanks": 1,
222 "tagAccessLatency": 1,
223 "replacement_policy": {
224 "name": "replacement_policy",
225 "eventq_index": 0,
226 "assoc": 2,
227 "cxx_class": "PseudoLRUPolicy",
228 "path": "system.ruby.l1_cntrl0.cacheMemory.replacement_policy",
229 "block_size": 64,
230 "type": "PseudoLRUReplacementPolicy",
231 "size": 256
232 },
233 "assoc": 2,
234 "start_index_bit": 6,
235 "cxx_class": "CacheMemory",
236 "path": "system.ruby.l1_cntrl0.cacheMemory",
237 "block_size": 0,
238 "type": "RubyCache",
239 "dataArrayBanks": 1,
240 "ruby_system": "system.ruby"
241 },
242 "ruby_system": "system.ruby",
243 "name": "l1_cntrl0",
244 "p_state_clk_gate_bins": 20,
245 "mandatoryQueue": {
246 "ordered": false,
247 "name": "mandatoryQueue",
248 "cxx_class": "MessageBuffer",
249 "randomization": false,
250 "eventq_index": 0,
251 "buffer_size": 0,
252 "path": "system.ruby.l1_cntrl0.mandatoryQueue",
253 "type": "MessageBuffer"
254 },
255 "path": "system.ruby.l1_cntrl0"
256 },
257 "network": {
258 "int_link_buffers": [
259 {
260 "ordered": true,
261 "name": "int_link_buffers00",
262 "cxx_class": "MessageBuffer",
263 "randomization": false,
264 "eventq_index": 0,
265 "buffer_size": 0,
266 "path": "system.ruby.network.int_link_buffers00",
267 "type": "MessageBuffer"
268 },
269 {
270 "ordered": true,
271 "name": "int_link_buffers01",
272 "cxx_class": "MessageBuffer",
273 "randomization": false,
274 "eventq_index": 0,
275 "buffer_size": 0,
276 "path": "system.ruby.network.int_link_buffers01",
277 "type": "MessageBuffer"
278 },
279 {
280 "ordered": true,
281 "name": "int_link_buffers02",
282 "cxx_class": "MessageBuffer",
283 "randomization": false,
284 "eventq_index": 0,
285 "buffer_size": 0,
286 "path": "system.ruby.network.int_link_buffers02",
287 "type": "MessageBuffer"
288 },
289 {
290 "ordered": true,
291 "name": "int_link_buffers03",
292 "cxx_class": "MessageBuffer",
293 "randomization": false,
294 "eventq_index": 0,
295 "buffer_size": 0,
296 "path": "system.ruby.network.int_link_buffers03",
297 "type": "MessageBuffer"
298 },
299 {
300 "ordered": true,
301 "name": "int_link_buffers04",
302 "cxx_class": "MessageBuffer",
303 "randomization": false,
304 "eventq_index": 0,
305 "buffer_size": 0,
306 "path": "system.ruby.network.int_link_buffers04",
307 "type": "MessageBuffer"
308 },
309 {
310 "ordered": true,
311 "name": "int_link_buffers05",
312 "cxx_class": "MessageBuffer",
313 "randomization": false,
314 "eventq_index": 0,
315 "buffer_size": 0,
316 "path": "system.ruby.network.int_link_buffers05",
317 "type": "MessageBuffer"
318 },
319 {
320 "ordered": true,
321 "name": "int_link_buffers06",
322 "cxx_class": "MessageBuffer",
323 "randomization": false,
324 "eventq_index": 0,
325 "buffer_size": 0,
326 "path": "system.ruby.network.int_link_buffers06",
327 "type": "MessageBuffer"
328 },
329 {
330 "ordered": true,
331 "name": "int_link_buffers07",
332 "cxx_class": "MessageBuffer",
333 "randomization": false,
334 "eventq_index": 0,
335 "buffer_size": 0,
336 "path": "system.ruby.network.int_link_buffers07",
337 "type": "MessageBuffer"
338 },
339 {
340 "ordered": true,
341 "name": "int_link_buffers08",
342 "cxx_class": "MessageBuffer",
343 "randomization": false,
344 "eventq_index": 0,
345 "buffer_size": 0,
346 "path": "system.ruby.network.int_link_buffers08",
347 "type": "MessageBuffer"
348 },
349 {
350 "ordered": true,
351 "name": "int_link_buffers09",
352 "cxx_class": "MessageBuffer",
353 "randomization": false,
354 "eventq_index": 0,
355 "buffer_size": 0,
356 "path": "system.ruby.network.int_link_buffers09",
357 "type": "MessageBuffer"
358 },
359 {
360 "ordered": true,
361 "name": "int_link_buffers10",
362 "cxx_class": "MessageBuffer",
363 "randomization": false,
364 "eventq_index": 0,
365 "buffer_size": 0,
366 "path": "system.ruby.network.int_link_buffers10",
367 "type": "MessageBuffer"
368 },
369 {
370 "ordered": true,
371 "name": "int_link_buffers11",
372 "cxx_class": "MessageBuffer",
373 "randomization": false,
374 "eventq_index": 0,
375 "buffer_size": 0,
376 "path": "system.ruby.network.int_link_buffers11",
377 "type": "MessageBuffer"
378 },
379 {
380 "ordered": true,
381 "name": "int_link_buffers12",
382 "cxx_class": "MessageBuffer",
383 "randomization": false,
384 "eventq_index": 0,
385 "buffer_size": 0,
386 "path": "system.ruby.network.int_link_buffers12",
387 "type": "MessageBuffer"
388 },
389 {
390 "ordered": true,
391 "name": "int_link_buffers13",
392 "cxx_class": "MessageBuffer",
393 "randomization": false,
394 "eventq_index": 0,
395 "buffer_size": 0,
396 "path": "system.ruby.network.int_link_buffers13",
397 "type": "MessageBuffer"
398 },
399 {
400 "ordered": true,
401 "name": "int_link_buffers14",
402 "cxx_class": "MessageBuffer",
403 "randomization": false,
404 "eventq_index": 0,
405 "buffer_size": 0,
406 "path": "system.ruby.network.int_link_buffers14",
407 "type": "MessageBuffer"
408 },
409 {
410 "ordered": true,
411 "name": "int_link_buffers15",
412 "cxx_class": "MessageBuffer",
413 "randomization": false,
414 "eventq_index": 0,
415 "buffer_size": 0,
416 "path": "system.ruby.network.int_link_buffers15",
417 "type": "MessageBuffer"
418 },
419 {
420 "ordered": true,
421 "name": "int_link_buffers16",
422 "cxx_class": "MessageBuffer",
423 "randomization": false,
424 "eventq_index": 0,
425 "buffer_size": 0,
426 "path": "system.ruby.network.int_link_buffers16",
427 "type": "MessageBuffer"
428 },
429 {
430 "ordered": true,
431 "name": "int_link_buffers17",
432 "cxx_class": "MessageBuffer",
433 "randomization": false,
434 "eventq_index": 0,
435 "buffer_size": 0,
436 "path": "system.ruby.network.int_link_buffers17",
437 "type": "MessageBuffer"
438 },
439 {
440 "ordered": true,
441 "name": "int_link_buffers18",
442 "cxx_class": "MessageBuffer",
443 "randomization": false,
444 "eventq_index": 0,
445 "buffer_size": 0,
446 "path": "system.ruby.network.int_link_buffers18",
447 "type": "MessageBuffer"
448 },
449 {
450 "ordered": true,
451 "name": "int_link_buffers19",
452 "cxx_class": "MessageBuffer",
453 "randomization": false,
454 "eventq_index": 0,
455 "buffer_size": 0,
456 "path": "system.ruby.network.int_link_buffers19",
457 "type": "MessageBuffer"
458 },
459 {
460 "ordered": true,
461 "name": "int_link_buffers20",
462 "cxx_class": "MessageBuffer",
463 "randomization": false,
464 "eventq_index": 0,
465 "buffer_size": 0,
466 "path": "system.ruby.network.int_link_buffers20",
467 "type": "MessageBuffer"
468 },
469 {
470 "ordered": true,
471 "name": "int_link_buffers21",
472 "cxx_class": "MessageBuffer",
473 "randomization": false,
474 "eventq_index": 0,
475 "buffer_size": 0,
476 "path": "system.ruby.network.int_link_buffers21",
477 "type": "MessageBuffer"
478 },
479 {
480 "ordered": true,
481 "name": "int_link_buffers22",
482 "cxx_class": "MessageBuffer",
483 "randomization": false,
484 "eventq_index": 0,
485 "buffer_size": 0,
486 "path": "system.ruby.network.int_link_buffers22",
487 "type": "MessageBuffer"
488 },
489 {
490 "ordered": true,
491 "name": "int_link_buffers23",
492 "cxx_class": "MessageBuffer",
493 "randomization": false,
494 "eventq_index": 0,
495 "buffer_size": 0,
496 "path": "system.ruby.network.int_link_buffers23",
497 "type": "MessageBuffer"
498 },
499 {
500 "ordered": true,
501 "name": "int_link_buffers24",
502 "cxx_class": "MessageBuffer",
503 "randomization": false,
504 "eventq_index": 0,
505 "buffer_size": 0,
506 "path": "system.ruby.network.int_link_buffers24",
507 "type": "MessageBuffer"
508 },
509 {
510 "ordered": true,
511 "name": "int_link_buffers25",
512 "cxx_class": "MessageBuffer",
513 "randomization": false,
514 "eventq_index": 0,
515 "buffer_size": 0,
516 "path": "system.ruby.network.int_link_buffers25",
517 "type": "MessageBuffer"
518 },
519 {
520 "ordered": true,
521 "name": "int_link_buffers26",
522 "cxx_class": "MessageBuffer",
523 "randomization": false,
524 "eventq_index": 0,
525 "buffer_size": 0,
526 "path": "system.ruby.network.int_link_buffers26",
527 "type": "MessageBuffer"
528 },
529 {
530 "ordered": true,
531 "name": "int_link_buffers27",
532 "cxx_class": "MessageBuffer",
533 "randomization": false,
534 "eventq_index": 0,
535 "buffer_size": 0,
536 "path": "system.ruby.network.int_link_buffers27",
537 "type": "MessageBuffer"
538 },
539 {
540 "ordered": true,
541 "name": "int_link_buffers28",
542 "cxx_class": "MessageBuffer",
543 "randomization": false,
544 "eventq_index": 0,
545 "buffer_size": 0,
546 "path": "system.ruby.network.int_link_buffers28",
547 "type": "MessageBuffer"
548 },
549 {
550 "ordered": true,
551 "name": "int_link_buffers29",
552 "cxx_class": "MessageBuffer",
553 "randomization": false,
554 "eventq_index": 0,
555 "buffer_size": 0,
556 "path": "system.ruby.network.int_link_buffers29",
557 "type": "MessageBuffer"
558 },
559 {
560 "ordered": true,
561 "name": "int_link_buffers30",
562 "cxx_class": "MessageBuffer",
563 "randomization": false,
564 "eventq_index": 0,
565 "buffer_size": 0,
566 "path": "system.ruby.network.int_link_buffers30",
567 "type": "MessageBuffer"
568 },
569 {
570 "ordered": true,
571 "name": "int_link_buffers31",
572 "cxx_class": "MessageBuffer",
573 "randomization": false,
574 "eventq_index": 0,
575 "buffer_size": 0,
576 "path": "system.ruby.network.int_link_buffers31",
577 "type": "MessageBuffer"
578 },
579 {
580 "ordered": true,
581 "name": "int_link_buffers32",
582 "cxx_class": "MessageBuffer",
583 "randomization": false,
584 "eventq_index": 0,
585 "buffer_size": 0,
586 "path": "system.ruby.network.int_link_buffers32",
587 "type": "MessageBuffer"
588 },
589 {
590 "ordered": true,
591 "name": "int_link_buffers33",
592 "cxx_class": "MessageBuffer",
593 "randomization": false,
594 "eventq_index": 0,
595 "buffer_size": 0,
596 "path": "system.ruby.network.int_link_buffers33",
597 "type": "MessageBuffer"
598 },
599 {
600 "ordered": true,
601 "name": "int_link_buffers34",
602 "cxx_class": "MessageBuffer",
603 "randomization": false,
604 "eventq_index": 0,
605 "buffer_size": 0,
606 "path": "system.ruby.network.int_link_buffers34",
607 "type": "MessageBuffer"
608 },
609 {
610 "ordered": true,
611 "name": "int_link_buffers35",
612 "cxx_class": "MessageBuffer",
613 "randomization": false,
614 "eventq_index": 0,
615 "buffer_size": 0,
616 "path": "system.ruby.network.int_link_buffers35",
617 "type": "MessageBuffer"
618 },
619 {
620 "ordered": true,
621 "name": "int_link_buffers36",
622 "cxx_class": "MessageBuffer",
623 "randomization": false,
624 "eventq_index": 0,
625 "buffer_size": 0,
626 "path": "system.ruby.network.int_link_buffers36",
627 "type": "MessageBuffer"
628 },
629 {
630 "ordered": true,
631 "name": "int_link_buffers37",
632 "cxx_class": "MessageBuffer",
633 "randomization": false,
634 "eventq_index": 0,
635 "buffer_size": 0,
636 "path": "system.ruby.network.int_link_buffers37",
637 "type": "MessageBuffer"
638 },
639 {
640 "ordered": true,
641 "name": "int_link_buffers38",
642 "cxx_class": "MessageBuffer",
643 "randomization": false,
644 "eventq_index": 0,
645 "buffer_size": 0,
646 "path": "system.ruby.network.int_link_buffers38",
647 "type": "MessageBuffer"
648 },
649 {
650 "ordered": true,
651 "name": "int_link_buffers39",
652 "cxx_class": "MessageBuffer",
653 "randomization": false,
654 "eventq_index": 0,
655 "buffer_size": 0,
656 "path": "system.ruby.network.int_link_buffers39",
657 "type": "MessageBuffer"
658 }
659 ],
660 "cxx_class": "SimpleNetwork",
661 "clk_domain": "system.ruby.clk_domain",
662 "adaptive_routing": false,
663 "eventq_index": 0,
664 "default_p_state": "UNDEFINED",
665 "p_state_clk_gate_max": 1000000000,
666 "master": {
667 "peer": [
668 "system.ruby.l1_cntrl0.forwardToCache.slave",
669 "system.ruby.l1_cntrl0.responseToCache.slave",
670 "system.ruby.dir_cntrl0.requestToDir.slave",
671 "system.ruby.dir_cntrl0.dmaRequestToDir.slave"
672 ],
673 "role": "MASTER"
674 },
675 "topology": "Crossbar",
676 "type": "SimpleNetwork",
677 "slave": {
678 "peer": [
679 "system.ruby.l1_cntrl0.requestFromCache.master",
680 "system.ruby.l1_cntrl0.responseFromCache.master",
681 "system.ruby.dir_cntrl0.responseFromDir.master",
682 "system.ruby.dir_cntrl0.dmaResponseFromDir.master",
683 "system.ruby.dir_cntrl0.forwardFromDir.master"
684 ],
685 "role": "SLAVE"
686 },
687 "p_state_clk_gate_min": 1,
688 "int_links": [
689 {
690 "latency": 1,
691 "name": "int_links0",
692 "weight": 1,
693 "src_node": "system.ruby.network.routers0",
694 "dst_inport": "",
695 "link_id": 2,
696 "dst_node": "system.ruby.network.routers2",
697 "eventq_index": 0,
698 "src_outport": "",
699 "cxx_class": "SimpleIntLink",
700 "path": "system.ruby.network.int_links0",
701 "type": "SimpleIntLink",
702 "bandwidth_factor": 16
703 },
704 {
705 "latency": 1,
706 "name": "int_links1",
707 "weight": 1,
708 "src_node": "system.ruby.network.routers1",
709 "dst_inport": "",
710 "link_id": 3,
711 "dst_node": "system.ruby.network.routers2",
712 "eventq_index": 0,
713 "src_outport": "",
714 "cxx_class": "SimpleIntLink",
715 "path": "system.ruby.network.int_links1",
716 "type": "SimpleIntLink",
717 "bandwidth_factor": 16
718 },
719 {
720 "latency": 1,
721 "name": "int_links2",
722 "weight": 1,
723 "src_node": "system.ruby.network.routers2",
724 "dst_inport": "",
725 "link_id": 4,
726 "dst_node": "system.ruby.network.routers0",
727 "eventq_index": 0,
728 "src_outport": "",
729 "cxx_class": "SimpleIntLink",
730 "path": "system.ruby.network.int_links2",
731 "type": "SimpleIntLink",
732 "bandwidth_factor": 16
733 },
734 {
735 "latency": 1,
736 "name": "int_links3",
737 "weight": 1,
738 "src_node": "system.ruby.network.routers2",
739 "dst_inport": "",
740 "link_id": 5,
741 "dst_node": "system.ruby.network.routers1",
742 "eventq_index": 0,
743 "src_outport": "",
744 "cxx_class": "SimpleIntLink",
745 "path": "system.ruby.network.int_links3",
746 "type": "SimpleIntLink",
747 "bandwidth_factor": 16
748 }
749 ],
750 "routers": [
751 {
752 "router_id": 0,
753 "latency": 1,
754 "name": "routers0",
755 "p_state_clk_gate_min": 1,
756 "virt_nets": 5,
757 "p_state_clk_gate_bins": 20,
758 "cxx_class": "Switch",
759 "clk_domain": "system.ruby.clk_domain",
760 "power_model": null,
761 "eventq_index": 0,
762 "default_p_state": "UNDEFINED",
763 "p_state_clk_gate_max": 1000000000,
764 "path": "system.ruby.network.routers0",
765 "type": "Switch",
766 "port_buffers": [
767 {
768 "ordered": true,
769 "name": "port_buffers00",
770 "cxx_class": "MessageBuffer",
771 "randomization": false,
772 "eventq_index": 0,
773 "buffer_size": 0,
774 "path": "system.ruby.network.routers0.port_buffers00",
775 "type": "MessageBuffer"
776 },
777 {
778 "ordered": true,
779 "name": "port_buffers01",
780 "cxx_class": "MessageBuffer",
781 "randomization": false,
782 "eventq_index": 0,
783 "buffer_size": 0,
784 "path": "system.ruby.network.routers0.port_buffers01",
785 "type": "MessageBuffer"
786 },
787 {
788 "ordered": true,
789 "name": "port_buffers02",
790 "cxx_class": "MessageBuffer",
791 "randomization": false,
792 "eventq_index": 0,
793 "buffer_size": 0,
794 "path": "system.ruby.network.routers0.port_buffers02",
795 "type": "MessageBuffer"
796 },
797 {
798 "ordered": true,
799 "name": "port_buffers03",
800 "cxx_class": "MessageBuffer",
801 "randomization": false,
802 "eventq_index": 0,
803 "buffer_size": 0,
804 "path": "system.ruby.network.routers0.port_buffers03",
805 "type": "MessageBuffer"
806 },
807 {
808 "ordered": true,
809 "name": "port_buffers04",
810 "cxx_class": "MessageBuffer",
811 "randomization": false,
812 "eventq_index": 0,
813 "buffer_size": 0,
814 "path": "system.ruby.network.routers0.port_buffers04",
815 "type": "MessageBuffer"
816 },
817 {
818 "ordered": true,
819 "name": "port_buffers05",
820 "cxx_class": "MessageBuffer",
821 "randomization": false,
822 "eventq_index": 0,
823 "buffer_size": 0,
824 "path": "system.ruby.network.routers0.port_buffers05",
825 "type": "MessageBuffer"
826 },
827 {
828 "ordered": true,
829 "name": "port_buffers06",
830 "cxx_class": "MessageBuffer",
831 "randomization": false,
832 "eventq_index": 0,
833 "buffer_size": 0,
834 "path": "system.ruby.network.routers0.port_buffers06",
835 "type": "MessageBuffer"
836 },
837 {
838 "ordered": true,
839 "name": "port_buffers07",
840 "cxx_class": "MessageBuffer",
841 "randomization": false,
842 "eventq_index": 0,
843 "buffer_size": 0,
844 "path": "system.ruby.network.routers0.port_buffers07",
845 "type": "MessageBuffer"
846 },
847 {
848 "ordered": true,
849 "name": "port_buffers08",
850 "cxx_class": "MessageBuffer",
851 "randomization": false,
852 "eventq_index": 0,
853 "buffer_size": 0,
854 "path": "system.ruby.network.routers0.port_buffers08",
855 "type": "MessageBuffer"
856 },
857 {
858 "ordered": true,
859 "name": "port_buffers09",
860 "cxx_class": "MessageBuffer",
861 "randomization": false,
862 "eventq_index": 0,
863 "buffer_size": 0,
864 "path": "system.ruby.network.routers0.port_buffers09",
865 "type": "MessageBuffer"
866 },
867 {
868 "ordered": true,
869 "name": "port_buffers10",
870 "cxx_class": "MessageBuffer",
871 "randomization": false,
872 "eventq_index": 0,
873 "buffer_size": 0,
874 "path": "system.ruby.network.routers0.port_buffers10",
875 "type": "MessageBuffer"
876 },
877 {
878 "ordered": true,
879 "name": "port_buffers11",
880 "cxx_class": "MessageBuffer",
881 "randomization": false,
882 "eventq_index": 0,
883 "buffer_size": 0,
884 "path": "system.ruby.network.routers0.port_buffers11",
885 "type": "MessageBuffer"
886 },
887 {
888 "ordered": true,
889 "name": "port_buffers12",
890 "cxx_class": "MessageBuffer",
891 "randomization": false,
892 "eventq_index": 0,
893 "buffer_size": 0,
894 "path": "system.ruby.network.routers0.port_buffers12",
895 "type": "MessageBuffer"
896 },
897 {
898 "ordered": true,
899 "name": "port_buffers13",
900 "cxx_class": "MessageBuffer",
901 "randomization": false,
902 "eventq_index": 0,
903 "buffer_size": 0,
904 "path": "system.ruby.network.routers0.port_buffers13",
905 "type": "MessageBuffer"
906 },
907 {
908 "ordered": true,
909 "name": "port_buffers14",
910 "cxx_class": "MessageBuffer",
911 "randomization": false,
912 "eventq_index": 0,
913 "buffer_size": 0,
914 "path": "system.ruby.network.routers0.port_buffers14",
915 "type": "MessageBuffer"
916 }
917 ]
918 },
919 {
920 "router_id": 1,
921 "latency": 1,
922 "name": "routers1",
923 "p_state_clk_gate_min": 1,
924 "virt_nets": 5,
925 "p_state_clk_gate_bins": 20,
926 "cxx_class": "Switch",
927 "clk_domain": "system.ruby.clk_domain",
928 "power_model": null,
929 "eventq_index": 0,
930 "default_p_state": "UNDEFINED",
931 "p_state_clk_gate_max": 1000000000,
932 "path": "system.ruby.network.routers1",
933 "type": "Switch",
934 "port_buffers": [
935 {
936 "ordered": true,
937 "name": "port_buffers00",
938 "cxx_class": "MessageBuffer",
939 "randomization": false,
940 "eventq_index": 0,
941 "buffer_size": 0,
942 "path": "system.ruby.network.routers1.port_buffers00",
943 "type": "MessageBuffer"
944 },
945 {
946 "ordered": true,
947 "name": "port_buffers01",
948 "cxx_class": "MessageBuffer",
949 "randomization": false,
950 "eventq_index": 0,
951 "buffer_size": 0,
952 "path": "system.ruby.network.routers1.port_buffers01",
953 "type": "MessageBuffer"
954 },
955 {
956 "ordered": true,
957 "name": "port_buffers02",
958 "cxx_class": "MessageBuffer",
959 "randomization": false,
960 "eventq_index": 0,
961 "buffer_size": 0,
962 "path": "system.ruby.network.routers1.port_buffers02",
963 "type": "MessageBuffer"
964 },
965 {
966 "ordered": true,
967 "name": "port_buffers03",
968 "cxx_class": "MessageBuffer",
969 "randomization": false,
970 "eventq_index": 0,
971 "buffer_size": 0,
972 "path": "system.ruby.network.routers1.port_buffers03",
973 "type": "MessageBuffer"
974 },
975 {
976 "ordered": true,
977 "name": "port_buffers04",
978 "cxx_class": "MessageBuffer",
979 "randomization": false,
980 "eventq_index": 0,
981 "buffer_size": 0,
982 "path": "system.ruby.network.routers1.port_buffers04",
983 "type": "MessageBuffer"
984 },
985 {
986 "ordered": true,
987 "name": "port_buffers05",
988 "cxx_class": "MessageBuffer",
989 "randomization": false,
990 "eventq_index": 0,
991 "buffer_size": 0,
992 "path": "system.ruby.network.routers1.port_buffers05",
993 "type": "MessageBuffer"
994 },
995 {
996 "ordered": true,
997 "name": "port_buffers06",
998 "cxx_class": "MessageBuffer",
999 "randomization": false,
1000 "eventq_index": 0,
1001 "buffer_size": 0,
1002 "path": "system.ruby.network.routers1.port_buffers06",
1003 "type": "MessageBuffer"
1004 },
1005 {
1006 "ordered": true,
1007 "name": "port_buffers07",
1008 "cxx_class": "MessageBuffer",
1009 "randomization": false,
1010 "eventq_index": 0,
1011 "buffer_size": 0,
1012 "path": "system.ruby.network.routers1.port_buffers07",
1013 "type": "MessageBuffer"
1014 },
1015 {
1016 "ordered": true,
1017 "name": "port_buffers08",
1018 "cxx_class": "MessageBuffer",
1019 "randomization": false,
1020 "eventq_index": 0,
1021 "buffer_size": 0,
1022 "path": "system.ruby.network.routers1.port_buffers08",
1023 "type": "MessageBuffer"
1024 },
1025 {
1026 "ordered": true,
1027 "name": "port_buffers09",
1028 "cxx_class": "MessageBuffer",
1029 "randomization": false,
1030 "eventq_index": 0,
1031 "buffer_size": 0,
1032 "path": "system.ruby.network.routers1.port_buffers09",
1033 "type": "MessageBuffer"
1034 },
1035 {
1036 "ordered": true,
1037 "name": "port_buffers10",
1038 "cxx_class": "MessageBuffer",
1039 "randomization": false,
1040 "eventq_index": 0,
1041 "buffer_size": 0,
1042 "path": "system.ruby.network.routers1.port_buffers10",
1043 "type": "MessageBuffer"
1044 },
1045 {
1046 "ordered": true,
1047 "name": "port_buffers11",
1048 "cxx_class": "MessageBuffer",
1049 "randomization": false,
1050 "eventq_index": 0,
1051 "buffer_size": 0,
1052 "path": "system.ruby.network.routers1.port_buffers11",
1053 "type": "MessageBuffer"
1054 },
1055 {
1056 "ordered": true,
1057 "name": "port_buffers12",
1058 "cxx_class": "MessageBuffer",
1059 "randomization": false,
1060 "eventq_index": 0,
1061 "buffer_size": 0,
1062 "path": "system.ruby.network.routers1.port_buffers12",
1063 "type": "MessageBuffer"
1064 },
1065 {
1066 "ordered": true,
1067 "name": "port_buffers13",
1068 "cxx_class": "MessageBuffer",
1069 "randomization": false,
1070 "eventq_index": 0,
1071 "buffer_size": 0,
1072 "path": "system.ruby.network.routers1.port_buffers13",
1073 "type": "MessageBuffer"
1074 },
1075 {
1076 "ordered": true,
1077 "name": "port_buffers14",
1078 "cxx_class": "MessageBuffer",
1079 "randomization": false,
1080 "eventq_index": 0,
1081 "buffer_size": 0,
1082 "path": "system.ruby.network.routers1.port_buffers14",
1083 "type": "MessageBuffer"
1084 }
1085 ]
1086 },
1087 {
1088 "router_id": 2,
1089 "latency": 1,
1090 "name": "routers2",
1091 "p_state_clk_gate_min": 1,
1092 "virt_nets": 5,
1093 "p_state_clk_gate_bins": 20,
1094 "cxx_class": "Switch",
1095 "clk_domain": "system.ruby.clk_domain",
1096 "power_model": null,
1097 "eventq_index": 0,
1098 "default_p_state": "UNDEFINED",
1099 "p_state_clk_gate_max": 1000000000,
1100 "path": "system.ruby.network.routers2",
1101 "type": "Switch",
1102 "port_buffers": [
1103 {
1104 "ordered": true,
1105 "name": "port_buffers00",
1106 "cxx_class": "MessageBuffer",
1107 "randomization": false,
1108 "eventq_index": 0,
1109 "buffer_size": 0,
1110 "path": "system.ruby.network.routers2.port_buffers00",
1111 "type": "MessageBuffer"
1112 },
1113 {
1114 "ordered": true,
1115 "name": "port_buffers01",
1116 "cxx_class": "MessageBuffer",
1117 "randomization": false,
1118 "eventq_index": 0,
1119 "buffer_size": 0,
1120 "path": "system.ruby.network.routers2.port_buffers01",
1121 "type": "MessageBuffer"
1122 },
1123 {
1124 "ordered": true,
1125 "name": "port_buffers02",
1126 "cxx_class": "MessageBuffer",
1127 "randomization": false,
1128 "eventq_index": 0,
1129 "buffer_size": 0,
1130 "path": "system.ruby.network.routers2.port_buffers02",
1131 "type": "MessageBuffer"
1132 },
1133 {
1134 "ordered": true,
1135 "name": "port_buffers03",
1136 "cxx_class": "MessageBuffer",
1137 "randomization": false,
1138 "eventq_index": 0,
1139 "buffer_size": 0,
1140 "path": "system.ruby.network.routers2.port_buffers03",
1141 "type": "MessageBuffer"
1142 },
1143 {
1144 "ordered": true,
1145 "name": "port_buffers04",
1146 "cxx_class": "MessageBuffer",
1147 "randomization": false,
1148 "eventq_index": 0,
1149 "buffer_size": 0,
1150 "path": "system.ruby.network.routers2.port_buffers04",
1151 "type": "MessageBuffer"
1152 },
1153 {
1154 "ordered": true,
1155 "name": "port_buffers05",
1156 "cxx_class": "MessageBuffer",
1157 "randomization": false,
1158 "eventq_index": 0,
1159 "buffer_size": 0,
1160 "path": "system.ruby.network.routers2.port_buffers05",
1161 "type": "MessageBuffer"
1162 },
1163 {
1164 "ordered": true,
1165 "name": "port_buffers06",
1166 "cxx_class": "MessageBuffer",
1167 "randomization": false,
1168 "eventq_index": 0,
1169 "buffer_size": 0,
1170 "path": "system.ruby.network.routers2.port_buffers06",
1171 "type": "MessageBuffer"
1172 },
1173 {
1174 "ordered": true,
1175 "name": "port_buffers07",
1176 "cxx_class": "MessageBuffer",
1177 "randomization": false,
1178 "eventq_index": 0,
1179 "buffer_size": 0,
1180 "path": "system.ruby.network.routers2.port_buffers07",
1181 "type": "MessageBuffer"
1182 },
1183 {
1184 "ordered": true,
1185 "name": "port_buffers08",
1186 "cxx_class": "MessageBuffer",
1187 "randomization": false,
1188 "eventq_index": 0,
1189 "buffer_size": 0,
1190 "path": "system.ruby.network.routers2.port_buffers08",
1191 "type": "MessageBuffer"
1192 },
1193 {
1194 "ordered": true,
1195 "name": "port_buffers09",
1196 "cxx_class": "MessageBuffer",
1197 "randomization": false,
1198 "eventq_index": 0,
1199 "buffer_size": 0,
1200 "path": "system.ruby.network.routers2.port_buffers09",
1201 "type": "MessageBuffer"
1202 },
1203 {
1204 "ordered": true,
1205 "name": "port_buffers10",
1206 "cxx_class": "MessageBuffer",
1207 "randomization": false,
1208 "eventq_index": 0,
1209 "buffer_size": 0,
1210 "path": "system.ruby.network.routers2.port_buffers10",
1211 "type": "MessageBuffer"
1212 },
1213 {
1214 "ordered": true,
1215 "name": "port_buffers11",
1216 "cxx_class": "MessageBuffer",
1217 "randomization": false,
1218 "eventq_index": 0,
1219 "buffer_size": 0,
1220 "path": "system.ruby.network.routers2.port_buffers11",
1221 "type": "MessageBuffer"
1222 },
1223 {
1224 "ordered": true,
1225 "name": "port_buffers12",
1226 "cxx_class": "MessageBuffer",
1227 "randomization": false,
1228 "eventq_index": 0,
1229 "buffer_size": 0,
1230 "path": "system.ruby.network.routers2.port_buffers12",
1231 "type": "MessageBuffer"
1232 },
1233 {
1234 "ordered": true,
1235 "name": "port_buffers13",
1236 "cxx_class": "MessageBuffer",
1237 "randomization": false,
1238 "eventq_index": 0,
1239 "buffer_size": 0,
1240 "path": "system.ruby.network.routers2.port_buffers13",
1241 "type": "MessageBuffer"
1242 },
1243 {
1244 "ordered": true,
1245 "name": "port_buffers14",
1246 "cxx_class": "MessageBuffer",
1247 "randomization": false,
1248 "eventq_index": 0,
1249 "buffer_size": 0,
1250 "path": "system.ruby.network.routers2.port_buffers14",
1251 "type": "MessageBuffer"
1252 },
1253 {
1254 "ordered": true,
1255 "name": "port_buffers15",
1256 "cxx_class": "MessageBuffer",
1257 "randomization": false,
1258 "eventq_index": 0,
1259 "buffer_size": 0,
1260 "path": "system.ruby.network.routers2.port_buffers15",
1261 "type": "MessageBuffer"
1262 },
1263 {
1264 "ordered": true,
1265 "name": "port_buffers16",
1266 "cxx_class": "MessageBuffer",
1267 "randomization": false,
1268 "eventq_index": 0,
1269 "buffer_size": 0,
1270 "path": "system.ruby.network.routers2.port_buffers16",
1271 "type": "MessageBuffer"
1272 },
1273 {
1274 "ordered": true,
1275 "name": "port_buffers17",
1276 "cxx_class": "MessageBuffer",
1277 "randomization": false,
1278 "eventq_index": 0,
1279 "buffer_size": 0,
1280 "path": "system.ruby.network.routers2.port_buffers17",
1281 "type": "MessageBuffer"
1282 },
1283 {
1284 "ordered": true,
1285 "name": "port_buffers18",
1286 "cxx_class": "MessageBuffer",
1287 "randomization": false,
1288 "eventq_index": 0,
1289 "buffer_size": 0,
1290 "path": "system.ruby.network.routers2.port_buffers18",
1291 "type": "MessageBuffer"
1292 },
1293 {
1294 "ordered": true,
1295 "name": "port_buffers19",
1296 "cxx_class": "MessageBuffer",
1297 "randomization": false,
1298 "eventq_index": 0,
1299 "buffer_size": 0,
1300 "path": "system.ruby.network.routers2.port_buffers19",
1301 "type": "MessageBuffer"
1302 }
1303 ]
1304 }
1305 ],
1306 "power_model": null,
1307 "netifs": [],
1308 "control_msg_size": 8,
1309 "buffer_size": 0,
1310 "endpoint_bandwidth": 1000,
1311 "ruby_system": "system.ruby",
1312 "name": "network",
1313 "p_state_clk_gate_bins": 20,
1314 "ext_links": [
1315 {
1316 "latency": 1,
1317 "name": "ext_links0",
1318 "weight": 1,
1319 "ext_node": "system.ruby.l1_cntrl0",
1320 "link_id": 0,
1321 "eventq_index": 0,
1322 "cxx_class": "SimpleExtLink",
1323 "path": "system.ruby.network.ext_links0",
1324 "int_node": "system.ruby.network.routers0",
1325 "type": "SimpleExtLink",
1326 "bandwidth_factor": 16
1327 },
1328 {
1329 "latency": 1,
1330 "name": "ext_links1",
1331 "weight": 1,
1332 "ext_node": "system.ruby.dir_cntrl0",
1333 "link_id": 1,
1334 "eventq_index": 0,
1335 "cxx_class": "SimpleExtLink",
1336 "path": "system.ruby.network.ext_links1",
1337 "int_node": "system.ruby.network.routers1",
1338 "type": "SimpleExtLink",
1339 "bandwidth_factor": 16
1340 }
1341 ],
1342 "number_of_virtual_networks": 5,
1343 "path": "system.ruby.network"
1344 },
1345 "clk_domain": {
1346 "name": "clk_domain",
1347 "clock": [
1348 1
1349 ],
1350 "init_perf_level": 0,
1351 "voltage_domain": "system.voltage_domain",
1352 "eventq_index": 0,
1353 "cxx_class": "SrcClockDomain",
1354 "path": "system.ruby.clk_domain",
1355 "type": "SrcClockDomain",
1356 "domain_id": -1
1357 },
1358 "randomization": false,
1359 "eventq_index": 0,
1360 "default_p_state": "UNDEFINED",
1361 "p_state_clk_gate_max": 1000000000,
1362 "phys_mem": null,
1363 "type": "RubySystem",
1364 "p_state_clk_gate_min": 1,
1365 "hot_lines": false,
1366 "power_model": null,
1367 "path": "system.ruby",
1368 "memctrl_clk_domain": {
1369 "name": "memctrl_clk_domain",
1370 "clk_domain": "system.ruby.clk_domain",
1371 "eventq_index": 0,
1372 "cxx_class": "DerivedClockDomain",
1373 "path": "system.ruby.memctrl_clk_domain",
1374 "type": "DerivedClockDomain",
1375 "clk_divider": 3
1376 },
1377 "name": "ruby",
1378 "p_state_clk_gate_bins": 20,
1379 "block_size_bytes": 64,
1380 "access_backing_store": false,
1381 "number_of_virtual_networks": 5,
1382 "num_of_sequencers": 1,
1383 "dir_cntrl0": {
1384 "system": "system",
1385 "cluster_id": 0,
1386 "responseFromMemory": {
1387 "ordered": false,
1388 "name": "responseFromMemory",
1389 "cxx_class": "MessageBuffer",
1390 "randomization": false,
1391 "eventq_index": 0,
1392 "buffer_size": 0,
1393 "path": "system.ruby.dir_cntrl0.responseFromMemory",
1394 "type": "MessageBuffer"
1395 },
1396 "cxx_class": "Directory_Controller",
1397 "forwardFromDir": {
1398 "ordered": false,
1399 "name": "forwardFromDir",
1400 "cxx_class": "MessageBuffer",
1401 "randomization": false,
1402 "eventq_index": 0,
1403 "master": {
1404 "peer": "system.ruby.network.slave[4]",
1405 "role": "MASTER"
1406 },
1407 "buffer_size": 0,
1408 "path": "system.ruby.dir_cntrl0.forwardFromDir",
1409 "type": "MessageBuffer"
1410 },
1411 "dmaRequestToDir": {
1412 "ordered": true,
1413 "name": "dmaRequestToDir",
1414 "cxx_class": "MessageBuffer",
1415 "slave": {
1416 "peer": "system.ruby.network.master[3]",
1417 "role": "SLAVE"
1418 },
1419 "randomization": false,
1420 "eventq_index": 0,
1421 "buffer_size": 0,
1422 "path": "system.ruby.dir_cntrl0.dmaRequestToDir",
1423 "type": "MessageBuffer"
1424 },
1425 "type": "Directory_Controller",
1426 "recycle_latency": 10,
1427 "clk_domain": "system.ruby.clk_domain",
1428 "version": 0,
1429 "eventq_index": 0,
1430 "default_p_state": "UNDEFINED",
1431 "p_state_clk_gate_max": 1000000000,
1432 "directory_latency": 12,
1433 "number_of_TBEs": 256,
1434 "to_memory_controller_latency": 1,
1435 "p_state_clk_gate_min": 1,
1436 "responseFromDir": {
1437 "ordered": false,
1438 "name": "responseFromDir",
1439 "cxx_class": "MessageBuffer",
1440 "randomization": false,
1441 "eventq_index": 0,
1442 "master": {
1443 "peer": "system.ruby.network.slave[2]",
1444 "role": "MASTER"
1445 },
1446 "buffer_size": 0,
1447 "path": "system.ruby.dir_cntrl0.responseFromDir",
1448 "type": "MessageBuffer"
1449 },
1450 "transitions_per_cycle": 4,
1451 "memory": {
1452 "peer": "system.mem_ctrls.port",
1453 "role": "MASTER"
1454 },
1455 "power_model": null,
1456 "buffer_size": 0,
1457 "ruby_system": "system.ruby",
1458 "requestToDir": {
1459 "ordered": true,
1460 "name": "requestToDir",
1461 "cxx_class": "MessageBuffer",
1462 "slave": {
1463 "peer": "system.ruby.network.master[2]",
1464 "role": "SLAVE"
1465 },
1466 "randomization": false,
1467 "eventq_index": 0,
1468 "buffer_size": 0,
1469 "path": "system.ruby.dir_cntrl0.requestToDir",
1470 "type": "MessageBuffer"
1471 },
1472 "dmaResponseFromDir": {
1473 "ordered": true,
1474 "name": "dmaResponseFromDir",
1475 "cxx_class": "MessageBuffer",
1476 "randomization": false,
1477 "eventq_index": 0,
1478 "master": {
1479 "peer": "system.ruby.network.slave[3]",
1480 "role": "MASTER"
1481 },
1482 "buffer_size": 0,
1483 "path": "system.ruby.dir_cntrl0.dmaResponseFromDir",
1484 "type": "MessageBuffer"
1485 },
1486 "name": "dir_cntrl0",
1487 "p_state_clk_gate_bins": 20,
1488 "directory": {
1489 "name": "directory",
1{
2 "name": null,
3 "sim_quantum": 0,
4 "system": {
5 "kernel": "",
6 "mmap_using_noreserve": false,
7 "kernel_addr_check": true,
8 "symbolfile": "",
9 "readfile": "",
10 "thermal_model": null,
11 "cxx_class": "System",
12 "work_begin_cpu_id_exit": -1,
13 "load_offset": 0,
14 "work_begin_exit_count": 0,
15 "p_state_clk_gate_min": 1,
16 "memories": [
17 "system.mem_ctrls"
18 ],
19 "work_begin_ckpt_count": 0,
20 "clk_domain": {
21 "name": "clk_domain",
22 "clock": [
23 1
24 ],
25 "init_perf_level": 0,
26 "voltage_domain": "system.voltage_domain",
27 "eventq_index": 0,
28 "cxx_class": "SrcClockDomain",
29 "path": "system.clk_domain",
30 "type": "SrcClockDomain",
31 "domain_id": -1
32 },
33 "mem_ranges": [
34 "0:268435455:0:0:0:0"
35 ],
36 "eventq_index": 0,
37 "default_p_state": "UNDEFINED",
38 "p_state_clk_gate_max": 1000000000,
39 "dvfs_handler": {
40 "enable": false,
41 "name": "dvfs_handler",
42 "sys_clk_domain": "system.clk_domain",
43 "transition_latency": 100000,
44 "eventq_index": 0,
45 "cxx_class": "DVFSHandler",
46 "domains": [],
47 "path": "system.dvfs_handler",
48 "type": "DVFSHandler"
49 },
50 "work_end_exit_count": 0,
51 "type": "System",
52 "voltage_domain": {
53 "name": "voltage_domain",
54 "eventq_index": 0,
55 "voltage": [
56 "1.0"
57 ],
58 "cxx_class": "VoltageDomain",
59 "path": "system.voltage_domain",
60 "type": "VoltageDomain"
61 },
62 "cache_line_size": 64,
63 "boot_osflags": "a",
64 "system_port": {
65 "peer": "system.sys_port_proxy.slave[0]",
66 "role": "MASTER"
67 },
68 "sys_port_proxy": {
69 "system": "system",
70 "support_inst_reqs": true,
71 "slave": {
72 "peer": [
73 "system.system_port"
74 ],
75 "role": "SLAVE"
76 },
77 "name": "sys_port_proxy",
78 "p_state_clk_gate_min": 1,
79 "no_retry_on_stall": false,
80 "p_state_clk_gate_bins": 20,
81 "support_data_reqs": true,
82 "cxx_class": "RubyPortProxy",
83 "clk_domain": "system.clk_domain",
84 "power_model": null,
85 "is_cpu_sequencer": true,
86 "version": 0,
87 "eventq_index": 0,
88 "using_ruby_tester": false,
89 "default_p_state": "UNDEFINED",
90 "p_state_clk_gate_max": 1000000000,
91 "path": "system.sys_port_proxy",
92 "type": "RubyPortProxy",
93 "ruby_system": "system.ruby"
94 },
95 "power_model": null,
96 "work_cpus_ckpt_count": 0,
97 "thermal_components": [],
98 "path": "system",
99 "ruby": {
100 "all_instructions": false,
101 "memory_size_bits": 48,
102 "cxx_class": "RubySystem",
103 "l1_cntrl0": {
104 "requestFromCache": {
105 "ordered": true,
106 "name": "requestFromCache",
107 "cxx_class": "MessageBuffer",
108 "randomization": false,
109 "eventq_index": 0,
110 "master": {
111 "peer": "system.ruby.network.slave[0]",
112 "role": "MASTER"
113 },
114 "buffer_size": 0,
115 "path": "system.ruby.l1_cntrl0.requestFromCache",
116 "type": "MessageBuffer"
117 },
118 "cxx_class": "L1Cache_Controller",
119 "forwardToCache": {
120 "ordered": true,
121 "name": "forwardToCache",
122 "cxx_class": "MessageBuffer",
123 "slave": {
124 "peer": "system.ruby.network.master[0]",
125 "role": "SLAVE"
126 },
127 "randomization": false,
128 "eventq_index": 0,
129 "buffer_size": 0,
130 "path": "system.ruby.l1_cntrl0.forwardToCache",
131 "type": "MessageBuffer"
132 },
133 "system": "system",
134 "cluster_id": 0,
135 "sequencer": {
136 "no_retry_on_stall": false,
137 "deadlock_threshold": 500000,
138 "using_ruby_tester": false,
139 "system": "system",
140 "dcache": "system.ruby.l1_cntrl0.cacheMemory",
141 "cxx_class": "Sequencer",
142 "garnet_standalone": false,
143 "clk_domain": "system.cpu.clk_domain",
144 "icache_hit_latency": 1,
145 "version": 0,
146 "eventq_index": 0,
147 "default_p_state": "UNDEFINED",
148 "p_state_clk_gate_max": 1000000000,
149 "type": "RubySequencer",
150 "icache": "system.ruby.l1_cntrl0.cacheMemory",
151 "slave": {
152 "peer": [
153 "system.cpu.icache_port",
154 "system.cpu.dcache_port"
155 ],
156 "role": "SLAVE"
157 },
158 "p_state_clk_gate_min": 1,
159 "power_model": null,
160 "coreid": 99,
161 "path": "system.ruby.l1_cntrl0.sequencer",
162 "ruby_system": "system.ruby",
163 "support_inst_reqs": true,
164 "name": "sequencer",
165 "max_outstanding_requests": 16,
166 "p_state_clk_gate_bins": 20,
167 "dcache_hit_latency": 1,
168 "support_data_reqs": true,
169 "is_cpu_sequencer": true
170 },
171 "type": "L1Cache_Controller",
172 "issue_latency": 2,
173 "recycle_latency": 10,
174 "clk_domain": "system.cpu.clk_domain",
175 "version": 0,
176 "eventq_index": 0,
177 "default_p_state": "UNDEFINED",
178 "p_state_clk_gate_max": 1000000000,
179 "number_of_TBEs": 256,
180 "p_state_clk_gate_min": 1,
181 "responseToCache": {
182 "ordered": true,
183 "name": "responseToCache",
184 "cxx_class": "MessageBuffer",
185 "slave": {
186 "peer": "system.ruby.network.master[1]",
187 "role": "SLAVE"
188 },
189 "randomization": false,
190 "eventq_index": 0,
191 "buffer_size": 0,
192 "path": "system.ruby.l1_cntrl0.responseToCache",
193 "type": "MessageBuffer"
194 },
195 "transitions_per_cycle": 4,
196 "responseFromCache": {
197 "ordered": true,
198 "name": "responseFromCache",
199 "cxx_class": "MessageBuffer",
200 "randomization": false,
201 "eventq_index": 0,
202 "master": {
203 "peer": "system.ruby.network.slave[1]",
204 "role": "MASTER"
205 },
206 "buffer_size": 0,
207 "path": "system.ruby.l1_cntrl0.responseFromCache",
208 "type": "MessageBuffer"
209 },
210 "power_model": null,
211 "cache_response_latency": 12,
212 "buffer_size": 0,
213 "send_evictions": false,
214 "cacheMemory": {
215 "size": 256,
216 "resourceStalls": false,
217 "is_icache": false,
218 "name": "cacheMemory",
219 "eventq_index": 0,
220 "dataAccessLatency": 1,
221 "tagArrayBanks": 1,
222 "tagAccessLatency": 1,
223 "replacement_policy": {
224 "name": "replacement_policy",
225 "eventq_index": 0,
226 "assoc": 2,
227 "cxx_class": "PseudoLRUPolicy",
228 "path": "system.ruby.l1_cntrl0.cacheMemory.replacement_policy",
229 "block_size": 64,
230 "type": "PseudoLRUReplacementPolicy",
231 "size": 256
232 },
233 "assoc": 2,
234 "start_index_bit": 6,
235 "cxx_class": "CacheMemory",
236 "path": "system.ruby.l1_cntrl0.cacheMemory",
237 "block_size": 0,
238 "type": "RubyCache",
239 "dataArrayBanks": 1,
240 "ruby_system": "system.ruby"
241 },
242 "ruby_system": "system.ruby",
243 "name": "l1_cntrl0",
244 "p_state_clk_gate_bins": 20,
245 "mandatoryQueue": {
246 "ordered": false,
247 "name": "mandatoryQueue",
248 "cxx_class": "MessageBuffer",
249 "randomization": false,
250 "eventq_index": 0,
251 "buffer_size": 0,
252 "path": "system.ruby.l1_cntrl0.mandatoryQueue",
253 "type": "MessageBuffer"
254 },
255 "path": "system.ruby.l1_cntrl0"
256 },
257 "network": {
258 "int_link_buffers": [
259 {
260 "ordered": true,
261 "name": "int_link_buffers00",
262 "cxx_class": "MessageBuffer",
263 "randomization": false,
264 "eventq_index": 0,
265 "buffer_size": 0,
266 "path": "system.ruby.network.int_link_buffers00",
267 "type": "MessageBuffer"
268 },
269 {
270 "ordered": true,
271 "name": "int_link_buffers01",
272 "cxx_class": "MessageBuffer",
273 "randomization": false,
274 "eventq_index": 0,
275 "buffer_size": 0,
276 "path": "system.ruby.network.int_link_buffers01",
277 "type": "MessageBuffer"
278 },
279 {
280 "ordered": true,
281 "name": "int_link_buffers02",
282 "cxx_class": "MessageBuffer",
283 "randomization": false,
284 "eventq_index": 0,
285 "buffer_size": 0,
286 "path": "system.ruby.network.int_link_buffers02",
287 "type": "MessageBuffer"
288 },
289 {
290 "ordered": true,
291 "name": "int_link_buffers03",
292 "cxx_class": "MessageBuffer",
293 "randomization": false,
294 "eventq_index": 0,
295 "buffer_size": 0,
296 "path": "system.ruby.network.int_link_buffers03",
297 "type": "MessageBuffer"
298 },
299 {
300 "ordered": true,
301 "name": "int_link_buffers04",
302 "cxx_class": "MessageBuffer",
303 "randomization": false,
304 "eventq_index": 0,
305 "buffer_size": 0,
306 "path": "system.ruby.network.int_link_buffers04",
307 "type": "MessageBuffer"
308 },
309 {
310 "ordered": true,
311 "name": "int_link_buffers05",
312 "cxx_class": "MessageBuffer",
313 "randomization": false,
314 "eventq_index": 0,
315 "buffer_size": 0,
316 "path": "system.ruby.network.int_link_buffers05",
317 "type": "MessageBuffer"
318 },
319 {
320 "ordered": true,
321 "name": "int_link_buffers06",
322 "cxx_class": "MessageBuffer",
323 "randomization": false,
324 "eventq_index": 0,
325 "buffer_size": 0,
326 "path": "system.ruby.network.int_link_buffers06",
327 "type": "MessageBuffer"
328 },
329 {
330 "ordered": true,
331 "name": "int_link_buffers07",
332 "cxx_class": "MessageBuffer",
333 "randomization": false,
334 "eventq_index": 0,
335 "buffer_size": 0,
336 "path": "system.ruby.network.int_link_buffers07",
337 "type": "MessageBuffer"
338 },
339 {
340 "ordered": true,
341 "name": "int_link_buffers08",
342 "cxx_class": "MessageBuffer",
343 "randomization": false,
344 "eventq_index": 0,
345 "buffer_size": 0,
346 "path": "system.ruby.network.int_link_buffers08",
347 "type": "MessageBuffer"
348 },
349 {
350 "ordered": true,
351 "name": "int_link_buffers09",
352 "cxx_class": "MessageBuffer",
353 "randomization": false,
354 "eventq_index": 0,
355 "buffer_size": 0,
356 "path": "system.ruby.network.int_link_buffers09",
357 "type": "MessageBuffer"
358 },
359 {
360 "ordered": true,
361 "name": "int_link_buffers10",
362 "cxx_class": "MessageBuffer",
363 "randomization": false,
364 "eventq_index": 0,
365 "buffer_size": 0,
366 "path": "system.ruby.network.int_link_buffers10",
367 "type": "MessageBuffer"
368 },
369 {
370 "ordered": true,
371 "name": "int_link_buffers11",
372 "cxx_class": "MessageBuffer",
373 "randomization": false,
374 "eventq_index": 0,
375 "buffer_size": 0,
376 "path": "system.ruby.network.int_link_buffers11",
377 "type": "MessageBuffer"
378 },
379 {
380 "ordered": true,
381 "name": "int_link_buffers12",
382 "cxx_class": "MessageBuffer",
383 "randomization": false,
384 "eventq_index": 0,
385 "buffer_size": 0,
386 "path": "system.ruby.network.int_link_buffers12",
387 "type": "MessageBuffer"
388 },
389 {
390 "ordered": true,
391 "name": "int_link_buffers13",
392 "cxx_class": "MessageBuffer",
393 "randomization": false,
394 "eventq_index": 0,
395 "buffer_size": 0,
396 "path": "system.ruby.network.int_link_buffers13",
397 "type": "MessageBuffer"
398 },
399 {
400 "ordered": true,
401 "name": "int_link_buffers14",
402 "cxx_class": "MessageBuffer",
403 "randomization": false,
404 "eventq_index": 0,
405 "buffer_size": 0,
406 "path": "system.ruby.network.int_link_buffers14",
407 "type": "MessageBuffer"
408 },
409 {
410 "ordered": true,
411 "name": "int_link_buffers15",
412 "cxx_class": "MessageBuffer",
413 "randomization": false,
414 "eventq_index": 0,
415 "buffer_size": 0,
416 "path": "system.ruby.network.int_link_buffers15",
417 "type": "MessageBuffer"
418 },
419 {
420 "ordered": true,
421 "name": "int_link_buffers16",
422 "cxx_class": "MessageBuffer",
423 "randomization": false,
424 "eventq_index": 0,
425 "buffer_size": 0,
426 "path": "system.ruby.network.int_link_buffers16",
427 "type": "MessageBuffer"
428 },
429 {
430 "ordered": true,
431 "name": "int_link_buffers17",
432 "cxx_class": "MessageBuffer",
433 "randomization": false,
434 "eventq_index": 0,
435 "buffer_size": 0,
436 "path": "system.ruby.network.int_link_buffers17",
437 "type": "MessageBuffer"
438 },
439 {
440 "ordered": true,
441 "name": "int_link_buffers18",
442 "cxx_class": "MessageBuffer",
443 "randomization": false,
444 "eventq_index": 0,
445 "buffer_size": 0,
446 "path": "system.ruby.network.int_link_buffers18",
447 "type": "MessageBuffer"
448 },
449 {
450 "ordered": true,
451 "name": "int_link_buffers19",
452 "cxx_class": "MessageBuffer",
453 "randomization": false,
454 "eventq_index": 0,
455 "buffer_size": 0,
456 "path": "system.ruby.network.int_link_buffers19",
457 "type": "MessageBuffer"
458 },
459 {
460 "ordered": true,
461 "name": "int_link_buffers20",
462 "cxx_class": "MessageBuffer",
463 "randomization": false,
464 "eventq_index": 0,
465 "buffer_size": 0,
466 "path": "system.ruby.network.int_link_buffers20",
467 "type": "MessageBuffer"
468 },
469 {
470 "ordered": true,
471 "name": "int_link_buffers21",
472 "cxx_class": "MessageBuffer",
473 "randomization": false,
474 "eventq_index": 0,
475 "buffer_size": 0,
476 "path": "system.ruby.network.int_link_buffers21",
477 "type": "MessageBuffer"
478 },
479 {
480 "ordered": true,
481 "name": "int_link_buffers22",
482 "cxx_class": "MessageBuffer",
483 "randomization": false,
484 "eventq_index": 0,
485 "buffer_size": 0,
486 "path": "system.ruby.network.int_link_buffers22",
487 "type": "MessageBuffer"
488 },
489 {
490 "ordered": true,
491 "name": "int_link_buffers23",
492 "cxx_class": "MessageBuffer",
493 "randomization": false,
494 "eventq_index": 0,
495 "buffer_size": 0,
496 "path": "system.ruby.network.int_link_buffers23",
497 "type": "MessageBuffer"
498 },
499 {
500 "ordered": true,
501 "name": "int_link_buffers24",
502 "cxx_class": "MessageBuffer",
503 "randomization": false,
504 "eventq_index": 0,
505 "buffer_size": 0,
506 "path": "system.ruby.network.int_link_buffers24",
507 "type": "MessageBuffer"
508 },
509 {
510 "ordered": true,
511 "name": "int_link_buffers25",
512 "cxx_class": "MessageBuffer",
513 "randomization": false,
514 "eventq_index": 0,
515 "buffer_size": 0,
516 "path": "system.ruby.network.int_link_buffers25",
517 "type": "MessageBuffer"
518 },
519 {
520 "ordered": true,
521 "name": "int_link_buffers26",
522 "cxx_class": "MessageBuffer",
523 "randomization": false,
524 "eventq_index": 0,
525 "buffer_size": 0,
526 "path": "system.ruby.network.int_link_buffers26",
527 "type": "MessageBuffer"
528 },
529 {
530 "ordered": true,
531 "name": "int_link_buffers27",
532 "cxx_class": "MessageBuffer",
533 "randomization": false,
534 "eventq_index": 0,
535 "buffer_size": 0,
536 "path": "system.ruby.network.int_link_buffers27",
537 "type": "MessageBuffer"
538 },
539 {
540 "ordered": true,
541 "name": "int_link_buffers28",
542 "cxx_class": "MessageBuffer",
543 "randomization": false,
544 "eventq_index": 0,
545 "buffer_size": 0,
546 "path": "system.ruby.network.int_link_buffers28",
547 "type": "MessageBuffer"
548 },
549 {
550 "ordered": true,
551 "name": "int_link_buffers29",
552 "cxx_class": "MessageBuffer",
553 "randomization": false,
554 "eventq_index": 0,
555 "buffer_size": 0,
556 "path": "system.ruby.network.int_link_buffers29",
557 "type": "MessageBuffer"
558 },
559 {
560 "ordered": true,
561 "name": "int_link_buffers30",
562 "cxx_class": "MessageBuffer",
563 "randomization": false,
564 "eventq_index": 0,
565 "buffer_size": 0,
566 "path": "system.ruby.network.int_link_buffers30",
567 "type": "MessageBuffer"
568 },
569 {
570 "ordered": true,
571 "name": "int_link_buffers31",
572 "cxx_class": "MessageBuffer",
573 "randomization": false,
574 "eventq_index": 0,
575 "buffer_size": 0,
576 "path": "system.ruby.network.int_link_buffers31",
577 "type": "MessageBuffer"
578 },
579 {
580 "ordered": true,
581 "name": "int_link_buffers32",
582 "cxx_class": "MessageBuffer",
583 "randomization": false,
584 "eventq_index": 0,
585 "buffer_size": 0,
586 "path": "system.ruby.network.int_link_buffers32",
587 "type": "MessageBuffer"
588 },
589 {
590 "ordered": true,
591 "name": "int_link_buffers33",
592 "cxx_class": "MessageBuffer",
593 "randomization": false,
594 "eventq_index": 0,
595 "buffer_size": 0,
596 "path": "system.ruby.network.int_link_buffers33",
597 "type": "MessageBuffer"
598 },
599 {
600 "ordered": true,
601 "name": "int_link_buffers34",
602 "cxx_class": "MessageBuffer",
603 "randomization": false,
604 "eventq_index": 0,
605 "buffer_size": 0,
606 "path": "system.ruby.network.int_link_buffers34",
607 "type": "MessageBuffer"
608 },
609 {
610 "ordered": true,
611 "name": "int_link_buffers35",
612 "cxx_class": "MessageBuffer",
613 "randomization": false,
614 "eventq_index": 0,
615 "buffer_size": 0,
616 "path": "system.ruby.network.int_link_buffers35",
617 "type": "MessageBuffer"
618 },
619 {
620 "ordered": true,
621 "name": "int_link_buffers36",
622 "cxx_class": "MessageBuffer",
623 "randomization": false,
624 "eventq_index": 0,
625 "buffer_size": 0,
626 "path": "system.ruby.network.int_link_buffers36",
627 "type": "MessageBuffer"
628 },
629 {
630 "ordered": true,
631 "name": "int_link_buffers37",
632 "cxx_class": "MessageBuffer",
633 "randomization": false,
634 "eventq_index": 0,
635 "buffer_size": 0,
636 "path": "system.ruby.network.int_link_buffers37",
637 "type": "MessageBuffer"
638 },
639 {
640 "ordered": true,
641 "name": "int_link_buffers38",
642 "cxx_class": "MessageBuffer",
643 "randomization": false,
644 "eventq_index": 0,
645 "buffer_size": 0,
646 "path": "system.ruby.network.int_link_buffers38",
647 "type": "MessageBuffer"
648 },
649 {
650 "ordered": true,
651 "name": "int_link_buffers39",
652 "cxx_class": "MessageBuffer",
653 "randomization": false,
654 "eventq_index": 0,
655 "buffer_size": 0,
656 "path": "system.ruby.network.int_link_buffers39",
657 "type": "MessageBuffer"
658 }
659 ],
660 "cxx_class": "SimpleNetwork",
661 "clk_domain": "system.ruby.clk_domain",
662 "adaptive_routing": false,
663 "eventq_index": 0,
664 "default_p_state": "UNDEFINED",
665 "p_state_clk_gate_max": 1000000000,
666 "master": {
667 "peer": [
668 "system.ruby.l1_cntrl0.forwardToCache.slave",
669 "system.ruby.l1_cntrl0.responseToCache.slave",
670 "system.ruby.dir_cntrl0.requestToDir.slave",
671 "system.ruby.dir_cntrl0.dmaRequestToDir.slave"
672 ],
673 "role": "MASTER"
674 },
675 "topology": "Crossbar",
676 "type": "SimpleNetwork",
677 "slave": {
678 "peer": [
679 "system.ruby.l1_cntrl0.requestFromCache.master",
680 "system.ruby.l1_cntrl0.responseFromCache.master",
681 "system.ruby.dir_cntrl0.responseFromDir.master",
682 "system.ruby.dir_cntrl0.dmaResponseFromDir.master",
683 "system.ruby.dir_cntrl0.forwardFromDir.master"
684 ],
685 "role": "SLAVE"
686 },
687 "p_state_clk_gate_min": 1,
688 "int_links": [
689 {
690 "latency": 1,
691 "name": "int_links0",
692 "weight": 1,
693 "src_node": "system.ruby.network.routers0",
694 "dst_inport": "",
695 "link_id": 2,
696 "dst_node": "system.ruby.network.routers2",
697 "eventq_index": 0,
698 "src_outport": "",
699 "cxx_class": "SimpleIntLink",
700 "path": "system.ruby.network.int_links0",
701 "type": "SimpleIntLink",
702 "bandwidth_factor": 16
703 },
704 {
705 "latency": 1,
706 "name": "int_links1",
707 "weight": 1,
708 "src_node": "system.ruby.network.routers1",
709 "dst_inport": "",
710 "link_id": 3,
711 "dst_node": "system.ruby.network.routers2",
712 "eventq_index": 0,
713 "src_outport": "",
714 "cxx_class": "SimpleIntLink",
715 "path": "system.ruby.network.int_links1",
716 "type": "SimpleIntLink",
717 "bandwidth_factor": 16
718 },
719 {
720 "latency": 1,
721 "name": "int_links2",
722 "weight": 1,
723 "src_node": "system.ruby.network.routers2",
724 "dst_inport": "",
725 "link_id": 4,
726 "dst_node": "system.ruby.network.routers0",
727 "eventq_index": 0,
728 "src_outport": "",
729 "cxx_class": "SimpleIntLink",
730 "path": "system.ruby.network.int_links2",
731 "type": "SimpleIntLink",
732 "bandwidth_factor": 16
733 },
734 {
735 "latency": 1,
736 "name": "int_links3",
737 "weight": 1,
738 "src_node": "system.ruby.network.routers2",
739 "dst_inport": "",
740 "link_id": 5,
741 "dst_node": "system.ruby.network.routers1",
742 "eventq_index": 0,
743 "src_outport": "",
744 "cxx_class": "SimpleIntLink",
745 "path": "system.ruby.network.int_links3",
746 "type": "SimpleIntLink",
747 "bandwidth_factor": 16
748 }
749 ],
750 "routers": [
751 {
752 "router_id": 0,
753 "latency": 1,
754 "name": "routers0",
755 "p_state_clk_gate_min": 1,
756 "virt_nets": 5,
757 "p_state_clk_gate_bins": 20,
758 "cxx_class": "Switch",
759 "clk_domain": "system.ruby.clk_domain",
760 "power_model": null,
761 "eventq_index": 0,
762 "default_p_state": "UNDEFINED",
763 "p_state_clk_gate_max": 1000000000,
764 "path": "system.ruby.network.routers0",
765 "type": "Switch",
766 "port_buffers": [
767 {
768 "ordered": true,
769 "name": "port_buffers00",
770 "cxx_class": "MessageBuffer",
771 "randomization": false,
772 "eventq_index": 0,
773 "buffer_size": 0,
774 "path": "system.ruby.network.routers0.port_buffers00",
775 "type": "MessageBuffer"
776 },
777 {
778 "ordered": true,
779 "name": "port_buffers01",
780 "cxx_class": "MessageBuffer",
781 "randomization": false,
782 "eventq_index": 0,
783 "buffer_size": 0,
784 "path": "system.ruby.network.routers0.port_buffers01",
785 "type": "MessageBuffer"
786 },
787 {
788 "ordered": true,
789 "name": "port_buffers02",
790 "cxx_class": "MessageBuffer",
791 "randomization": false,
792 "eventq_index": 0,
793 "buffer_size": 0,
794 "path": "system.ruby.network.routers0.port_buffers02",
795 "type": "MessageBuffer"
796 },
797 {
798 "ordered": true,
799 "name": "port_buffers03",
800 "cxx_class": "MessageBuffer",
801 "randomization": false,
802 "eventq_index": 0,
803 "buffer_size": 0,
804 "path": "system.ruby.network.routers0.port_buffers03",
805 "type": "MessageBuffer"
806 },
807 {
808 "ordered": true,
809 "name": "port_buffers04",
810 "cxx_class": "MessageBuffer",
811 "randomization": false,
812 "eventq_index": 0,
813 "buffer_size": 0,
814 "path": "system.ruby.network.routers0.port_buffers04",
815 "type": "MessageBuffer"
816 },
817 {
818 "ordered": true,
819 "name": "port_buffers05",
820 "cxx_class": "MessageBuffer",
821 "randomization": false,
822 "eventq_index": 0,
823 "buffer_size": 0,
824 "path": "system.ruby.network.routers0.port_buffers05",
825 "type": "MessageBuffer"
826 },
827 {
828 "ordered": true,
829 "name": "port_buffers06",
830 "cxx_class": "MessageBuffer",
831 "randomization": false,
832 "eventq_index": 0,
833 "buffer_size": 0,
834 "path": "system.ruby.network.routers0.port_buffers06",
835 "type": "MessageBuffer"
836 },
837 {
838 "ordered": true,
839 "name": "port_buffers07",
840 "cxx_class": "MessageBuffer",
841 "randomization": false,
842 "eventq_index": 0,
843 "buffer_size": 0,
844 "path": "system.ruby.network.routers0.port_buffers07",
845 "type": "MessageBuffer"
846 },
847 {
848 "ordered": true,
849 "name": "port_buffers08",
850 "cxx_class": "MessageBuffer",
851 "randomization": false,
852 "eventq_index": 0,
853 "buffer_size": 0,
854 "path": "system.ruby.network.routers0.port_buffers08",
855 "type": "MessageBuffer"
856 },
857 {
858 "ordered": true,
859 "name": "port_buffers09",
860 "cxx_class": "MessageBuffer",
861 "randomization": false,
862 "eventq_index": 0,
863 "buffer_size": 0,
864 "path": "system.ruby.network.routers0.port_buffers09",
865 "type": "MessageBuffer"
866 },
867 {
868 "ordered": true,
869 "name": "port_buffers10",
870 "cxx_class": "MessageBuffer",
871 "randomization": false,
872 "eventq_index": 0,
873 "buffer_size": 0,
874 "path": "system.ruby.network.routers0.port_buffers10",
875 "type": "MessageBuffer"
876 },
877 {
878 "ordered": true,
879 "name": "port_buffers11",
880 "cxx_class": "MessageBuffer",
881 "randomization": false,
882 "eventq_index": 0,
883 "buffer_size": 0,
884 "path": "system.ruby.network.routers0.port_buffers11",
885 "type": "MessageBuffer"
886 },
887 {
888 "ordered": true,
889 "name": "port_buffers12",
890 "cxx_class": "MessageBuffer",
891 "randomization": false,
892 "eventq_index": 0,
893 "buffer_size": 0,
894 "path": "system.ruby.network.routers0.port_buffers12",
895 "type": "MessageBuffer"
896 },
897 {
898 "ordered": true,
899 "name": "port_buffers13",
900 "cxx_class": "MessageBuffer",
901 "randomization": false,
902 "eventq_index": 0,
903 "buffer_size": 0,
904 "path": "system.ruby.network.routers0.port_buffers13",
905 "type": "MessageBuffer"
906 },
907 {
908 "ordered": true,
909 "name": "port_buffers14",
910 "cxx_class": "MessageBuffer",
911 "randomization": false,
912 "eventq_index": 0,
913 "buffer_size": 0,
914 "path": "system.ruby.network.routers0.port_buffers14",
915 "type": "MessageBuffer"
916 }
917 ]
918 },
919 {
920 "router_id": 1,
921 "latency": 1,
922 "name": "routers1",
923 "p_state_clk_gate_min": 1,
924 "virt_nets": 5,
925 "p_state_clk_gate_bins": 20,
926 "cxx_class": "Switch",
927 "clk_domain": "system.ruby.clk_domain",
928 "power_model": null,
929 "eventq_index": 0,
930 "default_p_state": "UNDEFINED",
931 "p_state_clk_gate_max": 1000000000,
932 "path": "system.ruby.network.routers1",
933 "type": "Switch",
934 "port_buffers": [
935 {
936 "ordered": true,
937 "name": "port_buffers00",
938 "cxx_class": "MessageBuffer",
939 "randomization": false,
940 "eventq_index": 0,
941 "buffer_size": 0,
942 "path": "system.ruby.network.routers1.port_buffers00",
943 "type": "MessageBuffer"
944 },
945 {
946 "ordered": true,
947 "name": "port_buffers01",
948 "cxx_class": "MessageBuffer",
949 "randomization": false,
950 "eventq_index": 0,
951 "buffer_size": 0,
952 "path": "system.ruby.network.routers1.port_buffers01",
953 "type": "MessageBuffer"
954 },
955 {
956 "ordered": true,
957 "name": "port_buffers02",
958 "cxx_class": "MessageBuffer",
959 "randomization": false,
960 "eventq_index": 0,
961 "buffer_size": 0,
962 "path": "system.ruby.network.routers1.port_buffers02",
963 "type": "MessageBuffer"
964 },
965 {
966 "ordered": true,
967 "name": "port_buffers03",
968 "cxx_class": "MessageBuffer",
969 "randomization": false,
970 "eventq_index": 0,
971 "buffer_size": 0,
972 "path": "system.ruby.network.routers1.port_buffers03",
973 "type": "MessageBuffer"
974 },
975 {
976 "ordered": true,
977 "name": "port_buffers04",
978 "cxx_class": "MessageBuffer",
979 "randomization": false,
980 "eventq_index": 0,
981 "buffer_size": 0,
982 "path": "system.ruby.network.routers1.port_buffers04",
983 "type": "MessageBuffer"
984 },
985 {
986 "ordered": true,
987 "name": "port_buffers05",
988 "cxx_class": "MessageBuffer",
989 "randomization": false,
990 "eventq_index": 0,
991 "buffer_size": 0,
992 "path": "system.ruby.network.routers1.port_buffers05",
993 "type": "MessageBuffer"
994 },
995 {
996 "ordered": true,
997 "name": "port_buffers06",
998 "cxx_class": "MessageBuffer",
999 "randomization": false,
1000 "eventq_index": 0,
1001 "buffer_size": 0,
1002 "path": "system.ruby.network.routers1.port_buffers06",
1003 "type": "MessageBuffer"
1004 },
1005 {
1006 "ordered": true,
1007 "name": "port_buffers07",
1008 "cxx_class": "MessageBuffer",
1009 "randomization": false,
1010 "eventq_index": 0,
1011 "buffer_size": 0,
1012 "path": "system.ruby.network.routers1.port_buffers07",
1013 "type": "MessageBuffer"
1014 },
1015 {
1016 "ordered": true,
1017 "name": "port_buffers08",
1018 "cxx_class": "MessageBuffer",
1019 "randomization": false,
1020 "eventq_index": 0,
1021 "buffer_size": 0,
1022 "path": "system.ruby.network.routers1.port_buffers08",
1023 "type": "MessageBuffer"
1024 },
1025 {
1026 "ordered": true,
1027 "name": "port_buffers09",
1028 "cxx_class": "MessageBuffer",
1029 "randomization": false,
1030 "eventq_index": 0,
1031 "buffer_size": 0,
1032 "path": "system.ruby.network.routers1.port_buffers09",
1033 "type": "MessageBuffer"
1034 },
1035 {
1036 "ordered": true,
1037 "name": "port_buffers10",
1038 "cxx_class": "MessageBuffer",
1039 "randomization": false,
1040 "eventq_index": 0,
1041 "buffer_size": 0,
1042 "path": "system.ruby.network.routers1.port_buffers10",
1043 "type": "MessageBuffer"
1044 },
1045 {
1046 "ordered": true,
1047 "name": "port_buffers11",
1048 "cxx_class": "MessageBuffer",
1049 "randomization": false,
1050 "eventq_index": 0,
1051 "buffer_size": 0,
1052 "path": "system.ruby.network.routers1.port_buffers11",
1053 "type": "MessageBuffer"
1054 },
1055 {
1056 "ordered": true,
1057 "name": "port_buffers12",
1058 "cxx_class": "MessageBuffer",
1059 "randomization": false,
1060 "eventq_index": 0,
1061 "buffer_size": 0,
1062 "path": "system.ruby.network.routers1.port_buffers12",
1063 "type": "MessageBuffer"
1064 },
1065 {
1066 "ordered": true,
1067 "name": "port_buffers13",
1068 "cxx_class": "MessageBuffer",
1069 "randomization": false,
1070 "eventq_index": 0,
1071 "buffer_size": 0,
1072 "path": "system.ruby.network.routers1.port_buffers13",
1073 "type": "MessageBuffer"
1074 },
1075 {
1076 "ordered": true,
1077 "name": "port_buffers14",
1078 "cxx_class": "MessageBuffer",
1079 "randomization": false,
1080 "eventq_index": 0,
1081 "buffer_size": 0,
1082 "path": "system.ruby.network.routers1.port_buffers14",
1083 "type": "MessageBuffer"
1084 }
1085 ]
1086 },
1087 {
1088 "router_id": 2,
1089 "latency": 1,
1090 "name": "routers2",
1091 "p_state_clk_gate_min": 1,
1092 "virt_nets": 5,
1093 "p_state_clk_gate_bins": 20,
1094 "cxx_class": "Switch",
1095 "clk_domain": "system.ruby.clk_domain",
1096 "power_model": null,
1097 "eventq_index": 0,
1098 "default_p_state": "UNDEFINED",
1099 "p_state_clk_gate_max": 1000000000,
1100 "path": "system.ruby.network.routers2",
1101 "type": "Switch",
1102 "port_buffers": [
1103 {
1104 "ordered": true,
1105 "name": "port_buffers00",
1106 "cxx_class": "MessageBuffer",
1107 "randomization": false,
1108 "eventq_index": 0,
1109 "buffer_size": 0,
1110 "path": "system.ruby.network.routers2.port_buffers00",
1111 "type": "MessageBuffer"
1112 },
1113 {
1114 "ordered": true,
1115 "name": "port_buffers01",
1116 "cxx_class": "MessageBuffer",
1117 "randomization": false,
1118 "eventq_index": 0,
1119 "buffer_size": 0,
1120 "path": "system.ruby.network.routers2.port_buffers01",
1121 "type": "MessageBuffer"
1122 },
1123 {
1124 "ordered": true,
1125 "name": "port_buffers02",
1126 "cxx_class": "MessageBuffer",
1127 "randomization": false,
1128 "eventq_index": 0,
1129 "buffer_size": 0,
1130 "path": "system.ruby.network.routers2.port_buffers02",
1131 "type": "MessageBuffer"
1132 },
1133 {
1134 "ordered": true,
1135 "name": "port_buffers03",
1136 "cxx_class": "MessageBuffer",
1137 "randomization": false,
1138 "eventq_index": 0,
1139 "buffer_size": 0,
1140 "path": "system.ruby.network.routers2.port_buffers03",
1141 "type": "MessageBuffer"
1142 },
1143 {
1144 "ordered": true,
1145 "name": "port_buffers04",
1146 "cxx_class": "MessageBuffer",
1147 "randomization": false,
1148 "eventq_index": 0,
1149 "buffer_size": 0,
1150 "path": "system.ruby.network.routers2.port_buffers04",
1151 "type": "MessageBuffer"
1152 },
1153 {
1154 "ordered": true,
1155 "name": "port_buffers05",
1156 "cxx_class": "MessageBuffer",
1157 "randomization": false,
1158 "eventq_index": 0,
1159 "buffer_size": 0,
1160 "path": "system.ruby.network.routers2.port_buffers05",
1161 "type": "MessageBuffer"
1162 },
1163 {
1164 "ordered": true,
1165 "name": "port_buffers06",
1166 "cxx_class": "MessageBuffer",
1167 "randomization": false,
1168 "eventq_index": 0,
1169 "buffer_size": 0,
1170 "path": "system.ruby.network.routers2.port_buffers06",
1171 "type": "MessageBuffer"
1172 },
1173 {
1174 "ordered": true,
1175 "name": "port_buffers07",
1176 "cxx_class": "MessageBuffer",
1177 "randomization": false,
1178 "eventq_index": 0,
1179 "buffer_size": 0,
1180 "path": "system.ruby.network.routers2.port_buffers07",
1181 "type": "MessageBuffer"
1182 },
1183 {
1184 "ordered": true,
1185 "name": "port_buffers08",
1186 "cxx_class": "MessageBuffer",
1187 "randomization": false,
1188 "eventq_index": 0,
1189 "buffer_size": 0,
1190 "path": "system.ruby.network.routers2.port_buffers08",
1191 "type": "MessageBuffer"
1192 },
1193 {
1194 "ordered": true,
1195 "name": "port_buffers09",
1196 "cxx_class": "MessageBuffer",
1197 "randomization": false,
1198 "eventq_index": 0,
1199 "buffer_size": 0,
1200 "path": "system.ruby.network.routers2.port_buffers09",
1201 "type": "MessageBuffer"
1202 },
1203 {
1204 "ordered": true,
1205 "name": "port_buffers10",
1206 "cxx_class": "MessageBuffer",
1207 "randomization": false,
1208 "eventq_index": 0,
1209 "buffer_size": 0,
1210 "path": "system.ruby.network.routers2.port_buffers10",
1211 "type": "MessageBuffer"
1212 },
1213 {
1214 "ordered": true,
1215 "name": "port_buffers11",
1216 "cxx_class": "MessageBuffer",
1217 "randomization": false,
1218 "eventq_index": 0,
1219 "buffer_size": 0,
1220 "path": "system.ruby.network.routers2.port_buffers11",
1221 "type": "MessageBuffer"
1222 },
1223 {
1224 "ordered": true,
1225 "name": "port_buffers12",
1226 "cxx_class": "MessageBuffer",
1227 "randomization": false,
1228 "eventq_index": 0,
1229 "buffer_size": 0,
1230 "path": "system.ruby.network.routers2.port_buffers12",
1231 "type": "MessageBuffer"
1232 },
1233 {
1234 "ordered": true,
1235 "name": "port_buffers13",
1236 "cxx_class": "MessageBuffer",
1237 "randomization": false,
1238 "eventq_index": 0,
1239 "buffer_size": 0,
1240 "path": "system.ruby.network.routers2.port_buffers13",
1241 "type": "MessageBuffer"
1242 },
1243 {
1244 "ordered": true,
1245 "name": "port_buffers14",
1246 "cxx_class": "MessageBuffer",
1247 "randomization": false,
1248 "eventq_index": 0,
1249 "buffer_size": 0,
1250 "path": "system.ruby.network.routers2.port_buffers14",
1251 "type": "MessageBuffer"
1252 },
1253 {
1254 "ordered": true,
1255 "name": "port_buffers15",
1256 "cxx_class": "MessageBuffer",
1257 "randomization": false,
1258 "eventq_index": 0,
1259 "buffer_size": 0,
1260 "path": "system.ruby.network.routers2.port_buffers15",
1261 "type": "MessageBuffer"
1262 },
1263 {
1264 "ordered": true,
1265 "name": "port_buffers16",
1266 "cxx_class": "MessageBuffer",
1267 "randomization": false,
1268 "eventq_index": 0,
1269 "buffer_size": 0,
1270 "path": "system.ruby.network.routers2.port_buffers16",
1271 "type": "MessageBuffer"
1272 },
1273 {
1274 "ordered": true,
1275 "name": "port_buffers17",
1276 "cxx_class": "MessageBuffer",
1277 "randomization": false,
1278 "eventq_index": 0,
1279 "buffer_size": 0,
1280 "path": "system.ruby.network.routers2.port_buffers17",
1281 "type": "MessageBuffer"
1282 },
1283 {
1284 "ordered": true,
1285 "name": "port_buffers18",
1286 "cxx_class": "MessageBuffer",
1287 "randomization": false,
1288 "eventq_index": 0,
1289 "buffer_size": 0,
1290 "path": "system.ruby.network.routers2.port_buffers18",
1291 "type": "MessageBuffer"
1292 },
1293 {
1294 "ordered": true,
1295 "name": "port_buffers19",
1296 "cxx_class": "MessageBuffer",
1297 "randomization": false,
1298 "eventq_index": 0,
1299 "buffer_size": 0,
1300 "path": "system.ruby.network.routers2.port_buffers19",
1301 "type": "MessageBuffer"
1302 }
1303 ]
1304 }
1305 ],
1306 "power_model": null,
1307 "netifs": [],
1308 "control_msg_size": 8,
1309 "buffer_size": 0,
1310 "endpoint_bandwidth": 1000,
1311 "ruby_system": "system.ruby",
1312 "name": "network",
1313 "p_state_clk_gate_bins": 20,
1314 "ext_links": [
1315 {
1316 "latency": 1,
1317 "name": "ext_links0",
1318 "weight": 1,
1319 "ext_node": "system.ruby.l1_cntrl0",
1320 "link_id": 0,
1321 "eventq_index": 0,
1322 "cxx_class": "SimpleExtLink",
1323 "path": "system.ruby.network.ext_links0",
1324 "int_node": "system.ruby.network.routers0",
1325 "type": "SimpleExtLink",
1326 "bandwidth_factor": 16
1327 },
1328 {
1329 "latency": 1,
1330 "name": "ext_links1",
1331 "weight": 1,
1332 "ext_node": "system.ruby.dir_cntrl0",
1333 "link_id": 1,
1334 "eventq_index": 0,
1335 "cxx_class": "SimpleExtLink",
1336 "path": "system.ruby.network.ext_links1",
1337 "int_node": "system.ruby.network.routers1",
1338 "type": "SimpleExtLink",
1339 "bandwidth_factor": 16
1340 }
1341 ],
1342 "number_of_virtual_networks": 5,
1343 "path": "system.ruby.network"
1344 },
1345 "clk_domain": {
1346 "name": "clk_domain",
1347 "clock": [
1348 1
1349 ],
1350 "init_perf_level": 0,
1351 "voltage_domain": "system.voltage_domain",
1352 "eventq_index": 0,
1353 "cxx_class": "SrcClockDomain",
1354 "path": "system.ruby.clk_domain",
1355 "type": "SrcClockDomain",
1356 "domain_id": -1
1357 },
1358 "randomization": false,
1359 "eventq_index": 0,
1360 "default_p_state": "UNDEFINED",
1361 "p_state_clk_gate_max": 1000000000,
1362 "phys_mem": null,
1363 "type": "RubySystem",
1364 "p_state_clk_gate_min": 1,
1365 "hot_lines": false,
1366 "power_model": null,
1367 "path": "system.ruby",
1368 "memctrl_clk_domain": {
1369 "name": "memctrl_clk_domain",
1370 "clk_domain": "system.ruby.clk_domain",
1371 "eventq_index": 0,
1372 "cxx_class": "DerivedClockDomain",
1373 "path": "system.ruby.memctrl_clk_domain",
1374 "type": "DerivedClockDomain",
1375 "clk_divider": 3
1376 },
1377 "name": "ruby",
1378 "p_state_clk_gate_bins": 20,
1379 "block_size_bytes": 64,
1380 "access_backing_store": false,
1381 "number_of_virtual_networks": 5,
1382 "num_of_sequencers": 1,
1383 "dir_cntrl0": {
1384 "system": "system",
1385 "cluster_id": 0,
1386 "responseFromMemory": {
1387 "ordered": false,
1388 "name": "responseFromMemory",
1389 "cxx_class": "MessageBuffer",
1390 "randomization": false,
1391 "eventq_index": 0,
1392 "buffer_size": 0,
1393 "path": "system.ruby.dir_cntrl0.responseFromMemory",
1394 "type": "MessageBuffer"
1395 },
1396 "cxx_class": "Directory_Controller",
1397 "forwardFromDir": {
1398 "ordered": false,
1399 "name": "forwardFromDir",
1400 "cxx_class": "MessageBuffer",
1401 "randomization": false,
1402 "eventq_index": 0,
1403 "master": {
1404 "peer": "system.ruby.network.slave[4]",
1405 "role": "MASTER"
1406 },
1407 "buffer_size": 0,
1408 "path": "system.ruby.dir_cntrl0.forwardFromDir",
1409 "type": "MessageBuffer"
1410 },
1411 "dmaRequestToDir": {
1412 "ordered": true,
1413 "name": "dmaRequestToDir",
1414 "cxx_class": "MessageBuffer",
1415 "slave": {
1416 "peer": "system.ruby.network.master[3]",
1417 "role": "SLAVE"
1418 },
1419 "randomization": false,
1420 "eventq_index": 0,
1421 "buffer_size": 0,
1422 "path": "system.ruby.dir_cntrl0.dmaRequestToDir",
1423 "type": "MessageBuffer"
1424 },
1425 "type": "Directory_Controller",
1426 "recycle_latency": 10,
1427 "clk_domain": "system.ruby.clk_domain",
1428 "version": 0,
1429 "eventq_index": 0,
1430 "default_p_state": "UNDEFINED",
1431 "p_state_clk_gate_max": 1000000000,
1432 "directory_latency": 12,
1433 "number_of_TBEs": 256,
1434 "to_memory_controller_latency": 1,
1435 "p_state_clk_gate_min": 1,
1436 "responseFromDir": {
1437 "ordered": false,
1438 "name": "responseFromDir",
1439 "cxx_class": "MessageBuffer",
1440 "randomization": false,
1441 "eventq_index": 0,
1442 "master": {
1443 "peer": "system.ruby.network.slave[2]",
1444 "role": "MASTER"
1445 },
1446 "buffer_size": 0,
1447 "path": "system.ruby.dir_cntrl0.responseFromDir",
1448 "type": "MessageBuffer"
1449 },
1450 "transitions_per_cycle": 4,
1451 "memory": {
1452 "peer": "system.mem_ctrls.port",
1453 "role": "MASTER"
1454 },
1455 "power_model": null,
1456 "buffer_size": 0,
1457 "ruby_system": "system.ruby",
1458 "requestToDir": {
1459 "ordered": true,
1460 "name": "requestToDir",
1461 "cxx_class": "MessageBuffer",
1462 "slave": {
1463 "peer": "system.ruby.network.master[2]",
1464 "role": "SLAVE"
1465 },
1466 "randomization": false,
1467 "eventq_index": 0,
1468 "buffer_size": 0,
1469 "path": "system.ruby.dir_cntrl0.requestToDir",
1470 "type": "MessageBuffer"
1471 },
1472 "dmaResponseFromDir": {
1473 "ordered": true,
1474 "name": "dmaResponseFromDir",
1475 "cxx_class": "MessageBuffer",
1476 "randomization": false,
1477 "eventq_index": 0,
1478 "master": {
1479 "peer": "system.ruby.network.slave[3]",
1480 "role": "MASTER"
1481 },
1482 "buffer_size": 0,
1483 "path": "system.ruby.dir_cntrl0.dmaResponseFromDir",
1484 "type": "MessageBuffer"
1485 },
1486 "name": "dir_cntrl0",
1487 "p_state_clk_gate_bins": 20,
1488 "directory": {
1489 "name": "directory",
1490 "system": "system",
1490 "version": 0,
1491 "eventq_index": 0,
1492 "cxx_class": "DirectoryMemory",
1493 "path": "system.ruby.dir_cntrl0.directory",
1494 "type": "RubyDirectoryMemory",
1495 "numa_high_bit": 5,
1496 "size": 268435456
1497 },
1498 "path": "system.ruby.dir_cntrl0"
1499 }
1500 },
1501 "work_end_ckpt_count": 0,
1502 "mem_mode": "timing",
1503 "name": "system",
1504 "init_param": 0,
1505 "p_state_clk_gate_bins": 20,
1506 "load_addr_mask": 1099511627775,
1507 "cpu": {
1508 "do_statistics_insts": true,
1509 "numThreads": 1,
1510 "itb": {
1511 "name": "itb",
1512 "eventq_index": 0,
1513 "cxx_class": "RiscvISA::TLB",
1514 "path": "system.cpu.itb",
1515 "type": "RiscvTLB",
1516 "size": 64
1517 },
1518 "system": "system",
1519 "function_trace": false,
1520 "do_checkpoint_insts": true,
1521 "cxx_class": "TimingSimpleCPU",
1522 "max_loads_all_threads": 0,
1523 "clk_domain": {
1524 "name": "clk_domain",
1525 "clock": [
1526 1
1527 ],
1528 "init_perf_level": 0,
1529 "voltage_domain": "system.voltage_domain",
1530 "eventq_index": 0,
1531 "cxx_class": "SrcClockDomain",
1532 "path": "system.cpu.clk_domain",
1533 "type": "SrcClockDomain",
1534 "domain_id": -1
1535 },
1536 "function_trace_start": 0,
1537 "cpu_id": 0,
1538 "checker": null,
1539 "eventq_index": 0,
1540 "default_p_state": "UNDEFINED",
1541 "p_state_clk_gate_max": 1000000000,
1542 "do_quiesce": true,
1543 "type": "TimingSimpleCPU",
1544 "profile": 0,
1545 "icache_port": {
1546 "peer": "system.ruby.l1_cntrl0.sequencer.slave[0]",
1547 "role": "MASTER"
1548 },
1549 "p_state_clk_gate_bins": 20,
1550 "p_state_clk_gate_min": 1,
1491 "version": 0,
1492 "eventq_index": 0,
1493 "cxx_class": "DirectoryMemory",
1494 "path": "system.ruby.dir_cntrl0.directory",
1495 "type": "RubyDirectoryMemory",
1496 "numa_high_bit": 5,
1497 "size": 268435456
1498 },
1499 "path": "system.ruby.dir_cntrl0"
1500 }
1501 },
1502 "work_end_ckpt_count": 0,
1503 "mem_mode": "timing",
1504 "name": "system",
1505 "init_param": 0,
1506 "p_state_clk_gate_bins": 20,
1507 "load_addr_mask": 1099511627775,
1508 "cpu": {
1509 "do_statistics_insts": true,
1510 "numThreads": 1,
1511 "itb": {
1512 "name": "itb",
1513 "eventq_index": 0,
1514 "cxx_class": "RiscvISA::TLB",
1515 "path": "system.cpu.itb",
1516 "type": "RiscvTLB",
1517 "size": 64
1518 },
1519 "system": "system",
1520 "function_trace": false,
1521 "do_checkpoint_insts": true,
1522 "cxx_class": "TimingSimpleCPU",
1523 "max_loads_all_threads": 0,
1524 "clk_domain": {
1525 "name": "clk_domain",
1526 "clock": [
1527 1
1528 ],
1529 "init_perf_level": 0,
1530 "voltage_domain": "system.voltage_domain",
1531 "eventq_index": 0,
1532 "cxx_class": "SrcClockDomain",
1533 "path": "system.cpu.clk_domain",
1534 "type": "SrcClockDomain",
1535 "domain_id": -1
1536 },
1537 "function_trace_start": 0,
1538 "cpu_id": 0,
1539 "checker": null,
1540 "eventq_index": 0,
1541 "default_p_state": "UNDEFINED",
1542 "p_state_clk_gate_max": 1000000000,
1543 "do_quiesce": true,
1544 "type": "TimingSimpleCPU",
1545 "profile": 0,
1546 "icache_port": {
1547 "peer": "system.ruby.l1_cntrl0.sequencer.slave[0]",
1548 "role": "MASTER"
1549 },
1550 "p_state_clk_gate_bins": 20,
1551 "p_state_clk_gate_min": 1,
1552 "syscallRetryLatency": 10000,
1551 "interrupts": [
1552 {
1553 "eventq_index": 0,
1554 "path": "system.cpu.interrupts",
1555 "type": "RiscvInterrupts",
1556 "name": "interrupts",
1557 "cxx_class": "RiscvISA::Interrupts"
1558 }
1559 ],
1560 "dcache_port": {
1561 "peer": "system.ruby.l1_cntrl0.sequencer.slave[1]",
1562 "role": "MASTER"
1563 },
1564 "socket_id": 0,
1565 "power_model": null,
1566 "max_insts_all_threads": 0,
1567 "path": "system.cpu",
1568 "max_loads_any_thread": 0,
1569 "switched_out": false,
1570 "workload": [
1571 {
1572 "uid": 100,
1573 "pid": 100,
1574 "kvmInSE": false,
1553 "interrupts": [
1554 {
1555 "eventq_index": 0,
1556 "path": "system.cpu.interrupts",
1557 "type": "RiscvInterrupts",
1558 "name": "interrupts",
1559 "cxx_class": "RiscvISA::Interrupts"
1560 }
1561 ],
1562 "dcache_port": {
1563 "peer": "system.ruby.l1_cntrl0.sequencer.slave[1]",
1564 "role": "MASTER"
1565 },
1566 "socket_id": 0,
1567 "power_model": null,
1568 "max_insts_all_threads": 0,
1569 "path": "system.cpu",
1570 "max_loads_any_thread": 0,
1571 "switched_out": false,
1572 "workload": [
1573 {
1574 "uid": 100,
1575 "pid": 100,
1576 "kvmInSE": false,
1575 "cxx_class": "LiveProcess",
1576 "executable": "/z/powerjg/gem5-upstream/tests/test-progs/hello/bin/riscv/linux/hello",
1577 "cxx_class": "Process",
1578 "executable": "/home/ar4jc/gem5/tests/testing/../test-progs/hello/bin/riscv/linux/hello",
1577 "drivers": [],
1578 "system": "system",
1579 "gid": 100,
1580 "eventq_index": 0,
1581 "env": [],
1579 "drivers": [],
1580 "system": "system",
1581 "gid": 100,
1582 "eventq_index": 0,
1583 "env": [],
1582 "input": "cin",
1583 "ppid": 99,
1584 "type": "LiveProcess",
1584 "maxStackSize": 67108864,
1585 "ppid": 0,
1586 "type": "Process",
1585 "cwd": "",
1587 "cwd": "",
1588 "pgid": 100,
1586 "simpoint": 0,
1587 "euid": 100,
1589 "simpoint": 0,
1590 "euid": 100,
1591 "input": "cin",
1588 "path": "system.cpu.workload",
1592 "path": "system.cpu.workload",
1589 "max_stack_size": 67108864,
1590 "name": "workload",
1591 "cmd": [
1592 "hello"
1593 ],
1594 "errout": "cerr",
1595 "useArchPT": false,
1596 "egid": 100,
1597 "output": "cout"
1598 }
1599 ],
1600 "name": "cpu",
1601 "dtb": {
1602 "name": "dtb",
1603 "eventq_index": 0,
1604 "cxx_class": "RiscvISA::TLB",
1605 "path": "system.cpu.dtb",
1606 "type": "RiscvTLB",
1607 "size": 64
1608 },
1609 "simpoint_start_insts": [],
1610 "max_insts_any_thread": 0,
1611 "progress_interval": 0,
1612 "branchPred": null,
1613 "isa": [
1614 {
1615 "eventq_index": 0,
1616 "path": "system.cpu.isa",
1617 "type": "RiscvISA",
1618 "name": "isa",
1619 "cxx_class": "RiscvISA::ISA"
1620 }
1621 ],
1622 "tracer": {
1623 "eventq_index": 0,
1624 "path": "system.cpu.tracer",
1625 "type": "ExeTracer",
1626 "name": "tracer",
1627 "cxx_class": "Trace::ExeTracer"
1628 }
1629 },
1630 "multi_thread": false,
1631 "mem_ctrls": [
1632 {
1633 "static_frontend_latency": 10,
1634 "tRFC": 260,
1635 "activation_limit": 4,
1636 "in_addr_map": true,
1637 "IDD3N2": "0.0",
1638 "tWTR": 8,
1639 "IDD52": "0.0",
1640 "clk_domain": "system.clk_domain",
1641 "channels": 1,
1642 "write_buffer_size": 64,
1643 "device_bus_width": 8,
1644 "VDD": "1.5",
1645 "write_high_thresh_perc": 85,
1646 "cxx_class": "DRAMCtrl",
1647 "bank_groups_per_rank": 0,
1648 "IDD2N2": "0.0",
1649 "port": {
1650 "peer": "system.ruby.dir_cntrl0.memory",
1651 "role": "SLAVE"
1652 },
1653 "tCCD_L": 0,
1654 "IDD2N": "0.032",
1655 "p_state_clk_gate_min": 1,
1656 "null": false,
1657 "IDD2P1": "0.032",
1658 "eventq_index": 0,
1659 "tRRD": 6,
1660 "tRTW": 3,
1661 "IDD4R": "0.157",
1662 "burst_length": 8,
1663 "tRTP": 8,
1664 "IDD4W": "0.125",
1665 "tWR": 15,
1666 "banks_per_rank": 8,
1667 "devices_per_rank": 8,
1668 "IDD2P02": "0.0",
1669 "default_p_state": "UNDEFINED",
1670 "p_state_clk_gate_max": 1000000000,
1671 "IDD6": "0.02",
1672 "IDD5": "0.235",
1673 "tRCD": 14,
1674 "type": "DRAMCtrl",
1675 "IDD3P02": "0.0",
1676 "tRRD_L": 0,
1677 "IDD0": "0.055",
1678 "IDD62": "0.0",
1679 "min_writes_per_switch": 16,
1680 "mem_sched_policy": "frfcfs",
1681 "IDD02": "0.0",
1682 "IDD2P0": "0.0",
1683 "ranks_per_channel": 2,
1684 "page_policy": "open_adaptive",
1685 "IDD4W2": "0.0",
1686 "tCS": 3,
1687 "power_model": null,
1688 "tCL": 14,
1689 "read_buffer_size": 32,
1690 "conf_table_reported": true,
1691 "tCK": 1,
1692 "tRAS": 35,
1693 "tRP": 14,
1694 "tBURST": 5,
1695 "path": "system.mem_ctrls",
1696 "tXP": 6,
1697 "tXS": 270,
1698 "addr_mapping": "RoRaBaCoCh",
1699 "IDD3P0": "0.0",
1700 "IDD3P1": "0.038",
1701 "IDD3N": "0.038",
1702 "name": "mem_ctrls",
1703 "tXSDLL": 0,
1704 "device_size": 536870912,
1705 "kvm_map": true,
1706 "dll": true,
1707 "tXAW": 30,
1708 "write_low_thresh_perc": 50,
1709 "range": "0:268435455:5:19:0:0",
1710 "VDD2": "0.0",
1711 "IDD2P12": "0.0",
1712 "p_state_clk_gate_bins": 20,
1713 "tXPDLL": 0,
1714 "IDD4R2": "0.0",
1715 "device_rowbuffer_size": 1024,
1716 "static_backend_latency": 10,
1717 "max_accesses_per_row": 16,
1718 "IDD3P12": "0.0",
1719 "tREFI": 7800
1720 }
1721 ],
1722 "exit_on_work_items": false,
1723 "work_item_id": -1,
1724 "num_work_ids": 16
1725 },
1726 "time_sync_period": 100000000,
1727 "eventq_index": 0,
1728 "time_sync_spin_threshold": 100000,
1729 "cxx_class": "Root",
1730 "path": "root",
1731 "time_sync_enable": false,
1732 "type": "Root",
1733 "full_system": false
1734}
1593 "name": "workload",
1594 "cmd": [
1595 "hello"
1596 ],
1597 "errout": "cerr",
1598 "useArchPT": false,
1599 "egid": 100,
1600 "output": "cout"
1601 }
1602 ],
1603 "name": "cpu",
1604 "dtb": {
1605 "name": "dtb",
1606 "eventq_index": 0,
1607 "cxx_class": "RiscvISA::TLB",
1608 "path": "system.cpu.dtb",
1609 "type": "RiscvTLB",
1610 "size": 64
1611 },
1612 "simpoint_start_insts": [],
1613 "max_insts_any_thread": 0,
1614 "progress_interval": 0,
1615 "branchPred": null,
1616 "isa": [
1617 {
1618 "eventq_index": 0,
1619 "path": "system.cpu.isa",
1620 "type": "RiscvISA",
1621 "name": "isa",
1622 "cxx_class": "RiscvISA::ISA"
1623 }
1624 ],
1625 "tracer": {
1626 "eventq_index": 0,
1627 "path": "system.cpu.tracer",
1628 "type": "ExeTracer",
1629 "name": "tracer",
1630 "cxx_class": "Trace::ExeTracer"
1631 }
1632 },
1633 "multi_thread": false,
1634 "mem_ctrls": [
1635 {
1636 "static_frontend_latency": 10,
1637 "tRFC": 260,
1638 "activation_limit": 4,
1639 "in_addr_map": true,
1640 "IDD3N2": "0.0",
1641 "tWTR": 8,
1642 "IDD52": "0.0",
1643 "clk_domain": "system.clk_domain",
1644 "channels": 1,
1645 "write_buffer_size": 64,
1646 "device_bus_width": 8,
1647 "VDD": "1.5",
1648 "write_high_thresh_perc": 85,
1649 "cxx_class": "DRAMCtrl",
1650 "bank_groups_per_rank": 0,
1651 "IDD2N2": "0.0",
1652 "port": {
1653 "peer": "system.ruby.dir_cntrl0.memory",
1654 "role": "SLAVE"
1655 },
1656 "tCCD_L": 0,
1657 "IDD2N": "0.032",
1658 "p_state_clk_gate_min": 1,
1659 "null": false,
1660 "IDD2P1": "0.032",
1661 "eventq_index": 0,
1662 "tRRD": 6,
1663 "tRTW": 3,
1664 "IDD4R": "0.157",
1665 "burst_length": 8,
1666 "tRTP": 8,
1667 "IDD4W": "0.125",
1668 "tWR": 15,
1669 "banks_per_rank": 8,
1670 "devices_per_rank": 8,
1671 "IDD2P02": "0.0",
1672 "default_p_state": "UNDEFINED",
1673 "p_state_clk_gate_max": 1000000000,
1674 "IDD6": "0.02",
1675 "IDD5": "0.235",
1676 "tRCD": 14,
1677 "type": "DRAMCtrl",
1678 "IDD3P02": "0.0",
1679 "tRRD_L": 0,
1680 "IDD0": "0.055",
1681 "IDD62": "0.0",
1682 "min_writes_per_switch": 16,
1683 "mem_sched_policy": "frfcfs",
1684 "IDD02": "0.0",
1685 "IDD2P0": "0.0",
1686 "ranks_per_channel": 2,
1687 "page_policy": "open_adaptive",
1688 "IDD4W2": "0.0",
1689 "tCS": 3,
1690 "power_model": null,
1691 "tCL": 14,
1692 "read_buffer_size": 32,
1693 "conf_table_reported": true,
1694 "tCK": 1,
1695 "tRAS": 35,
1696 "tRP": 14,
1697 "tBURST": 5,
1698 "path": "system.mem_ctrls",
1699 "tXP": 6,
1700 "tXS": 270,
1701 "addr_mapping": "RoRaBaCoCh",
1702 "IDD3P0": "0.0",
1703 "IDD3P1": "0.038",
1704 "IDD3N": "0.038",
1705 "name": "mem_ctrls",
1706 "tXSDLL": 0,
1707 "device_size": 536870912,
1708 "kvm_map": true,
1709 "dll": true,
1710 "tXAW": 30,
1711 "write_low_thresh_perc": 50,
1712 "range": "0:268435455:5:19:0:0",
1713 "VDD2": "0.0",
1714 "IDD2P12": "0.0",
1715 "p_state_clk_gate_bins": 20,
1716 "tXPDLL": 0,
1717 "IDD4R2": "0.0",
1718 "device_rowbuffer_size": 1024,
1719 "static_backend_latency": 10,
1720 "max_accesses_per_row": 16,
1721 "IDD3P12": "0.0",
1722 "tREFI": 7800
1723 }
1724 ],
1725 "exit_on_work_items": false,
1726 "work_item_id": -1,
1727 "num_work_ids": 16
1728 },
1729 "time_sync_period": 100000000,
1730 "eventq_index": 0,
1731 "time_sync_spin_threshold": 100000,
1732 "cxx_class": "Root",
1733 "path": "root",
1734 "time_sync_enable": false,
1735 "type": "Root",
1736 "full_system": false
1737}