cache.hh (5350:67e5e13f4146) | cache.hh (5365:49bef92749d1) |
---|---|
1/* 2 * Copyright (c) 2002-2005 The Regents of The University of Michigan 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; --- 256 unchanged lines hidden (view full) --- 265 /** 266 * Squash all requests associated with specified thread. 267 * intended for use by I-cache. 268 * @param threadNum The thread to squash. 269 */ 270 void squash(int threadNum); 271 272 /** | 1/* 2 * Copyright (c) 2002-2005 The Regents of The University of Michigan 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; --- 256 unchanged lines hidden (view full) --- 265 /** 266 * Squash all requests associated with specified thread. 267 * intended for use by I-cache. 268 * @param threadNum The thread to squash. 269 */ 270 void squash(int threadNum); 271 272 /** |
273 * Selects a outstanding request to service. 274 * @return The request to service, NULL if none found. | 273 * Generate an appropriate downstream bus request packet for the 274 * given parameters. 275 * @param cpu_pkt The upstream request that needs to be satisfied. 276 * @param blk The block currently in the cache corresponding to 277 * cpu_pkt (NULL if none). 278 * @param needsExclusive Indicates that an exclusive copy is required 279 * even if the request in cpu_pkt doesn't indicate that. 280 * @return A new Packet containing the request, or NULL if the 281 * current request in cpu_pkt should just be forwarded on. |
275 */ 276 PacketPtr getBusPacket(PacketPtr cpu_pkt, BlkType *blk, 277 bool needsExclusive); | 282 */ 283 PacketPtr getBusPacket(PacketPtr cpu_pkt, BlkType *blk, 284 bool needsExclusive); |
285 286 /** 287 * Return the next MSHR to service, either a pending miss from the 288 * mshrQueue, a buffered write from the write buffer, or something 289 * from the prefetcher. This function is responsible for 290 * prioritizing among those sources on the fly. 291 */ |
|
278 MSHR *getNextMSHR(); | 292 MSHR *getNextMSHR(); |
293 294 /** 295 * Selects an outstanding request to service. Called when the 296 * cache gets granted the downstream bus in timing mode. 297 * @return The request to service, NULL if none found. 298 */ |
|
279 PacketPtr getTimingPacket(); 280 281 /** 282 * Marks a request as in service (sent on the bus). This can have side 283 * effect since storage for no response commands is deallocated once they 284 * are successfully sent. 285 * @param pkt The request that was sent on the bus. 286 */ --- 30 unchanged lines hidden --- | 299 PacketPtr getTimingPacket(); 300 301 /** 302 * Marks a request as in service (sent on the bus). This can have side 303 * effect since storage for no response commands is deallocated once they 304 * are successfully sent. 305 * @param pkt The request that was sent on the bus. 306 */ --- 30 unchanged lines hidden --- |