Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / design / sys / iop / niu / rtl / xpcs_dbg.v
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: xpcs_dbg.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 ============================================
35module xpcs_dbg (csr_vendor_debug_sel,
36 training_vector,
37 rx0_debug,
38 rx1_debug,
39 rx2_debug,
40 rx3_debug,
41 tx0_debug,
42 tx1_debug,
43 tx2_debug,
44 tx3_debug,
45 xpcs_debug);
46
47input [3:0] csr_vendor_debug_sel;
48input [31:0] training_vector;
49input [31:0] rx0_debug;
50input [31:0] rx1_debug;
51input [31:0] rx2_debug;
52input [31:0] rx3_debug;
53
54input [31:0] tx0_debug;
55input [31:0] tx1_debug;
56input [31:0] tx2_debug;
57input [31:0] tx3_debug;
58
59output [31:0] xpcs_debug;
60
61reg [31:0] xpcs_debug;
62
63always @ (csr_vendor_debug_sel or rx0_debug or rx1_debug or rx2_debug or
64 rx3_debug or tx0_debug or tx1_debug or tx2_debug or tx3_debug or
65 training_vector)
66 case (csr_vendor_debug_sel[3:0]) // synopsys parallel_case infer_mux
67 4'h0 : xpcs_debug = rx0_debug;
68 4'h1 : xpcs_debug = rx1_debug;
69 4'h2 : xpcs_debug = rx2_debug;
70 4'h3 : xpcs_debug = rx3_debug;
71 4'h4 : xpcs_debug = tx0_debug;
72 4'h5 : xpcs_debug = tx1_debug;
73 4'h6 : xpcs_debug = tx2_debug;
74 4'h7 : xpcs_debug = tx3_debug;
75 `SEL_xpcs_training_vector: xpcs_debug = training_vector;
76 default: xpcs_debug = rx0_debug;
77
78 endcase
79
80endmodule
81