mem: Add interleaving bits to the address ranges
authorAndreas Hansson <andreas.hansson@arm.com>
Mon, 7 Jan 2013 18:05:38 +0000 (13:05 -0500)
committerAndreas Hansson <andreas.hansson@arm.com>
Mon, 7 Jan 2013 18:05:38 +0000 (13:05 -0500)
commit01c55983737273c70e44e0181e75453e01c5da34
tree2a1c68d06c39a1cf1554d589df8961a313cb9c25
parente6c57786a43b6e21e11dec95d2fcb2c965d84abb
mem: Add interleaving bits to the address ranges

This patch adds support for interleaving bits for the address
ranges. What was previously just a start and end address, now has an
additional three fields, for the high bit, and number of bits to use
for interleaving, and a match value to compare against. If the number
of interleaving bits is set to zero it is effectively disabled.

A number of convenience functions are added to the range to enquire
about the interleaving, its granularity and the number of stripes it
is part of.
src/base/addr_range.hh
src/base/addr_range_map.hh
src/mem/physical.cc
src/python/m5/params.py