diff -r 83e491dac016 -r bd07589f5907 configs/example/fs.py --- a/configs/example/fs.py Thu Nov 01 13:02:20 2012 +0000 +++ b/configs/example/fs.py Thu Nov 01 16:10:57 2012 +0000 @@ -117,13 +117,19 @@ test_sys.cpu = [TestCPUClass(cpu_id=i) for i in xrange(np)] +# Determine the memory ranges of the test system so they can be used +# by the I/O cache or bridge to determine what ranges are visible to +# the masters connected to the I/O bus. +test_sys_mem_ranges = map(lambda mem: mem.range, + test_sys.memories.unproxy(test_sys)) + if options.caches or options.l2cache: test_sys.iocache = IOCache(clock = '1GHz', - addr_ranges=[test_sys.physmem.range]) + addr_ranges = test_sys_mem_ranges) test_sys.iocache.cpu_side = test_sys.iobus.master test_sys.iocache.mem_side = test_sys.membus.slave else: - test_sys.iobridge = Bridge(delay='50ns', ranges = [test_sys.physmem.range]) + test_sys.iobridge = Bridge(delay='50ns', ranges = test_sys_mem_ranges) test_sys.iobridge.slave = test_sys.iobus.master test_sys.iobridge.master = test_sys.membus.slave @@ -161,8 +167,15 @@ drive_sys.cpu.fastmem = True if options.kernel is not None: drive_sys.kernel = binary(options.kernel) + + # Determine the memory ranges of the drive system so they can be + # used by the I/O bridge to determine what ranges are visible to + # the masters connected to the I/O bus. + drive_sys_mem_ranges = map(lambda mem: mem.range, + drive_sys.memories.unproxy(drive_sys)) + drive_sys.iobridge = Bridge(delay='50ns', - ranges = [drive_sys.physmem.range]) + ranges = drive_sys_mem_ranges) drive_sys.iobridge.slave = drive_sys.iobus.master drive_sys.iobridge.master = drive_sys.membus.slave