Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | // ========== Copyright Header Begin ========================================== |
2 | // | |
3 | // OpenSPARC T2 Processor File: ifu_ftu_err_dp.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 | module ifu_ftu_err_dp ( | |
36 | ict_itlb_way_0_tag_f, | |
37 | ict_itlb_way_1_tag_f, | |
38 | ict_itlb_way_2_tag_f, | |
39 | ict_itlb_way_3_tag_f, | |
40 | ict_itlb_way_4_tag_f, | |
41 | ict_itlb_way_5_tag_f, | |
42 | ict_itlb_way_6_tag_f, | |
43 | ict_itlb_way_7_tag_f, | |
44 | err_w0_8b_parity_f, | |
45 | err_w1_8b_parity_f, | |
46 | err_w2_8b_parity_f, | |
47 | err_w3_8b_parity_f, | |
48 | err_w4_8b_parity_f, | |
49 | err_w5_8b_parity_f, | |
50 | err_w6_8b_parity_f, | |
51 | err_w7_8b_parity_f) ; | |
52 | wire err_w0_8b_parity_f_3_xor0; | |
53 | wire err_w0_8b_parity_f_3_xor1; | |
54 | wire [3:0] err_w0_8b_parity_f_in; | |
55 | wire err_w0_8b_parity_f_2_xor0; | |
56 | wire err_w0_8b_parity_f_2_xor1; | |
57 | wire err_w0_8b_parity_f_2_xor2; | |
58 | wire err_w0_8b_parity_f_1_xor0; | |
59 | wire err_w0_8b_parity_f_1_xor1; | |
60 | wire err_w0_8b_parity_f_1_xor2; | |
61 | wire err_w0_8b_parity_f_0_xor0; | |
62 | wire err_w0_8b_parity_f_0_xor1; | |
63 | wire err_w0_8b_parity_f_0_xor2; | |
64 | wire err_w1_8b_parity_f_3_xor0; | |
65 | wire err_w1_8b_parity_f_3_xor1; | |
66 | wire [3:0] err_w1_8b_parity_f_in; | |
67 | wire err_w1_8b_parity_f_2_xor0; | |
68 | wire err_w1_8b_parity_f_2_xor1; | |
69 | wire err_w1_8b_parity_f_2_xor2; | |
70 | wire err_w1_8b_parity_f_1_xor0; | |
71 | wire err_w1_8b_parity_f_1_xor1; | |
72 | wire err_w1_8b_parity_f_1_xor2; | |
73 | wire err_w1_8b_parity_f_0_xor0; | |
74 | wire err_w1_8b_parity_f_0_xor1; | |
75 | wire err_w1_8b_parity_f_0_xor2; | |
76 | wire err_w2_8b_parity_f_3_xor0; | |
77 | wire err_w2_8b_parity_f_3_xor1; | |
78 | wire [3:0] err_w2_8b_parity_f_in; | |
79 | wire err_w2_8b_parity_f_2_xor0; | |
80 | wire err_w2_8b_parity_f_2_xor1; | |
81 | wire err_w2_8b_parity_f_2_xor2; | |
82 | wire err_w2_8b_parity_f_1_xor0; | |
83 | wire err_w2_8b_parity_f_1_xor1; | |
84 | wire err_w2_8b_parity_f_1_xor2; | |
85 | wire err_w2_8b_parity_f_0_xor0; | |
86 | wire err_w2_8b_parity_f_0_xor1; | |
87 | wire err_w2_8b_parity_f_0_xor2; | |
88 | wire err_w3_8b_parity_f_3_xor0; | |
89 | wire err_w3_8b_parity_f_3_xor1; | |
90 | wire [3:0] err_w3_8b_parity_f_in; | |
91 | wire err_w3_8b_parity_f_2_xor0; | |
92 | wire err_w3_8b_parity_f_2_xor1; | |
93 | wire err_w3_8b_parity_f_2_xor2; | |
94 | wire err_w3_8b_parity_f_1_xor0; | |
95 | wire err_w3_8b_parity_f_1_xor1; | |
96 | wire err_w3_8b_parity_f_1_xor2; | |
97 | wire err_w3_8b_parity_f_0_xor0; | |
98 | wire err_w3_8b_parity_f_0_xor1; | |
99 | wire err_w3_8b_parity_f_0_xor2; | |
100 | wire err_w4_8b_parity_f_3_xor0; | |
101 | wire err_w4_8b_parity_f_3_xor1; | |
102 | wire [3:0] err_w4_8b_parity_f_in; | |
103 | wire err_w4_8b_parity_f_2_xor0; | |
104 | wire err_w4_8b_parity_f_2_xor1; | |
105 | wire err_w4_8b_parity_f_2_xor2; | |
106 | wire err_w4_8b_parity_f_1_xor0; | |
107 | wire err_w4_8b_parity_f_1_xor1; | |
108 | wire err_w4_8b_parity_f_1_xor2; | |
109 | wire err_w4_8b_parity_f_0_xor0; | |
110 | wire err_w4_8b_parity_f_0_xor1; | |
111 | wire err_w4_8b_parity_f_0_xor2; | |
112 | wire err_w5_8b_parity_f_3_xor0; | |
113 | wire err_w5_8b_parity_f_3_xor1; | |
114 | wire [3:0] err_w5_8b_parity_f_in; | |
115 | wire err_w5_8b_parity_f_2_xor0; | |
116 | wire err_w5_8b_parity_f_2_xor1; | |
117 | wire err_w5_8b_parity_f_2_xor2; | |
118 | wire err_w5_8b_parity_f_1_xor0; | |
119 | wire err_w5_8b_parity_f_1_xor1; | |
120 | wire err_w5_8b_parity_f_1_xor2; | |
121 | wire err_w5_8b_parity_f_0_xor0; | |
122 | wire err_w5_8b_parity_f_0_xor1; | |
123 | wire err_w5_8b_parity_f_0_xor2; | |
124 | wire err_w6_8b_parity_f_3_xor0; | |
125 | wire err_w6_8b_parity_f_3_xor1; | |
126 | wire [3:0] err_w6_8b_parity_f_in; | |
127 | wire err_w6_8b_parity_f_2_xor0; | |
128 | wire err_w6_8b_parity_f_2_xor1; | |
129 | wire err_w6_8b_parity_f_2_xor2; | |
130 | wire err_w6_8b_parity_f_1_xor0; | |
131 | wire err_w6_8b_parity_f_1_xor1; | |
132 | wire err_w6_8b_parity_f_1_xor2; | |
133 | wire err_w6_8b_parity_f_0_xor0; | |
134 | wire err_w6_8b_parity_f_0_xor1; | |
135 | wire err_w6_8b_parity_f_0_xor2; | |
136 | wire err_w7_8b_parity_f_3_xor0; | |
137 | wire err_w7_8b_parity_f_3_xor1; | |
138 | wire [3:0] err_w7_8b_parity_f_in; | |
139 | wire err_w7_8b_parity_f_2_xor0; | |
140 | wire err_w7_8b_parity_f_2_xor1; | |
141 | wire err_w7_8b_parity_f_2_xor2; | |
142 | wire err_w7_8b_parity_f_1_xor0; | |
143 | wire err_w7_8b_parity_f_1_xor1; | |
144 | wire err_w7_8b_parity_f_1_xor2; | |
145 | wire err_w7_8b_parity_f_0_xor0; | |
146 | wire err_w7_8b_parity_f_0_xor1; | |
147 | wire err_w7_8b_parity_f_0_xor2; | |
148 | ||
149 | ||
150 | ||
151 | ||
152 | input [29:0] ict_itlb_way_0_tag_f; // | |
153 | input [29:0] ict_itlb_way_1_tag_f; // | |
154 | input [29:0] ict_itlb_way_2_tag_f; // | |
155 | input [29:0] ict_itlb_way_3_tag_f; // | |
156 | input [29:0] ict_itlb_way_4_tag_f; // | |
157 | input [29:0] ict_itlb_way_5_tag_f; // | |
158 | input [29:0] ict_itlb_way_6_tag_f; // | |
159 | input [29:0] ict_itlb_way_7_tag_f; // | |
160 | ||
161 | ||
162 | ||
163 | output [3:0] err_w0_8b_parity_f; | |
164 | output [3:0] err_w1_8b_parity_f; | |
165 | output [3:0] err_w2_8b_parity_f; | |
166 | output [3:0] err_w3_8b_parity_f; | |
167 | output [3:0] err_w4_8b_parity_f; | |
168 | output [3:0] err_w5_8b_parity_f; | |
169 | output [3:0] err_w6_8b_parity_f; | |
170 | output [3:0] err_w7_8b_parity_f; | |
171 | ||
172 | ||
173 | ||
174 | ||
175 | /////////////////////////////////////////////////////////// | |
176 | // Generate parity in two stages. First stage is done in // | |
177 | // F cycle when the tags are read. The second stage // | |
178 | // is done in C. // | |
179 | /////////////////////////////////////////////////////////// | |
180 | /////////////////////////////// | |
181 | // Way 0 // | |
182 | /////////////////////////////// | |
183 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p3_xor0 ( | |
184 | .din0 (ict_itlb_way_0_tag_f[29]), | |
185 | .din1 (ict_itlb_way_0_tag_f[28]), | |
186 | .din2 (ict_itlb_way_0_tag_f[27]), | |
187 | .dout (err_w0_8b_parity_f_3_xor0) | |
188 | ); | |
189 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p3_xor1 ( | |
190 | .din0 (ict_itlb_way_0_tag_f[26]), | |
191 | .din1 (ict_itlb_way_0_tag_f[25]), | |
192 | .din2 (ict_itlb_way_0_tag_f[24]), | |
193 | .dout (err_w0_8b_parity_f_3_xor1) | |
194 | ); | |
195 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w0_8b_p3_xor2 ( | |
196 | .din0 (err_w0_8b_parity_f_3_xor1), | |
197 | .din1 (err_w0_8b_parity_f_3_xor0), | |
198 | .dout (err_w0_8b_parity_f_in[3]) | |
199 | ); | |
200 | ||
201 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p2_xor0 ( | |
202 | .din0 (ict_itlb_way_0_tag_f[23]), | |
203 | .din1 (ict_itlb_way_0_tag_f[22]), | |
204 | .din2 (ict_itlb_way_0_tag_f[21]), | |
205 | .dout (err_w0_8b_parity_f_2_xor0) | |
206 | ); | |
207 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p2_xor1 ( | |
208 | .din0 (ict_itlb_way_0_tag_f[20]), | |
209 | .din1 (ict_itlb_way_0_tag_f[19]), | |
210 | .din2 (ict_itlb_way_0_tag_f[18]), | |
211 | .dout (err_w0_8b_parity_f_2_xor1) | |
212 | ); | |
213 | ||
214 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w0_8b_p2_xor2 ( | |
215 | .din0 (ict_itlb_way_0_tag_f[17]), | |
216 | .din1 (ict_itlb_way_0_tag_f[16]), | |
217 | .dout (err_w0_8b_parity_f_2_xor2) | |
218 | ); | |
219 | ||
220 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p2_xor3 ( | |
221 | .din0 (err_w0_8b_parity_f_2_xor2), | |
222 | .din1 (err_w0_8b_parity_f_2_xor1), | |
223 | .din2 (err_w0_8b_parity_f_2_xor0), | |
224 | .dout (err_w0_8b_parity_f_in[2]) | |
225 | ); | |
226 | ||
227 | ||
228 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p1_xor0 ( | |
229 | .din0 (ict_itlb_way_0_tag_f[15]), | |
230 | .din1 (ict_itlb_way_0_tag_f[14]), | |
231 | .din2 (ict_itlb_way_0_tag_f[13]), | |
232 | .dout (err_w0_8b_parity_f_1_xor0) | |
233 | ); | |
234 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p1_xor1 ( | |
235 | .din0 (ict_itlb_way_0_tag_f[12]), | |
236 | .din1 (ict_itlb_way_0_tag_f[11]), | |
237 | .din2 (ict_itlb_way_0_tag_f[10]), | |
238 | .dout (err_w0_8b_parity_f_1_xor1) | |
239 | ); | |
240 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w0_8b_p1_xor2 ( | |
241 | .din0 (ict_itlb_way_0_tag_f[9]), | |
242 | .din1 (ict_itlb_way_0_tag_f[8]), | |
243 | .dout (err_w0_8b_parity_f_1_xor2) | |
244 | ); | |
245 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p1_xor3 ( | |
246 | .din0 (err_w0_8b_parity_f_1_xor2), | |
247 | .din1 (err_w0_8b_parity_f_1_xor1), | |
248 | .din2 (err_w0_8b_parity_f_1_xor0), | |
249 | .dout (err_w0_8b_parity_f_in[1]) | |
250 | ); | |
251 | ||
252 | ||
253 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p0_xor0 ( | |
254 | .din0 (ict_itlb_way_0_tag_f[7]), | |
255 | .din1 (ict_itlb_way_0_tag_f[6]), | |
256 | .din2 (ict_itlb_way_0_tag_f[5]), | |
257 | .dout (err_w0_8b_parity_f_0_xor0) | |
258 | ); | |
259 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p0_xor1 ( | |
260 | .din0 (ict_itlb_way_0_tag_f[4]), | |
261 | .din1 (ict_itlb_way_0_tag_f[3]), | |
262 | .din2 (ict_itlb_way_0_tag_f[2]), | |
263 | .dout (err_w0_8b_parity_f_0_xor1) | |
264 | ); | |
265 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w0_8b_p0_xor2 ( | |
266 | .din0 (ict_itlb_way_0_tag_f[1]), | |
267 | .din1 (ict_itlb_way_0_tag_f[0]), | |
268 | .dout (err_w0_8b_parity_f_0_xor2) | |
269 | ); | |
270 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w0_8b_p0_xor3 ( | |
271 | .din0 (err_w0_8b_parity_f_0_xor2), | |
272 | .din1 (err_w0_8b_parity_f_0_xor1), | |
273 | .din2 (err_w0_8b_parity_f_0_xor0), | |
274 | .dout (err_w0_8b_parity_f_in[0]) | |
275 | ); | |
276 | ||
277 | ifu_ftu_err_dp_buff_macro__dbuff_56x__width_4 w0_buff ( | |
278 | .din (err_w0_8b_parity_f_in[3:0]), | |
279 | .dout (err_w0_8b_parity_f[3:0])) ; | |
280 | /////////////////////////////// | |
281 | // Way 1 // | |
282 | /////////////////////////////// | |
283 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p3_xor0 ( | |
284 | .din0 (ict_itlb_way_1_tag_f[29]), | |
285 | .din1 (ict_itlb_way_1_tag_f[28]), | |
286 | .din2 (ict_itlb_way_1_tag_f[27]), | |
287 | .dout (err_w1_8b_parity_f_3_xor0) | |
288 | ); | |
289 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p3_xor1 ( | |
290 | .din0 (ict_itlb_way_1_tag_f[26]), | |
291 | .din1 (ict_itlb_way_1_tag_f[25]), | |
292 | .din2 (ict_itlb_way_1_tag_f[24]), | |
293 | .dout (err_w1_8b_parity_f_3_xor1) | |
294 | ); | |
295 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w1_8b_p3_xor2 ( | |
296 | .din0 (err_w1_8b_parity_f_3_xor1), | |
297 | .din1 (err_w1_8b_parity_f_3_xor0), | |
298 | .dout (err_w1_8b_parity_f_in[3]) | |
299 | ); | |
300 | ||
301 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p2_xor0 ( | |
302 | .din0 (ict_itlb_way_1_tag_f[23]), | |
303 | .din1 (ict_itlb_way_1_tag_f[22]), | |
304 | .din2 (ict_itlb_way_1_tag_f[21]), | |
305 | .dout (err_w1_8b_parity_f_2_xor0) | |
306 | ); | |
307 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p2_xor1 ( | |
308 | .din0 (ict_itlb_way_1_tag_f[20]), | |
309 | .din1 (ict_itlb_way_1_tag_f[19]), | |
310 | .din2 (ict_itlb_way_1_tag_f[18]), | |
311 | .dout (err_w1_8b_parity_f_2_xor1) | |
312 | ); | |
313 | ||
314 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w1_8b_p2_xor2 ( | |
315 | .din0 (ict_itlb_way_1_tag_f[17]), | |
316 | .din1 (ict_itlb_way_1_tag_f[16]), | |
317 | .dout (err_w1_8b_parity_f_2_xor2) | |
318 | ); | |
319 | ||
320 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p2_xor3 ( | |
321 | .din0 (err_w1_8b_parity_f_2_xor2), | |
322 | .din1 (err_w1_8b_parity_f_2_xor1), | |
323 | .din2 (err_w1_8b_parity_f_2_xor0), | |
324 | .dout (err_w1_8b_parity_f_in[2]) | |
325 | ); | |
326 | ||
327 | ||
328 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p1_xor0 ( | |
329 | .din0 (ict_itlb_way_1_tag_f[15]), | |
330 | .din1 (ict_itlb_way_1_tag_f[14]), | |
331 | .din2 (ict_itlb_way_1_tag_f[13]), | |
332 | .dout (err_w1_8b_parity_f_1_xor0) | |
333 | ); | |
334 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p1_xor1 ( | |
335 | .din0 (ict_itlb_way_1_tag_f[12]), | |
336 | .din1 (ict_itlb_way_1_tag_f[11]), | |
337 | .din2 (ict_itlb_way_1_tag_f[10]), | |
338 | .dout (err_w1_8b_parity_f_1_xor1) | |
339 | ); | |
340 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w1_8b_p1_xor2 ( | |
341 | .din0 (ict_itlb_way_1_tag_f[9]), | |
342 | .din1 (ict_itlb_way_1_tag_f[8]), | |
343 | .dout (err_w1_8b_parity_f_1_xor2) | |
344 | ); | |
345 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p1_xor3 ( | |
346 | .din0 (err_w1_8b_parity_f_1_xor2), | |
347 | .din1 (err_w1_8b_parity_f_1_xor1), | |
348 | .din2 (err_w1_8b_parity_f_1_xor0), | |
349 | .dout (err_w1_8b_parity_f_in[1]) | |
350 | ); | |
351 | ||
352 | ||
353 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p0_xor0 ( | |
354 | .din0 (ict_itlb_way_1_tag_f[7]), | |
355 | .din1 (ict_itlb_way_1_tag_f[6]), | |
356 | .din2 (ict_itlb_way_1_tag_f[5]), | |
357 | .dout (err_w1_8b_parity_f_0_xor0) | |
358 | ); | |
359 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p0_xor1 ( | |
360 | .din0 (ict_itlb_way_1_tag_f[4]), | |
361 | .din1 (ict_itlb_way_1_tag_f[3]), | |
362 | .din2 (ict_itlb_way_1_tag_f[2]), | |
363 | .dout (err_w1_8b_parity_f_0_xor1) | |
364 | ); | |
365 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w1_8b_p0_xor2 ( | |
366 | .din0 (ict_itlb_way_1_tag_f[1]), | |
367 | .din1 (ict_itlb_way_1_tag_f[0]), | |
368 | .dout (err_w1_8b_parity_f_0_xor2) | |
369 | ); | |
370 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w1_8b_p0_xor3 ( | |
371 | .din0 (err_w1_8b_parity_f_0_xor2), | |
372 | .din1 (err_w1_8b_parity_f_0_xor1), | |
373 | .din2 (err_w1_8b_parity_f_0_xor0), | |
374 | .dout (err_w1_8b_parity_f_in[0]) | |
375 | ); | |
376 | ||
377 | ||
378 | ifu_ftu_err_dp_buff_macro__dbuff_56x__width_4 w1_buff ( | |
379 | .din (err_w1_8b_parity_f_in[3:0]), | |
380 | .dout (err_w1_8b_parity_f[3:0])) ; | |
381 | /////////////////////////////// | |
382 | // Way 2 // | |
383 | /////////////////////////////// | |
384 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p3_xor0 ( | |
385 | .din0 (ict_itlb_way_2_tag_f[29]), | |
386 | .din1 (ict_itlb_way_2_tag_f[28]), | |
387 | .din2 (ict_itlb_way_2_tag_f[27]), | |
388 | .dout (err_w2_8b_parity_f_3_xor0) | |
389 | ); | |
390 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p3_xor1 ( | |
391 | .din0 (ict_itlb_way_2_tag_f[26]), | |
392 | .din1 (ict_itlb_way_2_tag_f[25]), | |
393 | .din2 (ict_itlb_way_2_tag_f[24]), | |
394 | .dout (err_w2_8b_parity_f_3_xor1) | |
395 | ); | |
396 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w2_8b_p3_xor2 ( | |
397 | .din0 (err_w2_8b_parity_f_3_xor1), | |
398 | .din1 (err_w2_8b_parity_f_3_xor0), | |
399 | .dout (err_w2_8b_parity_f_in[3]) | |
400 | ); | |
401 | ||
402 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p2_xor0 ( | |
403 | .din0 (ict_itlb_way_2_tag_f[23]), | |
404 | .din1 (ict_itlb_way_2_tag_f[22]), | |
405 | .din2 (ict_itlb_way_2_tag_f[21]), | |
406 | .dout (err_w2_8b_parity_f_2_xor0) | |
407 | ); | |
408 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p2_xor1 ( | |
409 | .din0 (ict_itlb_way_2_tag_f[20]), | |
410 | .din1 (ict_itlb_way_2_tag_f[19]), | |
411 | .din2 (ict_itlb_way_2_tag_f[18]), | |
412 | .dout (err_w2_8b_parity_f_2_xor1) | |
413 | ); | |
414 | ||
415 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w2_8b_p2_xor2 ( | |
416 | .din0 (ict_itlb_way_2_tag_f[17]), | |
417 | .din1 (ict_itlb_way_2_tag_f[16]), | |
418 | .dout (err_w2_8b_parity_f_2_xor2) | |
419 | ); | |
420 | ||
421 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p2_xor3 ( | |
422 | .din0 (err_w2_8b_parity_f_2_xor2), | |
423 | .din1 (err_w2_8b_parity_f_2_xor1), | |
424 | .din2 (err_w2_8b_parity_f_2_xor0), | |
425 | .dout (err_w2_8b_parity_f_in[2]) | |
426 | ); | |
427 | ||
428 | ||
429 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p1_xor0 ( | |
430 | .din0 (ict_itlb_way_2_tag_f[15]), | |
431 | .din1 (ict_itlb_way_2_tag_f[14]), | |
432 | .din2 (ict_itlb_way_2_tag_f[13]), | |
433 | .dout (err_w2_8b_parity_f_1_xor0) | |
434 | ); | |
435 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p1_xor1 ( | |
436 | .din0 (ict_itlb_way_2_tag_f[12]), | |
437 | .din1 (ict_itlb_way_2_tag_f[11]), | |
438 | .din2 (ict_itlb_way_2_tag_f[10]), | |
439 | .dout (err_w2_8b_parity_f_1_xor1) | |
440 | ); | |
441 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w2_8b_p1_xor2 ( | |
442 | .din0 (ict_itlb_way_2_tag_f[9]), | |
443 | .din1 (ict_itlb_way_2_tag_f[8]), | |
444 | .dout (err_w2_8b_parity_f_1_xor2) | |
445 | ); | |
446 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p1_xor3 ( | |
447 | .din0 (err_w2_8b_parity_f_1_xor2), | |
448 | .din1 (err_w2_8b_parity_f_1_xor1), | |
449 | .din2 (err_w2_8b_parity_f_1_xor0), | |
450 | .dout (err_w2_8b_parity_f_in[1]) | |
451 | ); | |
452 | ||
453 | ||
454 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p0_xor0 ( | |
455 | .din0 (ict_itlb_way_2_tag_f[7]), | |
456 | .din1 (ict_itlb_way_2_tag_f[6]), | |
457 | .din2 (ict_itlb_way_2_tag_f[5]), | |
458 | .dout (err_w2_8b_parity_f_0_xor0) | |
459 | ); | |
460 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p0_xor1 ( | |
461 | .din0 (ict_itlb_way_2_tag_f[4]), | |
462 | .din1 (ict_itlb_way_2_tag_f[3]), | |
463 | .din2 (ict_itlb_way_2_tag_f[2]), | |
464 | .dout (err_w2_8b_parity_f_0_xor1) | |
465 | ); | |
466 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w2_8b_p0_xor2 ( | |
467 | .din0 (ict_itlb_way_2_tag_f[1]), | |
468 | .din1 (ict_itlb_way_2_tag_f[0]), | |
469 | .dout (err_w2_8b_parity_f_0_xor2) | |
470 | ); | |
471 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w2_8b_p0_xor3 ( | |
472 | .din0 (err_w2_8b_parity_f_0_xor2), | |
473 | .din1 (err_w2_8b_parity_f_0_xor1), | |
474 | .din2 (err_w2_8b_parity_f_0_xor0), | |
475 | .dout (err_w2_8b_parity_f_in[0]) | |
476 | ); | |
477 | ||
478 | ||
479 | ifu_ftu_err_dp_buff_macro__dbuff_56x__width_4 w2_buff ( | |
480 | .din (err_w2_8b_parity_f_in[3:0]), | |
481 | .dout (err_w2_8b_parity_f[3:0])) ; | |
482 | ||
483 | /////////////////////////////// | |
484 | // Way 3 // | |
485 | /////////////////////////////// | |
486 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p3_xor0 ( | |
487 | .din0 (ict_itlb_way_3_tag_f[29]), | |
488 | .din1 (ict_itlb_way_3_tag_f[28]), | |
489 | .din2 (ict_itlb_way_3_tag_f[27]), | |
490 | .dout (err_w3_8b_parity_f_3_xor0) | |
491 | ); | |
492 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p3_xor1 ( | |
493 | .din0 (ict_itlb_way_3_tag_f[26]), | |
494 | .din1 (ict_itlb_way_3_tag_f[25]), | |
495 | .din2 (ict_itlb_way_3_tag_f[24]), | |
496 | .dout (err_w3_8b_parity_f_3_xor1) | |
497 | ); | |
498 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w3_8b_p3_xor2 ( | |
499 | .din0 (err_w3_8b_parity_f_3_xor1), | |
500 | .din1 (err_w3_8b_parity_f_3_xor0), | |
501 | .dout (err_w3_8b_parity_f_in[3]) | |
502 | ); | |
503 | ||
504 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p2_xor0 ( | |
505 | .din0 (ict_itlb_way_3_tag_f[23]), | |
506 | .din1 (ict_itlb_way_3_tag_f[22]), | |
507 | .din2 (ict_itlb_way_3_tag_f[21]), | |
508 | .dout (err_w3_8b_parity_f_2_xor0) | |
509 | ); | |
510 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p2_xor1 ( | |
511 | .din0 (ict_itlb_way_3_tag_f[20]), | |
512 | .din1 (ict_itlb_way_3_tag_f[19]), | |
513 | .din2 (ict_itlb_way_3_tag_f[18]), | |
514 | .dout (err_w3_8b_parity_f_2_xor1) | |
515 | ); | |
516 | ||
517 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w3_8b_p2_xor2 ( | |
518 | .din0 (ict_itlb_way_3_tag_f[17]), | |
519 | .din1 (ict_itlb_way_3_tag_f[16]), | |
520 | .dout (err_w3_8b_parity_f_2_xor2) | |
521 | ); | |
522 | ||
523 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p2_xor3 ( | |
524 | .din0 (err_w3_8b_parity_f_2_xor2), | |
525 | .din1 (err_w3_8b_parity_f_2_xor1), | |
526 | .din2 (err_w3_8b_parity_f_2_xor0), | |
527 | .dout (err_w3_8b_parity_f_in[2]) | |
528 | ); | |
529 | ||
530 | ||
531 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p1_xor0 ( | |
532 | .din0 (ict_itlb_way_3_tag_f[15]), | |
533 | .din1 (ict_itlb_way_3_tag_f[14]), | |
534 | .din2 (ict_itlb_way_3_tag_f[13]), | |
535 | .dout (err_w3_8b_parity_f_1_xor0) | |
536 | ); | |
537 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p1_xor1 ( | |
538 | .din0 (ict_itlb_way_3_tag_f[12]), | |
539 | .din1 (ict_itlb_way_3_tag_f[11]), | |
540 | .din2 (ict_itlb_way_3_tag_f[10]), | |
541 | .dout (err_w3_8b_parity_f_1_xor1) | |
542 | ); | |
543 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w3_8b_p1_xor2 ( | |
544 | .din0 (ict_itlb_way_3_tag_f[9]), | |
545 | .din1 (ict_itlb_way_3_tag_f[8]), | |
546 | .dout (err_w3_8b_parity_f_1_xor2) | |
547 | ); | |
548 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p1_xor3 ( | |
549 | .din0 (err_w3_8b_parity_f_1_xor2), | |
550 | .din1 (err_w3_8b_parity_f_1_xor1), | |
551 | .din2 (err_w3_8b_parity_f_1_xor0), | |
552 | .dout (err_w3_8b_parity_f_in[1]) | |
553 | ); | |
554 | ||
555 | ||
556 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p0_xor0 ( | |
557 | .din0 (ict_itlb_way_3_tag_f[7]), | |
558 | .din1 (ict_itlb_way_3_tag_f[6]), | |
559 | .din2 (ict_itlb_way_3_tag_f[5]), | |
560 | .dout (err_w3_8b_parity_f_0_xor0) | |
561 | ); | |
562 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p0_xor1 ( | |
563 | .din0 (ict_itlb_way_3_tag_f[4]), | |
564 | .din1 (ict_itlb_way_3_tag_f[3]), | |
565 | .din2 (ict_itlb_way_3_tag_f[2]), | |
566 | .dout (err_w3_8b_parity_f_0_xor1) | |
567 | ); | |
568 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w3_8b_p0_xor2 ( | |
569 | .din0 (ict_itlb_way_3_tag_f[1]), | |
570 | .din1 (ict_itlb_way_3_tag_f[0]), | |
571 | .dout (err_w3_8b_parity_f_0_xor2) | |
572 | ); | |
573 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w3_8b_p0_xor3 ( | |
574 | .din0 (err_w3_8b_parity_f_0_xor2), | |
575 | .din1 (err_w3_8b_parity_f_0_xor1), | |
576 | .din2 (err_w3_8b_parity_f_0_xor0), | |
577 | .dout (err_w3_8b_parity_f_in[0]) | |
578 | ); | |
579 | ||
580 | ||
581 | ifu_ftu_err_dp_buff_macro__dbuff_56x__width_4 w3_buff ( | |
582 | .din (err_w3_8b_parity_f_in[3:0]), | |
583 | .dout (err_w3_8b_parity_f[3:0])) ; | |
584 | ||
585 | /////////////////////////////// | |
586 | // Way 4 // | |
587 | /////////////////////////////// | |
588 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p3_xor0 ( | |
589 | .din0 (ict_itlb_way_4_tag_f[29]), | |
590 | .din1 (ict_itlb_way_4_tag_f[28]), | |
591 | .din2 (ict_itlb_way_4_tag_f[27]), | |
592 | .dout (err_w4_8b_parity_f_3_xor0) | |
593 | ); | |
594 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p3_xor1 ( | |
595 | .din0 (ict_itlb_way_4_tag_f[26]), | |
596 | .din1 (ict_itlb_way_4_tag_f[25]), | |
597 | .din2 (ict_itlb_way_4_tag_f[24]), | |
598 | .dout (err_w4_8b_parity_f_3_xor1) | |
599 | ); | |
600 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w4_8b_p3_xor2 ( | |
601 | .din0 (err_w4_8b_parity_f_3_xor1), | |
602 | .din1 (err_w4_8b_parity_f_3_xor0), | |
603 | .dout (err_w4_8b_parity_f_in[3]) | |
604 | ); | |
605 | ||
606 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p2_xor0 ( | |
607 | .din0 (ict_itlb_way_4_tag_f[23]), | |
608 | .din1 (ict_itlb_way_4_tag_f[22]), | |
609 | .din2 (ict_itlb_way_4_tag_f[21]), | |
610 | .dout (err_w4_8b_parity_f_2_xor0) | |
611 | ); | |
612 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p2_xor1 ( | |
613 | .din0 (ict_itlb_way_4_tag_f[20]), | |
614 | .din1 (ict_itlb_way_4_tag_f[19]), | |
615 | .din2 (ict_itlb_way_4_tag_f[18]), | |
616 | .dout (err_w4_8b_parity_f_2_xor1) | |
617 | ); | |
618 | ||
619 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w4_8b_p2_xor2 ( | |
620 | .din0 (ict_itlb_way_4_tag_f[17]), | |
621 | .din1 (ict_itlb_way_4_tag_f[16]), | |
622 | .dout (err_w4_8b_parity_f_2_xor2) | |
623 | ); | |
624 | ||
625 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p2_xor3 ( | |
626 | .din0 (err_w4_8b_parity_f_2_xor2), | |
627 | .din1 (err_w4_8b_parity_f_2_xor1), | |
628 | .din2 (err_w4_8b_parity_f_2_xor0), | |
629 | .dout (err_w4_8b_parity_f_in[2]) | |
630 | ); | |
631 | ||
632 | ||
633 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p1_xor0 ( | |
634 | .din0 (ict_itlb_way_4_tag_f[15]), | |
635 | .din1 (ict_itlb_way_4_tag_f[14]), | |
636 | .din2 (ict_itlb_way_4_tag_f[13]), | |
637 | .dout (err_w4_8b_parity_f_1_xor0) | |
638 | ); | |
639 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p1_xor1 ( | |
640 | .din0 (ict_itlb_way_4_tag_f[12]), | |
641 | .din1 (ict_itlb_way_4_tag_f[11]), | |
642 | .din2 (ict_itlb_way_4_tag_f[10]), | |
643 | .dout (err_w4_8b_parity_f_1_xor1) | |
644 | ); | |
645 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w4_8b_p1_xor2 ( | |
646 | .din0 (ict_itlb_way_4_tag_f[9]), | |
647 | .din1 (ict_itlb_way_4_tag_f[8]), | |
648 | .dout (err_w4_8b_parity_f_1_xor2) | |
649 | ); | |
650 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p1_xor3 ( | |
651 | .din0 (err_w4_8b_parity_f_1_xor2), | |
652 | .din1 (err_w4_8b_parity_f_1_xor1), | |
653 | .din2 (err_w4_8b_parity_f_1_xor0), | |
654 | .dout (err_w4_8b_parity_f_in[1]) | |
655 | ); | |
656 | ||
657 | ||
658 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p0_xor0 ( | |
659 | .din0 (ict_itlb_way_4_tag_f[7]), | |
660 | .din1 (ict_itlb_way_4_tag_f[6]), | |
661 | .din2 (ict_itlb_way_4_tag_f[5]), | |
662 | .dout (err_w4_8b_parity_f_0_xor0) | |
663 | ); | |
664 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p0_xor1 ( | |
665 | .din0 (ict_itlb_way_4_tag_f[4]), | |
666 | .din1 (ict_itlb_way_4_tag_f[3]), | |
667 | .din2 (ict_itlb_way_4_tag_f[2]), | |
668 | .dout (err_w4_8b_parity_f_0_xor1) | |
669 | ); | |
670 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w4_8b_p0_xor2 ( | |
671 | .din0 (ict_itlb_way_4_tag_f[1]), | |
672 | .din1 (ict_itlb_way_4_tag_f[0]), | |
673 | .dout (err_w4_8b_parity_f_0_xor2) | |
674 | ); | |
675 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w4_8b_p0_xor3 ( | |
676 | .din0 (err_w4_8b_parity_f_0_xor2), | |
677 | .din1 (err_w4_8b_parity_f_0_xor1), | |
678 | .din2 (err_w4_8b_parity_f_0_xor0), | |
679 | .dout (err_w4_8b_parity_f_in[0]) | |
680 | ); | |
681 | ||
682 | ifu_ftu_err_dp_buff_macro__dbuff_56x__width_4 w4_buff ( | |
683 | .din (err_w4_8b_parity_f_in[3:0]), | |
684 | .dout (err_w4_8b_parity_f[3:0])) ; | |
685 | ||
686 | ||
687 | /////////////////////////////// | |
688 | // Way 5 // | |
689 | /////////////////////////////// | |
690 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p3_xor0 ( | |
691 | .din0 (ict_itlb_way_5_tag_f[29]), | |
692 | .din1 (ict_itlb_way_5_tag_f[28]), | |
693 | .din2 (ict_itlb_way_5_tag_f[27]), | |
694 | .dout (err_w5_8b_parity_f_3_xor0) | |
695 | ); | |
696 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p3_xor1 ( | |
697 | .din0 (ict_itlb_way_5_tag_f[26]), | |
698 | .din1 (ict_itlb_way_5_tag_f[25]), | |
699 | .din2 (ict_itlb_way_5_tag_f[24]), | |
700 | .dout (err_w5_8b_parity_f_3_xor1) | |
701 | ); | |
702 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w5_8b_p3_xor2 ( | |
703 | .din0 (err_w5_8b_parity_f_3_xor1), | |
704 | .din1 (err_w5_8b_parity_f_3_xor0), | |
705 | .dout (err_w5_8b_parity_f_in[3]) | |
706 | ); | |
707 | ||
708 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p2_xor0 ( | |
709 | .din0 (ict_itlb_way_5_tag_f[23]), | |
710 | .din1 (ict_itlb_way_5_tag_f[22]), | |
711 | .din2 (ict_itlb_way_5_tag_f[21]), | |
712 | .dout (err_w5_8b_parity_f_2_xor0) | |
713 | ); | |
714 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p2_xor1 ( | |
715 | .din0 (ict_itlb_way_5_tag_f[20]), | |
716 | .din1 (ict_itlb_way_5_tag_f[19]), | |
717 | .din2 (ict_itlb_way_5_tag_f[18]), | |
718 | .dout (err_w5_8b_parity_f_2_xor1) | |
719 | ); | |
720 | ||
721 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w5_8b_p2_xor2 ( | |
722 | .din0 (ict_itlb_way_5_tag_f[17]), | |
723 | .din1 (ict_itlb_way_5_tag_f[16]), | |
724 | .dout (err_w5_8b_parity_f_2_xor2) | |
725 | ); | |
726 | ||
727 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p2_xor3 ( | |
728 | .din0 (err_w5_8b_parity_f_2_xor2), | |
729 | .din1 (err_w5_8b_parity_f_2_xor1), | |
730 | .din2 (err_w5_8b_parity_f_2_xor0), | |
731 | .dout (err_w5_8b_parity_f_in[2]) | |
732 | ); | |
733 | ||
734 | ||
735 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p1_xor0 ( | |
736 | .din0 (ict_itlb_way_5_tag_f[15]), | |
737 | .din1 (ict_itlb_way_5_tag_f[14]), | |
738 | .din2 (ict_itlb_way_5_tag_f[13]), | |
739 | .dout (err_w5_8b_parity_f_1_xor0) | |
740 | ); | |
741 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p1_xor1 ( | |
742 | .din0 (ict_itlb_way_5_tag_f[12]), | |
743 | .din1 (ict_itlb_way_5_tag_f[11]), | |
744 | .din2 (ict_itlb_way_5_tag_f[10]), | |
745 | .dout (err_w5_8b_parity_f_1_xor1) | |
746 | ); | |
747 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w5_8b_p1_xor2 ( | |
748 | .din0 (ict_itlb_way_5_tag_f[9]), | |
749 | .din1 (ict_itlb_way_5_tag_f[8]), | |
750 | .dout (err_w5_8b_parity_f_1_xor2) | |
751 | ); | |
752 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p1_xor3 ( | |
753 | .din0 (err_w5_8b_parity_f_1_xor2), | |
754 | .din1 (err_w5_8b_parity_f_1_xor1), | |
755 | .din2 (err_w5_8b_parity_f_1_xor0), | |
756 | .dout (err_w5_8b_parity_f_in[1]) | |
757 | ); | |
758 | ||
759 | ||
760 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p0_xor0 ( | |
761 | .din0 (ict_itlb_way_5_tag_f[7]), | |
762 | .din1 (ict_itlb_way_5_tag_f[6]), | |
763 | .din2 (ict_itlb_way_5_tag_f[5]), | |
764 | .dout (err_w5_8b_parity_f_0_xor0) | |
765 | ); | |
766 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p0_xor1 ( | |
767 | .din0 (ict_itlb_way_5_tag_f[4]), | |
768 | .din1 (ict_itlb_way_5_tag_f[3]), | |
769 | .din2 (ict_itlb_way_5_tag_f[2]), | |
770 | .dout (err_w5_8b_parity_f_0_xor1) | |
771 | ); | |
772 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w5_8b_p0_xor2 ( | |
773 | .din0 (ict_itlb_way_5_tag_f[1]), | |
774 | .din1 (ict_itlb_way_5_tag_f[0]), | |
775 | .dout (err_w5_8b_parity_f_0_xor2) | |
776 | ); | |
777 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w5_8b_p0_xor3 ( | |
778 | .din0 (err_w5_8b_parity_f_0_xor2), | |
779 | .din1 (err_w5_8b_parity_f_0_xor1), | |
780 | .din2 (err_w5_8b_parity_f_0_xor0), | |
781 | .dout (err_w5_8b_parity_f_in[0]) | |
782 | ); | |
783 | ||
784 | ifu_ftu_err_dp_buff_macro__dbuff_56x__width_4 w5_buff ( | |
785 | .din (err_w5_8b_parity_f_in[3:0]), | |
786 | .dout (err_w5_8b_parity_f[3:0])) ; | |
787 | ||
788 | ||
789 | /////////////////////////////// | |
790 | // Way 6 // | |
791 | /////////////////////////////// | |
792 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p3_xor0 ( | |
793 | .din0 (ict_itlb_way_6_tag_f[29]), | |
794 | .din1 (ict_itlb_way_6_tag_f[28]), | |
795 | .din2 (ict_itlb_way_6_tag_f[27]), | |
796 | .dout (err_w6_8b_parity_f_3_xor0) | |
797 | ); | |
798 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p3_xor1 ( | |
799 | .din0 (ict_itlb_way_6_tag_f[26]), | |
800 | .din1 (ict_itlb_way_6_tag_f[25]), | |
801 | .din2 (ict_itlb_way_6_tag_f[24]), | |
802 | .dout (err_w6_8b_parity_f_3_xor1) | |
803 | ); | |
804 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w6_8b_p3_xor2 ( | |
805 | .din0 (err_w6_8b_parity_f_3_xor1), | |
806 | .din1 (err_w6_8b_parity_f_3_xor0), | |
807 | .dout (err_w6_8b_parity_f_in[3]) | |
808 | ); | |
809 | ||
810 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p2_xor0 ( | |
811 | .din0 (ict_itlb_way_6_tag_f[23]), | |
812 | .din1 (ict_itlb_way_6_tag_f[22]), | |
813 | .din2 (ict_itlb_way_6_tag_f[21]), | |
814 | .dout (err_w6_8b_parity_f_2_xor0) | |
815 | ); | |
816 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p2_xor1 ( | |
817 | .din0 (ict_itlb_way_6_tag_f[20]), | |
818 | .din1 (ict_itlb_way_6_tag_f[19]), | |
819 | .din2 (ict_itlb_way_6_tag_f[18]), | |
820 | .dout (err_w6_8b_parity_f_2_xor1) | |
821 | ); | |
822 | ||
823 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w6_8b_p2_xor2 ( | |
824 | .din0 (ict_itlb_way_6_tag_f[17]), | |
825 | .din1 (ict_itlb_way_6_tag_f[16]), | |
826 | .dout (err_w6_8b_parity_f_2_xor2) | |
827 | ); | |
828 | ||
829 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p2_xor3 ( | |
830 | .din0 (err_w6_8b_parity_f_2_xor2), | |
831 | .din1 (err_w6_8b_parity_f_2_xor1), | |
832 | .din2 (err_w6_8b_parity_f_2_xor0), | |
833 | .dout (err_w6_8b_parity_f_in[2]) | |
834 | ); | |
835 | ||
836 | ||
837 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p1_xor0 ( | |
838 | .din0 (ict_itlb_way_6_tag_f[15]), | |
839 | .din1 (ict_itlb_way_6_tag_f[14]), | |
840 | .din2 (ict_itlb_way_6_tag_f[13]), | |
841 | .dout (err_w6_8b_parity_f_1_xor0) | |
842 | ); | |
843 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p1_xor1 ( | |
844 | .din0 (ict_itlb_way_6_tag_f[12]), | |
845 | .din1 (ict_itlb_way_6_tag_f[11]), | |
846 | .din2 (ict_itlb_way_6_tag_f[10]), | |
847 | .dout (err_w6_8b_parity_f_1_xor1) | |
848 | ); | |
849 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w6_8b_p1_xor2 ( | |
850 | .din0 (ict_itlb_way_6_tag_f[9]), | |
851 | .din1 (ict_itlb_way_6_tag_f[8]), | |
852 | .dout (err_w6_8b_parity_f_1_xor2) | |
853 | ); | |
854 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p1_xor3 ( | |
855 | .din0 (err_w6_8b_parity_f_1_xor2), | |
856 | .din1 (err_w6_8b_parity_f_1_xor1), | |
857 | .din2 (err_w6_8b_parity_f_1_xor0), | |
858 | .dout (err_w6_8b_parity_f_in[1]) | |
859 | ); | |
860 | ||
861 | ||
862 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p0_xor0 ( | |
863 | .din0 (ict_itlb_way_6_tag_f[7]), | |
864 | .din1 (ict_itlb_way_6_tag_f[6]), | |
865 | .din2 (ict_itlb_way_6_tag_f[5]), | |
866 | .dout (err_w6_8b_parity_f_0_xor0) | |
867 | ); | |
868 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p0_xor1 ( | |
869 | .din0 (ict_itlb_way_6_tag_f[4]), | |
870 | .din1 (ict_itlb_way_6_tag_f[3]), | |
871 | .din2 (ict_itlb_way_6_tag_f[2]), | |
872 | .dout (err_w6_8b_parity_f_0_xor1) | |
873 | ); | |
874 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w6_8b_p0_xor2 ( | |
875 | .din0 (ict_itlb_way_6_tag_f[1]), | |
876 | .din1 (ict_itlb_way_6_tag_f[0]), | |
877 | .dout (err_w6_8b_parity_f_0_xor2) | |
878 | ); | |
879 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w6_8b_p0_xor3 ( | |
880 | .din0 (err_w6_8b_parity_f_0_xor2), | |
881 | .din1 (err_w6_8b_parity_f_0_xor1), | |
882 | .din2 (err_w6_8b_parity_f_0_xor0), | |
883 | .dout (err_w6_8b_parity_f_in[0]) | |
884 | ); | |
885 | ||
886 | ifu_ftu_err_dp_buff_macro__dbuff_56x__width_4 w6_buff ( | |
887 | .din (err_w6_8b_parity_f_in[3:0]), | |
888 | .dout (err_w6_8b_parity_f[3:0])) ; | |
889 | ||
890 | /////////////////////////////// | |
891 | // Way 7 // | |
892 | /////////////////////////////// | |
893 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p3_xor0 ( | |
894 | .din0 (ict_itlb_way_7_tag_f[29]), | |
895 | .din1 (ict_itlb_way_7_tag_f[28]), | |
896 | .din2 (ict_itlb_way_7_tag_f[27]), | |
897 | .dout (err_w7_8b_parity_f_3_xor0) | |
898 | ); | |
899 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p3_xor1 ( | |
900 | .din0 (ict_itlb_way_7_tag_f[26]), | |
901 | .din1 (ict_itlb_way_7_tag_f[25]), | |
902 | .din2 (ict_itlb_way_7_tag_f[24]), | |
903 | .dout (err_w7_8b_parity_f_3_xor1) | |
904 | ); | |
905 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w7_8b_p3_xor2 ( | |
906 | .din0 (err_w7_8b_parity_f_3_xor1), | |
907 | .din1 (err_w7_8b_parity_f_3_xor0), | |
908 | .dout (err_w7_8b_parity_f_in[3]) | |
909 | ); | |
910 | ||
911 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p2_xor0 ( | |
912 | .din0 (ict_itlb_way_7_tag_f[23]), | |
913 | .din1 (ict_itlb_way_7_tag_f[22]), | |
914 | .din2 (ict_itlb_way_7_tag_f[21]), | |
915 | .dout (err_w7_8b_parity_f_2_xor0) | |
916 | ); | |
917 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p2_xor1 ( | |
918 | .din0 (ict_itlb_way_7_tag_f[20]), | |
919 | .din1 (ict_itlb_way_7_tag_f[19]), | |
920 | .din2 (ict_itlb_way_7_tag_f[18]), | |
921 | .dout (err_w7_8b_parity_f_2_xor1) | |
922 | ); | |
923 | ||
924 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w7_8b_p2_xor2 ( | |
925 | .din0 (ict_itlb_way_7_tag_f[17]), | |
926 | .din1 (ict_itlb_way_7_tag_f[16]), | |
927 | .dout (err_w7_8b_parity_f_2_xor2) | |
928 | ); | |
929 | ||
930 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p2_xor3 ( | |
931 | .din0 (err_w7_8b_parity_f_2_xor2), | |
932 | .din1 (err_w7_8b_parity_f_2_xor1), | |
933 | .din2 (err_w7_8b_parity_f_2_xor0), | |
934 | .dout (err_w7_8b_parity_f_in[2]) | |
935 | ); | |
936 | ||
937 | ||
938 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p1_xor0 ( | |
939 | .din0 (ict_itlb_way_7_tag_f[15]), | |
940 | .din1 (ict_itlb_way_7_tag_f[14]), | |
941 | .din2 (ict_itlb_way_7_tag_f[13]), | |
942 | .dout (err_w7_8b_parity_f_1_xor0) | |
943 | ); | |
944 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p1_xor1 ( | |
945 | .din0 (ict_itlb_way_7_tag_f[12]), | |
946 | .din1 (ict_itlb_way_7_tag_f[11]), | |
947 | .din2 (ict_itlb_way_7_tag_f[10]), | |
948 | .dout (err_w7_8b_parity_f_1_xor1) | |
949 | ); | |
950 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w7_8b_p1_xor2 ( | |
951 | .din0 (ict_itlb_way_7_tag_f[9]), | |
952 | .din1 (ict_itlb_way_7_tag_f[8]), | |
953 | .dout (err_w7_8b_parity_f_1_xor2) | |
954 | ); | |
955 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p1_xor3 ( | |
956 | .din0 (err_w7_8b_parity_f_1_xor2), | |
957 | .din1 (err_w7_8b_parity_f_1_xor1), | |
958 | .din2 (err_w7_8b_parity_f_1_xor0), | |
959 | .dout (err_w7_8b_parity_f_in[1]) | |
960 | ); | |
961 | ||
962 | ||
963 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p0_xor0 ( | |
964 | .din0 (ict_itlb_way_7_tag_f[7]), | |
965 | .din1 (ict_itlb_way_7_tag_f[6]), | |
966 | .din2 (ict_itlb_way_7_tag_f[5]), | |
967 | .dout (err_w7_8b_parity_f_0_xor0) | |
968 | ); | |
969 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p0_xor1 ( | |
970 | .din0 (ict_itlb_way_7_tag_f[4]), | |
971 | .din1 (ict_itlb_way_7_tag_f[3]), | |
972 | .din2 (ict_itlb_way_7_tag_f[2]), | |
973 | .dout (err_w7_8b_parity_f_0_xor1) | |
974 | ); | |
975 | ifu_ftu_err_dp_xor_macro__ports_2__width_1 w7_8b_p0_xor2 ( | |
976 | .din0 (ict_itlb_way_7_tag_f[1]), | |
977 | .din1 (ict_itlb_way_7_tag_f[0]), | |
978 | .dout (err_w7_8b_parity_f_0_xor2) | |
979 | ); | |
980 | ifu_ftu_err_dp_xor_macro__ports_3__width_1 w7_8b_p0_xor3 ( | |
981 | .din0 (err_w7_8b_parity_f_0_xor2), | |
982 | .din1 (err_w7_8b_parity_f_0_xor1), | |
983 | .din2 (err_w7_8b_parity_f_0_xor0), | |
984 | .dout (err_w7_8b_parity_f_in[0]) | |
985 | ); | |
986 | ||
987 | ifu_ftu_err_dp_buff_macro__dbuff_56x__width_4 w7_buff ( | |
988 | .din (err_w7_8b_parity_f_in[3:0]), | |
989 | .dout (err_w7_8b_parity_f[3:0])) ; | |
990 | ||
991 | ||
992 | endmodule | |
993 | ||
994 | ||
995 | ||
996 | ||
997 | ||
998 | ||
999 | // | |
1000 | // xor macro for ports = 2,3 | |
1001 | // | |
1002 | // | |
1003 | ||
1004 | ||
1005 | ||
1006 | ||
1007 | ||
1008 | module ifu_ftu_err_dp_xor_macro__ports_3__width_1 ( | |
1009 | din0, | |
1010 | din1, | |
1011 | din2, | |
1012 | dout); | |
1013 | input [0:0] din0; | |
1014 | input [0:0] din1; | |
1015 | input [0:0] din2; | |
1016 | output [0:0] dout; | |
1017 | ||
1018 | ||
1019 | ||
1020 | ||
1021 | ||
1022 | xor3 #(1) d0_0 ( | |
1023 | .in0(din0[0:0]), | |
1024 | .in1(din1[0:0]), | |
1025 | .in2(din2[0:0]), | |
1026 | .out(dout[0:0]) | |
1027 | ); | |
1028 | ||
1029 | ||
1030 | ||
1031 | ||
1032 | ||
1033 | ||
1034 | ||
1035 | ||
1036 | endmodule | |
1037 | ||
1038 | ||
1039 | ||
1040 | ||
1041 | ||
1042 | // | |
1043 | // xor macro for ports = 2,3 | |
1044 | // | |
1045 | // | |
1046 | ||
1047 | ||
1048 | ||
1049 | ||
1050 | ||
1051 | module ifu_ftu_err_dp_xor_macro__ports_2__width_1 ( | |
1052 | din0, | |
1053 | din1, | |
1054 | dout); | |
1055 | input [0:0] din0; | |
1056 | input [0:0] din1; | |
1057 | output [0:0] dout; | |
1058 | ||
1059 | ||
1060 | ||
1061 | ||
1062 | ||
1063 | xor2 #(1) d0_0 ( | |
1064 | .in0(din0[0:0]), | |
1065 | .in1(din1[0:0]), | |
1066 | .out(dout[0:0]) | |
1067 | ); | |
1068 | ||
1069 | ||
1070 | ||
1071 | ||
1072 | ||
1073 | ||
1074 | ||
1075 | ||
1076 | endmodule | |
1077 | ||
1078 | ||
1079 | ||
1080 | ||
1081 | ||
1082 | // | |
1083 | // buff macro | |
1084 | // | |
1085 | // | |
1086 | ||
1087 | ||
1088 | ||
1089 | ||
1090 | ||
1091 | module ifu_ftu_err_dp_buff_macro__dbuff_56x__width_4 ( | |
1092 | din, | |
1093 | dout); | |
1094 | input [3:0] din; | |
1095 | output [3:0] dout; | |
1096 | ||
1097 | ||
1098 | ||
1099 | ||
1100 | ||
1101 | ||
1102 | buff #(4) d0_0 ( | |
1103 | .in(din[3:0]), | |
1104 | .out(dout[3:0]) | |
1105 | ); | |
1106 | ||
1107 | ||
1108 | ||
1109 | ||
1110 | ||
1111 | ||
1112 | ||
1113 | ||
1114 | endmodule | |
1115 | ||
1116 | ||
1117 | ||
1118 |