From 01f792a3675983411ff77b54cbee7ffee2a3d5d5 Mon Sep 17 00:00:00 2001 From: "Emilio Castillo ext:(%2C%20Nilay%20Vaish%20%3Cnilay%40cs.wisc.edu%3E)" Date: Mon, 1 Sep 2014 16:55:30 -0500 Subject: ruby: Fixes clock domains in configuration files This patch fixes scripts related to ruby by adding the ruby clock domain. Now the L1 controllers and the Sequencer shares the cpu clock domain, while the rest of the components use the ruby clock domain. Before this patch, running simulations with the cpu clock set at 2GHz or 1GHz will output the same time results and could distort power measurements. Committed by: Nilay Vaish --- configs/ruby/MESI_Three_Level.py | 2 ++ configs/ruby/MESI_Two_Level.py | 2 ++ configs/ruby/MI_example.py | 2 ++ configs/ruby/MOESI_CMP_directory.py | 2 ++ configs/ruby/MOESI_CMP_token.py | 2 ++ configs/ruby/MOESI_hammer.py | 2 ++ 6 files changed, 12 insertions(+) (limited to 'configs/ruby') diff --git a/configs/ruby/MESI_Three_Level.py b/configs/ruby/MESI_Three_Level.py index 966c80172..ee6ceccf9 100644 --- a/configs/ruby/MESI_Three_Level.py +++ b/configs/ruby/MESI_Three_Level.py @@ -102,9 +102,11 @@ def create_system(options, system, dma_ports, ruby_system): l0_cntrl = L0Cache_Controller(version = i*num_cpus_per_cluster + j, Icache = l0i_cache, Dcache = l0d_cache, send_evictions = (options.cpu_type == "detailed"), + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) cpu_seq = RubySequencer(version = i, icache = l0i_cache, + clk_domain=system.cpu[i].clk_domain, dcache = l0d_cache, ruby_system = ruby_system) l0_cntrl.sequencer = cpu_seq diff --git a/configs/ruby/MESI_Two_Level.py b/configs/ruby/MESI_Two_Level.py index 845d5cf22..c70c599c7 100644 --- a/configs/ruby/MESI_Two_Level.py +++ b/configs/ruby/MESI_Two_Level.py @@ -95,12 +95,14 @@ def create_system(options, system, dma_ports, ruby_system): options.cpu_type == "detailed"), prefetcher = prefetcher, ruby_system = ruby_system, + clk_domain=system.cpu[i].clk_domain, transitions_per_cycle=options.ports, enable_prefetch = False) cpu_seq = RubySequencer(version = i, icache = l1i_cache, dcache = l1d_cache, + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) l1_cntrl.sequencer = cpu_seq diff --git a/configs/ruby/MI_example.py b/configs/ruby/MI_example.py index 9fb6ca366..012479250 100644 --- a/configs/ruby/MI_example.py +++ b/configs/ruby/MI_example.py @@ -82,11 +82,13 @@ def create_system(options, system, dma_ports, ruby_system): send_evictions = ( options.cpu_type == "detailed"), transitions_per_cycle = options.ports, + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) cpu_seq = RubySequencer(version = i, icache = cache, dcache = cache, + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) l1_cntrl.sequencer = cpu_seq diff --git a/configs/ruby/MOESI_CMP_directory.py b/configs/ruby/MOESI_CMP_directory.py index a7de3bf8f..aa474209f 100644 --- a/configs/ruby/MOESI_CMP_directory.py +++ b/configs/ruby/MOESI_CMP_directory.py @@ -92,11 +92,13 @@ def create_system(options, system, dma_ports, ruby_system): send_evictions = ( options.cpu_type == "detailed"), transitions_per_cycle = options.ports, + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) cpu_seq = RubySequencer(version = i, icache = l1i_cache, dcache = l1d_cache, + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) l1_cntrl.sequencer = cpu_seq diff --git a/configs/ruby/MOESI_CMP_token.py b/configs/ruby/MOESI_CMP_token.py index 52c1b44f4..36a532574 100644 --- a/configs/ruby/MOESI_CMP_token.py +++ b/configs/ruby/MOESI_CMP_token.py @@ -112,11 +112,13 @@ def create_system(options, system, dma_ports, ruby_system): send_evictions = ( options.cpu_type == "detailed"), transitions_per_cycle = options.ports, + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) cpu_seq = RubySequencer(version = i, icache = l1i_cache, dcache = l1d_cache, + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) l1_cntrl.sequencer = cpu_seq diff --git a/configs/ruby/MOESI_hammer.py b/configs/ruby/MOESI_hammer.py index eaa3bc7a2..de98fd0c2 100644 --- a/configs/ruby/MOESI_hammer.py +++ b/configs/ruby/MOESI_hammer.py @@ -105,11 +105,13 @@ def create_system(options, system, dma_ports, ruby_system): send_evictions = ( options.cpu_type == "detailed"), transitions_per_cycle = options.ports, + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) cpu_seq = RubySequencer(version = i, icache = l1i_cache, dcache = l1d_cache, + clk_domain=system.cpu[i].clk_domain, ruby_system = ruby_system) l1_cntrl.sequencer = cpu_seq -- cgit v1.2.3