Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | // ========== Copyright Header Begin ========================================== |
2 | // | |
3 | // OpenSPARC T2 Processor File: lru_mon.v | |
4 | // Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved | |
5 | // 4150 Network Circle, Santa Clara, California 95054, U.S.A. | |
6 | // | |
7 | // * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | |
8 | // | |
9 | // This program is free software; you can redistribute it and/or modify | |
10 | // it under the terms of the GNU General Public License as published by | |
11 | // the Free Software Foundation; version 2 of the License. | |
12 | // | |
13 | // This program is distributed in the hope that it will be useful, | |
14 | // but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | // GNU General Public License for more details. | |
17 | // | |
18 | // You should have received a copy of the GNU General Public License | |
19 | // along with this program; if not, write to the Free Software | |
20 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
21 | // | |
22 | // For the avoidance of doubt, and except that if any non-GPL license | |
23 | // choice is available it will apply instead, Sun elects to use only | |
24 | // the General Public License version 2 (GPLv2) at this time for any | |
25 | // software where a choice of GPL license versions is made | |
26 | // available with the language indicating that GPLv2 or any later version | |
27 | // may be used, or where a choice of which version of the GPL is applied is | |
28 | // otherwise unspecified. | |
29 | // | |
30 | // Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, | |
31 | // CA 95054 USA or visit www.sun.com if you need additional information or | |
32 | // have any questions. | |
33 | // | |
34 | // ========== Copyright Header End ============================================ | |
35 | `ifdef CORE_0 | |
36 | ||
37 | ||
38 | module lru_mon_c0; | |
39 | ||
40 | // If vcs_build_args NO_MONITORS, then module will be empty | |
41 | `ifndef GATESIM | |
42 | `ifndef NO_MONITORS | |
43 | `ifdef SPC | |
44 | ||
45 | wire [7:0] core0_ld_rq_vld = `SPC0.lsu.lmc.ld_rq_vld[7:0]; | |
46 | wire [7:0] core0_ld_asi_rq_sel = `SPC0.lsu.lmc.ld_asi_rq_sel[7:0]; | |
47 | wire [7:0] core0_ld_pcx_rq_sel = `SPC0.lsu.lmc.ld_pcx_rq_sel[7:0]; | |
48 | ||
49 | ||
50 | always @(posedge `SPC0.l2clk) begin | |
51 | ||
52 | if (core0_ld_rq_vld[0] == 8'h0) begin | |
53 | `PR_INFO("lru_mon", `INFO, "THREAD0_START_REQ \n"); | |
54 | end | |
55 | if (core0_ld_rq_vld[1] == 8'h1) begin | |
56 | `PR_INFO("lru_mon", `INFO, "THREAD1_START_REQ \n"); | |
57 | end | |
58 | if (core0_ld_rq_vld[2] == 8'h2) begin | |
59 | `PR_INFO("lru_mon", `INFO, "THREAD2_START_REQ \n"); | |
60 | end | |
61 | if (core0_ld_rq_vld[3] == 8'h3) begin | |
62 | `PR_INFO("lru_mon", `INFO, "THREAD3_START_REQ \n"); | |
63 | end | |
64 | if (core0_ld_rq_vld[4] == 8'h4) begin | |
65 | `PR_INFO("lru_mon", `INFO, "THREAD4_START_REQ \n"); | |
66 | end | |
67 | if (core0_ld_rq_vld[5] == 8'h5) begin | |
68 | `PR_INFO("lru_mon", `INFO, "THREAD5_START_REQ \n"); | |
69 | end | |
70 | if (core0_ld_rq_vld[6] == 8'h6) begin | |
71 | `PR_INFO("lru_mon", `INFO, "THREAD6_START_REQ \n"); | |
72 | end | |
73 | if (core0_ld_rq_vld[7] == 8'h7) begin | |
74 | `PR_INFO("lru_mon", `INFO, "THREAD7_START_REQ \n"); | |
75 | end | |
76 | ||
77 | if ((core0_ld_asi_rq_sel[0] == 8'h0) | (core0_ld_pcx_rq_sel[0] == 8'h0)) begin | |
78 | `PR_INFO("lru_mon", `INFO, "THREAD0_END_SEL\n"); | |
79 | end | |
80 | if ((core0_ld_asi_rq_sel[1] == 8'h1) | (core0_ld_pcx_rq_sel[1] == 8'h1)) begin | |
81 | `PR_INFO("lru_mon", `INFO, "THREAD1_END_SEL\n"); | |
82 | end | |
83 | if ((core0_ld_asi_rq_sel[2] == 8'h2) | (core0_ld_pcx_rq_sel[2] == 8'h2)) begin | |
84 | `PR_INFO("lru_mon", `INFO, "THREAD2_END_SEL\n"); | |
85 | end | |
86 | if ((core0_ld_asi_rq_sel[3] == 8'h3) | (core0_ld_pcx_rq_sel[3] == 8'h3)) begin | |
87 | `PR_INFO("lru_mon", `INFO, "THREAD3_END_SEL\n"); | |
88 | end | |
89 | if ((core0_ld_asi_rq_sel[4] == 8'h4) | (core0_ld_pcx_rq_sel[4] == 8'h4)) begin | |
90 | `PR_INFO("lru_mon", `INFO, "THREAD4_END_SEL\n"); | |
91 | end | |
92 | if ((core0_ld_asi_rq_sel[5] == 8'h5) | (core0_ld_pcx_rq_sel[5] == 8'h5)) begin | |
93 | `PR_INFO("lru_mon", `INFO, "THREAD5_END_SEL\n"); | |
94 | end | |
95 | if ((core0_ld_asi_rq_sel[6] == 8'h6) | (core0_ld_pcx_rq_sel[6] == 8'h6)) begin | |
96 | `PR_INFO("lru_mon", `INFO, "THREAD6_END_SEL\n"); | |
97 | end | |
98 | if ((core0_ld_asi_rq_sel[7] == 8'h7) | (core0_ld_pcx_rq_sel[7] == 8'h7)) begin | |
99 | `PR_INFO("lru_mon", `INFO, "THREAD7_END_SEL\n"); | |
100 | end | |
101 | ||
102 | end | |
103 | ||
104 | `endif | |
105 | `endif | |
106 | `endif | |
107 | ||
108 | endmodule | |
109 | ||
110 | `endif | |
111 | ||
112 | ||
113 | `ifdef CORE_1 | |
114 | ||
115 | ||
116 | module lru_mon_c1; | |
117 | ||
118 | // If vcs_build_args NO_MONITORS, then module will be empty | |
119 | `ifndef GATESIM | |
120 | `ifndef NO_MONITORS | |
121 | `ifdef SPC | |
122 | ||
123 | wire [7:0] core1_ld_rq_vld = `SPC1.lsu.lmc.ld_rq_vld[7:0]; | |
124 | wire [7:0] core1_ld_asi_rq_sel = `SPC1.lsu.lmc.ld_asi_rq_sel[7:0]; | |
125 | wire [7:0] core1_ld_pcx_rq_sel = `SPC1.lsu.lmc.ld_pcx_rq_sel[7:0]; | |
126 | ||
127 | ||
128 | always @(posedge `SPC1.l2clk) begin | |
129 | ||
130 | if (core1_ld_rq_vld[0] == 8'h0) begin | |
131 | `PR_INFO("lru_mon", `INFO, "THREAD0_START_REQ \n"); | |
132 | end | |
133 | if (core1_ld_rq_vld[1] == 8'h1) begin | |
134 | `PR_INFO("lru_mon", `INFO, "THREAD1_START_REQ \n"); | |
135 | end | |
136 | if (core1_ld_rq_vld[2] == 8'h2) begin | |
137 | `PR_INFO("lru_mon", `INFO, "THREAD2_START_REQ \n"); | |
138 | end | |
139 | if (core1_ld_rq_vld[3] == 8'h3) begin | |
140 | `PR_INFO("lru_mon", `INFO, "THREAD3_START_REQ \n"); | |
141 | end | |
142 | if (core1_ld_rq_vld[4] == 8'h4) begin | |
143 | `PR_INFO("lru_mon", `INFO, "THREAD4_START_REQ \n"); | |
144 | end | |
145 | if (core1_ld_rq_vld[5] == 8'h5) begin | |
146 | `PR_INFO("lru_mon", `INFO, "THREAD5_START_REQ \n"); | |
147 | end | |
148 | if (core1_ld_rq_vld[6] == 8'h6) begin | |
149 | `PR_INFO("lru_mon", `INFO, "THREAD6_START_REQ \n"); | |
150 | end | |
151 | if (core1_ld_rq_vld[7] == 8'h7) begin | |
152 | `PR_INFO("lru_mon", `INFO, "THREAD7_START_REQ \n"); | |
153 | end | |
154 | ||
155 | if ((core1_ld_asi_rq_sel[0] == 8'h0) | (core1_ld_pcx_rq_sel[0] == 8'h0)) begin | |
156 | `PR_INFO("lru_mon", `INFO, "THREAD0_END_SEL\n"); | |
157 | end | |
158 | if ((core1_ld_asi_rq_sel[1] == 8'h1) | (core1_ld_pcx_rq_sel[1] == 8'h1)) begin | |
159 | `PR_INFO("lru_mon", `INFO, "THREAD1_END_SEL\n"); | |
160 | end | |
161 | if ((core1_ld_asi_rq_sel[2] == 8'h2) | (core1_ld_pcx_rq_sel[2] == 8'h2)) begin | |
162 | `PR_INFO("lru_mon", `INFO, "THREAD2_END_SEL\n"); | |
163 | end | |
164 | if ((core1_ld_asi_rq_sel[3] == 8'h3) | (core1_ld_pcx_rq_sel[3] == 8'h3)) begin | |
165 | `PR_INFO("lru_mon", `INFO, "THREAD3_END_SEL\n"); | |
166 | end | |
167 | if ((core1_ld_asi_rq_sel[4] == 8'h4) | (core1_ld_pcx_rq_sel[4] == 8'h4)) begin | |
168 | `PR_INFO("lru_mon", `INFO, "THREAD4_END_SEL\n"); | |
169 | end | |
170 | if ((core1_ld_asi_rq_sel[5] == 8'h5) | (core1_ld_pcx_rq_sel[5] == 8'h5)) begin | |
171 | `PR_INFO("lru_mon", `INFO, "THREAD5_END_SEL\n"); | |
172 | end | |
173 | if ((core1_ld_asi_rq_sel[6] == 8'h6) | (core1_ld_pcx_rq_sel[6] == 8'h6)) begin | |
174 | `PR_INFO("lru_mon", `INFO, "THREAD6_END_SEL\n"); | |
175 | end | |
176 | if ((core1_ld_asi_rq_sel[7] == 8'h7) | (core1_ld_pcx_rq_sel[7] == 8'h7)) begin | |
177 | `PR_INFO("lru_mon", `INFO, "THREAD7_END_SEL\n"); | |
178 | end | |
179 | ||
180 | end | |
181 | ||
182 | `endif | |
183 | `endif | |
184 | `endif | |
185 | ||
186 | endmodule | |
187 | ||
188 | `endif | |
189 | ||
190 | ||
191 | `ifdef CORE_2 | |
192 | ||
193 | ||
194 | module lru_mon_c2; | |
195 | ||
196 | // If vcs_build_args NO_MONITORS, then module will be empty | |
197 | `ifndef GATESIM | |
198 | `ifndef NO_MONITORS | |
199 | `ifdef SPC | |
200 | ||
201 | wire [7:0] core2_ld_rq_vld = `SPC2.lsu.lmc.ld_rq_vld[7:0]; | |
202 | wire [7:0] core2_ld_asi_rq_sel = `SPC2.lsu.lmc.ld_asi_rq_sel[7:0]; | |
203 | wire [7:0] core2_ld_pcx_rq_sel = `SPC2.lsu.lmc.ld_pcx_rq_sel[7:0]; | |
204 | ||
205 | ||
206 | always @(posedge `SPC2.l2clk) begin | |
207 | ||
208 | if (core2_ld_rq_vld[0] == 8'h0) begin | |
209 | `PR_INFO("lru_mon", `INFO, "THREAD0_START_REQ \n"); | |
210 | end | |
211 | if (core2_ld_rq_vld[1] == 8'h1) begin | |
212 | `PR_INFO("lru_mon", `INFO, "THREAD1_START_REQ \n"); | |
213 | end | |
214 | if (core2_ld_rq_vld[2] == 8'h2) begin | |
215 | `PR_INFO("lru_mon", `INFO, "THREAD2_START_REQ \n"); | |
216 | end | |
217 | if (core2_ld_rq_vld[3] == 8'h3) begin | |
218 | `PR_INFO("lru_mon", `INFO, "THREAD3_START_REQ \n"); | |
219 | end | |
220 | if (core2_ld_rq_vld[4] == 8'h4) begin | |
221 | `PR_INFO("lru_mon", `INFO, "THREAD4_START_REQ \n"); | |
222 | end | |
223 | if (core2_ld_rq_vld[5] == 8'h5) begin | |
224 | `PR_INFO("lru_mon", `INFO, "THREAD5_START_REQ \n"); | |
225 | end | |
226 | if (core2_ld_rq_vld[6] == 8'h6) begin | |
227 | `PR_INFO("lru_mon", `INFO, "THREAD6_START_REQ \n"); | |
228 | end | |
229 | if (core2_ld_rq_vld[7] == 8'h7) begin | |
230 | `PR_INFO("lru_mon", `INFO, "THREAD7_START_REQ \n"); | |
231 | end | |
232 | ||
233 | if ((core2_ld_asi_rq_sel[0] == 8'h0) | (core2_ld_pcx_rq_sel[0] == 8'h0)) begin | |
234 | `PR_INFO("lru_mon", `INFO, "THREAD0_END_SEL\n"); | |
235 | end | |
236 | if ((core2_ld_asi_rq_sel[1] == 8'h1) | (core2_ld_pcx_rq_sel[1] == 8'h1)) begin | |
237 | `PR_INFO("lru_mon", `INFO, "THREAD1_END_SEL\n"); | |
238 | end | |
239 | if ((core2_ld_asi_rq_sel[2] == 8'h2) | (core2_ld_pcx_rq_sel[2] == 8'h2)) begin | |
240 | `PR_INFO("lru_mon", `INFO, "THREAD2_END_SEL\n"); | |
241 | end | |
242 | if ((core2_ld_asi_rq_sel[3] == 8'h3) | (core2_ld_pcx_rq_sel[3] == 8'h3)) begin | |
243 | `PR_INFO("lru_mon", `INFO, "THREAD3_END_SEL\n"); | |
244 | end | |
245 | if ((core2_ld_asi_rq_sel[4] == 8'h4) | (core2_ld_pcx_rq_sel[4] == 8'h4)) begin | |
246 | `PR_INFO("lru_mon", `INFO, "THREAD4_END_SEL\n"); | |
247 | end | |
248 | if ((core2_ld_asi_rq_sel[5] == 8'h5) | (core2_ld_pcx_rq_sel[5] == 8'h5)) begin | |
249 | `PR_INFO("lru_mon", `INFO, "THREAD5_END_SEL\n"); | |
250 | end | |
251 | if ((core2_ld_asi_rq_sel[6] == 8'h6) | (core2_ld_pcx_rq_sel[6] == 8'h6)) begin | |
252 | `PR_INFO("lru_mon", `INFO, "THREAD6_END_SEL\n"); | |
253 | end | |
254 | if ((core2_ld_asi_rq_sel[7] == 8'h7) | (core2_ld_pcx_rq_sel[7] == 8'h7)) begin | |
255 | `PR_INFO("lru_mon", `INFO, "THREAD7_END_SEL\n"); | |
256 | end | |
257 | ||
258 | end | |
259 | ||
260 | `endif | |
261 | `endif | |
262 | `endif | |
263 | ||
264 | endmodule | |
265 | ||
266 | `endif | |
267 | ||
268 | ||
269 | `ifdef CORE_3 | |
270 | ||
271 | ||
272 | module lru_mon_c3; | |
273 | ||
274 | // If vcs_build_args NO_MONITORS, then module will be empty | |
275 | `ifndef GATESIM | |
276 | `ifndef NO_MONITORS | |
277 | `ifdef SPC | |
278 | ||
279 | wire [7:0] core3_ld_rq_vld = `SPC3.lsu.lmc.ld_rq_vld[7:0]; | |
280 | wire [7:0] core3_ld_asi_rq_sel = `SPC3.lsu.lmc.ld_asi_rq_sel[7:0]; | |
281 | wire [7:0] core3_ld_pcx_rq_sel = `SPC3.lsu.lmc.ld_pcx_rq_sel[7:0]; | |
282 | ||
283 | ||
284 | always @(posedge `SPC3.l2clk) begin | |
285 | ||
286 | if (core3_ld_rq_vld[0] == 8'h0) begin | |
287 | `PR_INFO("lru_mon", `INFO, "THREAD0_START_REQ \n"); | |
288 | end | |
289 | if (core3_ld_rq_vld[1] == 8'h1) begin | |
290 | `PR_INFO("lru_mon", `INFO, "THREAD1_START_REQ \n"); | |
291 | end | |
292 | if (core3_ld_rq_vld[2] == 8'h2) begin | |
293 | `PR_INFO("lru_mon", `INFO, "THREAD2_START_REQ \n"); | |
294 | end | |
295 | if (core3_ld_rq_vld[3] == 8'h3) begin | |
296 | `PR_INFO("lru_mon", `INFO, "THREAD3_START_REQ \n"); | |
297 | end | |
298 | if (core3_ld_rq_vld[4] == 8'h4) begin | |
299 | `PR_INFO("lru_mon", `INFO, "THREAD4_START_REQ \n"); | |
300 | end | |
301 | if (core3_ld_rq_vld[5] == 8'h5) begin | |
302 | `PR_INFO("lru_mon", `INFO, "THREAD5_START_REQ \n"); | |
303 | end | |
304 | if (core3_ld_rq_vld[6] == 8'h6) begin | |
305 | `PR_INFO("lru_mon", `INFO, "THREAD6_START_REQ \n"); | |
306 | end | |
307 | if (core3_ld_rq_vld[7] == 8'h7) begin | |
308 | `PR_INFO("lru_mon", `INFO, "THREAD7_START_REQ \n"); | |
309 | end | |
310 | ||
311 | if ((core3_ld_asi_rq_sel[0] == 8'h0) | (core3_ld_pcx_rq_sel[0] == 8'h0)) begin | |
312 | `PR_INFO("lru_mon", `INFO, "THREAD0_END_SEL\n"); | |
313 | end | |
314 | if ((core3_ld_asi_rq_sel[1] == 8'h1) | (core3_ld_pcx_rq_sel[1] == 8'h1)) begin | |
315 | `PR_INFO("lru_mon", `INFO, "THREAD1_END_SEL\n"); | |
316 | end | |
317 | if ((core3_ld_asi_rq_sel[2] == 8'h2) | (core3_ld_pcx_rq_sel[2] == 8'h2)) begin | |
318 | `PR_INFO("lru_mon", `INFO, "THREAD2_END_SEL\n"); | |
319 | end | |
320 | if ((core3_ld_asi_rq_sel[3] == 8'h3) | (core3_ld_pcx_rq_sel[3] == 8'h3)) begin | |
321 | `PR_INFO("lru_mon", `INFO, "THREAD3_END_SEL\n"); | |
322 | end | |
323 | if ((core3_ld_asi_rq_sel[4] == 8'h4) | (core3_ld_pcx_rq_sel[4] == 8'h4)) begin | |
324 | `PR_INFO("lru_mon", `INFO, "THREAD4_END_SEL\n"); | |
325 | end | |
326 | if ((core3_ld_asi_rq_sel[5] == 8'h5) | (core3_ld_pcx_rq_sel[5] == 8'h5)) begin | |
327 | `PR_INFO("lru_mon", `INFO, "THREAD5_END_SEL\n"); | |
328 | end | |
329 | if ((core3_ld_asi_rq_sel[6] == 8'h6) | (core3_ld_pcx_rq_sel[6] == 8'h6)) begin | |
330 | `PR_INFO("lru_mon", `INFO, "THREAD6_END_SEL\n"); | |
331 | end | |
332 | if ((core3_ld_asi_rq_sel[7] == 8'h7) | (core3_ld_pcx_rq_sel[7] == 8'h7)) begin | |
333 | `PR_INFO("lru_mon", `INFO, "THREAD7_END_SEL\n"); | |
334 | end | |
335 | ||
336 | end | |
337 | ||
338 | `endif | |
339 | `endif | |
340 | `endif | |
341 | ||
342 | endmodule | |
343 | ||
344 | `endif | |
345 | ||
346 | ||
347 | `ifdef CORE_4 | |
348 | ||
349 | ||
350 | module lru_mon_c4; | |
351 | ||
352 | // If vcs_build_args NO_MONITORS, then module will be empty | |
353 | `ifndef GATESIM | |
354 | `ifndef NO_MONITORS | |
355 | `ifdef SPC | |
356 | ||
357 | wire [7:0] core4_ld_rq_vld = `SPC4.lsu.lmc.ld_rq_vld[7:0]; | |
358 | wire [7:0] core4_ld_asi_rq_sel = `SPC4.lsu.lmc.ld_asi_rq_sel[7:0]; | |
359 | wire [7:0] core4_ld_pcx_rq_sel = `SPC4.lsu.lmc.ld_pcx_rq_sel[7:0]; | |
360 | ||
361 | ||
362 | always @(posedge `SPC4.l2clk) begin | |
363 | ||
364 | if (core4_ld_rq_vld[0] == 8'h0) begin | |
365 | `PR_INFO("lru_mon", `INFO, "THREAD0_START_REQ \n"); | |
366 | end | |
367 | if (core4_ld_rq_vld[1] == 8'h1) begin | |
368 | `PR_INFO("lru_mon", `INFO, "THREAD1_START_REQ \n"); | |
369 | end | |
370 | if (core4_ld_rq_vld[2] == 8'h2) begin | |
371 | `PR_INFO("lru_mon", `INFO, "THREAD2_START_REQ \n"); | |
372 | end | |
373 | if (core4_ld_rq_vld[3] == 8'h3) begin | |
374 | `PR_INFO("lru_mon", `INFO, "THREAD3_START_REQ \n"); | |
375 | end | |
376 | if (core4_ld_rq_vld[4] == 8'h4) begin | |
377 | `PR_INFO("lru_mon", `INFO, "THREAD4_START_REQ \n"); | |
378 | end | |
379 | if (core4_ld_rq_vld[5] == 8'h5) begin | |
380 | `PR_INFO("lru_mon", `INFO, "THREAD5_START_REQ \n"); | |
381 | end | |
382 | if (core4_ld_rq_vld[6] == 8'h6) begin | |
383 | `PR_INFO("lru_mon", `INFO, "THREAD6_START_REQ \n"); | |
384 | end | |
385 | if (core4_ld_rq_vld[7] == 8'h7) begin | |
386 | `PR_INFO("lru_mon", `INFO, "THREAD7_START_REQ \n"); | |
387 | end | |
388 | ||
389 | if ((core4_ld_asi_rq_sel[0] == 8'h0) | (core4_ld_pcx_rq_sel[0] == 8'h0)) begin | |
390 | `PR_INFO("lru_mon", `INFO, "THREAD0_END_SEL\n"); | |
391 | end | |
392 | if ((core4_ld_asi_rq_sel[1] == 8'h1) | (core4_ld_pcx_rq_sel[1] == 8'h1)) begin | |
393 | `PR_INFO("lru_mon", `INFO, "THREAD1_END_SEL\n"); | |
394 | end | |
395 | if ((core4_ld_asi_rq_sel[2] == 8'h2) | (core4_ld_pcx_rq_sel[2] == 8'h2)) begin | |
396 | `PR_INFO("lru_mon", `INFO, "THREAD2_END_SEL\n"); | |
397 | end | |
398 | if ((core4_ld_asi_rq_sel[3] == 8'h3) | (core4_ld_pcx_rq_sel[3] == 8'h3)) begin | |
399 | `PR_INFO("lru_mon", `INFO, "THREAD3_END_SEL\n"); | |
400 | end | |
401 | if ((core4_ld_asi_rq_sel[4] == 8'h4) | (core4_ld_pcx_rq_sel[4] == 8'h4)) begin | |
402 | `PR_INFO("lru_mon", `INFO, "THREAD4_END_SEL\n"); | |
403 | end | |
404 | if ((core4_ld_asi_rq_sel[5] == 8'h5) | (core4_ld_pcx_rq_sel[5] == 8'h5)) begin | |
405 | `PR_INFO("lru_mon", `INFO, "THREAD5_END_SEL\n"); | |
406 | end | |
407 | if ((core4_ld_asi_rq_sel[6] == 8'h6) | (core4_ld_pcx_rq_sel[6] == 8'h6)) begin | |
408 | `PR_INFO("lru_mon", `INFO, "THREAD6_END_SEL\n"); | |
409 | end | |
410 | if ((core4_ld_asi_rq_sel[7] == 8'h7) | (core4_ld_pcx_rq_sel[7] == 8'h7)) begin | |
411 | `PR_INFO("lru_mon", `INFO, "THREAD7_END_SEL\n"); | |
412 | end | |
413 | ||
414 | end | |
415 | ||
416 | `endif | |
417 | `endif | |
418 | `endif | |
419 | ||
420 | endmodule | |
421 | ||
422 | `endif | |
423 | ||
424 | ||
425 | `ifdef CORE_5 | |
426 | ||
427 | ||
428 | module lru_mon_c5; | |
429 | ||
430 | // If vcs_build_args NO_MONITORS, then module will be empty | |
431 | `ifndef GATESIM | |
432 | `ifndef NO_MONITORS | |
433 | `ifdef SPC | |
434 | ||
435 | wire [7:0] core5_ld_rq_vld = `SPC5.lsu.lmc.ld_rq_vld[7:0]; | |
436 | wire [7:0] core5_ld_asi_rq_sel = `SPC5.lsu.lmc.ld_asi_rq_sel[7:0]; | |
437 | wire [7:0] core5_ld_pcx_rq_sel = `SPC5.lsu.lmc.ld_pcx_rq_sel[7:0]; | |
438 | ||
439 | ||
440 | always @(posedge `SPC5.l2clk) begin | |
441 | ||
442 | if (core5_ld_rq_vld[0] == 8'h0) begin | |
443 | `PR_INFO("lru_mon", `INFO, "THREAD0_START_REQ \n"); | |
444 | end | |
445 | if (core5_ld_rq_vld[1] == 8'h1) begin | |
446 | `PR_INFO("lru_mon", `INFO, "THREAD1_START_REQ \n"); | |
447 | end | |
448 | if (core5_ld_rq_vld[2] == 8'h2) begin | |
449 | `PR_INFO("lru_mon", `INFO, "THREAD2_START_REQ \n"); | |
450 | end | |
451 | if (core5_ld_rq_vld[3] == 8'h3) begin | |
452 | `PR_INFO("lru_mon", `INFO, "THREAD3_START_REQ \n"); | |
453 | end | |
454 | if (core5_ld_rq_vld[4] == 8'h4) begin | |
455 | `PR_INFO("lru_mon", `INFO, "THREAD4_START_REQ \n"); | |
456 | end | |
457 | if (core5_ld_rq_vld[5] == 8'h5) begin | |
458 | `PR_INFO("lru_mon", `INFO, "THREAD5_START_REQ \n"); | |
459 | end | |
460 | if (core5_ld_rq_vld[6] == 8'h6) begin | |
461 | `PR_INFO("lru_mon", `INFO, "THREAD6_START_REQ \n"); | |
462 | end | |
463 | if (core5_ld_rq_vld[7] == 8'h7) begin | |
464 | `PR_INFO("lru_mon", `INFO, "THREAD7_START_REQ \n"); | |
465 | end | |
466 | ||
467 | if ((core5_ld_asi_rq_sel[0] == 8'h0) | (core5_ld_pcx_rq_sel[0] == 8'h0)) begin | |
468 | `PR_INFO("lru_mon", `INFO, "THREAD0_END_SEL\n"); | |
469 | end | |
470 | if ((core5_ld_asi_rq_sel[1] == 8'h1) | (core5_ld_pcx_rq_sel[1] == 8'h1)) begin | |
471 | `PR_INFO("lru_mon", `INFO, "THREAD1_END_SEL\n"); | |
472 | end | |
473 | if ((core5_ld_asi_rq_sel[2] == 8'h2) | (core5_ld_pcx_rq_sel[2] == 8'h2)) begin | |
474 | `PR_INFO("lru_mon", `INFO, "THREAD2_END_SEL\n"); | |
475 | end | |
476 | if ((core5_ld_asi_rq_sel[3] == 8'h3) | (core5_ld_pcx_rq_sel[3] == 8'h3)) begin | |
477 | `PR_INFO("lru_mon", `INFO, "THREAD3_END_SEL\n"); | |
478 | end | |
479 | if ((core5_ld_asi_rq_sel[4] == 8'h4) | (core5_ld_pcx_rq_sel[4] == 8'h4)) begin | |
480 | `PR_INFO("lru_mon", `INFO, "THREAD4_END_SEL\n"); | |
481 | end | |
482 | if ((core5_ld_asi_rq_sel[5] == 8'h5) | (core5_ld_pcx_rq_sel[5] == 8'h5)) begin | |
483 | `PR_INFO("lru_mon", `INFO, "THREAD5_END_SEL\n"); | |
484 | end | |
485 | if ((core5_ld_asi_rq_sel[6] == 8'h6) | (core5_ld_pcx_rq_sel[6] == 8'h6)) begin | |
486 | `PR_INFO("lru_mon", `INFO, "THREAD6_END_SEL\n"); | |
487 | end | |
488 | if ((core5_ld_asi_rq_sel[7] == 8'h7) | (core5_ld_pcx_rq_sel[7] == 8'h7)) begin | |
489 | `PR_INFO("lru_mon", `INFO, "THREAD7_END_SEL\n"); | |
490 | end | |
491 | ||
492 | end | |
493 | ||
494 | `endif | |
495 | `endif | |
496 | `endif | |
497 | ||
498 | endmodule | |
499 | ||
500 | `endif | |
501 | ||
502 | ||
503 | `ifdef CORE_6 | |
504 | ||
505 | ||
506 | module lru_mon_c6; | |
507 | ||
508 | // If vcs_build_args NO_MONITORS, then module will be empty | |
509 | `ifndef GATESIM | |
510 | `ifndef NO_MONITORS | |
511 | `ifdef SPC | |
512 | ||
513 | wire [7:0] core6_ld_rq_vld = `SPC6.lsu.lmc.ld_rq_vld[7:0]; | |
514 | wire [7:0] core6_ld_asi_rq_sel = `SPC6.lsu.lmc.ld_asi_rq_sel[7:0]; | |
515 | wire [7:0] core6_ld_pcx_rq_sel = `SPC6.lsu.lmc.ld_pcx_rq_sel[7:0]; | |
516 | ||
517 | ||
518 | always @(posedge `SPC6.l2clk) begin | |
519 | ||
520 | if (core6_ld_rq_vld[0] == 8'h0) begin | |
521 | `PR_INFO("lru_mon", `INFO, "THREAD0_START_REQ \n"); | |
522 | end | |
523 | if (core6_ld_rq_vld[1] == 8'h1) begin | |
524 | `PR_INFO("lru_mon", `INFO, "THREAD1_START_REQ \n"); | |
525 | end | |
526 | if (core6_ld_rq_vld[2] == 8'h2) begin | |
527 | `PR_INFO("lru_mon", `INFO, "THREAD2_START_REQ \n"); | |
528 | end | |
529 | if (core6_ld_rq_vld[3] == 8'h3) begin | |
530 | `PR_INFO("lru_mon", `INFO, "THREAD3_START_REQ \n"); | |
531 | end | |
532 | if (core6_ld_rq_vld[4] == 8'h4) begin | |
533 | `PR_INFO("lru_mon", `INFO, "THREAD4_START_REQ \n"); | |
534 | end | |
535 | if (core6_ld_rq_vld[5] == 8'h5) begin | |
536 | `PR_INFO("lru_mon", `INFO, "THREAD5_START_REQ \n"); | |
537 | end | |
538 | if (core6_ld_rq_vld[6] == 8'h6) begin | |
539 | `PR_INFO("lru_mon", `INFO, "THREAD6_START_REQ \n"); | |
540 | end | |
541 | if (core6_ld_rq_vld[7] == 8'h7) begin | |
542 | `PR_INFO("lru_mon", `INFO, "THREAD7_START_REQ \n"); | |
543 | end | |
544 | ||
545 | if ((core6_ld_asi_rq_sel[0] == 8'h0) | (core6_ld_pcx_rq_sel[0] == 8'h0)) begin | |
546 | `PR_INFO("lru_mon", `INFO, "THREAD0_END_SEL\n"); | |
547 | end | |
548 | if ((core6_ld_asi_rq_sel[1] == 8'h1) | (core6_ld_pcx_rq_sel[1] == 8'h1)) begin | |
549 | `PR_INFO("lru_mon", `INFO, "THREAD1_END_SEL\n"); | |
550 | end | |
551 | if ((core6_ld_asi_rq_sel[2] == 8'h2) | (core6_ld_pcx_rq_sel[2] == 8'h2)) begin | |
552 | `PR_INFO("lru_mon", `INFO, "THREAD2_END_SEL\n"); | |
553 | end | |
554 | if ((core6_ld_asi_rq_sel[3] == 8'h3) | (core6_ld_pcx_rq_sel[3] == 8'h3)) begin | |
555 | `PR_INFO("lru_mon", `INFO, "THREAD3_END_SEL\n"); | |
556 | end | |
557 | if ((core6_ld_asi_rq_sel[4] == 8'h4) | (core6_ld_pcx_rq_sel[4] == 8'h4)) begin | |
558 | `PR_INFO("lru_mon", `INFO, "THREAD4_END_SEL\n"); | |
559 | end | |
560 | if ((core6_ld_asi_rq_sel[5] == 8'h5) | (core6_ld_pcx_rq_sel[5] == 8'h5)) begin | |
561 | `PR_INFO("lru_mon", `INFO, "THREAD5_END_SEL\n"); | |
562 | end | |
563 | if ((core6_ld_asi_rq_sel[6] == 8'h6) | (core6_ld_pcx_rq_sel[6] == 8'h6)) begin | |
564 | `PR_INFO("lru_mon", `INFO, "THREAD6_END_SEL\n"); | |
565 | end | |
566 | if ((core6_ld_asi_rq_sel[7] == 8'h7) | (core6_ld_pcx_rq_sel[7] == 8'h7)) begin | |
567 | `PR_INFO("lru_mon", `INFO, "THREAD7_END_SEL\n"); | |
568 | end | |
569 | ||
570 | end | |
571 | ||
572 | `endif | |
573 | `endif | |
574 | `endif | |
575 | ||
576 | endmodule | |
577 | ||
578 | `endif | |
579 | ||
580 | ||
581 | `ifdef CORE_7 | |
582 | ||
583 | ||
584 | module lru_mon_c7; | |
585 | ||
586 | // If vcs_build_args NO_MONITORS, then module will be empty | |
587 | `ifndef GATESIM | |
588 | `ifndef NO_MONITORS | |
589 | `ifdef SPC | |
590 | ||
591 | wire [7:0] core7_ld_rq_vld = `SPC7.lsu.lmc.ld_rq_vld[7:0]; | |
592 | wire [7:0] core7_ld_asi_rq_sel = `SPC7.lsu.lmc.ld_asi_rq_sel[7:0]; | |
593 | wire [7:0] core7_ld_pcx_rq_sel = `SPC7.lsu.lmc.ld_pcx_rq_sel[7:0]; | |
594 | ||
595 | ||
596 | always @(posedge `SPC7.l2clk) begin | |
597 | ||
598 | if (core7_ld_rq_vld[0] == 8'h0) begin | |
599 | `PR_INFO("lru_mon", `INFO, "THREAD0_START_REQ \n"); | |
600 | end | |
601 | if (core7_ld_rq_vld[1] == 8'h1) begin | |
602 | `PR_INFO("lru_mon", `INFO, "THREAD1_START_REQ \n"); | |
603 | end | |
604 | if (core7_ld_rq_vld[2] == 8'h2) begin | |
605 | `PR_INFO("lru_mon", `INFO, "THREAD2_START_REQ \n"); | |
606 | end | |
607 | if (core7_ld_rq_vld[3] == 8'h3) begin | |
608 | `PR_INFO("lru_mon", `INFO, "THREAD3_START_REQ \n"); | |
609 | end | |
610 | if (core7_ld_rq_vld[4] == 8'h4) begin | |
611 | `PR_INFO("lru_mon", `INFO, "THREAD4_START_REQ \n"); | |
612 | end | |
613 | if (core7_ld_rq_vld[5] == 8'h5) begin | |
614 | `PR_INFO("lru_mon", `INFO, "THREAD5_START_REQ \n"); | |
615 | end | |
616 | if (core7_ld_rq_vld[6] == 8'h6) begin | |
617 | `PR_INFO("lru_mon", `INFO, "THREAD6_START_REQ \n"); | |
618 | end | |
619 | if (core7_ld_rq_vld[7] == 8'h7) begin | |
620 | `PR_INFO("lru_mon", `INFO, "THREAD7_START_REQ \n"); | |
621 | end | |
622 | ||
623 | if ((core7_ld_asi_rq_sel[0] == 8'h0) | (core7_ld_pcx_rq_sel[0] == 8'h0)) begin | |
624 | `PR_INFO("lru_mon", `INFO, "THREAD0_END_SEL\n"); | |
625 | end | |
626 | if ((core7_ld_asi_rq_sel[1] == 8'h1) | (core7_ld_pcx_rq_sel[1] == 8'h1)) begin | |
627 | `PR_INFO("lru_mon", `INFO, "THREAD1_END_SEL\n"); | |
628 | end | |
629 | if ((core7_ld_asi_rq_sel[2] == 8'h2) | (core7_ld_pcx_rq_sel[2] == 8'h2)) begin | |
630 | `PR_INFO("lru_mon", `INFO, "THREAD2_END_SEL\n"); | |
631 | end | |
632 | if ((core7_ld_asi_rq_sel[3] == 8'h3) | (core7_ld_pcx_rq_sel[3] == 8'h3)) begin | |
633 | `PR_INFO("lru_mon", `INFO, "THREAD3_END_SEL\n"); | |
634 | end | |
635 | if ((core7_ld_asi_rq_sel[4] == 8'h4) | (core7_ld_pcx_rq_sel[4] == 8'h4)) begin | |
636 | `PR_INFO("lru_mon", `INFO, "THREAD4_END_SEL\n"); | |
637 | end | |
638 | if ((core7_ld_asi_rq_sel[5] == 8'h5) | (core7_ld_pcx_rq_sel[5] == 8'h5)) begin | |
639 | `PR_INFO("lru_mon", `INFO, "THREAD5_END_SEL\n"); | |
640 | end | |
641 | if ((core7_ld_asi_rq_sel[6] == 8'h6) | (core7_ld_pcx_rq_sel[6] == 8'h6)) begin | |
642 | `PR_INFO("lru_mon", `INFO, "THREAD6_END_SEL\n"); | |
643 | end | |
644 | if ((core7_ld_asi_rq_sel[7] == 8'h7) | (core7_ld_pcx_rq_sel[7] == 8'h7)) begin | |
645 | `PR_INFO("lru_mon", `INFO, "THREAD7_END_SEL\n"); | |
646 | end | |
647 | ||
648 | end | |
649 | ||
650 | `endif | |
651 | `endif | |
652 | `endif | |
653 | ||
654 | endmodule | |
655 | ||
656 | `endif | |
657 | ||
658 |