gem5
v24.0.0.0
Loading...
Searching...
No Matches
mem
ruby
network
garnet
CommonTypes.hh
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2008 Princeton University
3
* Copyright (c) 2016 Georgia Institute of Technology
4
* All rights reserved.
5
*
6
* Redistribution and use in source and binary forms, with or without
7
* modification, are permitted provided that the following conditions are
8
* met: redistributions of source code must retain the above copyright
9
* notice, this list of conditions and the following disclaimer;
10
* redistributions in binary form must reproduce the above copyright
11
* notice, this list of conditions and the following disclaimer in the
12
* documentation and/or other materials provided with the distribution;
13
* neither the name of the copyright holders nor the names of its
14
* contributors may be used to endorse or promote products derived from
15
* this software without specific prior written permission.
16
*
17
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
*/
29
30
31
#ifndef __MEM_RUBY_NETWORK_GARNET_0_COMMONTYPES_HH__
32
#define __MEM_RUBY_NETWORK_GARNET_0_COMMONTYPES_HH__
33
34
#include "
mem/ruby/common/NetDest.hh
"
35
36
namespace
gem5
37
{
38
39
namespace
ruby
40
{
41
42
namespace
garnet
43
{
44
45
// All common enums and typedefs go here
46
47
enum
flit_type
{
HEAD_
,
BODY_
,
TAIL_
,
HEAD_TAIL_
,
48
CREDIT_
,
NUM_FLIT_TYPE_
};
49
enum
VC_state_type
{
IDLE_
,
VC_AB_
,
ACTIVE_
,
NUM_VC_STATE_TYPE_
};
50
enum
VNET_type
{
CTRL_VNET_
,
DATA_VNET_
,
NULL_VNET_
,
NUM_VNET_TYPE_
};
51
enum
flit_stage
{
I_
,
VA_
,
SA_
,
ST_
,
LT_
,
NUM_FLIT_STAGE_
};
52
enum
link_type
{
EXT_IN_
,
EXT_OUT_
,
INT_
,
NUM_LINK_TYPES_
};
53
enum
RoutingAlgorithm
{
TABLE_
= 0,
XY_
= 1,
CUSTOM_
= 2,
54
NUM_ROUTING_ALGORITHM_
};
55
56
struct
RouteInfo
57
{
58
RouteInfo
()
59
:
vnet
(0),
src_ni
(0),
src_router
(0),
dest_ni
(0),
dest_router
(0),
60
hops_traversed
(0)
61
{}
62
63
// destination format for table-based routing
64
int
vnet
;
65
NetDest
net_dest
;
66
67
// src and dest format for topology-specific routing
68
int
src_ni
;
69
int
src_router
;
70
int
dest_ni
;
71
int
dest_router
;
72
int
hops_traversed
;
73
};
74
75
#define INFINITE_ 10000
76
77
}
// namespace garnet
78
}
// namespace ruby
79
}
// namespace gem5
80
81
#endif
//__MEM_RUBY_NETWORK_GARNET_0_COMMONTYPES_HH__
NetDest.hh
gem5::ruby::NetDest
Definition
NetDest.hh:46
gem5::ruby::garnet::flit_stage
flit_stage
Definition
CommonTypes.hh:51
gem5::ruby::garnet::VA_
@ VA_
Definition
CommonTypes.hh:51
gem5::ruby::garnet::NUM_FLIT_STAGE_
@ NUM_FLIT_STAGE_
Definition
CommonTypes.hh:51
gem5::ruby::garnet::LT_
@ LT_
Definition
CommonTypes.hh:51
gem5::ruby::garnet::SA_
@ SA_
Definition
CommonTypes.hh:51
gem5::ruby::garnet::ST_
@ ST_
Definition
CommonTypes.hh:51
gem5::ruby::garnet::I_
@ I_
Definition
CommonTypes.hh:51
gem5::ruby::garnet::VNET_type
VNET_type
Definition
CommonTypes.hh:50
gem5::ruby::garnet::DATA_VNET_
@ DATA_VNET_
Definition
CommonTypes.hh:50
gem5::ruby::garnet::NUM_VNET_TYPE_
@ NUM_VNET_TYPE_
Definition
CommonTypes.hh:50
gem5::ruby::garnet::NULL_VNET_
@ NULL_VNET_
Definition
CommonTypes.hh:50
gem5::ruby::garnet::CTRL_VNET_
@ CTRL_VNET_
Definition
CommonTypes.hh:50
gem5::ruby::garnet::VC_state_type
VC_state_type
Definition
CommonTypes.hh:49
gem5::ruby::garnet::ACTIVE_
@ ACTIVE_
Definition
CommonTypes.hh:49
gem5::ruby::garnet::VC_AB_
@ VC_AB_
Definition
CommonTypes.hh:49
gem5::ruby::garnet::NUM_VC_STATE_TYPE_
@ NUM_VC_STATE_TYPE_
Definition
CommonTypes.hh:49
gem5::ruby::garnet::IDLE_
@ IDLE_
Definition
CommonTypes.hh:49
gem5::ruby::garnet::link_type
link_type
Definition
CommonTypes.hh:52
gem5::ruby::garnet::NUM_LINK_TYPES_
@ NUM_LINK_TYPES_
Definition
CommonTypes.hh:52
gem5::ruby::garnet::EXT_OUT_
@ EXT_OUT_
Definition
CommonTypes.hh:52
gem5::ruby::garnet::INT_
@ INT_
Definition
CommonTypes.hh:52
gem5::ruby::garnet::EXT_IN_
@ EXT_IN_
Definition
CommonTypes.hh:52
gem5::ruby::garnet::RoutingAlgorithm
RoutingAlgorithm
Definition
CommonTypes.hh:53
gem5::ruby::garnet::NUM_ROUTING_ALGORITHM_
@ NUM_ROUTING_ALGORITHM_
Definition
CommonTypes.hh:54
gem5::ruby::garnet::XY_
@ XY_
Definition
CommonTypes.hh:53
gem5::ruby::garnet::CUSTOM_
@ CUSTOM_
Definition
CommonTypes.hh:53
gem5::ruby::garnet::TABLE_
@ TABLE_
Definition
CommonTypes.hh:53
gem5::ruby::garnet::flit_type
flit_type
Definition
CommonTypes.hh:47
gem5::ruby::garnet::BODY_
@ BODY_
Definition
CommonTypes.hh:47
gem5::ruby::garnet::HEAD_TAIL_
@ HEAD_TAIL_
Definition
CommonTypes.hh:47
gem5::ruby::garnet::CREDIT_
@ CREDIT_
Definition
CommonTypes.hh:48
gem5::ruby::garnet::TAIL_
@ TAIL_
Definition
CommonTypes.hh:47
gem5::ruby::garnet::NUM_FLIT_TYPE_
@ NUM_FLIT_TYPE_
Definition
CommonTypes.hh:48
gem5::ruby::garnet::HEAD_
@ HEAD_
Definition
CommonTypes.hh:47
gem5
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
Definition
binary32.hh:36
gem5::ruby::garnet::RouteInfo
Definition
CommonTypes.hh:57
gem5::ruby::garnet::RouteInfo::src_router
int src_router
Definition
CommonTypes.hh:69
gem5::ruby::garnet::RouteInfo::dest_ni
int dest_ni
Definition
CommonTypes.hh:70
gem5::ruby::garnet::RouteInfo::vnet
int vnet
Definition
CommonTypes.hh:64
gem5::ruby::garnet::RouteInfo::dest_router
int dest_router
Definition
CommonTypes.hh:71
gem5::ruby::garnet::RouteInfo::net_dest
NetDest net_dest
Definition
CommonTypes.hh:65
gem5::ruby::garnet::RouteInfo::RouteInfo
RouteInfo()
Definition
CommonTypes.hh:58
gem5::ruby::garnet::RouteInfo::hops_traversed
int hops_traversed
Definition
CommonTypes.hh:72
gem5::ruby::garnet::RouteInfo::src_ni
int src_ni
Definition
CommonTypes.hh:68
Generated on Tue Jun 18 2024 16:24:05 for gem5 by
doxygen
1.11.0