Hi Tingyuan,

There should be no overlap in the memory ranges of the directory
controllers. There is a function
"DirectoryMemory::mapAddressToDirectoryVersion" which takes an address and
returns the directory controller that the address should be routed to. This
function basically picks a few bits from the address and uses those bits to
pick the directory controller.

For the memory controllers, there is usually a 1-to-1 mapping from
directory controllers to memory controller (though this isn't necessarily
required by gem5).

Of course, all of this is Ruby-specific. The classic caches use a totally
different structure.

Jason

On Thu, Nov 24, 2016 at 11:15 AM <[email protected]> wrote:

> Hi everyone,
>
> Now, I am confused by the directory controller in Ruby memory system.
>
> It seem directory controller is regarded as memory controller in the
> network of Ruby and I found that each directory controller account for a
> range of memory address( by transfer data to different version of
> directory).
>
> However, is there any possibility that two directory controller share a
> range of memory address? Because I found two memory controllers accounting
> for one DDRAM in some architectures. In practical application, when there
> are several memory controllers, do they share some ranges of memory?
>
> Best Regards,
>
> Tingyuan
>
> 25,11,2016
> _______________________________________________
> gem5-dev mailing list
> [email protected]
> http://m5sim.org/mailman/listinfo/gem5-dev
>
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to