-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBasicConfig_8h_source.html
276 lines (274 loc) · 27.5 KB
/
BasicConfig_8h_source.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TAC V0.0.4 @ 2021.04.07: BasicConfig.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="TACdoxy.css" rel="stylesheet" type="text/css">
<!-- -->
<script type="text/javascript" src="TAC_navtree_hacks.js"></script>
</head>
<body>
<div style="background:#FFDDDD;font-size:120%;text-align:center;margin:0;padding:5px">Please, help us to better know about our user community by answering the following short survey: <a href="https://forms.gle/wpyrxWi18ox9Z5ae9">https://forms.gle/wpyrxWi18ox9Z5ae9</a></div>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="TAC_Logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname"><a href="https://[email protected]/jvegh/timeawarecomputingsimulator">TAC V0.0.4 @ 2021.04.07</a>
</div>
</td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('BasicConfig_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">BasicConfig.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="BasicConfig_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// The configured options and settings for SystemC developments</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// Will be used to configure Main_File/include/BaseConfig.h</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"></span><span class="preprocessor">#include <assert.h></span> <span class="comment">/* assert */</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#include <stdint.h></span> <span class="comment">// The standard 'int' types</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="preprocessor">#include <systemc></span> <span class="comment">// For sc_time</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// A safety limit for clock cycles</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="preprocessor">#define MAX_CLOCK_CYCLES 10000</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>  </div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment">// Define string for the settings</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#define MY_COMPANY "vjSoft"</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#define MY_DOMAIN "https://bitbucket.org/jvegh/scgridsimulation/"</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>  </div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment">// Define settings (.ini) files as a string list</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#define INI_FILES "Simulator"</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">// List keywords legal in 'Simulator.ini'</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#undef INI_SIMULATOR_KEYWORDS</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#define INI_SIMULATOR_KEYWORDS "Version"</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  </div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment">// Not using clock explicitly makes simulation faster and more simple</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">//#define MUST_USE_CLOCK_SIGNAL</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  </div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment">// Hardware configuration</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment">// The grid points are arranged in a grid topology</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment">// Define the topology: !! Placing algoritm must be prepared</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment">// Presently only 10x6 grid can be selected!</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#define GRID_SIZE_X 10</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#define GRID_SIZE_Y 6</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment">// The number of wires for transmitting grid number</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#define GRID_BUS_WIDTH 6</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#define GRIDPOINT_MASK_WIDTH (1 << GRID_BUS_WIDTH)</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#define GRID_ID_TYPE uint32_t</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">// The maximum available number of cores</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#define MAX_GRIDPOINTS_LIMIT (1 << GRID_BUS_WIDTH)</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#define MAX_GRIDPOINTS GRID_SIZE_X*GRID_SIZE_Y</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment">// The actual number of gridpoints</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#define NUMBER_OF_GRIDPOINTS MAX_GRIDPOINTS</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  </div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment">// The gridpoints are organized into clusters</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#define CLUSTER_BUS_WIDTH 4</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor">#define MAX_CLUSTERS_LIMIT (1 << CLUSTER_BUS_WIDTH)-1</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment">// The maximum available number of clusters</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#define CLUSTERS_LIMIT 8</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  </div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor">#define TOPOLOGY_BUS_WIDTH 4</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor">#define MAX_TOPOLOGIES_LIMIT (1 << TOPOLOGY_BUS_WIDTH)-1</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor">#define CARD_BUS_WIDTH 4</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor">#define MAX_CARDS_LIMIT (1 << CARD_BUS_WIDTH)-1</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor">#define RACKS_BUS_WIDTH 4</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor">#define MAX_RACKS_LIMIT (1 << RACKS_BUS_WIDTH)-1</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  </div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment">// The gridpoints typically handle several HTreads</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment">// (the HW gets frequently blocked by memory or I/O, or missing condition)</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="preprocessor">#define HTHREAD_BUS_WIDTH 4</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment">//#define MAX_HTHREADS 1</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor">#define MAX_HTHREADS (1 << HTHREAD_BUS_WIDTH)</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="preprocessor">#define MAX_HTHREADS_LIMIT (MAX_HTHREADS-1)</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">// The maximum available number of HThreads : only prepared, but not really used</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment">//#define HTHREADS_LIMIT 1-1</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment">//#define USE_HTHREADS</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  </div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor">#define EXECUTION_TIME sc_core::sc_time(10,SC_NS)</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="comment">// Define memory features</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment">// We may have 'register' memory, type 0</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor">#define RMEMORY_ADDRESS_WIDTH 4</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment">// The maximum size of the simulated memory; must be 2**N</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor">#define RMAX_MEMORY_SIZE (1 << RMEMORY_ADDRESS_WIDTH)</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  </div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment">// We may have 'dynamic' memory, type 1</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="preprocessor">#define DMEMORY_ADDRESS_WIDTH 10</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">// The maximum size of the simulated memory; must be 2**N</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="preprocessor">#define DMAX_MEMORY_SIZE (1 << DMEMORY_ADDRESS_WIDTH)</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="preprocessor">#define DMEMORY_READ_TIME sc_core::sc_time(10,SC_NS)</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  </div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment">// We may have 'far' memory, type 2</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="preprocessor">#define FMEMORY_ADDRESS_WIDTH 16</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="comment">// The maximum size of the simulated memory; must be 2**N</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="preprocessor">#define FMAX_MEMORY_SIZE (1 << FMEMORY_ADDRESS_WIDTH)</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="preprocessor">#define FMEMORY_READ_TIME sc_core::sc_time(60,SC_NS)</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  </div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment">// We may have 'buffer' memory, type 3</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="preprocessor">#define BMEMORY_ADDRESS_WIDTH 10</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="comment">// The maximum size of the simulated memory; must be 2**N</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="preprocessor">#define BMAX_MEMORY_SIZE (1 << BMEMORY_ADDRESS_WIDTH)</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  </div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="comment">// The word size of the registers and memories</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="preprocessor">#define WORD_SIZE 32</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  </div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="preprocessor">#define CORE_DEFAULT_ADDRESS (SC_ADDRESS_TYPE)-1</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="preprocessor">#define MEMORY_DEFAULT_ADDRESS (SC_ADDRESS_TYPE)-1</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="comment">// if true, the prolog will use SystemC module name as reference</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="preprocessor">#define USE_MODULE_NAMES false</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  </div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  </div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="comment">// Define size of message buffer for inter-gridpoint communication</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="preprocessor">#define MAX_IGPCBUFFER_SIZE 16</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  </div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="comment">// Operational characteristics</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  </div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="comment">// Resolution of time and clock frequency</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="preprocessor">#define SCTIME_RESOLUTION 10,sc_core::SC_PS</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment">// Gates operating time</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor">#define SCTIME_GATE sc_time(20,sc_core::SC_PS)</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment">// Frequency of the system clock</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="preprocessor">#define SCTIME_CLOCKTIME sc_time(100,sc_core::SC_PS)</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  </div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  </div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor">#define USE_DEBUG_DATA_TYPES</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  </div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="preprocessor">#ifdef USE_DEBUG_DATA_TYPES</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment">// Use normal C++ variables, to make debugging easier</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  <span class="keyword">typedef</span> uint8_t SC_HTHREAD_ID_TYPE;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keyword">typedef</span> uint32_t SC_ADDRESS_TYPE;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keyword">typedef</span> uint32_t SC_GRIDPOINT_ID_TYPE;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <span class="keyword">typedef</span> uint32_t SC_WORD_TYPE;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <span class="keyword">typedef</span> uint64_t SC_GRIDPOINT_MASK_TYPE;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <span class="keyword">typedef</span> uint64_t SC_HTHREAD_MASK_TYPE;</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  </div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="preprocessor">#else</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <span class="keyword">typedef</span> sc_dt::sc_uint<HTHREAD_BUS_WIDTH> SC_HTHREAD_ID_TYPE;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  <span class="keyword">typedef</span> sc_dt::sc_uint<MEMORY_ADDRESS_WIDTH> SC_ADDRESS_TYPE;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  <span class="keyword">typedef</span> sc_dt::sc_uint<CORE_BUS_WIDTH> GRID_BUS_WIDTH;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keyword">typedef</span> sc_dt::sc_uint<WORD_SIZE> SC_WORD_TYPE;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keyword">typedef</span> sc_dt::sc_uint<MAX_GRIDPOINTS> SC_GRIDPOINT_MASK_TYPE;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="keyword">typedef</span> sc_dt::sc_uint<MAX_HTHREADS> SC_HTHREAD_MASK_TYPE;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor">#endif //</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  </div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="comment">// These defines that the modules shall test perfromance</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="preprocessor">#define MEASURE_DATA_TYPES_USING</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor">#define MEASURE_USING_MEMORY_TYPES_USING</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor">#define PREPARE_PERFORMACE_PLOT</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  </div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="comment">// These defined some internal operation options</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor">#define MAKE_PARALLEL_PREFETCH</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  </div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="comment">// These defines measures the memory</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor">#define MEASURE_NETWORK_TRANSFERS</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor">#define MEASURE_DIRECT_TRANSFERS</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor">#define MEASURE_PROXY_TRANSFERS</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor">#define MEMORY_TRANSFER</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="preprocessor">#define MEMORY_ACCESS_TIME</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="preprocessor">#define MEMORY_TOTAL_ACCESS_TIME</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  </div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="preprocessor">#define MEASURE_MEMORY0_TRANSFERS</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="preprocessor">#define MEASURE_MEMORY1_TRANSFERS</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor">#define MEASURE_MEMORY2_TRANSFERS</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor">#define MEASURE_MEMORY3_TRANSFERS</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  </div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="comment">// Define if to make benhmarking time measurements</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor">#define MAKE_BENCHMARKING true</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  </div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_e05d7e2b1ecd646af5bb94391405f3b5.html">modules</a></li><li class="navelem"><a class="el" href="dir_245247ea24478951905c43d9abcfc398.html">BASIC</a></li><li class="navelem"><a class="el" href="dir_1d1d4084525b8db6f67fc3a8c723c59b.html">include</a></li><li class="navelem"><a class="el" href="BasicConfig_8h.html">BasicConfig.h</a></li>
<li class="footer">Generated on Wed Apr 7 2021 15:24:23 for TAC V0.0.4 @ 2021.04.07 by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>