abstract_mem.hh (13853:7ec6a25d2bc1) | abstract_mem.hh (13892:0182a0601f66) |
---|---|
1/* 2 * Copyright (c) 2012 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 36 unchanged lines hidden (view full) --- 45 * @file 46 * AbstractMemory declaration 47 */ 48 49#ifndef __MEM_ABSTRACT_MEMORY_HH__ 50#define __MEM_ABSTRACT_MEMORY_HH__ 51 52#include "mem/backdoor.hh" | 1/* 2 * Copyright (c) 2012 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 36 unchanged lines hidden (view full) --- 45 * @file 46 * AbstractMemory declaration 47 */ 48 49#ifndef __MEM_ABSTRACT_MEMORY_HH__ 50#define __MEM_ABSTRACT_MEMORY_HH__ 51 52#include "mem/backdoor.hh" |
53#include "mem/mem_object.hh" | 53#include "mem/port.hh" |
54#include "params/AbstractMemory.hh" | 54#include "params/AbstractMemory.hh" |
55#include "sim/clocked_object.hh" |
|
55#include "sim/stats.hh" 56 57 58class System; 59 60/** 61 * Locked address class that represents a physical address and a 62 * context id. --- 30 unchanged lines hidden (view full) --- 93 LockedAddr(Addr _addr, int _cid) : addr(_addr), contextId(_cid) 94 {} 95}; 96 97/** 98 * An abstract memory represents a contiguous block of physical 99 * memory, with an associated address range, and also provides basic 100 * functionality for reading and writing this memory without any | 56#include "sim/stats.hh" 57 58 59class System; 60 61/** 62 * Locked address class that represents a physical address and a 63 * context id. --- 30 unchanged lines hidden (view full) --- 94 LockedAddr(Addr _addr, int _cid) : addr(_addr), contextId(_cid) 95 {} 96}; 97 98/** 99 * An abstract memory represents a contiguous block of physical 100 * memory, with an associated address range, and also provides basic 101 * functionality for reading and writing this memory without any |
101 * timing information. It is a MemObject since any subclass must have 102 * at least one slave port. | 102 * timing information. It is a ClockedObject since subclasses may need timing 103 * information. |
103 */ | 104 */ |
104class AbstractMemory : public MemObject | 105class AbstractMemory : public ClockedObject |
105{ 106 protected: 107 108 // Address range of this memory 109 AddrRange range; 110 111 // Pointer to host memory used to implement this memory 112 uint8_t* pmemAddr; --- 214 unchanged lines hidden --- | 106{ 107 protected: 108 109 // Address range of this memory 110 AddrRange range; 111 112 // Pointer to host memory used to implement this memory 113 uint8_t* pmemAddr; --- 214 unchanged lines hidden --- |