tagged.hh revision 5034
16906SBrad.Beckmann@amd.com/* 26906SBrad.Beckmann@amd.com * Copyright (c) 2005 The Regents of The University of Michigan 36906SBrad.Beckmann@amd.com * All rights reserved. 46906SBrad.Beckmann@amd.com * 56906SBrad.Beckmann@amd.com * Redistribution and use in source and binary forms, with or without 66906SBrad.Beckmann@amd.com * modification, are permitted provided that the following conditions are 76906SBrad.Beckmann@amd.com * met: redistributions of source code must retain the above copyright 86906SBrad.Beckmann@amd.com * notice, this list of conditions and the following disclaimer; 96906SBrad.Beckmann@amd.com * redistributions in binary form must reproduce the above copyright 106906SBrad.Beckmann@amd.com * notice, this list of conditions and the following disclaimer in the 116906SBrad.Beckmann@amd.com * documentation and/or other materials provided with the distribution; 126906SBrad.Beckmann@amd.com * neither the name of the copyright holders nor the names of its 136906SBrad.Beckmann@amd.com * contributors may be used to endorse or promote products derived from 146906SBrad.Beckmann@amd.com * this software without specific prior written permission. 156906SBrad.Beckmann@amd.com * 166906SBrad.Beckmann@amd.com * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 176906SBrad.Beckmann@amd.com * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 186906SBrad.Beckmann@amd.com * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 196906SBrad.Beckmann@amd.com * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 206906SBrad.Beckmann@amd.com * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 216906SBrad.Beckmann@amd.com * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 226906SBrad.Beckmann@amd.com * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 236906SBrad.Beckmann@amd.com * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 246906SBrad.Beckmann@amd.com * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 256906SBrad.Beckmann@amd.com * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 266906SBrad.Beckmann@amd.com * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 276906SBrad.Beckmann@amd.com * 286906SBrad.Beckmann@amd.com * Authors: Ron Dreslinski 296906SBrad.Beckmann@amd.com */ 308183Snilay@cs.wisc.edu 316906SBrad.Beckmann@amd.com/** 326906SBrad.Beckmann@amd.com * @file 336906SBrad.Beckmann@amd.com * Describes a tagged prefetcher. 349100SBrad.Beckmann@amd.com */ 3510529Smorr@cs.wisc.edu 366906SBrad.Beckmann@amd.com#ifndef __MEM_CACHE_PREFETCH_TAGGED_PREFETCHER_HH__ 376906SBrad.Beckmann@amd.com#define __MEM_CACHE_PREFETCH_TAGGED_PREFETCHER_HH__ 386906SBrad.Beckmann@amd.com 396906SBrad.Beckmann@amd.com#include "mem/cache/prefetch/base_prefetcher.hh" 406906SBrad.Beckmann@amd.com 416906SBrad.Beckmann@amd.comclass TaggedPrefetcher : public BasePrefetcher 426906SBrad.Beckmann@amd.com{ 437538SBrad.Beckmann@amd.com protected: 447538SBrad.Beckmann@amd.com 457538SBrad.Beckmann@amd.com Tick latency; 4610519Snilay@cs.wisc.edu int degree; 476906SBrad.Beckmann@amd.com 486906SBrad.Beckmann@amd.com public: 496906SBrad.Beckmann@amd.com 506906SBrad.Beckmann@amd.com TaggedPrefetcher(const BaseCacheParams *p); 516906SBrad.Beckmann@amd.com 526906SBrad.Beckmann@amd.com ~TaggedPrefetcher() {} 536906SBrad.Beckmann@amd.com 546906SBrad.Beckmann@amd.com void calculatePrefetch(PacketPtr &pkt, std::list<Addr> &addresses, 556906SBrad.Beckmann@amd.com std::list<Tick> &delays); 566906SBrad.Beckmann@amd.com}; 576906SBrad.Beckmann@amd.com 586906SBrad.Beckmann@amd.com#endif // __MEM_CACHE_PREFETCH_TAGGED_PREFETCHER_HH__ 596906SBrad.Beckmann@amd.com