Network_test: Conform it with functional access changes in Ruby
Addition of functional access support to Ruby necessitated some changes to the way coherence protocols are written. I had forgotten to update the Network_test protocol. This patch makes those updates.
This commit is contained in:
parent
45b411fc5f
commit
5e0851d554
3 changed files with 15 additions and 5 deletions
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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) {
|
||||
|
|
Loading…
Reference in a new issue