mem: Split the various protocols out of the gem5 master/slave ports.

This makes the protocols easier to see in their entirity, and makes it
easier to add a new type of port which only supports the functional
protocol.

Change-Id: If5d639bef45062f0a23af2ac46f50933e6a8f144
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/20228
Maintainer: Gabe Black <gabeblack@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
This commit is contained in:
Gabe Black
2019-08-15 16:41:51 -07:00
parent 34b22c298c
commit d97e4e1dd0
9 changed files with 868 additions and 275 deletions

View File

@@ -60,12 +60,14 @@ SimObject('MemDelay.py')
Source('abstract_mem.cc')
Source('addr_mapper.cc')
Source('atomic_protocol.cc')
Source('bridge.cc')
Source('coherent_xbar.cc')
Source('drampower.cc')
Source('dram_ctrl.cc')
Source('external_master.cc')
Source('external_slave.cc')
Source('functional_protocol.cc')
Source('mem_object.cc')
Source('mport.cc')
Source('noncoherent_xbar.cc')
@@ -75,6 +77,7 @@ Source('packet_queue.cc')
Source('port_proxy.cc')
Source('physical.cc')
Source('secure_port_proxy.cc')
Source('timing_protocol.cc')
Source('simple_mem.cc')
Source('snoop_filter.cc')
Source('stack_dist_calc.cc')