1/* 2 * Copyright (c) 1999-2012 Mark D. Hill and David A. Wood 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 26 unchanged lines hidden (view full) --- 35#include "base/hashmap.hh" 36#include "base/statistics.hh" 37#include "mem/protocol/CacheRequestType.hh" 38#include "mem/protocol/CacheResourceType.hh" 39#include "mem/protocol/RubyRequest.hh" 40#include "mem/ruby/common/DataBlock.hh" 41#include "mem/ruby/slicc_interface/AbstractCacheEntry.hh" 42#include "mem/ruby/slicc_interface/RubySlicc_ComponentMapping.hh" |
43#include "mem/ruby/structures/AbstractReplacementPolicy.hh" |
44#include "mem/ruby/structures/BankedArray.hh" |
45#include "mem/ruby/system/CacheRecorder.hh" 46#include "params/RubyCache.hh" 47#include "sim/sim_object.hh" 48 49class CacheMemory : public SimObject 50{ 51 public: 52 typedef RubyCacheParams Params; --- 104 unchanged lines hidden (view full) --- 157 std::vector<std::vector<AbstractCacheEntry*> > m_cache; 158 159 AbstractReplacementPolicy *m_replacementPolicy_ptr; 160 161 BankedArray dataArray; 162 BankedArray tagArray; 163 164 int m_cache_size; |
165 int m_cache_num_sets; 166 int m_cache_num_set_bits; 167 int m_cache_assoc; 168 int m_start_index_bit; 169 bool m_resource_stalls; 170}; 171 172std::ostream& operator<<(std::ostream& out, const CacheMemory& obj); 173 174#endif // __MEM_RUBY_STRUCTURES_CACHEMEMORY_HH__ |