diff --git a/configs/ruby/Network_test.py b/configs/ruby/Network_test.py index 308354f0f..0877ac00a 100644 --- a/configs/ruby/Network_test.py +++ b/configs/ruby/Network_test.py @@ -41,7 +41,7 @@ class Cache(RubyCache): def define_options(parser): return -def create_system(options, system, piobus, dma_devices): +def create_system(options, system, piobus, dma_devices, ruby_system): if buildEnv['PROTOCOL'] != 'Network_test': panic("This script requires the Network_test protocol to be built.") @@ -85,13 +85,15 @@ def create_system(options, system, piobus, dma_devices): # l1_cntrl = L1Cache_Controller(version = i, cntrl_id = cntrl_count, - cacheMemory = cache) + cacheMemory = cache, + ruby_system = ruby_system) cpu_seq = RubySequencer(icache = cache, dcache = cache, physMemPort = system.physmem.port, physmem = system.physmem, - using_network_tester = True) + using_network_tester = True, + ruby_system = ruby_system) l1_cntrl.sequencer = cpu_seq @@ -126,7 +128,8 @@ def create_system(options, system, piobus, dma_devices): directory = \ RubyDirectoryMemory(version = i, size = dir_size), - memBuffer = mem_cntrl) + memBuffer = mem_cntrl, + ruby_system = ruby_system) exec("system.dir_cntrl%d = dir_cntrl" % i) dir_cntrl_nodes.append(dir_cntrl) diff --git a/src/mem/protocol/Network_test-cache.sm b/src/mem/protocol/Network_test-cache.sm index b97819ca3..d3b649e89 100644 --- a/src/mem/protocol/Network_test-cache.sm +++ b/src/mem/protocol/Network_test-cache.sm @@ -131,6 +131,9 @@ machine(L1Cache, "Network_test L1 Cache") return OOD; } + DataBlock getDataBlock(Address addr), return_by_ref="yes" { + error("Network Test does not support get data block."); + } // NETWORK PORTS diff --git a/src/mem/protocol/Network_test-dir.sm b/src/mem/protocol/Network_test-dir.sm index 593a409d0..57736b66d 100644 --- a/src/mem/protocol/Network_test-dir.sm +++ b/src/mem/protocol/Network_test-dir.sm @@ -55,7 +55,7 @@ machine(Directory, "Network_test Directory") // TYPES // DirectoryEntry - structure(Entry, desc="...") { + structure(Entry, desc="...", interface="AbstractEntry") { State DirectoryState, desc="Directory state"; DataBlock DataBlk, desc="data for the block"; } @@ -76,6 +76,10 @@ machine(Directory, "Network_test Directory") void setAccessPermission(Address addr, State state) { } + DataBlock getDataBlock(Address addr), return_by_ref="yes" { + error("Network Test does not support get data block."); + } + // ** IN_PORTS ** in_port(requestQueue_in, RequestMsg, requestToDir) {