Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / model / verilog / niu / niu_enet_models / xgmii_tx_encoder.v
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: xgmii_tx_encoder.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`define XAUI_ENC_COM 8'h07 //K28.5 8'hBC? ||K|| Sync Col
36`define XAUI_ENC_SDP 8'hFB
37`define XAUI_ENC_EGP 8'hFD
38`define XAUI_ENC_EBP 8'hFE
39`define XAUI_ENC_SEQ 8'h9c
40`define XAUI_ENC_ALN 8'h7c
41`define XAUI_ENC_SKP 8'h1c
42`define XAUI_ENC_ERROR 8'h00
43
44module xgmii_tx_encoder (
45 tx_clk,
46 tx_rst,
47
48 tx_8b_enc_in,
49 special,
50
51 idle_cycle,
52 is16,
53 even,
54 eop,
55
56 RDreg,
57 tx_10b_enc_out);
58
59input tx_clk; // 250 MHz TX clk
60input tx_rst; // synchronous reset
61input idle_cycle; // synchronous reset
62input even; // synchronous reset
63input is16; // synchronous reset
64input eop; // synchronous reset
65
66input [7:0] tx_8b_enc_in; // incoming byte
67input special; // used for special characters
68
69output RDreg; // running disparity of last data
70output [9:0] tx_10b_enc_out; // outgoing 10 bits encoded
71
72parameter lane_num = 0;
73wire pos_disp;
74reg [7:0] tx_8b_enc_int; // incoming byte
75
76reg RDreg;
77
78wire [9:0] tx_10b_enc_out_int;
79
80reg [9:0] tx_10b_enc_out_pri;
81reg [9:0] tx_10b_enc_out_sp;
82reg pos_disp_pri;
83reg pos_disp_sp;
84
85reg [9:0] tx_10b_enc_out; // outgoing 10 bits encoded
86
87reg invalids_s_symbol;
88initial invalids_s_symbol = 0;
89`ifdef AXIS
90`else // AXIS
91
92// The following code is to assert invalids to the 10 bit vectors to bring link down
93//reg invalids_s_symbol;
94reg invalids_d_symbol;
95reg [63:0] invalids_start_time;
96reg [63:0] invalids_repeat_interval;
97reg [63:0] invalids_curr_time;
98integer invalids_repeat_count;
99integer invalids_repeat_count_curr;
100integer invalids_type;
101integer invalids_first_time;
102integer valid_symbols_max = 464;
103integer valid_symbols_curr;
104integer invalid_symbols_max = 560;
105integer invalid_symbols_curr;
106integer timescale_factor = 1000; // To get to ns
107reg invalids_assertion_is_done;
108reg [9:0] valid_symbols [1023:0];
109reg [4:0] random_invalid_symbols;
110reg [9:0] invalid_symbols [1023:0];
111integer ret;
112
113initial
114begin
115 //invalids_s_symbol = 0;
116 invalids_d_symbol = 0;
117 invalids_start_time = 0;
118 invalids_type = 0;
119 invalids_first_time = 1;
120 random_invalid_symbols = $random;
121 invalids_repeat_interval = 9999999; // very high value
122 invalids_repeat_count = 10; // 10 repeats by default
123 invalids_repeat_count_curr = 0;
124 invalids_assertion_is_done = 0;
125 valid_symbols_curr = 0;
126 invalid_symbols_curr = 0;
127
128 // Collect type of errors to introduce
129 if ($test$plusargs("invalids_type=")) begin
130 ret = $value$plusargs("invalids_type=%d", invalids_type);
131 end
132
133 // Collect start time to corrupt bit vectors
134 if ($test$plusargs("invalids_start_time=")) begin
135 ret = $value$plusargs("invalids_start_time=%d", invalids_start_time);
136 invalids_start_time = invalids_start_time * timescale_factor;
137 end
138
139 // Collect repeat interval
140 if ($test$plusargs("invalids_repeat_interval=")) begin
141 ret = $value$plusargs("invalids_repeat_interval=%d", invalids_repeat_interval);
142 invalids_repeat_interval = invalids_repeat_interval * timescale_factor;
143 end
144
145 // Collect repeat count
146 if ($test$plusargs("invalids_repeat_count=")) begin
147 ret = $value$plusargs("invalids_repeat_count=%d", invalids_repeat_count);
148 end
149
150 // Wait for this much amount of time to start asserting invalids
151 if(invalids_first_time == 1 && invalids_start_time != 0) begin
152 invalids_first_time = 0;
153 #(invalids_start_time);
154 // Wait for 1 tx_clk to to get in sync
155 @(posedge tx_clk);
156 #1;
157 $display("<%0d> Asserting invalid code Start %m", $time);
158 end
159
160 while((invalids_assertion_is_done == 0) && (invalids_start_time != 0)) begin
161
162 random_invalid_symbols = $random;
163
164 if(invalids_type == 1) begin // Corrupt only s symbols
165 invalids_s_symbol = 1;
166 end
167 if(invalids_type == 2) begin // Corrupt only d symbols
168 invalids_d_symbol = 1;
169 end
170 if(invalids_type == 3) begin // Corrupt both s and d symbols
171 invalids_d_symbol = 1;
172 invalids_s_symbol = 1;
173 end
174 if(invalids_type == 4) begin // Corrupt s and d symbols randomly
175 invalids_d_symbol = $random & 32'h1;
176 invalids_s_symbol = $random & 32'h1;
177 end
178 if(invalids_type == 5) begin // Assert all valid and invalid symbols
179 if(valid_symbols_curr < valid_symbols_max) begin
180 $display("<%0d> Asserting valid code %b lane_num:%0d index:%0d %m",
181 $time,
182 valid_symbols[lane_num + valid_symbols_curr],
183 lane_num,
184 lane_num + valid_symbols_curr);
185 force tx_10b_enc_out_pri = valid_symbols[lane_num + valid_symbols_curr];
186 valid_symbols_curr = valid_symbols_curr + 4;
187 end
188 else if (invalid_symbols_curr < invalid_symbols_max) begin
189 $display("<%0d> Asserting invalid code %b lane_num:%0d index:%0d %m",
190 $time,
191 invalid_symbols[lane_num + invalid_symbols_curr],
192 lane_num,
193 lane_num + invalid_symbols_curr);
194 force tx_10b_enc_out_pri = invalid_symbols[lane_num + invalid_symbols_curr];
195 invalid_symbols_curr = invalid_symbols_curr + 4;
196 end
197 end
198
199 if(invalids_s_symbol)
200 $display("<%0d> Asserting invalids_s_symbol %m", $time);
201 if(invalids_d_symbol) begin
202 $display("<%0d> Asserting invalids_d_symbol %m", $time);
203 if(random_invalid_symbols < 4)
204 force tx_10b_enc_out_pri = 10'h3FF;
205 else if(random_invalid_symbols < 8)
206 force tx_10b_enc_out_pri = 10'h000;
207 else
208 force tx_10b_enc_out_pri = $random & 10'h3FF;
209 end
210
211 if(invalid_symbols_curr >= invalid_symbols_max &
212 valid_symbols_curr >= valid_symbols_curr) begin
213 invalid_symbols_curr = 0;
214 valid_symbols_curr = 0;
215 end
216
217 if(invalid_symbols_curr == 0 & valid_symbols_curr == 0) begin
218 invalids_repeat_count_curr = invalids_repeat_count_curr + 1;
219 #(invalids_repeat_interval);
220 end
221 if(invalids_repeat_count_curr >= invalids_repeat_count) begin
222 invalids_assertion_is_done = 1;
223 $display("<%0d> Asserting invalid code End %m", $time);
224 end
225
226 invalids_s_symbol = 0;
227 invalids_d_symbol = 0;
228
229 if(invalids_type == 5) begin
230 // Wait for 1 tx_clk to walk all valid and invalid symbols
231 @(posedge tx_clk);
232 #1;
233 end
234
235 release tx_10b_enc_out_pri;
236
237 end // while(1)
238end
239`endif // AXIS
240
241always @(even or tx_8b_enc_in or idle_cycle or is16 or eop or invalids_s_symbol)
242 begin
243 if(invalids_s_symbol) begin
244 tx_8b_enc_int = `XAUI_ENC_ERROR;
245 end else if (idle_cycle )
246 begin
247 if ((even & ~is16) | eop )
248 tx_8b_enc_int = `XAUI_ENC_COM;
249 else if (is16 )
250 tx_8b_enc_int = `XAUI_ENC_ALN;
251 else
252 tx_8b_enc_int = `XAUI_ENC_SKP;
253 end
254 else
255 tx_8b_enc_int = tx_8b_enc_in;
256 end
257
258
259
260// Register disparity
261
262always @ (posedge tx_clk )
263 if (tx_rst)
264 RDreg <= 1'b0;
265 else
266 RDreg <= pos_disp;
267
268assign pos_disp = special ? pos_disp_sp : pos_disp_pri;
269
270
271always @ (posedge tx_clk )
272 begin
273 if(tx_rst)
274 tx_10b_enc_out <= 10'h0;
275 else begin
276 tx_10b_enc_out[9:0] <= {tx_10b_enc_out_int[0],tx_10b_enc_out_int[1],
277 tx_10b_enc_out_int[2],tx_10b_enc_out_int[3],
278 tx_10b_enc_out_int[4],tx_10b_enc_out_int[5],
279 tx_10b_enc_out_int[6],tx_10b_enc_out_int[7],
280 tx_10b_enc_out_int[8],tx_10b_enc_out_int[9]};
281 end
282 end
283
284/* assign tx_10b_enc_out[9:0] = {tx_10b_enc_out_int[0],tx_10b_enc_out_int[1],
285 tx_10b_enc_out_int[2],tx_10b_enc_out_int[3],
286 tx_10b_enc_out_int[4],tx_10b_enc_out_int[5],
287 tx_10b_enc_out_int[6],tx_10b_enc_out_int[7],
288 tx_10b_enc_out_int[8],tx_10b_enc_out_int[9]}; */
289
290assign tx_10b_enc_out_int = special ? tx_10b_enc_out_sp : tx_10b_enc_out_pri;
291
292
293//assign tx_8b_enc_int = (even ==1) ? `XAUI_ENC_SKP: `XAUI_ENC_COM ;
294
295
296// Encode data byte
297
298always @ (tx_8b_enc_in or RDreg)
299 case (tx_8b_enc_in[7:0]) //####SYNOPSYS parallel_case full_case
300 //if RD-, choose 1st, if RD+ choose 2nd
301
302 8'h00: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001110100 : 10'b0110001011), RDreg};
303 8'h01: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111010100 : 10'b1000101011), RDreg};
304 8'h02: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011010100 : 10'b0100101011), RDreg};
305 8'h03: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100011011 : 10'b1100010100), !RDreg};
306
307 8'h04: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101010100 : 10'b0010101011), RDreg};
308 8'h05: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010011011 : 10'b1010010100), !RDreg};
309 8'h06: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110011011 : 10'b0110010100), !RDreg};
310 8'h07: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110001011 : 10'b0001110100), !RDreg};
311
312 8'h08: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110010100 : 10'b0001101011), RDreg};
313 8'h09: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001011011 : 10'b1001010100), !RDreg};
314 8'h0a: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101011011 : 10'b0101010100), !RDreg};
315 8'h0b: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101001011 : 10'b1101000100), !RDreg};
316
317 8'h0c: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0011011011 : 10'b0011010100), !RDreg};
318 8'h0d: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011001011 : 10'b1011000100), !RDreg};
319 8'h0e: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111001011 : 10'b0111000100), !RDreg};
320 8'h0f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101110100 : 10'b1010001011), RDreg};
321
322 8'h10: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110110100 : 10'b1001001011), RDreg};
323 8'h11: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1000111011 : 10'b1000110100), !RDreg};
324 8'h12: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0100111011 : 10'b0100110100), !RDreg};
325 8'h13: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100101011 : 10'b1100100100), !RDreg};
326
327 8'h14: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0010111011 : 10'b0010110100), !RDreg};
328 8'h15: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010101011 : 10'b1010100100), !RDreg};
329 8'h16: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110101011 : 10'b0110100100), !RDreg};
330 8'h17: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110100100 : 10'b0001011011), RDreg};
331
332 8'h18: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100110100 : 10'b0011001011), RDreg};
333 8'h19: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001101011 : 10'b1001100100), !RDreg};
334 8'h1a: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101101011 : 10'b0101100100), !RDreg};
335 8'h1b: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101100100 : 10'b0010011011), RDreg};
336
337 8'h1c: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0011101011 : 10'b0011100100), !RDreg};
338 8'h1d: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011100100 : 10'b0100011011), RDreg};
339 8'h1e: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111100100 : 10'b1000011011), RDreg};
340 8'h1f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010110100 : 10'b0101001011), RDreg};
341
342 8'h20: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001111001 : 10'b0110001001), !RDreg};
343 8'h21: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111011001 : 10'b1000101001), !RDreg};
344 8'h22: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011011001 : 10'b0100101001), !RDreg};
345 8'h23: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1100011001), RDreg};
346
347 8'h24: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101011001 : 10'b0010101001), !RDreg};
348 8'h25: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1010011001), RDreg};
349 8'h26: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0110011001), RDreg};
350 8'h27: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110001001 : 10'b0001111001), RDreg};
351
352 8'h28: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110011001 : 10'b0001101001), !RDreg};
353 8'h29: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1001011001), RDreg};
354 8'h2a: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0101011001), RDreg};
355 8'h2b: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1101001001), RDreg};
356
357 8'h2c: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0011011001), RDreg};
358 8'h2d: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1011001001), RDreg};
359 8'h2e: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0111001001), RDreg};
360 8'h2f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101111001 : 10'b1010001001), !RDreg};
361
362 8'h30: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110111001 : 10'b1001001001), !RDreg};
363 8'h31: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1000111001), RDreg};
364 8'h32: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0100111001), RDreg};
365 8'h33: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1100101001), RDreg};
366
367 8'h34: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0010111001), RDreg};
368 8'h35: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1010101001), RDreg};
369 8'h36: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0110101001), RDreg};
370 8'h37: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110101001 : 10'b0001011001), !RDreg};
371
372 8'h38: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100111001 : 10'b0011001001), !RDreg};
373 8'h39: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1001101001), RDreg};
374 8'h3a: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0101101001), RDreg};
375 8'h3b: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101101001 : 10'b0010011001), !RDreg};
376
377 8'h3c: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0011101001), RDreg};
378 8'h3d: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011101001 : 10'b0100011001), !RDreg};
379 8'h3e: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111101001 : 10'b1000011001), !RDreg};
380 8'h3f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010111001 : 10'b0101001001), !RDreg};
381
382 8'h40: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001110101 : 10'b0110000101), !RDreg};
383 8'h41: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111010101 : 10'b1000100101), !RDreg};
384 8'h42: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011010101 : 10'b0100100101), !RDreg};
385 8'h43: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100010101 : 10'b1100010101), RDreg};
386
387 8'h44: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101010101 : 10'b0010100101), !RDreg};
388 8'h45: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1010010101), RDreg};
389 8'h46: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0110010101), RDreg};
390 8'h47: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110000101 : 10'b0001110101), RDreg};
391
392 8'h48: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110010101 : 10'b0001100101), !RDreg};
393 8'h49: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1001010101), RDreg};
394 8'h4a: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0101010101), RDreg};
395 8'h4b: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1101000101), RDreg};
396
397 8'h4c: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0011010101), RDreg};
398 8'h4d: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1011000101), RDreg};
399 8'h4e: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0111000101), RDreg};
400 8'h4f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101110101 : 10'b1010000101), !RDreg};
401
402 8'h50: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110110101 : 10'b1001000101), !RDreg};
403 8'h51: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1000110101), RDreg};
404 8'h52: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0100110101), RDreg};
405 8'h53: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1100100101), RDreg};
406
407 8'h54: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0010110101), RDreg};
408 8'h55: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1010100101), RDreg};
409 8'h56: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0110100101), RDreg};
410 8'h57: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110100101 : 10'b0001010101), !RDreg};
411
412 8'h58: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100110101 : 10'b0011000101), !RDreg};
413 8'h59: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1001100101), RDreg};
414 8'h5a: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0101100101), RDreg};
415 8'h5b: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101100101 : 10'b0010010101), !RDreg};
416
417 8'h5c: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0011100101), RDreg};
418 8'h5d: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011100101 : 10'b0100010101), !RDreg};
419 8'h5e: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111100101 : 10'b1000010101), !RDreg};
420 8'h5f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010110101 : 10'b0101000101), !RDreg};
421
422 8'h60: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001110011 : 10'b0110001100), !RDreg};
423 8'h61: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111010011 : 10'b1000101100), !RDreg};
424 8'h62: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011010011 : 10'b0100101100), !RDreg};
425 8'h63: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100011100 : 10'b1100010011), RDreg};
426
427 8'h64: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101010011 : 10'b0010101100), !RDreg};
428 8'h65: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010011100 : 10'b1010010011), RDreg};
429 8'h66: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110011100 : 10'b0110010011), RDreg};
430 8'h67: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110001100 : 10'b0001110011), RDreg};
431
432 8'h68: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110010011 : 10'b0001101100), !RDreg};
433 8'h69: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001011100 : 10'b1001010011), RDreg};
434 8'h6a: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101011100 : 10'b0101010011), RDreg};
435 8'h6b: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101001100 : 10'b1101000011), RDreg};
436
437 8'h6c: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0011011100 : 10'b0011010011), RDreg};
438 8'h6d: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011001100 : 10'b1011000011), RDreg};
439 8'h6e: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111001100 : 10'b0111000011), RDreg};
440 8'h6f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101110011 : 10'b1010001100), !RDreg};
441
442 8'h70: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110110011 : 10'b1001001100), !RDreg};
443 8'h71: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1000111100 : 10'b1000110011), RDreg};
444 8'h72: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0100111100 : 10'b0100110011), RDreg};
445 8'h73: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100101100 : 10'b1100100011), RDreg};
446
447 8'h74: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0010111100 : 10'b0010110011), RDreg};
448 8'h75: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010101100 : 10'b1010100011), RDreg};
449 8'h76: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110101100 : 10'b0110100011), RDreg};
450 8'h77: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110100011 : 10'b0001011100), !RDreg};
451
452 8'h78: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100110011 : 10'b0011001100), !RDreg};
453 8'h79: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001101100 : 10'b1001100011), RDreg};
454 8'h7a: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101101100 : 10'b0101100011), RDreg};
455 8'h7b: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101100011 : 10'b0010011100), !RDreg};
456
457 8'h7c: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0011101100 : 10'b0011100011), RDreg};
458 8'h7d: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011100011 : 10'b0100011100), !RDreg};
459 8'h7e: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111100011 : 10'b1000011100), !RDreg};
460 8'h7f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010110011 : 10'b0101001100), !RDreg};
461
462 8'h80: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001110010 : 10'b0110001101), RDreg};
463 8'h81: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111010010 : 10'b1000101101), RDreg};
464 8'h82: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011010010 : 10'b0100101101), RDreg};
465 8'h83: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100011101 : 10'b1100010010), !RDreg};
466
467 8'h84: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101010010 : 10'b0010101101), RDreg};
468 8'h85: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010011101 : 10'b1010010010), !RDreg};
469 8'h86: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110011101 : 10'b0110010010), !RDreg};
470 8'h87: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110001101 : 10'b0001110010), !RDreg};
471
472 8'h88: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110010010 : 10'b0001101101), RDreg};
473 8'h89: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001011101 : 10'b1001010010), !RDreg};
474 8'h8a: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101011101 : 10'b0101010010), !RDreg};
475 8'h8b: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101001101 : 10'b1101000010), !RDreg};
476
477 8'h8c: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0011011101 : 10'b0011010010), !RDreg};
478 8'h8d: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011001101 : 10'b1011000010), !RDreg};
479 8'h8e: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111001101 : 10'b0111000010), !RDreg};
480 8'h8f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101110010 : 10'b1010001101), RDreg};
481
482 8'h90: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110110010 : 10'b1001001101), RDreg};
483 8'h91: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1000111101 : 10'b1000110010), !RDreg};
484 8'h92: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0100111101 : 10'b0100110010), !RDreg};
485 8'h93: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100101101 : 10'b1100100010), !RDreg};
486
487 8'h94: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0010111101 : 10'b0010110010), !RDreg};
488 8'h95: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010101101 : 10'b1010100010), !RDreg};
489 8'h96: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110101101 : 10'b0110100010), !RDreg};
490 8'h97: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110100010 : 10'b0001011101), RDreg};
491
492 8'h98: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100110010 : 10'b0011001101), RDreg};
493 8'h99: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001101101 : 10'b1001100010), !RDreg};
494 8'h9a: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101101101 : 10'b0101100010), !RDreg};
495 8'h9b: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101100010 : 10'b0010011101), RDreg};
496
497 8'h9c: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0011101101 : 10'b0011100010), !RDreg};
498 8'h9d: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011100010 : 10'b0100011101), RDreg};
499 8'h9e: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111100010 : 10'b1000011101), RDreg};
500 8'h9f: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010110010 : 10'b0101001101), RDreg};
501
502 8'ha0: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001111010 : 10'b0110001010), !RDreg};
503 8'ha1: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111011010 : 10'b1000101010), !RDreg};
504 8'ha2: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011011010 : 10'b0100101010), !RDreg};
505 8'ha3: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100011010 : 10'b1100011010), RDreg};
506
507 8'ha4: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101011010 : 10'b0010101010), !RDreg};
508 8'ha5: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1010011010), RDreg};
509 8'ha6: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0110011010), RDreg};
510 8'ha7: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110001010 : 10'b0001111010), RDreg};
511
512 8'ha8: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110011010 : 10'b0001101010), !RDreg};
513 8'ha9: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1001011010), RDreg};
514 8'haa: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0101011010), RDreg};
515 8'hab: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1101001010), RDreg};
516
517 8'hac: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0011011010), RDreg};
518 8'had: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1011001010), RDreg};
519 8'hae: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0111001010), RDreg};
520 8'haf: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101111010 : 10'b1010001010), !RDreg};
521
522 8'hb0: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110111010 : 10'b1001001010), !RDreg};
523 8'hb1: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1000111010), RDreg};
524 8'hb2: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0100111010), RDreg};
525 8'hb3: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1100101010), RDreg};
526
527 8'hb4: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0010111010), RDreg};
528 8'hb5: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1010101010), RDreg};
529 8'hb6: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0110101010), RDreg};
530 8'hb7: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110101010 : 10'b0001011010), !RDreg};
531
532 8'hb8: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100111010 : 10'b0011001010), !RDreg};
533 8'hb9: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1001101010), RDreg};
534 8'hba: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0101101010), RDreg};
535 8'hbb: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101101010 : 10'b0010011010), !RDreg};
536
537 8'hbc: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0011101010), RDreg};
538 8'hbd: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011101010 : 10'b0100011010), !RDreg};
539 8'hbe: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111101010 : 10'b1000011010), !RDreg};
540 8'hbf: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010111010 : 10'b0101001010), !RDreg};
541
542 8'hc0: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001110110 : 10'b0110000110), !RDreg};
543 8'hc1: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111010110 : 10'b1000100110), !RDreg};
544 8'hc2: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011010110 : 10'b0100100110), !RDreg};
545 8'hc3: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1100010110), RDreg};
546
547 8'hc4: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101010110 : 10'b0010100110), !RDreg};
548 8'hc5: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1010010110), RDreg};
549 8'hc6: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0110010110), RDreg};
550 8'hc7: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110000110 : 10'b0001110110), RDreg};
551
552 8'hc8: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110010110 : 10'b0001100110), !RDreg};
553 8'hc9: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1001010110), RDreg};
554 8'hca: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0101010110), RDreg};
555 8'hcb: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1101000110), RDreg};
556
557 8'hcc: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0011010110), RDreg};
558 8'hcd: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1011000110), RDreg};
559 8'hce: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0111000110), RDreg};
560 8'hcf: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101110110 : 10'b1010000110), !RDreg};
561
562 8'hd0: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110110110 : 10'b1001000110), !RDreg};
563 8'hd1: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1000110110), RDreg};
564 8'hd2: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0100110110), RDreg};
565 8'hd3: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1100100110), RDreg};
566
567 8'hd4: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0010110110), RDreg};
568 8'hd5: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1010100110), RDreg};
569 8'hd6: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0110100110), RDreg};
570 8'hd7: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110100110 : 10'b0001010110), !RDreg};
571
572 8'hd8: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100110110 : 10'b0011000110), !RDreg};
573 8'hd9: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b1001100110), RDreg};
574 8'hda: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0101100110), RDreg};
575 8'hdb: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101100110 : 10'b0010010110), !RDreg};
576
577 8'hdc: {tx_10b_enc_out_pri, pos_disp_pri} = {(10'b0011100110), RDreg};
578 8'hdd: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011100110 : 10'b0100010110), !RDreg};
579 8'hde: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111100110 : 10'b1000010110), !RDreg};
580 8'hdf: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010110110 : 10'b0101000110), !RDreg};
581
582 8'he0: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001110001 : 10'b0110001110), RDreg};
583 8'he1: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111010001 : 10'b1000101110), RDreg};
584 8'he2: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011010001 : 10'b0100101110), RDreg};
585 8'he3: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100011110 : 10'b1100010001), !RDreg};
586
587 8'he4: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101010001 : 10'b0010101110), RDreg};
588 8'he5: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010011110 : 10'b1010010001), !RDreg};
589 8'he6: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110011110 : 10'b0110010001), !RDreg};
590 8'he7: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110001110 : 10'b0001110001), !RDreg};
591
592 8'he8: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110010001 : 10'b0001101110), RDreg};
593 8'he9: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001011110 : 10'b1001010001), !RDreg};
594 8'hea: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101011110 : 10'b0101010001), !RDreg};
595 8'heb: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101001110 : 10'b1101001000), !RDreg};
596
597 8'hec: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0011011110 : 10'b0011010001), !RDreg};
598 8'hed: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011001110 : 10'b1011001000), !RDreg};
599 8'hee: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111001110 : 10'b0111001000), !RDreg};
600 8'hef: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101110001 : 10'b1010001110), RDreg};
601
602 8'hf0: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110110001 : 10'b1001001110), RDreg};
603 8'hf1: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1000110111 : 10'b1000110001), !RDreg};
604 8'hf2: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0100110111 : 10'b0100110001), !RDreg};
605 8'hf3: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100101110 : 10'b1100100001), !RDreg};
606
607 8'hf4: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0010110111 : 10'b0010110001), !RDreg};
608 8'hf5: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010101110 : 10'b1010100001), !RDreg};
609 8'hf6: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0110101110 : 10'b0110100001), !RDreg};
610 8'hf7: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1110100001 : 10'b0001011110), RDreg};
611
612 8'hf8: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1100110001 : 10'b0011001110), RDreg};
613 8'hf9: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1001101110 : 10'b1001100001), !RDreg};
614 8'hfa: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0101101110 : 10'b0101100001), !RDreg};
615 8'hfb: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1101100001 : 10'b0010011110), RDreg};
616
617 8'hfc: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0011101110 : 10'b0011100001), !RDreg};
618 8'hfd: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1011100001 : 10'b0100011110), RDreg};
619 8'hfe: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b0111100001 : 10'b1000011110), RDreg};
620 8'hff: {tx_10b_enc_out_pri, pos_disp_pri} = {(!RDreg ? 10'b1010110001 : 10'b0101001110), RDreg};
621 endcase
622
623// Encode Control Symbols
624
625always @ (tx_8b_enc_int or RDreg)
626 case (tx_8b_enc_int[7:0]) //#####SYNOPSYS full_case parallel_case
627 //if RD-, choose 1st, if RD+ choose 2nd
628
629// XGMII Required Symbols
630
631 `XAUI_ENC_COM : // 8'h07 - K28.5 - COM (Comma, character boundary alignment symbol)
632 {tx_10b_enc_out_sp, pos_disp_sp} = {(!RDreg ? 10'b0011111010 : 10'b1100000101), !RDreg};
633 `XAUI_ENC_SDP : // 8'hFB - K27.7 - SDP (Start of data packet delimiter)
634 {tx_10b_enc_out_sp, pos_disp_sp} = {(!RDreg ? 10'b1101101000 : 10'b0010010111), RDreg};
635 `XAUI_ENC_EGP : // 8'hFD - K29.7 - EGP (End of good packet delimiter)
636 {tx_10b_enc_out_sp, pos_disp_sp} = {(!RDreg ? 10'b1011101000 : 10'b0100010111), RDreg};
637 `XAUI_ENC_EBP : // 8'hFE - K30.7 - EBP (End of bad packet delimiter)
638 {tx_10b_enc_out_sp, pos_disp_sp} = {(!RDreg ? 10'b0111101000 : 10'b1000010111), RDreg};
639 `XAUI_ENC_SEQ : // 8'h9C - K28.4 - Sequence
640 {tx_10b_enc_out_sp, pos_disp_sp} = {(!RDreg ? 10'b0011110010 : 10'b1100001101), RDreg};
641 `XAUI_ENC_SKP : // 8'h1C - K28.0 - SKP (Skip symbol)
642 {tx_10b_enc_out_sp, pos_disp_sp} = {(!RDreg ? 10'b0011110100 : 10'b1100001011), RDreg};
643 `XAUI_ENC_ALN : // 4'h8 - K28.3 - ALN (Align Symbol)
644 {tx_10b_enc_out_sp, pos_disp_sp} = {(!RDreg ? 10'b0011110011 : 10'b1100001100), !RDreg};
645 `XAUI_ENC_ERROR:
646 {tx_10b_enc_out_sp, pos_disp_sp} = {(!RDreg ? 10'b1111111111 : 10'b1111111111), !RDreg};
647
648
649// Reserved Symbols
650
651
652// Extra Symbols - To Disable A Port
653
654 endcase
655
656`ifdef AXIS
657`else // AXIS
658initial
659begin
660
661 valid_symbols[0] = 10'b0001010101;
662 valid_symbols[1] = 10'b0001010110;
663 valid_symbols[2] = 10'b0001010111;
664 valid_symbols[3] = 10'b0001011001;
665 valid_symbols[4] = 10'b0001011010;
666 valid_symbols[5] = 10'b0001011011;
667 valid_symbols[6] = 10'b0001011100;
668 valid_symbols[7] = 10'b0001011101;
669 valid_symbols[8] = 10'b0001011110;
670 valid_symbols[9] = 10'b0001100101;
671 valid_symbols[10] = 10'b0001100110;
672 valid_symbols[11] = 10'b0001101001;
673 valid_symbols[12] = 10'b0001101010;
674 valid_symbols[13] = 10'b0001101011;
675 valid_symbols[14] = 10'b0001101100;
676 valid_symbols[15] = 10'b0001101101;
677 valid_symbols[16] = 10'b0001101110;
678 valid_symbols[17] = 10'b0001110001;
679 valid_symbols[18] = 10'b0001110010;
680 valid_symbols[19] = 10'b0001110011;
681 valid_symbols[20] = 10'b0001110100;
682 valid_symbols[21] = 10'b0001110101;
683 valid_symbols[22] = 10'b0001110110;
684 valid_symbols[23] = 10'b0001111001;
685 valid_symbols[24] = 10'b0001111010;
686 valid_symbols[25] = 10'b0010010101;
687 valid_symbols[26] = 10'b0010010110;
688 valid_symbols[27] = 10'b0010010111;
689 valid_symbols[28] = 10'b0010011001;
690 valid_symbols[29] = 10'b0010011010;
691 valid_symbols[30] = 10'b0010011011;
692 valid_symbols[31] = 10'b0010011100;
693 valid_symbols[32] = 10'b0010011101;
694 valid_symbols[33] = 10'b0010011110;
695 valid_symbols[34] = 10'b0010100101;
696 valid_symbols[35] = 10'b0010100110;
697 valid_symbols[36] = 10'b0010101001;
698 valid_symbols[37] = 10'b0010101010;
699 valid_symbols[38] = 10'b0010101011;
700 valid_symbols[39] = 10'b0010101100;
701 valid_symbols[40] = 10'b0010101101;
702 valid_symbols[41] = 10'b0010101110;
703 valid_symbols[42] = 10'b0010110001;
704 valid_symbols[43] = 10'b0010110010;
705 valid_symbols[44] = 10'b0010110011;
706 valid_symbols[45] = 10'b0010110100;
707 valid_symbols[46] = 10'b0010110101;
708 valid_symbols[47] = 10'b0010110110;
709 valid_symbols[48] = 10'b0010110111;
710 valid_symbols[49] = 10'b0010111001;
711 valid_symbols[50] = 10'b0010111010;
712 valid_symbols[51] = 10'b0010111011;
713 valid_symbols[52] = 10'b0010111100;
714 valid_symbols[53] = 10'b0010111101;
715 valid_symbols[54] = 10'b0011000101;
716 valid_symbols[55] = 10'b0011000110;
717 valid_symbols[56] = 10'b0011001001;
718 valid_symbols[57] = 10'b0011001010;
719 valid_symbols[58] = 10'b0011001011;
720 valid_symbols[59] = 10'b0011001100;
721 valid_symbols[60] = 10'b0011001101;
722 valid_symbols[61] = 10'b0011001110;
723 valid_symbols[62] = 10'b0011010001;
724 valid_symbols[63] = 10'b0011010010;
725 valid_symbols[64] = 10'b0011010011;
726 valid_symbols[65] = 10'b0011010100;
727 valid_symbols[66] = 10'b0011010101;
728 valid_symbols[67] = 10'b0011010110;
729 valid_symbols[68] = 10'b0011011001;
730 valid_symbols[69] = 10'b0011011010;
731 valid_symbols[70] = 10'b0011011011;
732 valid_symbols[71] = 10'b0011011100;
733 valid_symbols[72] = 10'b0011011101;
734 valid_symbols[73] = 10'b0011011110;
735 valid_symbols[74] = 10'b0011100001;
736 valid_symbols[75] = 10'b0011100010;
737 valid_symbols[76] = 10'b0011100011;
738 valid_symbols[77] = 10'b0011100100;
739 valid_symbols[78] = 10'b0011100101;
740 valid_symbols[79] = 10'b0011100110;
741 valid_symbols[80] = 10'b0011101001;
742 valid_symbols[81] = 10'b0011101010;
743 valid_symbols[82] = 10'b0011101011;
744 valid_symbols[83] = 10'b0011101100;
745 valid_symbols[84] = 10'b0011101101;
746 valid_symbols[85] = 10'b0011101110;
747 valid_symbols[86] = 10'b0011110010;
748 valid_symbols[87] = 10'b0011110011;
749 valid_symbols[88] = 10'b0011110100;
750 valid_symbols[89] = 10'b0011110101;
751 valid_symbols[90] = 10'b0011110110;
752 valid_symbols[91] = 10'b0011111000;
753 valid_symbols[92] = 10'b0011111001;
754 valid_symbols[93] = 10'b0011111010;
755 valid_symbols[94] = 10'b0100010101;
756 valid_symbols[95] = 10'b0100010110;
757 valid_symbols[96] = 10'b0100010111;
758 valid_symbols[97] = 10'b0100011001;
759 valid_symbols[98] = 10'b0100011010;
760 valid_symbols[99] = 10'b0100011011;
761 valid_symbols[100] = 10'b0100011100;
762 valid_symbols[101] = 10'b0100011101;
763 valid_symbols[102] = 10'b0100011110;
764 valid_symbols[103] = 10'b0100100101;
765 valid_symbols[104] = 10'b0100100110;
766 valid_symbols[105] = 10'b0100101001;
767 valid_symbols[106] = 10'b0100101010;
768 valid_symbols[107] = 10'b0100101011;
769 valid_symbols[108] = 10'b0100101100;
770 valid_symbols[109] = 10'b0100101101;
771 valid_symbols[110] = 10'b0100101110;
772 valid_symbols[111] = 10'b0100110001;
773 valid_symbols[112] = 10'b0100110010;
774 valid_symbols[113] = 10'b0100110011;
775 valid_symbols[114] = 10'b0100110100;
776 valid_symbols[115] = 10'b0100110101;
777 valid_symbols[116] = 10'b0100110110;
778 valid_symbols[117] = 10'b0100110111;
779 valid_symbols[118] = 10'b0100111001;
780 valid_symbols[119] = 10'b0100111010;
781 valid_symbols[120] = 10'b0100111011;
782 valid_symbols[121] = 10'b0100111100;
783 valid_symbols[122] = 10'b0100111101;
784 valid_symbols[123] = 10'b0101000101;
785 valid_symbols[124] = 10'b0101000110;
786 valid_symbols[125] = 10'b0101001001;
787 valid_symbols[126] = 10'b0101001010;
788 valid_symbols[127] = 10'b0101001011;
789 valid_symbols[128] = 10'b0101001100;
790 valid_symbols[129] = 10'b0101001101;
791 valid_symbols[130] = 10'b0101001110;
792 valid_symbols[131] = 10'b0101010001;
793 valid_symbols[132] = 10'b0101010010;
794 valid_symbols[133] = 10'b0101010011;
795 valid_symbols[134] = 10'b0101010100;
796 valid_symbols[135] = 10'b0101010101;
797 valid_symbols[136] = 10'b0101010110;
798 valid_symbols[137] = 10'b0101011001;
799 valid_symbols[138] = 10'b0101011010;
800 valid_symbols[139] = 10'b0101011011;
801 valid_symbols[140] = 10'b0101011100;
802 valid_symbols[141] = 10'b0101011101;
803 valid_symbols[142] = 10'b0101011110;
804 valid_symbols[143] = 10'b0101100001;
805 valid_symbols[144] = 10'b0101100010;
806 valid_symbols[145] = 10'b0101100011;
807 valid_symbols[146] = 10'b0101100100;
808 valid_symbols[147] = 10'b0101100101;
809 valid_symbols[148] = 10'b0101100110;
810 valid_symbols[149] = 10'b0101101001;
811 valid_symbols[150] = 10'b0101101010;
812 valid_symbols[151] = 10'b0101101011;
813 valid_symbols[152] = 10'b0101101100;
814 valid_symbols[153] = 10'b0101101101;
815 valid_symbols[154] = 10'b0101101110;
816 valid_symbols[155] = 10'b0101110001;
817 valid_symbols[156] = 10'b0101110010;
818 valid_symbols[157] = 10'b0101110011;
819 valid_symbols[158] = 10'b0101110100;
820 valid_symbols[159] = 10'b0101110101;
821 valid_symbols[160] = 10'b0101110110;
822 valid_symbols[161] = 10'b0101111001;
823 valid_symbols[162] = 10'b0101111010;
824 valid_symbols[163] = 10'b0110000101;
825 valid_symbols[164] = 10'b0110000110;
826 valid_symbols[165] = 10'b0110001001;
827 valid_symbols[166] = 10'b0110001010;
828 valid_symbols[167] = 10'b0110001011;
829 valid_symbols[168] = 10'b0110001100;
830 valid_symbols[169] = 10'b0110001101;
831 valid_symbols[170] = 10'b0110001110;
832 valid_symbols[171] = 10'b0110010001;
833 valid_symbols[172] = 10'b0110010010;
834 valid_symbols[173] = 10'b0110010011;
835 valid_symbols[174] = 10'b0110010100;
836 valid_symbols[175] = 10'b0110010101;
837 valid_symbols[176] = 10'b0110010110;
838 valid_symbols[177] = 10'b0110011001;
839 valid_symbols[178] = 10'b0110011010;
840 valid_symbols[179] = 10'b0110011011;
841 valid_symbols[180] = 10'b0110011100;
842 valid_symbols[181] = 10'b0110011101;
843 valid_symbols[182] = 10'b0110011110;
844 valid_symbols[183] = 10'b0110100001;
845 valid_symbols[184] = 10'b0110100010;
846 valid_symbols[185] = 10'b0110100011;
847 valid_symbols[186] = 10'b0110100100;
848 valid_symbols[187] = 10'b0110100101;
849 valid_symbols[188] = 10'b0110100110;
850 valid_symbols[189] = 10'b0110101001;
851 valid_symbols[190] = 10'b0110101010;
852 valid_symbols[191] = 10'b0110101011;
853 valid_symbols[192] = 10'b0110101100;
854 valid_symbols[193] = 10'b0110101101;
855 valid_symbols[194] = 10'b0110101110;
856 valid_symbols[195] = 10'b0110110001;
857 valid_symbols[196] = 10'b0110110010;
858 valid_symbols[197] = 10'b0110110011;
859 valid_symbols[198] = 10'b0110110100;
860 valid_symbols[199] = 10'b0110110101;
861 valid_symbols[200] = 10'b0110110110;
862 valid_symbols[201] = 10'b0110111001;
863 valid_symbols[202] = 10'b0110111010;
864 valid_symbols[203] = 10'b0111000010;
865 valid_symbols[204] = 10'b0111000011;
866 valid_symbols[205] = 10'b0111000100;
867 valid_symbols[206] = 10'b0111000101;
868 valid_symbols[207] = 10'b0111000110;
869 valid_symbols[208] = 10'b0111001000;
870 valid_symbols[209] = 10'b0111001001;
871 valid_symbols[210] = 10'b0111001010;
872 valid_symbols[211] = 10'b0111001011;
873 valid_symbols[212] = 10'b0111001100;
874 valid_symbols[213] = 10'b0111001101;
875 valid_symbols[214] = 10'b0111001110;
876 valid_symbols[215] = 10'b0111010001;
877 valid_symbols[216] = 10'b0111010010;
878 valid_symbols[217] = 10'b0111010011;
879 valid_symbols[218] = 10'b0111010100;
880 valid_symbols[219] = 10'b0111010101;
881 valid_symbols[220] = 10'b0111010110;
882 valid_symbols[221] = 10'b0111011001;
883 valid_symbols[222] = 10'b0111011010;
884 valid_symbols[223] = 10'b0111100001;
885 valid_symbols[224] = 10'b0111100010;
886 valid_symbols[225] = 10'b0111100011;
887 valid_symbols[226] = 10'b0111100100;
888 valid_symbols[227] = 10'b0111100101;
889 valid_symbols[228] = 10'b0111100110;
890 valid_symbols[229] = 10'b0111101000;
891 valid_symbols[230] = 10'b0111101001;
892 valid_symbols[231] = 10'b0111101010;
893 valid_symbols[232] = 10'b1000010101;
894 valid_symbols[233] = 10'b1000010110;
895 valid_symbols[234] = 10'b1000010111;
896 valid_symbols[235] = 10'b1000011001;
897 valid_symbols[236] = 10'b1000011010;
898 valid_symbols[237] = 10'b1000011011;
899 valid_symbols[238] = 10'b1000011100;
900 valid_symbols[239] = 10'b1000011101;
901 valid_symbols[240] = 10'b1000011110;
902 valid_symbols[241] = 10'b1000100101;
903 valid_symbols[242] = 10'b1000100110;
904 valid_symbols[243] = 10'b1000101001;
905 valid_symbols[244] = 10'b1000101010;
906 valid_symbols[245] = 10'b1000101011;
907 valid_symbols[246] = 10'b1000101100;
908 valid_symbols[247] = 10'b1000101101;
909 valid_symbols[248] = 10'b1000101110;
910 valid_symbols[249] = 10'b1000110001;
911 valid_symbols[250] = 10'b1000110010;
912 valid_symbols[251] = 10'b1000110011;
913 valid_symbols[252] = 10'b1000110100;
914 valid_symbols[253] = 10'b1000110101;
915 valid_symbols[254] = 10'b1000110110;
916 valid_symbols[255] = 10'b1000110111;
917 valid_symbols[256] = 10'b1000111001;
918 valid_symbols[257] = 10'b1000111010;
919 valid_symbols[258] = 10'b1000111011;
920 valid_symbols[259] = 10'b1000111100;
921 valid_symbols[260] = 10'b1000111101;
922 valid_symbols[261] = 10'b1001000101;
923 valid_symbols[262] = 10'b1001000110;
924 valid_symbols[263] = 10'b1001001001;
925 valid_symbols[264] = 10'b1001001010;
926 valid_symbols[265] = 10'b1001001011;
927 valid_symbols[266] = 10'b1001001100;
928 valid_symbols[267] = 10'b1001001101;
929 valid_symbols[268] = 10'b1001001110;
930 valid_symbols[269] = 10'b1001010001;
931 valid_symbols[270] = 10'b1001010010;
932 valid_symbols[271] = 10'b1001010011;
933 valid_symbols[272] = 10'b1001010100;
934 valid_symbols[273] = 10'b1001010101;
935 valid_symbols[274] = 10'b1001010110;
936 valid_symbols[275] = 10'b1001011001;
937 valid_symbols[276] = 10'b1001011010;
938 valid_symbols[277] = 10'b1001011011;
939 valid_symbols[278] = 10'b1001011100;
940 valid_symbols[279] = 10'b1001011101;
941 valid_symbols[280] = 10'b1001011110;
942 valid_symbols[281] = 10'b1001100001;
943 valid_symbols[282] = 10'b1001100010;
944 valid_symbols[283] = 10'b1001100011;
945 valid_symbols[284] = 10'b1001100100;
946 valid_symbols[285] = 10'b1001100101;
947 valid_symbols[286] = 10'b1001100110;
948 valid_symbols[287] = 10'b1001101001;
949 valid_symbols[288] = 10'b1001101010;
950 valid_symbols[289] = 10'b1001101011;
951 valid_symbols[290] = 10'b1001101100;
952 valid_symbols[291] = 10'b1001101101;
953 valid_symbols[292] = 10'b1001101110;
954 valid_symbols[293] = 10'b1001110001;
955 valid_symbols[294] = 10'b1001110010;
956 valid_symbols[295] = 10'b1001110011;
957 valid_symbols[296] = 10'b1001110100;
958 valid_symbols[297] = 10'b1001110101;
959 valid_symbols[298] = 10'b1001110110;
960 valid_symbols[299] = 10'b1001111001;
961 valid_symbols[300] = 10'b1001111010;
962 valid_symbols[301] = 10'b1010000101;
963 valid_symbols[302] = 10'b1010000110;
964 valid_symbols[303] = 10'b1010001001;
965 valid_symbols[304] = 10'b1010001010;
966 valid_symbols[305] = 10'b1010001011;
967 valid_symbols[306] = 10'b1010001100;
968 valid_symbols[307] = 10'b1010001101;
969 valid_symbols[308] = 10'b1010001110;
970 valid_symbols[309] = 10'b1010010001;
971 valid_symbols[310] = 10'b1010010010;
972 valid_symbols[311] = 10'b1010010011;
973 valid_symbols[312] = 10'b1010010100;
974 valid_symbols[313] = 10'b1010010101;
975 valid_symbols[314] = 10'b1010010110;
976 valid_symbols[315] = 10'b1010011001;
977 valid_symbols[316] = 10'b1010011010;
978 valid_symbols[317] = 10'b1010011011;
979 valid_symbols[318] = 10'b1010011100;
980 valid_symbols[319] = 10'b1010011101;
981 valid_symbols[320] = 10'b1010011110;
982 valid_symbols[321] = 10'b1010100001;
983 valid_symbols[322] = 10'b1010100010;
984 valid_symbols[323] = 10'b1010100011;
985 valid_symbols[324] = 10'b1010100100;
986 valid_symbols[325] = 10'b1010100101;
987 valid_symbols[326] = 10'b1010100110;
988 valid_symbols[327] = 10'b1010101001;
989 valid_symbols[328] = 10'b1010101010;
990 valid_symbols[329] = 10'b1010101011;
991 valid_symbols[330] = 10'b1010101100;
992 valid_symbols[331] = 10'b1010101101;
993 valid_symbols[332] = 10'b1010101110;
994 valid_symbols[333] = 10'b1010110001;
995 valid_symbols[334] = 10'b1010110010;
996 valid_symbols[335] = 10'b1010110011;
997 valid_symbols[336] = 10'b1010110100;
998 valid_symbols[337] = 10'b1010110101;
999 valid_symbols[338] = 10'b1010110110;
1000 valid_symbols[339] = 10'b1010111001;
1001 valid_symbols[340] = 10'b1010111010;
1002 valid_symbols[341] = 10'b1011000010;
1003 valid_symbols[342] = 10'b1011000011;
1004 valid_symbols[343] = 10'b1011000100;
1005 valid_symbols[344] = 10'b1011000101;
1006 valid_symbols[345] = 10'b1011000110;
1007 valid_symbols[346] = 10'b1011001000;
1008 valid_symbols[347] = 10'b1011001001;
1009 valid_symbols[348] = 10'b1011001010;
1010 valid_symbols[349] = 10'b1011001011;
1011 valid_symbols[350] = 10'b1011001100;
1012 valid_symbols[351] = 10'b1011001101;
1013 valid_symbols[352] = 10'b1011001110;
1014 valid_symbols[353] = 10'b1011010001;
1015 valid_symbols[354] = 10'b1011010010;
1016 valid_symbols[355] = 10'b1011010011;
1017 valid_symbols[356] = 10'b1011010100;
1018 valid_symbols[357] = 10'b1011010101;
1019 valid_symbols[358] = 10'b1011010110;
1020 valid_symbols[359] = 10'b1011011001;
1021 valid_symbols[360] = 10'b1011011010;
1022 valid_symbols[361] = 10'b1011100001;
1023 valid_symbols[362] = 10'b1011100010;
1024 valid_symbols[363] = 10'b1011100011;
1025 valid_symbols[364] = 10'b1011100100;
1026 valid_symbols[365] = 10'b1011100101;
1027 valid_symbols[366] = 10'b1011100110;
1028 valid_symbols[367] = 10'b1011101000;
1029 valid_symbols[368] = 10'b1011101001;
1030 valid_symbols[369] = 10'b1011101010;
1031 valid_symbols[370] = 10'b1100000101;
1032 valid_symbols[371] = 10'b1100000110;
1033 valid_symbols[372] = 10'b1100000111;
1034 valid_symbols[373] = 10'b1100001001;
1035 valid_symbols[374] = 10'b1100001010;
1036 valid_symbols[375] = 10'b1100001011;
1037 valid_symbols[376] = 10'b1100001100;
1038 valid_symbols[377] = 10'b1100001101;
1039 valid_symbols[378] = 10'b1100010001;
1040 valid_symbols[379] = 10'b1100010010;
1041 valid_symbols[380] = 10'b1100010011;
1042 valid_symbols[381] = 10'b1100010100;
1043 valid_symbols[382] = 10'b1100010101;
1044 valid_symbols[383] = 10'b1100010110;
1045 valid_symbols[384] = 10'b1100011001;
1046 valid_symbols[385] = 10'b1100011010;
1047 valid_symbols[386] = 10'b1100011011;
1048 valid_symbols[387] = 10'b1100011100;
1049 valid_symbols[388] = 10'b1100011101;
1050 valid_symbols[389] = 10'b1100011110;
1051 valid_symbols[390] = 10'b1100100001;
1052 valid_symbols[391] = 10'b1100100010;
1053 valid_symbols[392] = 10'b1100100011;
1054 valid_symbols[393] = 10'b1100100100;
1055 valid_symbols[394] = 10'b1100100101;
1056 valid_symbols[395] = 10'b1100100110;
1057 valid_symbols[396] = 10'b1100101001;
1058 valid_symbols[397] = 10'b1100101010;
1059 valid_symbols[398] = 10'b1100101011;
1060 valid_symbols[399] = 10'b1100101100;
1061 valid_symbols[400] = 10'b1100101101;
1062 valid_symbols[401] = 10'b1100101110;
1063 valid_symbols[402] = 10'b1100110001;
1064 valid_symbols[403] = 10'b1100110010;
1065 valid_symbols[404] = 10'b1100110011;
1066 valid_symbols[405] = 10'b1100110100;
1067 valid_symbols[406] = 10'b1100110101;
1068 valid_symbols[407] = 10'b1100110110;
1069 valid_symbols[408] = 10'b1100111001;
1070 valid_symbols[409] = 10'b1100111010;
1071 valid_symbols[410] = 10'b1101000010;
1072 valid_symbols[411] = 10'b1101000011;
1073 valid_symbols[412] = 10'b1101000100;
1074 valid_symbols[413] = 10'b1101000101;
1075 valid_symbols[414] = 10'b1101000110;
1076 valid_symbols[415] = 10'b1101001000;
1077 valid_symbols[416] = 10'b1101001001;
1078 valid_symbols[417] = 10'b1101001010;
1079 valid_symbols[418] = 10'b1101001011;
1080 valid_symbols[419] = 10'b1101001100;
1081 valid_symbols[420] = 10'b1101001101;
1082 valid_symbols[421] = 10'b1101001110;
1083 valid_symbols[422] = 10'b1101010001;
1084 valid_symbols[423] = 10'b1101010010;
1085 valid_symbols[424] = 10'b1101010011;
1086 valid_symbols[425] = 10'b1101010100;
1087 valid_symbols[426] = 10'b1101010101;
1088 valid_symbols[427] = 10'b1101010110;
1089 valid_symbols[428] = 10'b1101011001;
1090 valid_symbols[429] = 10'b1101011010;
1091 valid_symbols[430] = 10'b1101100001;
1092 valid_symbols[431] = 10'b1101100010;
1093 valid_symbols[432] = 10'b1101100011;
1094 valid_symbols[433] = 10'b1101100100;
1095 valid_symbols[434] = 10'b1101100101;
1096 valid_symbols[435] = 10'b1101100110;
1097 valid_symbols[436] = 10'b1101101000;
1098 valid_symbols[437] = 10'b1101101001;
1099 valid_symbols[438] = 10'b1101101010;
1100 valid_symbols[439] = 10'b1110000101;
1101 valid_symbols[440] = 10'b1110000110;
1102 valid_symbols[441] = 10'b1110001001;
1103 valid_symbols[442] = 10'b1110001010;
1104 valid_symbols[443] = 10'b1110001011;
1105 valid_symbols[444] = 10'b1110001100;
1106 valid_symbols[445] = 10'b1110001101;
1107 valid_symbols[446] = 10'b1110001110;
1108 valid_symbols[447] = 10'b1110010001;
1109 valid_symbols[448] = 10'b1110010010;
1110 valid_symbols[449] = 10'b1110010011;
1111 valid_symbols[450] = 10'b1110010100;
1112 valid_symbols[451] = 10'b1110010101;
1113 valid_symbols[452] = 10'b1110010110;
1114 valid_symbols[453] = 10'b1110011001;
1115 valid_symbols[454] = 10'b1110011010;
1116 valid_symbols[455] = 10'b1110100001;
1117 valid_symbols[456] = 10'b1110100010;
1118 valid_symbols[457] = 10'b1110100011;
1119 valid_symbols[458] = 10'b1110100100;
1120 valid_symbols[459] = 10'b1110100101;
1121 valid_symbols[460] = 10'b1110100110;
1122 valid_symbols[461] = 10'b1110101000;
1123 valid_symbols[462] = 10'b1110101001;
1124 valid_symbols[463] = 10'b1110101010;
1125
1126
1127 invalid_symbols[0] = 10'b0000000000;
1128 invalid_symbols[1] = 10'b0000000001;
1129 invalid_symbols[2] = 10'b0000000010;
1130 invalid_symbols[3] = 10'b0000000011;
1131 invalid_symbols[4] = 10'b0000000100;
1132 invalid_symbols[5] = 10'b0000000101;
1133 invalid_symbols[6] = 10'b0000000110;
1134 invalid_symbols[7] = 10'b0000000111;
1135 invalid_symbols[8] = 10'b0000001000;
1136 invalid_symbols[9] = 10'b0000001001;
1137 invalid_symbols[10] = 10'b0000001010;
1138 invalid_symbols[11] = 10'b0000001011;
1139 invalid_symbols[12] = 10'b0000001100;
1140 invalid_symbols[13] = 10'b0000001101;
1141 invalid_symbols[14] = 10'b0000001110;
1142 invalid_symbols[15] = 10'b0000001111;
1143 invalid_symbols[16] = 10'b0000010000;
1144 invalid_symbols[17] = 10'b0000010001;
1145 invalid_symbols[18] = 10'b0000010010;
1146 invalid_symbols[19] = 10'b0000010011;
1147 invalid_symbols[20] = 10'b0000010100;
1148 invalid_symbols[21] = 10'b0000010101;
1149 invalid_symbols[22] = 10'b0000010110;
1150 invalid_symbols[23] = 10'b0000010111;
1151 invalid_symbols[24] = 10'b0000011000;
1152 invalid_symbols[25] = 10'b0000011001;
1153 invalid_symbols[26] = 10'b0000011010;
1154 invalid_symbols[27] = 10'b0000011011;
1155 invalid_symbols[28] = 10'b0000011100;
1156 invalid_symbols[29] = 10'b0000011101;
1157 invalid_symbols[30] = 10'b0000011110;
1158 invalid_symbols[31] = 10'b0000011111;
1159 invalid_symbols[32] = 10'b0000100000;
1160 invalid_symbols[33] = 10'b0000100001;
1161 invalid_symbols[34] = 10'b0000100010;
1162 invalid_symbols[35] = 10'b0000100011;
1163 invalid_symbols[36] = 10'b0000100100;
1164 invalid_symbols[37] = 10'b0000100101;
1165 invalid_symbols[38] = 10'b0000100110;
1166 invalid_symbols[39] = 10'b0000100111;
1167 invalid_symbols[40] = 10'b0000101000;
1168 invalid_symbols[41] = 10'b0000101001;
1169 invalid_symbols[42] = 10'b0000101010;
1170 invalid_symbols[43] = 10'b0000101011;
1171 invalid_symbols[44] = 10'b0000101100;
1172 invalid_symbols[45] = 10'b0000101101;
1173 invalid_symbols[46] = 10'b0000101110;
1174 invalid_symbols[47] = 10'b0000101111;
1175 invalid_symbols[48] = 10'b0000110000;
1176 invalid_symbols[49] = 10'b0000110001;
1177 invalid_symbols[50] = 10'b0000110010;
1178 invalid_symbols[51] = 10'b0000110011;
1179 invalid_symbols[52] = 10'b0000110100;
1180 invalid_symbols[53] = 10'b0000110101;
1181 invalid_symbols[54] = 10'b0000110110;
1182 invalid_symbols[55] = 10'b0000110111;
1183 invalid_symbols[56] = 10'b0000111000;
1184 invalid_symbols[57] = 10'b0000111001;
1185 invalid_symbols[58] = 10'b0000111010;
1186 invalid_symbols[59] = 10'b0000111011;
1187 invalid_symbols[60] = 10'b0000111100;
1188 invalid_symbols[61] = 10'b0000111101;
1189 invalid_symbols[62] = 10'b0000111110;
1190 invalid_symbols[63] = 10'b0000111111;
1191 invalid_symbols[64] = 10'b0001000000;
1192 invalid_symbols[65] = 10'b0001000001;
1193 invalid_symbols[66] = 10'b0001000010;
1194 invalid_symbols[67] = 10'b0001000011;
1195 invalid_symbols[68] = 10'b0001000100;
1196 invalid_symbols[69] = 10'b0001000101;
1197 invalid_symbols[70] = 10'b0001000110;
1198 invalid_symbols[71] = 10'b0001000111;
1199 invalid_symbols[72] = 10'b0001001000;
1200 invalid_symbols[73] = 10'b0001001001;
1201 invalid_symbols[74] = 10'b0001001010;
1202 invalid_symbols[75] = 10'b0001001011;
1203 invalid_symbols[76] = 10'b0001001100;
1204 invalid_symbols[77] = 10'b0001001101;
1205 invalid_symbols[78] = 10'b0001001110;
1206 invalid_symbols[79] = 10'b0001001111;
1207 invalid_symbols[80] = 10'b0001010000;
1208 invalid_symbols[81] = 10'b0001010001;
1209 invalid_symbols[82] = 10'b0001010010;
1210 invalid_symbols[83] = 10'b0001010011;
1211 invalid_symbols[84] = 10'b0001010100;
1212 invalid_symbols[85] = 10'b0001011000;
1213 invalid_symbols[86] = 10'b0001011111;
1214 invalid_symbols[87] = 10'b0001100000;
1215 invalid_symbols[88] = 10'b0001100001;
1216 invalid_symbols[89] = 10'b0001100010;
1217 invalid_symbols[90] = 10'b0001100011;
1218 invalid_symbols[91] = 10'b0001100100;
1219 invalid_symbols[92] = 10'b0001100111;
1220 invalid_symbols[93] = 10'b0001101000;
1221 invalid_symbols[94] = 10'b0001101111;
1222 invalid_symbols[95] = 10'b0001110000;
1223 invalid_symbols[96] = 10'b0001110111;
1224 invalid_symbols[97] = 10'b0001111000;
1225 invalid_symbols[98] = 10'b0001111011;
1226 invalid_symbols[99] = 10'b0001111100;
1227 invalid_symbols[100] = 10'b0001111101;
1228 invalid_symbols[101] = 10'b0001111110;
1229 invalid_symbols[102] = 10'b0001111111;
1230 invalid_symbols[103] = 10'b0010000000;
1231 invalid_symbols[104] = 10'b0010000001;
1232 invalid_symbols[105] = 10'b0010000010;
1233 invalid_symbols[106] = 10'b0010000011;
1234 invalid_symbols[107] = 10'b0010000100;
1235 invalid_symbols[108] = 10'b0010000101;
1236 invalid_symbols[109] = 10'b0010000110;
1237 invalid_symbols[110] = 10'b0010000111;
1238 invalid_symbols[111] = 10'b0010001000;
1239 invalid_symbols[112] = 10'b0010001001;
1240 invalid_symbols[113] = 10'b0010001010;
1241 invalid_symbols[114] = 10'b0010001011;
1242 invalid_symbols[115] = 10'b0010001100;
1243 invalid_symbols[116] = 10'b0010001101;
1244 invalid_symbols[117] = 10'b0010001110;
1245 invalid_symbols[118] = 10'b0010001111;
1246 invalid_symbols[119] = 10'b0010010000;
1247 invalid_symbols[120] = 10'b0010010001;
1248 invalid_symbols[121] = 10'b0010010010;
1249 invalid_symbols[122] = 10'b0010010011;
1250 invalid_symbols[123] = 10'b0010010100;
1251 invalid_symbols[124] = 10'b0010011000;
1252 invalid_symbols[125] = 10'b0010011111;
1253 invalid_symbols[126] = 10'b0010100000;
1254 invalid_symbols[127] = 10'b0010100001;
1255 invalid_symbols[128] = 10'b0010100010;
1256 invalid_symbols[129] = 10'b0010100011;
1257 invalid_symbols[130] = 10'b0010100100;
1258 invalid_symbols[131] = 10'b0010100111;
1259 invalid_symbols[132] = 10'b0010101000;
1260 invalid_symbols[133] = 10'b0010101111;
1261 invalid_symbols[134] = 10'b0010110000;
1262 invalid_symbols[135] = 10'b0010111000;
1263 invalid_symbols[136] = 10'b0010111110;
1264 invalid_symbols[137] = 10'b0010111111;
1265 invalid_symbols[138] = 10'b0011000000;
1266 invalid_symbols[139] = 10'b0011000001;
1267 invalid_symbols[140] = 10'b0011000010;
1268 invalid_symbols[141] = 10'b0011000011;
1269 invalid_symbols[142] = 10'b0011000100;
1270 invalid_symbols[143] = 10'b0011000111;
1271 invalid_symbols[144] = 10'b0011001000;
1272 invalid_symbols[145] = 10'b0011001111;
1273 invalid_symbols[146] = 10'b0011010000;
1274 invalid_symbols[147] = 10'b0011010111;
1275 invalid_symbols[148] = 10'b0011011000;
1276 invalid_symbols[149] = 10'b0011011111;
1277 invalid_symbols[150] = 10'b0011100000;
1278 invalid_symbols[151] = 10'b0011100111;
1279 invalid_symbols[152] = 10'b0011101000;
1280 invalid_symbols[153] = 10'b0011101111;
1281 invalid_symbols[154] = 10'b0011110000;
1282 invalid_symbols[155] = 10'b0011110001;
1283 invalid_symbols[156] = 10'b0011110111;
1284 invalid_symbols[157] = 10'b0011111011;
1285 invalid_symbols[158] = 10'b0011111100;
1286 invalid_symbols[159] = 10'b0011111101;
1287 invalid_symbols[160] = 10'b0011111110;
1288 invalid_symbols[161] = 10'b0011111111;
1289 invalid_symbols[162] = 10'b0100000000;
1290 invalid_symbols[163] = 10'b0100000001;
1291 invalid_symbols[164] = 10'b0100000010;
1292 invalid_symbols[165] = 10'b0100000011;
1293 invalid_symbols[166] = 10'b0100000100;
1294 invalid_symbols[167] = 10'b0100000101;
1295 invalid_symbols[168] = 10'b0100000110;
1296 invalid_symbols[169] = 10'b0100000111;
1297 invalid_symbols[170] = 10'b0100001000;
1298 invalid_symbols[171] = 10'b0100001001;
1299 invalid_symbols[172] = 10'b0100001010;
1300 invalid_symbols[173] = 10'b0100001011;
1301 invalid_symbols[174] = 10'b0100001100;
1302 invalid_symbols[175] = 10'b0100001101;
1303 invalid_symbols[176] = 10'b0100001110;
1304 invalid_symbols[177] = 10'b0100001111;
1305 invalid_symbols[178] = 10'b0100010000;
1306 invalid_symbols[179] = 10'b0100010001;
1307 invalid_symbols[180] = 10'b0100010010;
1308 invalid_symbols[181] = 10'b0100010011;
1309 invalid_symbols[182] = 10'b0100010100;
1310 invalid_symbols[183] = 10'b0100011000;
1311 invalid_symbols[184] = 10'b0100011111;
1312 invalid_symbols[185] = 10'b0100100000;
1313 invalid_symbols[186] = 10'b0100100001;
1314 invalid_symbols[187] = 10'b0100100010;
1315 invalid_symbols[188] = 10'b0100100011;
1316 invalid_symbols[189] = 10'b0100100100;
1317 invalid_symbols[190] = 10'b0100100111;
1318 invalid_symbols[191] = 10'b0100101000;
1319 invalid_symbols[192] = 10'b0100101111;
1320 invalid_symbols[193] = 10'b0100110000;
1321 invalid_symbols[194] = 10'b0100111000;
1322 invalid_symbols[195] = 10'b0100111110;
1323 invalid_symbols[196] = 10'b0100111111;
1324 invalid_symbols[197] = 10'b0101000000;
1325 invalid_symbols[198] = 10'b0101000001;
1326 invalid_symbols[199] = 10'b0101000010;
1327 invalid_symbols[200] = 10'b0101000011;
1328 invalid_symbols[201] = 10'b0101000100;
1329 invalid_symbols[202] = 10'b0101000111;
1330 invalid_symbols[203] = 10'b0101001000;
1331 invalid_symbols[204] = 10'b0101001111;
1332 invalid_symbols[205] = 10'b0101010000;
1333 invalid_symbols[206] = 10'b0101010111;
1334 invalid_symbols[207] = 10'b0101011000;
1335 invalid_symbols[208] = 10'b0101011111;
1336 invalid_symbols[209] = 10'b0101100000;
1337 invalid_symbols[210] = 10'b0101100111;
1338 invalid_symbols[211] = 10'b0101101000;
1339 invalid_symbols[212] = 10'b0101101111;
1340 invalid_symbols[213] = 10'b0101110000;
1341 invalid_symbols[214] = 10'b0101110111;
1342 invalid_symbols[215] = 10'b0101111000;
1343 invalid_symbols[216] = 10'b0101111011;
1344 invalid_symbols[217] = 10'b0101111100;
1345 invalid_symbols[218] = 10'b0101111101;
1346 invalid_symbols[219] = 10'b0101111110;
1347 invalid_symbols[220] = 10'b0101111111;
1348 invalid_symbols[221] = 10'b0110000000;
1349 invalid_symbols[222] = 10'b0110000001;
1350 invalid_symbols[223] = 10'b0110000010;
1351 invalid_symbols[224] = 10'b0110000011;
1352 invalid_symbols[225] = 10'b0110000100;
1353 invalid_symbols[226] = 10'b0110000111;
1354 invalid_symbols[227] = 10'b0110001000;
1355 invalid_symbols[228] = 10'b0110001111;
1356 invalid_symbols[229] = 10'b0110010000;
1357 invalid_symbols[230] = 10'b0110010111;
1358 invalid_symbols[231] = 10'b0110011000;
1359 invalid_symbols[232] = 10'b0110011111;
1360 invalid_symbols[233] = 10'b0110100000;
1361 invalid_symbols[234] = 10'b0110100111;
1362 invalid_symbols[235] = 10'b0110101000;
1363 invalid_symbols[236] = 10'b0110101111;
1364 invalid_symbols[237] = 10'b0110110000;
1365 invalid_symbols[238] = 10'b0110110111;
1366 invalid_symbols[239] = 10'b0110111000;
1367 invalid_symbols[240] = 10'b0110111011;
1368 invalid_symbols[241] = 10'b0110111100;
1369 invalid_symbols[242] = 10'b0110111101;
1370 invalid_symbols[243] = 10'b0110111110;
1371 invalid_symbols[244] = 10'b0110111111;
1372 invalid_symbols[245] = 10'b0111000000;
1373 invalid_symbols[246] = 10'b0111000001;
1374 invalid_symbols[247] = 10'b0111000111;
1375 invalid_symbols[248] = 10'b0111001111;
1376 invalid_symbols[249] = 10'b0111010000;
1377 invalid_symbols[250] = 10'b0111010111;
1378 invalid_symbols[251] = 10'b0111011000;
1379 invalid_symbols[252] = 10'b0111011011;
1380 invalid_symbols[253] = 10'b0111011100;
1381 invalid_symbols[254] = 10'b0111011101;
1382 invalid_symbols[255] = 10'b0111011110;
1383 invalid_symbols[256] = 10'b0111011111;
1384 invalid_symbols[257] = 10'b0111100000;
1385 invalid_symbols[258] = 10'b0111100111;
1386 invalid_symbols[259] = 10'b0111101011;
1387 invalid_symbols[260] = 10'b0111101100;
1388 invalid_symbols[261] = 10'b0111101101;
1389 invalid_symbols[262] = 10'b0111101110;
1390 invalid_symbols[263] = 10'b0111101111;
1391 invalid_symbols[264] = 10'b0111110000;
1392 invalid_symbols[265] = 10'b0111110001;
1393 invalid_symbols[266] = 10'b0111110010;
1394 invalid_symbols[267] = 10'b0111110011;
1395 invalid_symbols[268] = 10'b0111110100;
1396 invalid_symbols[269] = 10'b0111110101;
1397 invalid_symbols[270] = 10'b0111110110;
1398 invalid_symbols[271] = 10'b0111110111;
1399 invalid_symbols[272] = 10'b0111111000;
1400 invalid_symbols[273] = 10'b0111111001;
1401 invalid_symbols[274] = 10'b0111111010;
1402 invalid_symbols[275] = 10'b0111111011;
1403 invalid_symbols[276] = 10'b0111111100;
1404 invalid_symbols[277] = 10'b0111111101;
1405 invalid_symbols[278] = 10'b0111111110;
1406 invalid_symbols[279] = 10'b0111111111;
1407 invalid_symbols[280] = 10'b1000000000;
1408 invalid_symbols[281] = 10'b1000000001;
1409 invalid_symbols[282] = 10'b1000000010;
1410 invalid_symbols[283] = 10'b1000000011;
1411 invalid_symbols[284] = 10'b1000000100;
1412 invalid_symbols[285] = 10'b1000000101;
1413 invalid_symbols[286] = 10'b1000000110;
1414 invalid_symbols[287] = 10'b1000000111;
1415 invalid_symbols[288] = 10'b1000001000;
1416 invalid_symbols[289] = 10'b1000001001;
1417 invalid_symbols[290] = 10'b1000001010;
1418 invalid_symbols[291] = 10'b1000001011;
1419 invalid_symbols[292] = 10'b1000001100;
1420 invalid_symbols[293] = 10'b1000001101;
1421 invalid_symbols[294] = 10'b1000001110;
1422 invalid_symbols[295] = 10'b1000001111;
1423 invalid_symbols[296] = 10'b1000010000;
1424 invalid_symbols[297] = 10'b1000010001;
1425 invalid_symbols[298] = 10'b1000010010;
1426 invalid_symbols[299] = 10'b1000010011;
1427 invalid_symbols[300] = 10'b1000010100;
1428 invalid_symbols[301] = 10'b1000011000;
1429 invalid_symbols[302] = 10'b1000011111;
1430 invalid_symbols[303] = 10'b1000100000;
1431 invalid_symbols[304] = 10'b1000100001;
1432 invalid_symbols[305] = 10'b1000100010;
1433 invalid_symbols[306] = 10'b1000100011;
1434 invalid_symbols[307] = 10'b1000100100;
1435 invalid_symbols[308] = 10'b1000100111;
1436 invalid_symbols[309] = 10'b1000101000;
1437 invalid_symbols[310] = 10'b1000101111;
1438 invalid_symbols[311] = 10'b1000110000;
1439 invalid_symbols[312] = 10'b1000111000;
1440 invalid_symbols[313] = 10'b1000111110;
1441 invalid_symbols[314] = 10'b1000111111;
1442 invalid_symbols[315] = 10'b1001000000;
1443 invalid_symbols[316] = 10'b1001000001;
1444 invalid_symbols[317] = 10'b1001000010;
1445 invalid_symbols[318] = 10'b1001000011;
1446 invalid_symbols[319] = 10'b1001000100;
1447 invalid_symbols[320] = 10'b1001000111;
1448 invalid_symbols[321] = 10'b1001001000;
1449 invalid_symbols[322] = 10'b1001001111;
1450 invalid_symbols[323] = 10'b1001010000;
1451 invalid_symbols[324] = 10'b1001010111;
1452 invalid_symbols[325] = 10'b1001011000;
1453 invalid_symbols[326] = 10'b1001011111;
1454 invalid_symbols[327] = 10'b1001100000;
1455 invalid_symbols[328] = 10'b1001100111;
1456 invalid_symbols[329] = 10'b1001101000;
1457 invalid_symbols[330] = 10'b1001101111;
1458 invalid_symbols[331] = 10'b1001110000;
1459 invalid_symbols[332] = 10'b1001110111;
1460 invalid_symbols[333] = 10'b1001111000;
1461 invalid_symbols[334] = 10'b1001111011;
1462 invalid_symbols[335] = 10'b1001111100;
1463 invalid_symbols[336] = 10'b1001111101;
1464 invalid_symbols[337] = 10'b1001111110;
1465 invalid_symbols[338] = 10'b1001111111;
1466 invalid_symbols[339] = 10'b1010000000;
1467 invalid_symbols[340] = 10'b1010000001;
1468 invalid_symbols[341] = 10'b1010000010;
1469 invalid_symbols[342] = 10'b1010000011;
1470 invalid_symbols[343] = 10'b1010000100;
1471 invalid_symbols[344] = 10'b1010000111;
1472 invalid_symbols[345] = 10'b1010001000;
1473 invalid_symbols[346] = 10'b1010001111;
1474 invalid_symbols[347] = 10'b1010010000;
1475 invalid_symbols[348] = 10'b1010010111;
1476 invalid_symbols[349] = 10'b1010011000;
1477 invalid_symbols[350] = 10'b1010011111;
1478 invalid_symbols[351] = 10'b1010100000;
1479 invalid_symbols[352] = 10'b1010100111;
1480 invalid_symbols[353] = 10'b1010101000;
1481 invalid_symbols[354] = 10'b1010101111;
1482 invalid_symbols[355] = 10'b1010110000;
1483 invalid_symbols[356] = 10'b1010110111;
1484 invalid_symbols[357] = 10'b1010111000;
1485 invalid_symbols[358] = 10'b1010111011;
1486 invalid_symbols[359] = 10'b1010111100;
1487 invalid_symbols[360] = 10'b1010111101;
1488 invalid_symbols[361] = 10'b1010111110;
1489 invalid_symbols[362] = 10'b1010111111;
1490 invalid_symbols[363] = 10'b1011000000;
1491 invalid_symbols[364] = 10'b1011000001;
1492 invalid_symbols[365] = 10'b1011000111;
1493 invalid_symbols[366] = 10'b1011001111;
1494 invalid_symbols[367] = 10'b1011010000;
1495 invalid_symbols[368] = 10'b1011010111;
1496 invalid_symbols[369] = 10'b1011011000;
1497 invalid_symbols[370] = 10'b1011011011;
1498 invalid_symbols[371] = 10'b1011011100;
1499 invalid_symbols[372] = 10'b1011011101;
1500 invalid_symbols[373] = 10'b1011011110;
1501 invalid_symbols[374] = 10'b1011011111;
1502 invalid_symbols[375] = 10'b1011100000;
1503 invalid_symbols[376] = 10'b1011100111;
1504 invalid_symbols[377] = 10'b1011101011;
1505 invalid_symbols[378] = 10'b1011101100;
1506 invalid_symbols[379] = 10'b1011101101;
1507 invalid_symbols[380] = 10'b1011101110;
1508 invalid_symbols[381] = 10'b1011101111;
1509 invalid_symbols[382] = 10'b1011110000;
1510 invalid_symbols[383] = 10'b1011110001;
1511 invalid_symbols[384] = 10'b1011110010;
1512 invalid_symbols[385] = 10'b1011110011;
1513 invalid_symbols[386] = 10'b1011110100;
1514 invalid_symbols[387] = 10'b1011110101;
1515 invalid_symbols[388] = 10'b1011110110;
1516 invalid_symbols[389] = 10'b1011110111;
1517 invalid_symbols[390] = 10'b1011111000;
1518 invalid_symbols[391] = 10'b1011111001;
1519 invalid_symbols[392] = 10'b1011111010;
1520 invalid_symbols[393] = 10'b1011111011;
1521 invalid_symbols[394] = 10'b1011111100;
1522 invalid_symbols[395] = 10'b1011111101;
1523 invalid_symbols[396] = 10'b1011111110;
1524 invalid_symbols[397] = 10'b1011111111;
1525 invalid_symbols[398] = 10'b1100000000;
1526 invalid_symbols[399] = 10'b1100000001;
1527 invalid_symbols[400] = 10'b1100000010;
1528 invalid_symbols[401] = 10'b1100000011;
1529 invalid_symbols[402] = 10'b1100000100;
1530 invalid_symbols[403] = 10'b1100001000;
1531 invalid_symbols[404] = 10'b1100001110;
1532 invalid_symbols[405] = 10'b1100001111;
1533 invalid_symbols[406] = 10'b1100010000;
1534 invalid_symbols[407] = 10'b1100010111;
1535 invalid_symbols[408] = 10'b1100011000;
1536 invalid_symbols[409] = 10'b1100011111;
1537 invalid_symbols[410] = 10'b1100100000;
1538 invalid_symbols[411] = 10'b1100100111;
1539 invalid_symbols[412] = 10'b1100101000;
1540 invalid_symbols[413] = 10'b1100101111;
1541 invalid_symbols[414] = 10'b1100110000;
1542 invalid_symbols[415] = 10'b1100110111;
1543 invalid_symbols[416] = 10'b1100111000;
1544 invalid_symbols[417] = 10'b1100111011;
1545 invalid_symbols[418] = 10'b1100111100;
1546 invalid_symbols[419] = 10'b1100111101;
1547 invalid_symbols[420] = 10'b1100111110;
1548 invalid_symbols[421] = 10'b1100111111;
1549 invalid_symbols[422] = 10'b1101000000;
1550 invalid_symbols[423] = 10'b1101000001;
1551 invalid_symbols[424] = 10'b1101000111;
1552 invalid_symbols[425] = 10'b1101001111;
1553 invalid_symbols[426] = 10'b1101010000;
1554 invalid_symbols[427] = 10'b1101010111;
1555 invalid_symbols[428] = 10'b1101011000;
1556 invalid_symbols[429] = 10'b1101011011;
1557 invalid_symbols[430] = 10'b1101011100;
1558 invalid_symbols[431] = 10'b1101011101;
1559 invalid_symbols[432] = 10'b1101011110;
1560 invalid_symbols[433] = 10'b1101011111;
1561 invalid_symbols[434] = 10'b1101100000;
1562 invalid_symbols[435] = 10'b1101100111;
1563 invalid_symbols[436] = 10'b1101101011;
1564 invalid_symbols[437] = 10'b1101101100;
1565 invalid_symbols[438] = 10'b1101101101;
1566 invalid_symbols[439] = 10'b1101101110;
1567 invalid_symbols[440] = 10'b1101101111;
1568 invalid_symbols[441] = 10'b1101110000;
1569 invalid_symbols[442] = 10'b1101110001;
1570 invalid_symbols[443] = 10'b1101110010;
1571 invalid_symbols[444] = 10'b1101110011;
1572 invalid_symbols[445] = 10'b1101110100;
1573 invalid_symbols[446] = 10'b1101110101;
1574 invalid_symbols[447] = 10'b1101110110;
1575 invalid_symbols[448] = 10'b1101110111;
1576 invalid_symbols[449] = 10'b1101111000;
1577 invalid_symbols[450] = 10'b1101111001;
1578 invalid_symbols[451] = 10'b1101111010;
1579 invalid_symbols[452] = 10'b1101111011;
1580 invalid_symbols[453] = 10'b1101111100;
1581 invalid_symbols[454] = 10'b1101111101;
1582 invalid_symbols[455] = 10'b1101111110;
1583 invalid_symbols[456] = 10'b1101111111;
1584 invalid_symbols[457] = 10'b1110000000;
1585 invalid_symbols[458] = 10'b1110000001;
1586 invalid_symbols[459] = 10'b1110000010;
1587 invalid_symbols[460] = 10'b1110000011;
1588 invalid_symbols[461] = 10'b1110000100;
1589 invalid_symbols[462] = 10'b1110000111;
1590 invalid_symbols[463] = 10'b1110001000;
1591 invalid_symbols[464] = 10'b1110001111;
1592 invalid_symbols[465] = 10'b1110010000;
1593 invalid_symbols[466] = 10'b1110010111;
1594 invalid_symbols[467] = 10'b1110011000;
1595 invalid_symbols[468] = 10'b1110011011;
1596 invalid_symbols[469] = 10'b1110011100;
1597 invalid_symbols[470] = 10'b1110011101;
1598 invalid_symbols[471] = 10'b1110011110;
1599 invalid_symbols[472] = 10'b1110011111;
1600 invalid_symbols[473] = 10'b1110100000;
1601 invalid_symbols[474] = 10'b1110100111;
1602 invalid_symbols[475] = 10'b1110101011;
1603 invalid_symbols[476] = 10'b1110101100;
1604 invalid_symbols[477] = 10'b1110101101;
1605 invalid_symbols[478] = 10'b1110101110;
1606 invalid_symbols[479] = 10'b1110101111;
1607 invalid_symbols[480] = 10'b1110110000;
1608 invalid_symbols[481] = 10'b1110110001;
1609 invalid_symbols[482] = 10'b1110110010;
1610 invalid_symbols[483] = 10'b1110110011;
1611 invalid_symbols[484] = 10'b1110110100;
1612 invalid_symbols[485] = 10'b1110110101;
1613 invalid_symbols[486] = 10'b1110110110;
1614 invalid_symbols[487] = 10'b1110110111;
1615 invalid_symbols[488] = 10'b1110111000;
1616 invalid_symbols[489] = 10'b1110111001;
1617 invalid_symbols[490] = 10'b1110111010;
1618 invalid_symbols[491] = 10'b1110111011;
1619 invalid_symbols[492] = 10'b1110111100;
1620 invalid_symbols[493] = 10'b1110111101;
1621 invalid_symbols[494] = 10'b1110111110;
1622 invalid_symbols[495] = 10'b1110111111;
1623 invalid_symbols[496] = 10'b1111000000;
1624 invalid_symbols[497] = 10'b1111000001;
1625 invalid_symbols[498] = 10'b1111000010;
1626 invalid_symbols[499] = 10'b1111000011;
1627 invalid_symbols[500] = 10'b1111000100;
1628 invalid_symbols[501] = 10'b1111000101;
1629 invalid_symbols[502] = 10'b1111000110;
1630 invalid_symbols[503] = 10'b1111000111;
1631 invalid_symbols[504] = 10'b1111001000;
1632 invalid_symbols[505] = 10'b1111001001;
1633 invalid_symbols[506] = 10'b1111001010;
1634 invalid_symbols[507] = 10'b1111001011;
1635 invalid_symbols[508] = 10'b1111001100;
1636 invalid_symbols[509] = 10'b1111001101;
1637 invalid_symbols[510] = 10'b1111001110;
1638 invalid_symbols[511] = 10'b1111001111;
1639 invalid_symbols[512] = 10'b1111010000;
1640 invalid_symbols[513] = 10'b1111010001;
1641 invalid_symbols[514] = 10'b1111010010;
1642 invalid_symbols[515] = 10'b1111010011;
1643 invalid_symbols[516] = 10'b1111010100;
1644 invalid_symbols[517] = 10'b1111010101;
1645 invalid_symbols[518] = 10'b1111010110;
1646 invalid_symbols[519] = 10'b1111010111;
1647 invalid_symbols[520] = 10'b1111011000;
1648 invalid_symbols[521] = 10'b1111011001;
1649 invalid_symbols[522] = 10'b1111011010;
1650 invalid_symbols[523] = 10'b1111011011;
1651 invalid_symbols[524] = 10'b1111011100;
1652 invalid_symbols[525] = 10'b1111011101;
1653 invalid_symbols[526] = 10'b1111011110;
1654 invalid_symbols[527] = 10'b1111011111;
1655 invalid_symbols[528] = 10'b1111100000;
1656 invalid_symbols[529] = 10'b1111100001;
1657 invalid_symbols[530] = 10'b1111100010;
1658 invalid_symbols[531] = 10'b1111100011;
1659 invalid_symbols[532] = 10'b1111100100;
1660 invalid_symbols[533] = 10'b1111100101;
1661 invalid_symbols[534] = 10'b1111100110;
1662 invalid_symbols[535] = 10'b1111100111;
1663 invalid_symbols[536] = 10'b1111101000;
1664 invalid_symbols[537] = 10'b1111101001;
1665 invalid_symbols[538] = 10'b1111101010;
1666 invalid_symbols[539] = 10'b1111101011;
1667 invalid_symbols[540] = 10'b1111101100;
1668 invalid_symbols[541] = 10'b1111101101;
1669 invalid_symbols[542] = 10'b1111101110;
1670 invalid_symbols[543] = 10'b1111101111;
1671 invalid_symbols[544] = 10'b1111110000;
1672 invalid_symbols[545] = 10'b1111110001;
1673 invalid_symbols[546] = 10'b1111110010;
1674 invalid_symbols[547] = 10'b1111110011;
1675 invalid_symbols[548] = 10'b1111110100;
1676 invalid_symbols[549] = 10'b1111110101;
1677 invalid_symbols[550] = 10'b1111110110;
1678 invalid_symbols[551] = 10'b1111110111;
1679 invalid_symbols[552] = 10'b1111111000;
1680 invalid_symbols[553] = 10'b1111111001;
1681 invalid_symbols[554] = 10'b1111111010;
1682 invalid_symbols[555] = 10'b1111111011;
1683 invalid_symbols[556] = 10'b1111111100;
1684 invalid_symbols[557] = 10'b1111111101;
1685 invalid_symbols[558] = 10'b1111111110;
1686 invalid_symbols[559] = 10'b1111111111;
1687end
1688`endif // AXIS
1689
1690endmodule // ib_xtr_tx_encoder
1691
1692