Date: | Sat, 31 Mar 2007 23:23:10 -0600 |
---|---|
From: | "Liqun Cheng" <liqun.cheng@xxxxxxxxx> |
Subject: | [Gems-users] inconsistency in map_Address_to_DirectoryNode |
Hi, I am confused by the implementation of map_Address_to_DirectoryNode (RubySlicc_ComponentMapping.h), which doesn't seem to match the its figure. if (RubyConfig::memoryBits() > 0) { dirNode = addr.bitSelect (RubyConfig::dataBlockBits(), RubyConfig::dataBlockBits()+RubyConfig::memoryBits()-1); } Here, bits in the page offset are used to locate the home node, so two addresses in the same page can be mapped to two home node?? Shouldn't we use bits (RubyConfig::pageSizeBits()) to (RubyConfig::pageSizeBits()+RubyConfig::memoryBits()-1) to find the home node? Do I miss something here? thanks Liqun ADDRESS_WIDTH MEMORY_SIZE_BITS PAGE_SIZE_BITS DATA_BLOCK_BITS | | | | \ / \ / \ / \ / 0 -------------------------------------------------------------------------------------------------------------------------- | unused |xxxxxxxxxxxxxxx| |xxxxxxxxxxxxxxx| | | |xxxxxxxxxxxxxxx| |xxxxxxxxxxxxxxx| | -------------------------------------------------------------------------------------------------------------------------- indexHighPortion indexLowPortion <-------> NUMBER_OF_MEMORY_MODULE_BITS |
[← Prev in Thread] | Current Thread | [Next in Thread→] |
---|---|---|
|
Previous by Date: | , (nil) |
---|---|
Next by Date: | [Gems-users] Deadlock avoidance in Gems, Niket Agarwal |
Previous by Thread: | Re: [Gems-users] IFETCHs and the store buffer, Dan Gibson |
Next by Thread: | [Gems-users] Instruction count in Ruby, mehmetderin . harmanci |
Indexes: | [Date] [Thread] |