xbar.hh (10913:38dbdeea7f1f) xbar.hh (11168:f98eb2da15a4)
1/*
2 * Copyright (c) 2011-2015 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

--- 38 unchanged lines hidden (view full) ---

47 * @file
48 * Declaration of an abstract crossbar base class.
49 */
50
51#ifndef __MEM_XBAR_HH__
52#define __MEM_XBAR_HH__
53
54#include <deque>
1/*
2 * Copyright (c) 2011-2015 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

--- 38 unchanged lines hidden (view full) ---

47 * @file
48 * Declaration of an abstract crossbar base class.
49 */
50
51#ifndef __MEM_XBAR_HH__
52#define __MEM_XBAR_HH__
53
54#include <deque>
55#include <unordered_map>
55
56#include "base/addr_range_map.hh"
56
57#include "base/addr_range_map.hh"
57#include "base/hashmap.hh"
58#include "base/types.hh"
59#include "mem/mem_object.hh"
60#include "mem/qport.hh"
61#include "params/BaseXBar.hh"
62#include "sim/stats.hh"
63
64/**
65 * The base crossbar contains the common elements of the non-coherent

--- 43 unchanged lines hidden (view full) ---

109 * Drain according to the normal semantics, so that the crossbar
110 * can tell the layer to drain, and pass an event to signal
111 * back when drained.
112 *
113 * @param de drain event to call once drained
114 *
115 * @return 1 if busy or waiting to retry, or 0 if idle
116 */
58#include "base/types.hh"
59#include "mem/mem_object.hh"
60#include "mem/qport.hh"
61#include "params/BaseXBar.hh"
62#include "sim/stats.hh"
63
64/**
65 * The base crossbar contains the common elements of the non-coherent

--- 43 unchanged lines hidden (view full) ---

109 * Drain according to the normal semantics, so that the crossbar
110 * can tell the layer to drain, and pass an event to signal
111 * back when drained.
112 *
113 * @param de drain event to call once drained
114 *
115 * @return 1 if busy or waiting to retry, or 0 if idle
116 */
117 DrainState drain() M5_ATTR_OVERRIDE;
117 DrainState drain() override;
118
119 /**
120 * Get the crossbar layer's name
121 */
122 const std::string name() const { return xbar.name() + _name; }
123
124
125 /**

--- 196 unchanged lines hidden (view full) ---

322 AddrRangeMap<PortID> portMap;
323
324 /**
325 * Remember where request packets came from so that we can route
326 * responses to the appropriate port. This relies on the fact that
327 * the underlying Request pointer inside the Packet stays
328 * constant.
329 */
118
119 /**
120 * Get the crossbar layer's name
121 */
122 const std::string name() const { return xbar.name() + _name; }
123
124
125 /**

--- 196 unchanged lines hidden (view full) ---

322 AddrRangeMap<PortID> portMap;
323
324 /**
325 * Remember where request packets came from so that we can route
326 * responses to the appropriate port. This relies on the fact that
327 * the underlying Request pointer inside the Packet stays
328 * constant.
329 */
330 m5::unordered_map<RequestPtr, PortID> routeTo;
330 std::unordered_map<RequestPtr, PortID> routeTo;
331
332 /** all contigous ranges seen by this crossbar */
333 AddrRangeList xbarRanges;
334
335 AddrRange defaultRange;
336
337 /**
338 * Function called by the port when the crossbar is recieving a

--- 133 unchanged lines hidden ---
331
332 /** all contigous ranges seen by this crossbar */
333 AddrRangeList xbarRanges;
334
335 AddrRange defaultRange;
336
337 /**
338 * Function called by the port when the crossbar is recieving a

--- 133 unchanged lines hidden ---