Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / design / sys / iop / niu / rtl / niu_pio_ldsv_decoder.v
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: niu_pio_ldsv_decoder.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/*%W% %G%*/
36
37/*****************************************************************
38 *
39 * File Name : niu_pio_ldsv_decoder.v
40 * Author Name : John Lo
41 * Description : It contains PIO itslef read/write decoder,
42 *
43 * Parent Module: niu_pio_ldsv_decoder.v
44 * Child Module:
45 * Interface Mod: many.
46 * Date Created : 3/30/04
47 *
48 * Copyright (c) 2020, Sun Microsystems, Inc.
49 * Sun Proprietary and Confidential
50 *
51 * Modification :
52 *
53 ****************************************************************/
54
55module niu_pio_ldsv_decoder (/*AUTOARG*/
56 // Outputs
57 ldsv_ack, ldsv_rdata, ldsv_err,
58 // Inputs
59 clk, ldsv_sel_reg, addr, rd, ldsv0grp0, ldsv1grp0,
60 ldsv2grp0, ldsv0grp1, ldsv1grp1, ldsv2grp1, ldsv0grp2, ldsv1grp2,
61 ldsv2grp2, ldsv0grp3, ldsv1grp3, ldsv2grp3, ldsv0grp4, ldsv1grp4,
62 ldsv2grp4, ldsv0grp5, ldsv1grp5, ldsv2grp5, ldsv0grp6, ldsv1grp6,
63 ldsv2grp6, ldsv0grp7, ldsv1grp7, ldsv2grp7, ldsv0grp8, ldsv1grp8,
64 ldsv2grp8, ldsv0grp9, ldsv1grp9, ldsv2grp9, ldsv0grp10,
65 ldsv1grp10, ldsv2grp10, ldsv0grp11, ldsv1grp11, ldsv2grp11,
66 ldsv0grp12, ldsv1grp12, ldsv2grp12, ldsv0grp13, ldsv1grp13,
67 ldsv2grp13, ldsv0grp14, ldsv1grp14, ldsv2grp14, ldsv0grp15,
68 ldsv1grp15, ldsv2grp15, ldsv0grp16, ldsv1grp16, ldsv2grp16,
69 ldsv0grp17, ldsv1grp17, ldsv2grp17, ldsv0grp18, ldsv1grp18,
70 ldsv2grp18, ldsv0grp19, ldsv1grp19, ldsv2grp19, ldsv0grp20,
71 ldsv1grp20, ldsv2grp20, ldsv0grp21, ldsv1grp21, ldsv2grp21,
72 ldsv0grp22, ldsv1grp22, ldsv2grp22, ldsv0grp23, ldsv1grp23,
73 ldsv2grp23, ldsv0grp24, ldsv1grp24, ldsv2grp24, ldsv0grp25,
74 ldsv1grp25, ldsv2grp25, ldsv0grp26, ldsv1grp26, ldsv2grp26,
75 ldsv0grp27, ldsv1grp27, ldsv2grp27, ldsv0grp28, ldsv1grp28,
76 ldsv2grp28, ldsv0grp29, ldsv1grp29, ldsv2grp29, ldsv0grp30,
77 ldsv1grp30, ldsv2grp30, ldsv0grp31, ldsv1grp31, ldsv2grp31,
78 ldsv0grp32, ldsv1grp32, ldsv2grp32, ldsv0grp33, ldsv1grp33,
79 ldsv2grp33, ldsv0grp34, ldsv1grp34, ldsv2grp34, ldsv0grp35,
80 ldsv1grp35, ldsv2grp35, ldsv0grp36, ldsv1grp36, ldsv2grp36,
81 ldsv0grp37, ldsv1grp37, ldsv2grp37, ldsv0grp38, ldsv1grp38,
82 ldsv2grp38, ldsv0grp39, ldsv1grp39, ldsv2grp39, ldsv0grp40,
83 ldsv1grp40, ldsv2grp40, ldsv0grp41, ldsv1grp41, ldsv2grp41,
84 ldsv0grp42, ldsv1grp42, ldsv2grp42, ldsv0grp43, ldsv1grp43,
85 ldsv2grp43, ldsv0grp44, ldsv1grp44, ldsv2grp44, ldsv0grp45,
86 ldsv1grp45, ldsv2grp45, ldsv0grp46, ldsv1grp46, ldsv2grp46,
87 ldsv0grp47, ldsv1grp47, ldsv2grp47, ldsv0grp48, ldsv1grp48,
88 ldsv2grp48, ldsv0grp49, ldsv1grp49, ldsv2grp49, ldsv0grp50,
89 ldsv1grp50, ldsv2grp50, ldsv0grp51, ldsv1grp51, ldsv2grp51,
90 ldsv0grp52, ldsv1grp52, ldsv2grp52, ldsv0grp53, ldsv1grp53,
91 ldsv2grp53, ldsv0grp54, ldsv1grp54, ldsv2grp54, ldsv0grp55,
92 ldsv1grp55, ldsv2grp55, ldsv0grp56, ldsv1grp56, ldsv2grp56,
93 ldsv0grp57, ldsv1grp57, ldsv2grp57, ldsv0grp58, ldsv1grp58,
94 ldsv2grp58, ldsv0grp59, ldsv1grp59, ldsv2grp59, ldsv0grp60,
95 ldsv1grp60, ldsv2grp60, ldsv0grp61, ldsv1grp61, ldsv2grp61,
96 ldsv0grp62, ldsv1grp62, ldsv2grp62, ldsv0grp63, ldsv1grp63,
97 ldsv2grp63
98 );
99 input clk;
100 input ldsv_sel_reg;
101 // pio broadcast signals
102 input [18:0] addr;
103 input rd;
104 input [63:0] ldsv0grp0 ;
105 input [63:0] ldsv1grp0 ;
106 input [63:0] ldsv2grp0 ;
107 input [63:0] ldsv0grp1 ;
108 input [63:0] ldsv1grp1 ;
109 input [63:0] ldsv2grp1 ;
110 input [63:0] ldsv0grp2 ;
111 input [63:0] ldsv1grp2 ;
112 input [63:0] ldsv2grp2 ;
113 input [63:0] ldsv0grp3 ;
114 input [63:0] ldsv1grp3 ;
115 input [63:0] ldsv2grp3 ;
116 input [63:0] ldsv0grp4 ;
117 input [63:0] ldsv1grp4 ;
118 input [63:0] ldsv2grp4 ;
119 input [63:0] ldsv0grp5 ;
120 input [63:0] ldsv1grp5 ;
121 input [63:0] ldsv2grp5 ;
122 input [63:0] ldsv0grp6 ;
123 input [63:0] ldsv1grp6 ;
124 input [63:0] ldsv2grp6 ;
125 input [63:0] ldsv0grp7 ;
126 input [63:0] ldsv1grp7 ;
127 input [63:0] ldsv2grp7 ;
128 input [63:0] ldsv0grp8 ;
129 input [63:0] ldsv1grp8 ;
130 input [63:0] ldsv2grp8 ;
131 input [63:0] ldsv0grp9 ;
132 input [63:0] ldsv1grp9 ;
133 input [63:0] ldsv2grp9 ;
134 input [63:0] ldsv0grp10;
135 input [63:0] ldsv1grp10;
136 input [63:0] ldsv2grp10;
137 input [63:0] ldsv0grp11;
138 input [63:0] ldsv1grp11;
139 input [63:0] ldsv2grp11;
140 input [63:0] ldsv0grp12;
141 input [63:0] ldsv1grp12;
142 input [63:0] ldsv2grp12;
143 input [63:0] ldsv0grp13;
144 input [63:0] ldsv1grp13;
145 input [63:0] ldsv2grp13;
146 input [63:0] ldsv0grp14;
147 input [63:0] ldsv1grp14;
148 input [63:0] ldsv2grp14;
149 input [63:0] ldsv0grp15;
150 input [63:0] ldsv1grp15;
151 input [63:0] ldsv2grp15;
152 input [63:0] ldsv0grp16;
153 input [63:0] ldsv1grp16;
154 input [63:0] ldsv2grp16;
155 input [63:0] ldsv0grp17;
156 input [63:0] ldsv1grp17;
157 input [63:0] ldsv2grp17;
158 input [63:0] ldsv0grp18;
159 input [63:0] ldsv1grp18;
160 input [63:0] ldsv2grp18;
161 input [63:0] ldsv0grp19;
162 input [63:0] ldsv1grp19;
163 input [63:0] ldsv2grp19;
164 input [63:0] ldsv0grp20;
165 input [63:0] ldsv1grp20;
166 input [63:0] ldsv2grp20;
167 input [63:0] ldsv0grp21;
168 input [63:0] ldsv1grp21;
169 input [63:0] ldsv2grp21;
170 input [63:0] ldsv0grp22;
171 input [63:0] ldsv1grp22;
172 input [63:0] ldsv2grp22;
173 input [63:0] ldsv0grp23;
174 input [63:0] ldsv1grp23;
175 input [63:0] ldsv2grp23;
176 input [63:0] ldsv0grp24;
177 input [63:0] ldsv1grp24;
178 input [63:0] ldsv2grp24;
179 input [63:0] ldsv0grp25;
180 input [63:0] ldsv1grp25;
181 input [63:0] ldsv2grp25;
182 input [63:0] ldsv0grp26;
183 input [63:0] ldsv1grp26;
184 input [63:0] ldsv2grp26;
185 input [63:0] ldsv0grp27;
186 input [63:0] ldsv1grp27;
187 input [63:0] ldsv2grp27;
188 input [63:0] ldsv0grp28;
189 input [63:0] ldsv1grp28;
190 input [63:0] ldsv2grp28;
191 input [63:0] ldsv0grp29;
192 input [63:0] ldsv1grp29;
193 input [63:0] ldsv2grp29;
194 input [63:0] ldsv0grp30;
195 input [63:0] ldsv1grp30;
196 input [63:0] ldsv2grp30;
197 input [63:0] ldsv0grp31;
198 input [63:0] ldsv1grp31;
199 input [63:0] ldsv2grp31;
200 input [63:0] ldsv0grp32;
201 input [63:0] ldsv1grp32;
202 input [63:0] ldsv2grp32;
203 input [63:0] ldsv0grp33;
204 input [63:0] ldsv1grp33;
205 input [63:0] ldsv2grp33;
206 input [63:0] ldsv0grp34;
207 input [63:0] ldsv1grp34;
208 input [63:0] ldsv2grp34;
209 input [63:0] ldsv0grp35;
210 input [63:0] ldsv1grp35;
211 input [63:0] ldsv2grp35;
212 input [63:0] ldsv0grp36;
213 input [63:0] ldsv1grp36;
214 input [63:0] ldsv2grp36;
215 input [63:0] ldsv0grp37;
216 input [63:0] ldsv1grp37;
217 input [63:0] ldsv2grp37;
218 input [63:0] ldsv0grp38;
219 input [63:0] ldsv1grp38;
220 input [63:0] ldsv2grp38;
221 input [63:0] ldsv0grp39;
222 input [63:0] ldsv1grp39;
223 input [63:0] ldsv2grp39;
224 input [63:0] ldsv0grp40;
225 input [63:0] ldsv1grp40;
226 input [63:0] ldsv2grp40;
227 input [63:0] ldsv0grp41;
228 input [63:0] ldsv1grp41;
229 input [63:0] ldsv2grp41;
230 input [63:0] ldsv0grp42;
231 input [63:0] ldsv1grp42;
232 input [63:0] ldsv2grp42;
233 input [63:0] ldsv0grp43;
234 input [63:0] ldsv1grp43;
235 input [63:0] ldsv2grp43;
236 input [63:0] ldsv0grp44;
237 input [63:0] ldsv1grp44;
238 input [63:0] ldsv2grp44;
239 input [63:0] ldsv0grp45;
240 input [63:0] ldsv1grp45;
241 input [63:0] ldsv2grp45;
242 input [63:0] ldsv0grp46;
243 input [63:0] ldsv1grp46;
244 input [63:0] ldsv2grp46;
245 input [63:0] ldsv0grp47;
246 input [63:0] ldsv1grp47;
247 input [63:0] ldsv2grp47;
248 input [63:0] ldsv0grp48;
249 input [63:0] ldsv1grp48;
250 input [63:0] ldsv2grp48;
251 input [63:0] ldsv0grp49;
252 input [63:0] ldsv1grp49;
253 input [63:0] ldsv2grp49;
254 input [63:0] ldsv0grp50;
255 input [63:0] ldsv1grp50;
256 input [63:0] ldsv2grp50;
257 input [63:0] ldsv0grp51;
258 input [63:0] ldsv1grp51;
259 input [63:0] ldsv2grp51;
260 input [63:0] ldsv0grp52;
261 input [63:0] ldsv1grp52;
262 input [63:0] ldsv2grp52;
263 input [63:0] ldsv0grp53;
264 input [63:0] ldsv1grp53;
265 input [63:0] ldsv2grp53;
266 input [63:0] ldsv0grp54;
267 input [63:0] ldsv1grp54;
268 input [63:0] ldsv2grp54;
269 input [63:0] ldsv0grp55;
270 input [63:0] ldsv1grp55;
271 input [63:0] ldsv2grp55;
272 input [63:0] ldsv0grp56;
273 input [63:0] ldsv1grp56;
274 input [63:0] ldsv2grp56;
275 input [63:0] ldsv0grp57;
276 input [63:0] ldsv1grp57;
277 input [63:0] ldsv2grp57;
278 input [63:0] ldsv0grp58;
279 input [63:0] ldsv1grp58;
280 input [63:0] ldsv2grp58;
281 input [63:0] ldsv0grp59;
282 input [63:0] ldsv1grp59;
283 input [63:0] ldsv2grp59;
284 input [63:0] ldsv0grp60;
285 input [63:0] ldsv1grp60;
286 input [63:0] ldsv2grp60;
287 input [63:0] ldsv0grp61;
288 input [63:0] ldsv1grp61;
289 input [63:0] ldsv2grp61;
290 input [63:0] ldsv0grp62;
291 input [63:0] ldsv1grp62;
292 input [63:0] ldsv2grp62;
293 input [63:0] ldsv0grp63;
294 input [63:0] ldsv1grp63;
295 input [63:0] ldsv2grp63;
296
297 output ldsv_ack;
298 output [63:0] ldsv_rdata;
299 output ldsv_err;
300
301// common reg declaration
302 reg [63:0] rd_data;
303 reg non_qualified_addr_err;
304// common wrie declaration
305 wire [63:0] ldsv_rdata;
306 wire rd_en;
307 wire wr_en;
308 wire rasr;
309// output reg declaration
310
311niu_rw_ctl ldsv_rw_ctl(
312 // Outputs
313 .wr_en (wr_en),
314 .rd_en (rd_en),
315 .ack (ldsv_ack),
316 .rdata (ldsv_rdata[63:0]),
317 .err (ldsv_err),
318 .rasr (rasr),
319 // Inputs
320 .clk (clk),
321 .sel (ldsv_sel_reg),
322 .rd (rd),
323 .rd_data (rd_data[63:0]),
324 .non_qualified_addr_err(non_qualified_addr_err));
325
326always @ (/*AUTOSENSE*/addr or ldsv0grp0 or ldsv0grp1 or ldsv0grp10
327 or ldsv0grp11 or ldsv0grp12 or ldsv0grp13 or ldsv0grp14
328 or ldsv0grp15 or ldsv0grp16 or ldsv0grp17 or ldsv0grp18
329 or ldsv0grp19 or ldsv0grp2 or ldsv0grp20 or ldsv0grp21
330 or ldsv0grp22 or ldsv0grp23 or ldsv0grp24 or ldsv0grp25
331 or ldsv0grp26 or ldsv0grp27 or ldsv0grp28 or ldsv0grp29
332 or ldsv0grp3 or ldsv0grp30 or ldsv0grp31 or ldsv0grp32
333 or ldsv0grp33 or ldsv0grp34 or ldsv0grp35 or ldsv0grp36
334 or ldsv0grp37 or ldsv0grp38 or ldsv0grp39 or ldsv0grp4
335 or ldsv0grp40 or ldsv0grp41 or ldsv0grp42 or ldsv0grp43
336 or ldsv0grp44 or ldsv0grp45 or ldsv0grp46 or ldsv0grp47
337 or ldsv0grp48 or ldsv0grp49 or ldsv0grp5 or ldsv0grp50
338 or ldsv0grp51 or ldsv0grp52 or ldsv0grp53 or ldsv0grp54
339 or ldsv0grp55 or ldsv0grp56 or ldsv0grp57 or ldsv0grp58
340 or ldsv0grp59 or ldsv0grp6 or ldsv0grp60 or ldsv0grp61
341 or ldsv0grp62 or ldsv0grp63 or ldsv0grp7 or ldsv0grp8
342 or ldsv0grp9 or ldsv1grp0 or ldsv1grp1 or ldsv1grp10
343 or ldsv1grp11 or ldsv1grp12 or ldsv1grp13 or ldsv1grp14
344 or ldsv1grp15 or ldsv1grp16 or ldsv1grp17 or ldsv1grp18
345 or ldsv1grp19 or ldsv1grp2 or ldsv1grp20 or ldsv1grp21
346 or ldsv1grp22 or ldsv1grp23 or ldsv1grp24 or ldsv1grp25
347 or ldsv1grp26 or ldsv1grp27 or ldsv1grp28 or ldsv1grp29
348 or ldsv1grp3 or ldsv1grp30 or ldsv1grp31 or ldsv1grp32
349 or ldsv1grp33 or ldsv1grp34 or ldsv1grp35 or ldsv1grp36
350 or ldsv1grp37 or ldsv1grp38 or ldsv1grp39 or ldsv1grp4
351 or ldsv1grp40 or ldsv1grp41 or ldsv1grp42 or ldsv1grp43
352 or ldsv1grp44 or ldsv1grp45 or ldsv1grp46 or ldsv1grp47
353 or ldsv1grp48 or ldsv1grp49 or ldsv1grp5 or ldsv1grp50
354 or ldsv1grp51 or ldsv1grp52 or ldsv1grp53 or ldsv1grp54
355 or ldsv1grp55 or ldsv1grp56 or ldsv1grp57 or ldsv1grp58
356 or ldsv1grp59 or ldsv1grp6 or ldsv1grp60 or ldsv1grp61
357 or ldsv1grp62 or ldsv1grp63 or ldsv1grp7 or ldsv1grp8
358 or ldsv1grp9 or ldsv2grp0 or ldsv2grp1 or ldsv2grp10
359 or ldsv2grp11 or ldsv2grp12 or ldsv2grp13 or ldsv2grp14
360 or ldsv2grp15 or ldsv2grp16 or ldsv2grp17 or ldsv2grp18
361 or ldsv2grp19 or ldsv2grp2 or ldsv2grp20 or ldsv2grp21
362 or ldsv2grp22 or ldsv2grp23 or ldsv2grp24 or ldsv2grp25
363 or ldsv2grp26 or ldsv2grp27 or ldsv2grp28 or ldsv2grp29
364 or ldsv2grp3 or ldsv2grp30 or ldsv2grp31 or ldsv2grp32
365 or ldsv2grp33 or ldsv2grp34 or ldsv2grp35 or ldsv2grp36
366 or ldsv2grp37 or ldsv2grp38 or ldsv2grp39 or ldsv2grp4
367 or ldsv2grp40 or ldsv2grp41 or ldsv2grp42 or ldsv2grp43
368 or ldsv2grp44 or ldsv2grp45 or ldsv2grp46 or ldsv2grp47
369 or ldsv2grp48 or ldsv2grp49 or ldsv2grp5 or ldsv2grp50
370 or ldsv2grp51 or ldsv2grp52 or ldsv2grp53 or ldsv2grp54
371 or ldsv2grp55 or ldsv2grp56 or ldsv2grp57 or ldsv2grp58
372 or ldsv2grp59 or ldsv2grp6 or ldsv2grp60 or ldsv2grp61
373 or ldsv2grp62 or ldsv2grp63 or ldsv2grp7 or ldsv2grp8
374 or ldsv2grp9)
375 begin
376 non_qualified_addr_err = 0;
377 rd_data = 64'hdead_beef_dead_beef;
378
379 case({addr[18:3],3'b0}) //synopsys parallel_case full_case infer_mux
380 // grp0
381 19'h0_0000: rd_data = ldsv0grp0;
382 19'h0_0008: rd_data = ldsv1grp0;
383 19'h0_0010: rd_data = ldsv2grp0;
384 // grp1
385 19'h0_2000: rd_data = ldsv0grp1;
386 19'h0_2008: rd_data = ldsv1grp1;
387 19'h0_2010: rd_data = ldsv2grp1;
388 // grp2
389 19'h0_4000: rd_data = ldsv0grp2;
390 19'h0_4008: rd_data = ldsv1grp2;
391 19'h0_4010: rd_data = ldsv2grp2;
392 // grp3
393 19'h0_6000: rd_data = ldsv0grp3;
394 19'h0_6008: rd_data = ldsv1grp3;
395 19'h0_6010: rd_data = ldsv2grp3;
396 // grp4
397 19'h0_8000: rd_data = ldsv0grp4;
398 19'h0_8008: rd_data = ldsv1grp4;
399 19'h0_8010: rd_data = ldsv2grp4;
400 // grp5
401 19'h0_a000: rd_data = ldsv0grp5;
402 19'h0_a008: rd_data = ldsv1grp5;
403 19'h0_a010: rd_data = ldsv2grp5;
404 // grp6
405 19'h0_c000: rd_data = ldsv0grp6;
406 19'h0_c008: rd_data = ldsv1grp6;
407 19'h0_c010: rd_data = ldsv2grp6;
408 // grp7
409 19'h0_e000: rd_data = ldsv0grp7;
410 19'h0_e008: rd_data = ldsv1grp7;
411 19'h0_e010: rd_data = ldsv2grp7;
412 // grp8
413 19'h1_0000: rd_data = ldsv0grp8;
414 19'h1_0008: rd_data = ldsv1grp8;
415 19'h1_0010: rd_data = ldsv2grp8;
416 // grp9
417 19'h1_2000: rd_data = ldsv0grp9;
418 19'h1_2008: rd_data = ldsv1grp9;
419 19'h1_2010: rd_data = ldsv2grp9;
420 // grp10
421 19'h1_4000: rd_data = ldsv0grp10;
422 19'h1_4008: rd_data = ldsv1grp10;
423 19'h1_4010: rd_data = ldsv2grp10;
424 // grp11
425 19'h1_6000: rd_data = ldsv0grp11;
426 19'h1_6008: rd_data = ldsv1grp11;
427 19'h1_6010: rd_data = ldsv2grp11;
428 // grp12
429 19'h1_8000: rd_data = ldsv0grp12;
430 19'h1_8008: rd_data = ldsv1grp12;
431 19'h1_8010: rd_data = ldsv2grp12;
432 // grp13
433 19'h1_a000: rd_data = ldsv0grp13;
434 19'h1_a008: rd_data = ldsv1grp13;
435 19'h1_a010: rd_data = ldsv2grp13;
436 // grp14
437 19'h1_c000: rd_data = ldsv0grp14;
438 19'h1_c008: rd_data = ldsv1grp14;
439 19'h1_c010: rd_data = ldsv2grp14;
440 // grp15
441 19'h1_e000: rd_data = ldsv0grp15;
442 19'h1_e008: rd_data = ldsv1grp15;
443 19'h1_e010: rd_data = ldsv2grp15;
444 // grp16
445 19'h2_0000: rd_data = ldsv0grp16;
446 19'h2_0008: rd_data = ldsv1grp16;
447 19'h2_0010: rd_data = ldsv2grp16;
448 // grp17
449 19'h2_2000: rd_data = ldsv0grp17;
450 19'h2_2008: rd_data = ldsv1grp17;
451 19'h2_2010: rd_data = ldsv2grp17;
452 // grp18
453 19'h2_4000: rd_data = ldsv0grp18;
454 19'h2_4008: rd_data = ldsv1grp18;
455 19'h2_4010: rd_data = ldsv2grp18;
456 // grp19
457 19'h2_6000: rd_data = ldsv0grp19;
458 19'h2_6008: rd_data = ldsv1grp19;
459 19'h2_6010: rd_data = ldsv2grp19;
460 // grp20
461 19'h2_8000: rd_data = ldsv0grp20;
462 19'h2_8008: rd_data = ldsv1grp20;
463 19'h2_8010: rd_data = ldsv2grp20;
464 // grp21
465 19'h2_a000: rd_data = ldsv0grp21;
466 19'h2_a008: rd_data = ldsv1grp21;
467 19'h2_a010: rd_data = ldsv2grp21;
468 // grp22
469 19'h2_c000: rd_data = ldsv0grp22;
470 19'h2_c008: rd_data = ldsv1grp22;
471 19'h2_c010: rd_data = ldsv2grp22;
472 // grp23
473 19'h2_e000: rd_data = ldsv0grp23;
474 19'h2_e008: rd_data = ldsv1grp23;
475 19'h2_e010: rd_data = ldsv2grp23;
476 // grp24
477 19'h3_0000: rd_data = ldsv0grp24;
478 19'h3_0008: rd_data = ldsv1grp24;
479 19'h3_0010: rd_data = ldsv2grp24;
480 // grp25
481 19'h3_2000: rd_data = ldsv0grp25;
482 19'h3_2008: rd_data = ldsv1grp25;
483 19'h3_2010: rd_data = ldsv2grp25;
484 // grp26
485 19'h3_4000: rd_data = ldsv0grp26;
486 19'h3_4008: rd_data = ldsv1grp26;
487 19'h3_4010: rd_data = ldsv2grp26;
488 // grp27
489 19'h3_6000: rd_data = ldsv0grp27;
490 19'h3_6008: rd_data = ldsv1grp27;
491 19'h3_6010: rd_data = ldsv2grp27;
492 // grp28
493 19'h3_8000: rd_data = ldsv0grp28;
494 19'h3_8008: rd_data = ldsv1grp28;
495 19'h3_8010: rd_data = ldsv2grp28;
496 // grp29
497 19'h3_a000: rd_data = ldsv0grp29;
498 19'h3_a008: rd_data = ldsv1grp29;
499 19'h3_a010: rd_data = ldsv2grp29;
500 // grp30
501 19'h3_c000: rd_data = ldsv0grp30;
502 19'h3_c008: rd_data = ldsv1grp30;
503 19'h3_c010: rd_data = ldsv2grp30;
504 // grp31
505 19'h3_e000: rd_data = ldsv0grp31;
506 19'h3_e008: rd_data = ldsv1grp31;
507 19'h3_e010: rd_data = ldsv2grp31;
508 // grp32
509 19'h4_0000: rd_data = ldsv0grp32;
510 19'h4_0008: rd_data = ldsv1grp32;
511 19'h4_0010: rd_data = ldsv2grp32;
512 // grp33
513 19'h4_2000: rd_data = ldsv0grp33;
514 19'h4_2008: rd_data = ldsv1grp33;
515 19'h4_2010: rd_data = ldsv2grp33;
516 // grp34
517 19'h4_4000: rd_data = ldsv0grp34;
518 19'h4_4008: rd_data = ldsv1grp34;
519 19'h4_4010: rd_data = ldsv2grp34;
520 // grp35
521 19'h4_6000: rd_data = ldsv0grp35;
522 19'h4_6008: rd_data = ldsv1grp35;
523 19'h4_6010: rd_data = ldsv2grp35;
524 // grp36
525 19'h4_8000: rd_data = ldsv0grp36;
526 19'h4_8008: rd_data = ldsv1grp36;
527 19'h4_8010: rd_data = ldsv2grp36;
528 // grp37
529 19'h4_a000: rd_data = ldsv0grp37;
530 19'h4_a008: rd_data = ldsv1grp37;
531 19'h4_a010: rd_data = ldsv2grp37;
532 // grp38
533 19'h4_c000: rd_data = ldsv0grp38;
534 19'h4_c008: rd_data = ldsv1grp38;
535 19'h4_c010: rd_data = ldsv2grp38;
536 // grp39
537 19'h4_e000: rd_data = ldsv0grp39;
538 19'h4_e008: rd_data = ldsv1grp39;
539 19'h4_e010: rd_data = ldsv2grp39;
540 // grp40
541 19'h5_0000: rd_data = ldsv0grp40;
542 19'h5_0008: rd_data = ldsv1grp40;
543 19'h5_0010: rd_data = ldsv2grp40;
544 // grp41
545 19'h5_2000: rd_data = ldsv0grp41;
546 19'h5_2008: rd_data = ldsv1grp41;
547 19'h5_2010: rd_data = ldsv2grp41;
548 // grp42
549 19'h5_4000: rd_data = ldsv0grp42;
550 19'h5_4008: rd_data = ldsv1grp42;
551 19'h5_4010: rd_data = ldsv2grp42;
552 // grp43
553 19'h5_6000: rd_data = ldsv0grp43;
554 19'h5_6008: rd_data = ldsv1grp43;
555 19'h5_6010: rd_data = ldsv2grp43;
556 // grp44
557 19'h5_8000: rd_data = ldsv0grp44;
558 19'h5_8008: rd_data = ldsv1grp44;
559 19'h5_8010: rd_data = ldsv2grp44;
560 // grp45
561 19'h5_a000: rd_data = ldsv0grp45;
562 19'h5_a008: rd_data = ldsv1grp45;
563 19'h5_a010: rd_data = ldsv2grp45;
564 // grp46
565 19'h5_c000: rd_data = ldsv0grp46;
566 19'h5_c008: rd_data = ldsv1grp46;
567 19'h5_c010: rd_data = ldsv2grp46;
568 // grp47
569 19'h5_e000: rd_data = ldsv0grp47;
570 19'h5_e008: rd_data = ldsv1grp47;
571 19'h5_e010: rd_data = ldsv2grp47;
572 // grp48
573 19'h6_0000: rd_data = ldsv0grp48;
574 19'h6_0008: rd_data = ldsv1grp48;
575 19'h6_0010: rd_data = ldsv2grp48;
576 // grp49
577 19'h6_2000: rd_data = ldsv0grp49;
578 19'h6_2008: rd_data = ldsv1grp49;
579 19'h6_2010: rd_data = ldsv2grp49;
580 // grp50
581 19'h6_4000: rd_data = ldsv0grp50;
582 19'h6_4008: rd_data = ldsv1grp50;
583 19'h6_4010: rd_data = ldsv2grp50;
584 // grp51
585 19'h6_6000: rd_data = ldsv0grp51;
586 19'h6_6008: rd_data = ldsv1grp51;
587 19'h6_6010: rd_data = ldsv2grp51;
588 // grp52
589 19'h6_8000: rd_data = ldsv0grp52;
590 19'h6_8008: rd_data = ldsv1grp52;
591 19'h6_8010: rd_data = ldsv2grp52;
592 // grp53
593 19'h6_a000: rd_data = ldsv0grp53;
594 19'h6_a008: rd_data = ldsv1grp53;
595 19'h6_a010: rd_data = ldsv2grp53;
596 // grp54
597 19'h6_c000: rd_data = ldsv0grp54;
598 19'h6_c008: rd_data = ldsv1grp54;
599 19'h6_c010: rd_data = ldsv2grp54;
600 // grp55
601 19'h6_e000: rd_data = ldsv0grp55;
602 19'h6_e008: rd_data = ldsv1grp55;
603 19'h6_e010: rd_data = ldsv2grp55;
604 // grp56
605 19'h7_0000: rd_data = ldsv0grp56;
606 19'h7_0008: rd_data = ldsv1grp56;
607 19'h7_0010: rd_data = ldsv2grp56;
608 // grp57
609 19'h7_2000: rd_data = ldsv0grp57;
610 19'h7_2008: rd_data = ldsv1grp57;
611 19'h7_2010: rd_data = ldsv2grp57;
612 // grp58
613 19'h7_4000: rd_data = ldsv0grp58;
614 19'h7_4008: rd_data = ldsv1grp58;
615 19'h7_4010: rd_data = ldsv2grp58;
616 // grp59
617 19'h7_6000: rd_data = ldsv0grp59;
618 19'h7_6008: rd_data = ldsv1grp59;
619 19'h7_6010: rd_data = ldsv2grp59;
620 // grp60
621 19'h7_8000: rd_data = ldsv0grp60;
622 19'h7_8008: rd_data = ldsv1grp60;
623 19'h7_8010: rd_data = ldsv2grp60;
624 // grp61
625 19'h7_a000: rd_data = ldsv0grp61;
626 19'h7_a008: rd_data = ldsv1grp61;
627 19'h7_a010: rd_data = ldsv2grp61;
628 // grp62
629 19'h7_c000: rd_data = ldsv0grp62;
630 19'h7_c008: rd_data = ldsv1grp62;
631 19'h7_c010: rd_data = ldsv2grp62;
632 // grp63
633 19'h7_e000: rd_data = ldsv0grp63;
634 19'h7_e008: rd_data = ldsv1grp63;
635 19'h7_e010: rd_data = ldsv2grp63;
636
637 default: begin
638 rd_data = 64'hdead_beef_dead_beef;
639 non_qualified_addr_err = 1;
640 end // case: default
641 endcase // case({addr[18:3],3'b0})
642 end // always @ (...
643
644endmodule // niu_pio_ldsv_decoder