Commit | Line | Data |
---|---|---|
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 | ||
55 | module 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 | ||
311 | niu_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 | ||
326 | always @ (/*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 | ||
644 | endmodule // niu_pio_ldsv_decoder |