mshr_queue.hh (9725:0d4ee33078bb) | mshr_queue.hh (10028:fb8c44de891a) |
---|---|
1/* 2 * Copyright (c) 2012-2013 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 --- 99 unchanged lines hidden (view full) --- 108 * any access. 109 */ 110 MSHRQueue(const std::string &_label, int num_entries, int reserve, 111 int index); 112 113 /** 114 * Find the first MSHR that matches the provided address. 115 * @param addr The address to find. | 1/* 2 * Copyright (c) 2012-2013 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 --- 99 unchanged lines hidden (view full) --- 108 * any access. 109 */ 110 MSHRQueue(const std::string &_label, int num_entries, int reserve, 111 int index); 112 113 /** 114 * Find the first MSHR that matches the provided address. 115 * @param addr The address to find. |
116 * @param is_secure True if the target memory space is secure. |
|
116 * @return Pointer to the matching MSHR, null if not found. 117 */ | 117 * @return Pointer to the matching MSHR, null if not found. 118 */ |
118 MSHR *findMatch(Addr addr) const; | 119 MSHR *findMatch(Addr addr, bool is_secure) const; |
119 120 /** 121 * Find and return all the matching entries in the provided vector. 122 * @param addr The address to find. | 120 121 /** 122 * Find and return all the matching entries in the provided vector. 123 * @param addr The address to find. |
124 * @param is_secure True if the target memory space is secure. |
|
123 * @param matches The vector to return pointers to the matching entries. 124 * @return True if any matches are found, false otherwise. 125 * @todo Typedef the vector?? 126 */ | 125 * @param matches The vector to return pointers to the matching entries. 126 * @return True if any matches are found, false otherwise. 127 * @todo Typedef the vector?? 128 */ |
127 bool findMatches(Addr addr, std::vector<MSHR*>& matches) const; | 129 bool findMatches(Addr addr, bool is_secure, 130 std::vector<MSHR*>& matches) const; |
128 129 /** 130 * Find any pending requests that overlap the given request. 131 * @param pkt The request to find. | 131 132 /** 133 * Find any pending requests that overlap the given request. 134 * @param pkt The request to find. |
135 * @param is_secure True if the target memory space is secure. |
|
132 * @return A pointer to the earliest matching MSHR. 133 */ | 136 * @return A pointer to the earliest matching MSHR. 137 */ |
134 MSHR *findPending(Addr addr, int size) const; | 138 MSHR *findPending(Addr addr, int size, bool is_secure) const; |
135 136 bool checkFunctional(PacketPtr pkt, Addr blk_addr); 137 138 /** 139 * Allocates a new MSHR for the request and size. This places the request 140 * as the first target in the MSHR. 141 * @param pkt The request to handle. 142 * @param size The number in bytes to fetch from memory. --- 88 unchanged lines hidden --- | 139 140 bool checkFunctional(PacketPtr pkt, Addr blk_addr); 141 142 /** 143 * Allocates a new MSHR for the request and size. This places the request 144 * as the first target in the MSHR. 145 * @param pkt The request to handle. 146 * @param size The number in bytes to fetch from memory. --- 88 unchanged lines hidden --- |