Hello Jason: I would use the resource stalls to model banking, I have read src/mem/ruby/structures/Rubycache.py and src/mem/ruby/structures/BankedArray.cc (1) I have seen dataArrayBanks = Param.Int(1, "Number of banks for the data array") tagArrayBanks = Param.Int(1, "Number of banks for the tag array")
If I want to configure multiple banks, can I directly modify these parameters? (2) To extend the BankedCache implementation to model arbitrary address interleaving, which files or functions should I modify? Should I modify the following function in src/mem/ruby/structures/BankedArray.cc? unsigned int BankedArray::mapIndexToBank(int64_t idx) { if (banks == 1) { return 0; } return idx % banks; } Looking forward to your reply. _______________________________________________ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s