mem-ruby: Generate address with masking cacheline bits
authorOnur Kayiran <onur.kayiran@amd.com>
Mon, 30 Apr 2018 21:56:27 +0000 (17:56 -0400)
committerAnthony Gutierrez <anthony.gutierrez@amd.com>
Thu, 28 May 2020 23:07:08 +0000 (23:07 +0000)
commit5587dd94f0d21aebdc9b025979f09d3c2ed21c17
tree4404bcfbc9a6ed8eb654e940c60e2b4d1a64d2e5
parentdee6b070068165f0c9a22af55d06bf4bcf14dcda
mem-ruby: Generate address with masking cacheline bits

makeLineAddress function uses m_block_size_bits to create
masked addresses. m_block_size_bits is used to specify
cache, directory, and memory controller interleaving,
and it can be larger than the cache line size.
To generate addresses that can align with the cache line
rather than the interleaving granularity, a version of
makeLineAddress is created to specify bits that need to
be masked.

Change-Id: I06deec4949da7fa46f1d6f7575334f18ee61c786
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/28135
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com>
Reviewed-by: Onur Kayıran <onur.kayiran@amd.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
src/mem/ruby/common/Address.cc
src/mem/ruby/common/Address.hh