Ruby: Remove the physMemPort and instead access memory directly

This patch removes the physMemPort from the RubySequencer and instead
uses the system pointer to access the physmem. The system already
keeps track of the physmem and the valid memory address ranges, and
with this patch we merely make use of that existing functionality. The
memory is modified so that it is possible to call the access functions
(atomic and functional) without going through the port, and the memory
is allowed to be unconnected, i.e. have no ports (since Ruby does not
attach it like the conventional memory system).
This commit is contained in:
Andreas Hansson
2012-03-30 09:42:36 -04:00
parent f9d403a7b9
commit a128ba7cd1
12 changed files with 17 additions and 62 deletions

View File

@@ -118,8 +118,6 @@ def create_system(options, system, piobus, dma_devices, ruby_system):
cpu_seq = RubySequencer(version = i,
icache = l1i_cache,
dcache = l1d_cache,
physMemPort = system.physmem.port,
physmem = system.physmem,
ruby_system = ruby_system)
l1_cntrl.sequencer = cpu_seq
@@ -190,8 +188,6 @@ def create_system(options, system, piobus, dma_devices, ruby_system):
# Create the Ruby objects associated with the dma controller
#
dma_seq = DMASequencer(version = i,
physMemPort = system.physmem.port,
physmem = system.physmem,
ruby_system = ruby_system)
dma_cntrl = DMA_Controller(version = i,