source: XOpenSparcT1/trunk/T1-CPU/rtl/sparc.v @ 6

Revision 6, 195.6 KB checked in by pntsvt00, 13 years ago (diff)

versione iniziale opensparc

Line 
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T1 Processor File: sparc.v
4// Copyright (c) 2006 Sun Microsystems, Inc.  All Rights Reserved.
5// DO NOT ALTER OR REMOVE COPYRIGHT NOTICES.
6//
7// The above named program is free software; you can redistribute it and/or
8// modify it under the terms of the GNU General Public
9// License version 2 as published by the Free Software Foundation.
10//
11// The above named program is distributed in the hope that it will be
12// useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14// General Public License for more details.
15//
16// You should have received a copy of the GNU General Public
17// License along with this work; if not, write to the Free Software
18// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
19//
20// ========== Copyright Header End ============================================
21`include "sys.h"
22`include "iop.h"
23`include "ifu.h"
24`include "tlu.h"
25`include "lsu.h"
26         
27module sparc (/*AUTOARG*/
28   // Outputs
29   spc_pcx_req_pq, spc_pcx_atom_pq, spc_pcx_data_pa,
30        //spc_sscan_so, spc_scanout0, spc_scanout1,
31        tst_ctu_mbist_done, 
32   tst_ctu_mbist_fail, spc_efc_ifuse_data, spc_efc_dfuse_data, 
33   // Inputs
34   pcx_spc_grant_px, cpx_spc_data_rdy_cx2, cpx_spc_data_cx2, 
35   const_cpuid, const_maskid, ctu_tck, ctu_sscan_se, ctu_sscan_snap, 
36   ctu_sscan_tid, ctu_tst_mbist_enable, efc_spc_fuse_clk1, 
37   efc_spc_fuse_clk2, efc_spc_ifuse_ashift, efc_spc_ifuse_dshift, 
38   efc_spc_ifuse_data, efc_spc_dfuse_ashift, efc_spc_dfuse_dshift, 
39   efc_spc_dfuse_data, ctu_tst_macrotest, ctu_tst_scan_disable, 
40   ctu_tst_short_chain, global_shift_enable, ctu_tst_scanmode, 
41   spc_scanin0, spc_scanin1, cluster_cken, gclk, cmp_grst_l, 
42   cmp_arst_l, ctu_tst_pre_grst_l, adbginit_l, gdbginit_l
43   );
44
45   // these are the only legal IOs
46
47   // pcx
48   output [4:0]   spc_pcx_req_pq;    // processor to pcx request
49   output         spc_pcx_atom_pq;   // processor to pcx atomic request
50   output [`PCX_WIDTH-1:0] spc_pcx_data_pa;  // processor to pcx packet
51
52   // shadow scan
53   wire     spc_sscan_so;         // From ifu of sparc_ifu.v
54   wire     spc_scanout0;         // From test_stub of test_stub_bist.v
55   wire     spc_scanout1;         // From test_stub of test_stub_bist.v
56   //output     spc_sscan_so;         // From ifu of sparc_ifu.v
57   //output     spc_scanout0;         // From test_stub of test_stub_bist.v
58   //output     spc_scanout1;         // From test_stub of test_stub_bist.v
59
60   // bist
61   output     tst_ctu_mbist_done;  // From test_stub of test_stub_two_bist.v
62   output     tst_ctu_mbist_fail;  // From test_stub of test_stub_two_bist.v
63
64   // fuse
65   output     spc_efc_ifuse_data;     // From ifu of sparc_ifu.v
66   output     spc_efc_dfuse_data;     // From ifu of sparc_ifu.v
67
68
69   // cpx interface
70   input [4:0] pcx_spc_grant_px; // pcx to processor grant info 
71   input       cpx_spc_data_rdy_cx2; // cpx data inflight to sparc 
72   input [`CPX_WIDTH-1:0] cpx_spc_data_cx2;     // cpx to sparc data packet
73
74   input [3:0]  const_cpuid;
75   input [7:0]  const_maskid;           // To ifu of sparc_ifu.v
76
77   // sscan
78   input        ctu_tck;                // To ifu of sparc_ifu.v
79   input        ctu_sscan_se;           // To ifu of sparc_ifu.v
80   input        ctu_sscan_snap;         // To ifu of sparc_ifu.v
81   input [3:0]  ctu_sscan_tid;          // To ifu of sparc_ifu.v
82
83   // bist
84   input        ctu_tst_mbist_enable;   // To test_stub of test_stub_bist.v
85
86   // efuse
87   input        efc_spc_fuse_clk1;
88   input        efc_spc_fuse_clk2;
89   input        efc_spc_ifuse_ashift;
90   input        efc_spc_ifuse_dshift;
91   input        efc_spc_ifuse_data;
92   input        efc_spc_dfuse_ashift;
93   input        efc_spc_dfuse_dshift;
94   input        efc_spc_dfuse_data;
95   
96   // scan and macro test
97   input        ctu_tst_macrotest;      // To test_stub of test_stub_bist.v
98   input        ctu_tst_scan_disable;   // To test_stub of test_stub_bist.v
99   input        ctu_tst_short_chain;    // To test_stub of test_stub_bist.v
100   input        global_shift_enable;    // To test_stub of test_stub_two_bist.v
101   input        ctu_tst_scanmode;       // To test_stub of test_stub_two_bist.v
102   input        spc_scanin0;
103   input        spc_scanin1;
104   
105   // clk
106   input        cluster_cken;           // To spc_hdr of cluster_header.v
107   input        gclk;                   // To spc_hdr of cluster_header.v
108
109   // reset
110   input        cmp_grst_l;
111   input        cmp_arst_l;
112   input        ctu_tst_pre_grst_l;     // To test_stub of test_stub_bist.v
113
114   input        adbginit_l;             // To spc_hdr of cluster_header.v
115   input        gdbginit_l;             // To spc_hdr of cluster_header.v
116
117
118   // ----------------- End of IOs -------------------------- //
119
120   /* AUTOOUTPUT*/
121   /*AUTOINPUT*/
122   // Beginning of automatic inputs (from unused autoinst inputs)
123   // End of automatics
124
125   // not hooked up yet
126   wire [3:0]   tlu_dsfsr_flt_vld;      // To lsu of lsu.v
127   wire         tlu_lsu_int_ld_ill_va_w2;// To lsu of lsu.v
128   wire [9:0]   lsu_tlu_ldst_va_m;// To lsu of lsu.v
129   wire [47:0]  lsu_ifu_stxa_data;      // From lsu of lsu.v
130
131   wire         lsu_tlu_misalign_addr_ldst_atm_m ;// To tlu of tlu.v
132
133   // name change at top level
134   wire [3:0]   tlu_ifu_sftint_vld;
135   wire [3:0]   tlu_hintp_vld;
136   wire [3:0]   tlu_rerr_vld;
137   wire         lsu_exu_ldst_miss_g2;   // To exu of sparc_exu.v
138   wire         lsu_ifu_ldst_miss_w;    // To exu of sparc_exu.v
139   wire         lsu_exu_dfill_vld_g;
140   wire [63:0]  lsu_exu_dfill_data_g;   // From lsu of lsu.v
141   wire [62:0]  tlu_sscan_test_data;
142   wire         lsu_ifu_tlb_data_ue;      // dtlb data asi rd parity error
143   wire         lsu_ifu_tlb_tag_ue;       // dtlb tag asi rd parity error
144   wire [8:0]   ifu_tlu_imm_asi_d;      // From ifu of sparc_ifu.v
145   
146   wire        ifu_lsu_wsr_inst_d;     // To lsu of lsu.v, ...
147   wire        ifu_exu_wsr_inst_d; 
148
149   // hypervisor stuff
150   wire [3:0]   tlu_hpstate_enb,
151                tlu_hpstate_priv,
152                tlu_hpstate_ibe;
153
154   // scan chain
155   wire                    short_scan0_1;
156   wire                    short_scan0_2;
157   wire                    short_scan0_3;
158   wire                    short_scan0_4;
159   wire                    short_scan0_5;
160   wire                    short_scan0_6;
161   wire                    scan0_1;
162   wire                    scan0_2;
163   wire                    scan0_3;
164   wire                    scan0_4;
165   wire                    scan0_5;
166   wire                    scan0_6;
167   wire                    scan0_7;
168
169   wire                    short_scan1_1;
170   wire                    short_scan1_2;
171   wire                    short_scan1_3;
172   wire                    short_scan1_4;
173   wire                    short_scan1_5;
174   wire                    scan1_1;
175   wire                    scan1_2;
176   wire                    scan1_3;
177   wire                    scan1_4;
178   wire                    scan1_5;
179
180   
181   // bus width difference
182   wire [12:0]  lsu_t0_pctxt_state;     // From lsu of lsu.v
183   wire [12:0]  lsu_t1_pctxt_state;     // From lsu of lsu.v
184   wire [12:0]  lsu_t2_pctxt_state;     // From lsu of lsu.v
185   wire [12:0]  lsu_t3_pctxt_state;     // From lsu of lsu.v
186
187   wire [6:0]  bist_ctl_reg_in;
188
189   /*AUTOWIRE*/
190   // Beginning of automatic wires (for undeclared instantiated-module outputs)
191   wire [10:0]          bist_ctl_reg_out;       // From test_stub of test_stub_bist.v
192   wire                 bist_ctl_reg_wr_en;     // From lsu of lsu.v
193   wire [`CPX_WIDTH-1:0]cpx_spc_data_cx2_buf;   // From buf_cpx of cpx_spc_buf.v
194   wire [`CPX_WIDTH-1:0]cpx_spc_data_cx3;       // From ff_cpx of cpx_spc_rpt.v
195   wire                 cpx_spc_data_rdy_cx2_buf;// From buf_cpx of cpx_spc_buf.v
196   wire                 cpx_spc_data_rdy_cx3;   // From ff_cpx of cpx_spc_rpt.v
197   wire                 exu_ffu_wsr_inst_e;     // From exu of sparc_exu.v
198   wire [47:0]          exu_ifu_brpc_e;         // From exu of sparc_exu.v
199   wire [7:0]           exu_ifu_cc_d;           // From exu of sparc_exu.v
200   wire                 exu_ifu_ecc_ce_m;       // From exu of sparc_exu.v
201   wire                 exu_ifu_ecc_ue_m;       // From exu of sparc_exu.v
202   wire [7:0]           exu_ifu_err_reg_m;      // From exu of sparc_exu.v
203   wire [7:0]           exu_ifu_err_synd_m;     // From exu of sparc_exu.v
204   wire                 exu_ifu_inj_ack;        // From exu of sparc_exu.v
205   wire [3:0]           exu_ifu_longop_done_g;  // From exu of sparc_exu.v
206   wire [3:0]           exu_ifu_oddwin_s;       // From exu of sparc_exu.v
207   wire                 exu_ifu_regn_e;         // From exu of sparc_exu.v
208   wire                 exu_ifu_regz_e;         // From exu of sparc_exu.v
209   wire                 exu_ifu_spill_e;        // From exu of sparc_exu.v
210   wire                 exu_ifu_va_oor_m;       // From exu of sparc_exu.v
211   wire [10:3]          exu_lsu_early_va_e;     // From exu of sparc_exu.v
212   wire [47:0]          exu_lsu_ldst_va_e;      // From exu of sparc_exu.v
213   wire                 exu_lsu_priority_trap_m;// From exu of sparc_exu.v
214   wire [63:0]          exu_lsu_rs2_data_e;     // From exu of sparc_exu.v
215   wire [63:0]          exu_lsu_rs3_data_e;     // From exu of sparc_exu.v
216   wire [7:0]           exu_mmu_early_va_e;     // From exu of sparc_exu.v
217   wire                 exu_mul_input_vld;      // From exu of sparc_exu.v
218   wire [63:0]          exu_mul_rs1_data;       // From exu of sparc_exu.v
219   wire [63:0]          exu_mul_rs2_data;       // From exu of sparc_exu.v
220   wire [63:0]          exu_spu_rs3_data_e;     // From exu of sparc_exu.v
221   wire [7:0]           exu_tlu_ccr0_w;         // From exu of sparc_exu.v
222   wire [7:0]           exu_tlu_ccr1_w;         // From exu of sparc_exu.v
223   wire [7:0]           exu_tlu_ccr2_w;         // From exu of sparc_exu.v
224   wire [7:0]           exu_tlu_ccr3_w;         // From exu of sparc_exu.v
225   wire [2:0]           exu_tlu_cwp0_w;         // From exu of sparc_exu.v
226   wire [2:0]           exu_tlu_cwp1_w;         // From exu of sparc_exu.v
227   wire [2:0]           exu_tlu_cwp2_w;         // From exu of sparc_exu.v
228   wire [2:0]           exu_tlu_cwp3_w;         // From exu of sparc_exu.v
229   wire                 exu_tlu_cwp_cmplt;      // From exu of sparc_exu.v
230   wire [1:0]           exu_tlu_cwp_cmplt_tid;  // From exu of sparc_exu.v
231   wire                 exu_tlu_cwp_retry;      // From exu of sparc_exu.v
232   wire                 exu_tlu_misalign_addr_jmpl_rtn_m;// From exu of sparc_exu.v
233   wire                 exu_tlu_spill;          // From exu of sparc_exu.v
234   wire                 exu_tlu_spill_other;    // From exu of sparc_exu.v
235   wire [1:0]           exu_tlu_spill_tid;      // From exu of sparc_exu.v
236   wire [2:0]           exu_tlu_spill_wtype;    // From exu of sparc_exu.v
237   wire [8:0]           exu_tlu_ttype_m;        // From exu of sparc_exu.v
238   wire                 exu_tlu_ttype_vld_m;    // From exu of sparc_exu.v
239   wire                 exu_tlu_va_oor_jl_ret_m;// From exu of sparc_exu.v
240   wire                 exu_tlu_va_oor_m;       // From exu of sparc_exu.v
241   wire [63:0]          exu_tlu_wsr_data_m;     // From exu of sparc_exu.v
242   wire [63:0]          ffu_exu_rsr_data_m;     // From ffu of sparc_ffu.v
243   wire [3:0]           ffu_ifu_cc_vld_w2;      // From ffu of sparc_ffu.v
244   wire [7:0]           ffu_ifu_cc_w2;          // From ffu of sparc_ffu.v
245   wire                 ffu_ifu_ecc_ce_w2;      // From ffu of sparc_ffu.v
246   wire                 ffu_ifu_ecc_ue_w2;      // From ffu of sparc_ffu.v
247   wire [5:0]           ffu_ifu_err_reg_w2;     // From ffu of sparc_ffu.v
248   wire [13:0]          ffu_ifu_err_synd_w2;    // From ffu of sparc_ffu.v
249   wire                 ffu_ifu_fpop_done_w2;   // From ffu of sparc_ffu.v
250   wire                 ffu_ifu_fst_ce_w;       // From ffu of sparc_ffu.v
251   wire                 ffu_ifu_inj_ack;        // From ffu of sparc_ffu.v
252   wire                 ffu_ifu_stallreq;       // From ffu of sparc_ffu.v
253   wire [1:0]           ffu_ifu_tid_w2;         // From ffu of sparc_ffu.v
254   wire                 ffu_lsu_blk_st_e;       // From ffu of sparc_ffu.v
255   wire [5:3]           ffu_lsu_blk_st_va_e;    // From ffu of sparc_ffu.v
256   wire [80:0]          ffu_lsu_data;           // From ffu of sparc_ffu.v
257   wire                 ffu_lsu_fpop_rq_vld;    // From ffu of sparc_ffu.v
258   wire                 ffu_lsu_kill_fst_w;     // From ffu of sparc_ffu.v
259   wire                 ffu_tlu_fpu_cmplt;      // From ffu of sparc_ffu.v
260   wire [1:0]           ffu_tlu_fpu_tid;        // From ffu of sparc_ffu.v
261   wire                 ffu_tlu_ill_inst_m;     // From ffu of sparc_ffu.v
262   wire                 ffu_tlu_trap_ieee754;   // From ffu of sparc_ffu.v
263   wire                 ffu_tlu_trap_other;     // From ffu of sparc_ffu.v
264   wire                 ffu_tlu_trap_ue;        // From ffu of sparc_ffu.v
265   wire                 ifu_exu_addr_mask_d;    // From ifu of sparc_ifu.v
266   wire [2:0]           ifu_exu_aluop_d;        // From ifu of sparc_ifu.v
267   wire                 ifu_exu_casa_d;         // From ifu of sparc_ifu.v
268   wire                 ifu_exu_dbrinst_d;      // From ifu of sparc_ifu.v
269   wire                 ifu_exu_disable_ce_e;   // From ifu of sparc_ifu.v
270   wire                 ifu_exu_dontmv_regz0_e; // From ifu of sparc_ifu.v
271   wire                 ifu_exu_dontmv_regz1_e; // From ifu of sparc_ifu.v
272   wire [7:0]           ifu_exu_ecc_mask;       // From ifu of sparc_ifu.v
273   wire                 ifu_exu_enshift_d;      // From ifu of sparc_ifu.v
274   wire                 ifu_exu_flushw_e;       // From ifu of sparc_ifu.v
275   wire                 ifu_exu_ialign_d;       // From ifu of sparc_ifu.v
276   wire [31:0]          ifu_exu_imm_data_d;     // From ifu of sparc_ifu.v
277   wire                 ifu_exu_inj_irferr;     // From ifu of sparc_ifu.v
278   wire                 ifu_exu_inst_vld_e;     // From ifu of sparc_ifu.v
279   wire                 ifu_exu_inst_vld_w;     // From ifu of sparc_ifu.v
280   wire                 ifu_exu_invert_d;       // From ifu of sparc_ifu.v
281   wire                 ifu_exu_kill_e;         // From ifu of sparc_ifu.v
282   wire [4:0]           ifu_exu_muldivop_d;     // From ifu of sparc_ifu.v
283   wire                 ifu_exu_muls_d;         // From ifu of sparc_ifu.v
284   wire                 ifu_exu_nceen_e;        // From ifu of sparc_ifu.v
285   wire [47:0]          ifu_exu_pc_d;           // From ifu of sparc_ifu.v
286   wire [63:0]          ifu_exu_pcver_e;        // From ifu of sparc_ifu.v
287   wire                 ifu_exu_range_check_jlret_d;// From ifu of sparc_ifu.v
288   wire                 ifu_exu_range_check_other_d;// From ifu of sparc_ifu.v
289   wire [4:0]           ifu_exu_rd_d;           // From ifu of sparc_ifu.v
290   wire                 ifu_exu_rd_exusr_e;     // From ifu of sparc_ifu.v
291   wire                 ifu_exu_rd_ffusr_e;     // From ifu of sparc_ifu.v
292   wire                 ifu_exu_rd_ifusr_e;     // From ifu of sparc_ifu.v
293   wire                 ifu_exu_ren1_s;         // From ifu of sparc_ifu.v
294   wire                 ifu_exu_ren2_s;         // From ifu of sparc_ifu.v
295   wire                 ifu_exu_ren3_s;         // From ifu of sparc_ifu.v
296   wire                 ifu_exu_restore_d;      // From ifu of sparc_ifu.v
297   wire                 ifu_exu_restored_e;     // From ifu of sparc_ifu.v
298   wire                 ifu_exu_return_d;       // From ifu of sparc_ifu.v
299   wire [4:0]           ifu_exu_rs1_s;          // From ifu of sparc_ifu.v
300   wire                 ifu_exu_rs1_vld_d;      // From ifu of sparc_ifu.v
301   wire [4:0]           ifu_exu_rs2_s;          // From ifu of sparc_ifu.v
302   wire                 ifu_exu_rs2_vld_d;      // From ifu of sparc_ifu.v
303   wire [4:0]           ifu_exu_rs3_s;          // From ifu of sparc_ifu.v
304   wire                 ifu_exu_rs3e_vld_d;     // From ifu of sparc_ifu.v
305   wire                 ifu_exu_rs3o_vld_d;     // From ifu of sparc_ifu.v
306   wire                 ifu_exu_save_d;         // From ifu of sparc_ifu.v
307   wire                 ifu_exu_saved_e;        // From ifu of sparc_ifu.v
308   wire                 ifu_exu_setcc_d;        // From ifu of sparc_ifu.v
309   wire                 ifu_exu_sethi_inst_d;   // From ifu of sparc_ifu.v
310   wire [2:0]           ifu_exu_shiftop_d;      // From ifu of sparc_ifu.v
311   wire                 ifu_exu_tagop_d;        // From ifu of sparc_ifu.v
312   wire                 ifu_exu_tcc_e;          // From ifu of sparc_ifu.v
313   wire [1:0]           ifu_exu_tid_s2;         // From ifu of sparc_ifu.v
314   wire                 ifu_exu_ttype_vld_m;    // From ifu of sparc_ifu.v
315   wire                 ifu_exu_tv_d;           // From ifu of sparc_ifu.v
316   wire                 ifu_exu_use_rsr_e_l;    // From ifu of sparc_ifu.v
317   wire                 ifu_exu_usecin_d;       // From ifu of sparc_ifu.v
318   wire                 ifu_exu_useimm_d;       // From ifu of sparc_ifu.v
319   wire                 ifu_exu_wen_d;          // From ifu of sparc_ifu.v
320   wire [1:0]           ifu_ffu_fcc_num_d;      // From ifu of sparc_ifu.v
321   wire                 ifu_ffu_fld_d;          // From ifu of sparc_ifu.v
322   wire                 ifu_ffu_fpop1_d;        // From ifu of sparc_ifu.v
323   wire                 ifu_ffu_fpop2_d;        // From ifu of sparc_ifu.v
324   wire [8:0]           ifu_ffu_fpopcode_d;     // From ifu of sparc_ifu.v
325   wire [4:0]           ifu_ffu_frd_d;          // From ifu of sparc_ifu.v
326   wire [4:0]           ifu_ffu_frs1_d;         // From ifu of sparc_ifu.v
327   wire [4:0]           ifu_ffu_frs2_d;         // From ifu of sparc_ifu.v
328   wire                 ifu_ffu_fst_d;          // From ifu of sparc_ifu.v
329   wire                 ifu_ffu_inj_frferr;     // From ifu of sparc_ifu.v
330   wire                 ifu_ffu_ldfsr_d;        // From ifu of sparc_ifu.v
331   wire                 ifu_ffu_ldst_size_d;    // From ifu of sparc_ifu.v
332   wire                 ifu_ffu_ldxfsr_d;       // From ifu of sparc_ifu.v
333   wire                 ifu_ffu_mvcnd_m;        // From ifu of sparc_ifu.v
334   wire                 ifu_ffu_quad_op_e;      // From ifu of sparc_ifu.v
335   wire                 ifu_ffu_stfsr_d;        // From ifu of sparc_ifu.v
336   wire                 ifu_ffu_visop_d;        // From ifu of sparc_ifu.v
337   wire                 ifu_lsu_alt_space_d;    // From ifu of sparc_ifu.v
338   wire                 ifu_lsu_alt_space_e;    // From ifu of sparc_ifu.v
339   wire                 ifu_lsu_asi_ack;        // From ifu of sparc_ifu.v
340   wire                 ifu_lsu_asi_rd_unc;     // From ifu of sparc_ifu.v
341   wire                 ifu_lsu_casa_e;         // From ifu of sparc_ifu.v
342   wire [2:0]           ifu_lsu_destid_s;       // From ifu of sparc_ifu.v
343   wire [3:0]           ifu_lsu_error_inj;      // From ifu of sparc_ifu.v
344   wire                 ifu_lsu_fwd_data_vld;   // From ifu of sparc_ifu.v
345   wire                 ifu_lsu_fwd_wr_ack;     // From ifu of sparc_ifu.v
346   wire                 ifu_lsu_ibuf_busy;      // From ifu of sparc_ifu.v
347   wire [7:0]           ifu_lsu_imm_asi_d;      // From ifu of sparc_ifu.v
348   wire                 ifu_lsu_imm_asi_vld_d;  // From ifu of sparc_ifu.v
349   wire                 ifu_lsu_inv_clear;      // From ifu of sparc_ifu.v
350   wire                 ifu_lsu_ld_inst_e;      // From ifu of sparc_ifu.v
351   wire                 ifu_lsu_ldst_dbl_e;     // From ifu of sparc_ifu.v
352   wire                 ifu_lsu_ldst_fp_e;      // From ifu of sparc_ifu.v
353   wire [1:0]           ifu_lsu_ldst_size_e;    // From ifu of sparc_ifu.v
354   wire                 ifu_lsu_ldstub_e;       // From ifu of sparc_ifu.v
355   wire                 ifu_lsu_ldxa_data_vld_w2;// From ifu of sparc_ifu.v
356   wire [63:0]          ifu_lsu_ldxa_data_w2;   // From ifu of sparc_ifu.v
357   wire                 ifu_lsu_ldxa_illgl_va_w2;// From ifu of sparc_ifu.v
358   wire [1:0]           ifu_lsu_ldxa_tid_w2;    // From ifu of sparc_ifu.v
359   wire                 ifu_lsu_memref_d;       // From ifu of sparc_ifu.v
360   wire [3:0]           ifu_lsu_nceen;          // From ifu of sparc_ifu.v
361   wire [51:0]          ifu_lsu_pcxpkt_e;       // From ifu of sparc_ifu.v
362   wire                 ifu_lsu_pcxreq_d;       // From ifu of sparc_ifu.v
363   wire                 ifu_lsu_pref_inst_e;    // From ifu of sparc_ifu.v
364   wire [4:0]           ifu_lsu_rd_e;           // From ifu of sparc_ifu.v
365   wire                 ifu_lsu_sign_ext_e;     // From ifu of sparc_ifu.v
366   wire                 ifu_lsu_st_inst_e;      // From ifu of sparc_ifu.v
367   wire                 ifu_lsu_swap_e;         // From ifu of sparc_ifu.v
368   wire [1:0]           ifu_lsu_thrid_s;        // From ifu of sparc_ifu.v
369   wire                 ifu_mmu_trap_m;         // From ifu of sparc_ifu.v
370   wire                 ifu_spu_inst_vld_w;     // From ifu of sparc_ifu.v
371   wire [3:0]           ifu_spu_nceen;          // From ifu of sparc_ifu.v
372   wire                 ifu_spu_trap_ack;       // From ifu of sparc_ifu.v
373   wire                 ifu_tlu_alt_space_d;    // From ifu of sparc_ifu.v
374   wire                 ifu_tlu_done_inst_d;    // From ifu of sparc_ifu.v
375   wire                 ifu_tlu_flsh_inst_e;    // From ifu of sparc_ifu.v
376   wire                 ifu_tlu_flush_fd2_w;    // From lsu of lsu.v
377   wire                 ifu_tlu_flush_fd3_w;    // From lsu of lsu.v
378   wire                 ifu_tlu_flush_fd_w;     // From lsu of lsu.v
379   wire                 ifu_tlu_flush_m;        // From ifu of sparc_ifu.v
380   wire                 ifu_tlu_flush_w;        // From ifu of sparc_ifu.v
381   wire                 ifu_tlu_hwint_m;        // From ifu of sparc_ifu.v
382   wire                 ifu_tlu_icmiss_e;       // From ifu of sparc_ifu.v
383   wire                 ifu_tlu_immu_miss_m;    // From ifu of sparc_ifu.v
384   wire                 ifu_tlu_inst_vld_m;     // From ifu of sparc_ifu.v
385   wire                 ifu_tlu_inst_vld_m_bf1; // From lsu of lsu.v
386   wire                 ifu_tlu_inst_vld_w;     // From ifu of sparc_ifu.v
387   wire                 ifu_tlu_itlb_done;      // From ifu of sparc_ifu.v
388   wire [3:0]           ifu_tlu_l2imiss;        // From ifu of sparc_ifu.v
389   wire                 ifu_tlu_mb_inst_e;      // From ifu of sparc_ifu.v
390   wire [48:0]          ifu_tlu_npc_m;          // From ifu of sparc_ifu.v
391   wire [48:0]          ifu_tlu_pc_m;           // From ifu of sparc_ifu.v
392   wire                 ifu_tlu_pc_oor_e;       // From ifu of sparc_ifu.v
393   wire                 ifu_tlu_priv_violtn_m;  // From ifu of sparc_ifu.v
394   wire                 ifu_tlu_retry_inst_d;   // From ifu of sparc_ifu.v
395   wire                 ifu_tlu_rsr_inst_d;     // From ifu of sparc_ifu.v
396   wire                 ifu_tlu_rstint_m;       // From ifu of sparc_ifu.v
397   wire                 ifu_tlu_sftint_m;       // From ifu of sparc_ifu.v
398   wire                 ifu_tlu_sir_inst_m;     // From ifu of sparc_ifu.v
399   wire [6:0]           ifu_tlu_sraddr_d;       // From ifu of sparc_ifu.v
400   wire [6:0]           ifu_tlu_sraddr_d_v2;    // From ifu of sparc_ifu.v
401   wire [1:0]           ifu_tlu_thrid_d;        // From ifu of sparc_ifu.v
402   wire [1:0]           ifu_tlu_thrid_e;        // From ifu of sparc_ifu.v
403   wire                 ifu_tlu_trap_m;         // From ifu of sparc_ifu.v
404   wire [8:0]           ifu_tlu_ttype_m;        // From ifu of sparc_ifu.v
405   wire                 ifu_tlu_ttype_vld_m;    // From ifu of sparc_ifu.v
406   wire [7:0]           lsu_asi_reg0;           // From lsu of lsu.v
407   wire [7:0]           lsu_asi_reg1;           // From lsu of lsu.v
408   wire [7:0]           lsu_asi_reg2;           // From lsu of lsu.v
409   wire [7:0]           lsu_asi_reg3;           // From lsu of lsu.v
410   wire [7:0]           lsu_asi_state;          // From lsu of lsu.v
411   wire [3:0]           lsu_dmmu_sfsr_trp_wr;   // From lsu of lsu.v
412   wire [23:0]          lsu_dsfsr_din_g;        // From lsu of lsu.v
413   wire                 lsu_exu_flush_pipe_w;   // From lsu of lsu.v
414   wire [63:0]          lsu_exu_ldxa_data_g;    // From tlu of tlu.v
415   wire                 lsu_exu_ldxa_m;         // From tlu of tlu.v
416   wire [4:0]           lsu_exu_rd_m;           // From lsu of lsu.v
417   wire                 lsu_exu_st_dtlb_perr_g; // From lsu of lsu.v
418   wire [1:0]           lsu_exu_thr_m;          // From lsu of lsu.v
419   wire                 lsu_ffu_ack;            // From lsu of lsu.v
420   wire [2:0]           lsu_ffu_bld_cnt_w;      // From lsu of lsu.v
421   wire                 lsu_ffu_blk_asi_e;      // From lsu of lsu.v
422   wire                 lsu_ffu_flush_pipe_w;   // From lsu of lsu.v
423   wire [63:0]          lsu_ffu_ld_data;        // From lsu of lsu.v
424   wire                 lsu_ffu_ld_vld;         // From lsu of lsu.v
425   wire                 lsu_ffu_stb_full0;      // From lsu of lsu.v
426   wire                 lsu_ffu_stb_full1;      // From lsu of lsu.v
427   wire                 lsu_ffu_stb_full2;      // From lsu of lsu.v
428   wire                 lsu_ffu_stb_full3;      // From lsu of lsu.v
429   wire [3:0]           lsu_ictag_mrgn;         // From lsu of lsu.v
430   wire [17:0]          lsu_ifu_asi_addr;       // From lsu of lsu.v
431   wire                 lsu_ifu_asi_load;       // From lsu of lsu.v
432   wire [7:0]           lsu_ifu_asi_state;      // From lsu of lsu.v
433   wire [1:0]           lsu_ifu_asi_thrid;      // From lsu of lsu.v
434   wire                 lsu_ifu_asi_vld;        // From lsu of lsu.v
435   wire [`CPX_VLD-1:0]  lsu_ifu_cpxpkt_i1;      // From lsu of lsu.v
436   wire                 lsu_ifu_cpxpkt_vld_i1;  // From lsu of lsu.v
437   wire                 lsu_ifu_dc_parity_error_w2;// From lsu of lsu.v
438   wire                 lsu_ifu_dcache_data_perror;// From lsu of lsu.v
439   wire                 lsu_ifu_dcache_tag_perror;// From lsu of lsu.v
440   wire                 lsu_ifu_direct_map_l1;  // From lsu of lsu.v
441   wire [47:4]          lsu_ifu_err_addr;       // From lsu of lsu.v
442   wire [1:0]           lsu_ifu_error_tid;      // From lsu of lsu.v
443   wire                 lsu_ifu_flush_pipe_w;   // From lsu of lsu.v
444   wire [3:0]           lsu_ifu_icache_en;      // From lsu of lsu.v
445   wire [3:0]           lsu_ifu_inj_ack;        // From tlu of tlu.v
446   wire                 lsu_ifu_io_error;       // From lsu of lsu.v
447   wire [3:0]           lsu_ifu_itlb_en;        // From lsu of lsu.v
448   wire                 lsu_ifu_l2_corr_error;  // From lsu of lsu.v
449   wire                 lsu_ifu_l2_unc_error;   // From lsu of lsu.v
450   wire [11:5]          lsu_ifu_ld_icache_index;// From lsu of lsu.v
451   wire [1:0]           lsu_ifu_ld_pcxpkt_tid;  // From lsu of lsu.v
452   wire                 lsu_ifu_ld_pcxpkt_vld;  // From lsu of lsu.v
453   wire [3:0]           lsu_ifu_ldst_cmplt;     // From lsu of lsu.v
454   wire                 lsu_ifu_ldsta_internal_e;// From lsu of lsu.v
455   wire                 lsu_ifu_pcxpkt_ack_d;   // From lsu of lsu.v
456   wire                 lsu_ifu_stallreq;       // From lsu of lsu.v
457   wire [3:0]           lsu_ifu_stbcnt0;        // From lsu of lsu.v
458   wire [3:0]           lsu_ifu_stbcnt1;        // From lsu of lsu.v
459   wire [3:0]           lsu_ifu_stbcnt2;        // From lsu of lsu.v
460   wire [3:0]           lsu_ifu_stbcnt3;        // From lsu of lsu.v
461   wire                 lsu_ifu_tlb_data_su;    // From lsu of lsu.v
462   wire [7:0]           lsu_itlb_mrgn;          // From lsu of lsu.v
463   wire [3:0]           lsu_mamem_mrgn;         // From lsu of lsu.v
464   wire                 lsu_mmu_defr_trp_taken_g;// From lsu of lsu.v
465   wire                 lsu_mmu_flush_pipe_w;   // From lsu of lsu.v
466   wire [63:0]          lsu_mmu_rs3_data_g;     // From lsu of lsu.v
467   wire [2:0]           lsu_pid_state0;         // From lsu of lsu.v
468   wire [2:0]           lsu_pid_state1;         // From lsu of lsu.v
469   wire [2:0]           lsu_pid_state2;         // From lsu of lsu.v
470   wire [2:0]           lsu_pid_state3;         // From lsu of lsu.v
471   wire [7:0]           lsu_spu_asi_state_e;    // From lsu of lsu.v
472   wire                 lsu_spu_early_flush_g;  // From lsu of lsu.v
473   wire                 lsu_spu_ldst_ack;       // From lsu of lsu.v
474   wire [3:0]           lsu_spu_stb_empty;      // From lsu of lsu.v
475   wire [1:0]           lsu_spu_strm_ack_cmplt; // From lsu of lsu.v
476   wire [15:0]          lsu_sscan_data;         // From lsu of lsu.v
477   wire [1:0]           lsu_tlu_async_tid_w2;   // From lsu of lsu.v
478   wire                 lsu_tlu_async_ttype_vld_w2;// From lsu of lsu.v
479   wire [6:0]           lsu_tlu_async_ttype_w2; // From lsu of lsu.v
480   wire [3:0]           lsu_tlu_cpx_req;        // From lsu of lsu.v
481   wire                 lsu_tlu_cpx_vld;        // From lsu of lsu.v
482   wire                 lsu_tlu_daccess_excptn_g;// From lsu of lsu.v
483   wire                 lsu_tlu_daccess_prot_g; // From lsu of lsu.v
484   wire [3:0]           lsu_tlu_dcache_miss_w2; // From lsu of lsu.v
485   wire                 lsu_tlu_defr_trp_taken_g;// From lsu of lsu.v
486   wire                 lsu_tlu_dmmu_miss_g;    // From lsu of lsu.v
487   wire [12:0]          lsu_tlu_dside_ctxt_m;   // From lsu of lsu.v
488   wire                 lsu_tlu_dtlb_done;      // From lsu of lsu.v
489   wire                 lsu_tlu_early_flush2_w; // From lsu of lsu.v
490   wire                 lsu_tlu_early_flush_w;  // From lsu of lsu.v
491   wire [17:0]          lsu_tlu_intpkt;         // From lsu of lsu.v
492   wire [3:0]           lsu_tlu_l2_dmiss;       // From lsu of lsu.v
493   wire                 lsu_tlu_nucleus_ctxt_m; // From lsu of lsu.v
494   wire [12:0]          lsu_tlu_pctxt_m;        // From lsu of lsu.v
495   wire                 lsu_tlu_pcxpkt_ack;     // From lsu of lsu.v
496   wire                 lsu_tlu_priv_action_g;  // From lsu of lsu.v
497   wire [63:0]          lsu_tlu_rs3_data_g;     // From lsu of lsu.v
498   wire [7:0]           lsu_tlu_rsr_data_e;     // From lsu of lsu.v
499   wire                 lsu_tlu_squash_va_oor_m;// From lsu of lsu.v
500   wire [3:0]           lsu_tlu_stb_full_w2;    // From lsu of lsu.v
501   wire [1:0]           lsu_tlu_thrid_d;        // From lsu of lsu.v
502   wire [1:0]           lsu_tlu_tlb_access_tid_m;// From lsu of lsu.v
503   wire [7:0]           lsu_tlu_tlb_asi_state_m;// From lsu of lsu.v
504   wire [47:13]         lsu_tlu_tlb_dmp_va_m;   // From lsu of lsu.v
505   wire                 lsu_tlu_tlb_ld_inst_m;  // From lsu of lsu.v
506   wire [10:0]          lsu_tlu_tlb_ldst_va_m;  // From lsu of lsu.v
507   wire                 lsu_tlu_tlb_st_inst_m;  // From lsu of lsu.v
508   wire [2:0]           lsu_tlu_tte_pg_sz_g;    // From lsu of lsu.v
509   wire [8:0]           lsu_tlu_ttype_m2;       // From lsu of lsu.v
510   wire                 lsu_tlu_ttype_vld_m2;   // From lsu of lsu.v
511   wire                 lsu_tlu_wsr_inst_e;     // From lsu of lsu.v
512   wire                 lsu_tlu_wtchpt_trp_g;   // From lsu of lsu.v
513   wire                 mbist_bisi_mode;        // From test_stub of test_stub_bist.v
514   wire [71:0]          mbist_dcache_data_in;   // From lsu of lsu.v
515   wire                 mbist_dcache_fail;      // From ifu of sparc_ifu.v
516   wire [6:0]           mbist_dcache_index;     // From ifu of sparc_ifu.v
517   wire                 mbist_dcache_read;      // From ifu of sparc_ifu.v
518   wire [1:0]           mbist_dcache_way;       // From ifu of sparc_ifu.v
519   wire                 mbist_dcache_word;      // From ifu of sparc_ifu.v
520   wire                 mbist_dcache_write;     // From ifu of sparc_ifu.v
521   wire                 mbist_done;             // From ifu of sparc_ifu.v
522   wire                 mbist_icache_fail;      // From ifu of sparc_ifu.v
523   wire                 mbist_loop_mode;        // From test_stub of test_stub_bist.v
524   wire                 mbist_loop_on_addr;     // From test_stub of test_stub_bist.v
525   wire                 mbist_start;            // From test_stub of test_stub_bist.v
526   wire                 mbist_stop_on_fail;     // From test_stub of test_stub_bist.v
527   wire                 mbist_stop_on_next_fail;// From test_stub of test_stub_bist.v
528   wire                 mbist_userdata_mode;    // From test_stub of test_stub_bist.v
529   wire [7:0]           mbist_write_data;       // From ifu of sparc_ifu.v
530   wire                 mem_bypass;             // From test_stub of test_stub_bist.v
531   wire                 mem_write_disable;      // From test_stub of test_stub_bist.v
532   wire [63:0]          mul_data_out;           // From mul of sparc_mul_top.v
533   wire                 mul_exu_ack;            // From mul of sparc_mul_top.v
534   wire                 mul_spu_ack;            // From mul of sparc_mul_top.v
535   wire                 mul_spu_shf_ack;        // From mul of sparc_mul_top.v
536   wire                 mux_drive_disable;      // From test_stub of test_stub_bist.v
537   wire                 rclk;                   // From spc_hdr of bw_clk_cl_sparc_cmp.v
538   wire                 se;                     // From test_stub of test_stub_bist.v
539   wire                 sehold;                 // From test_stub of test_stub_bist.v
540   wire                 spc_dbginit_l;          // From spc_hdr of bw_clk_cl_sparc_cmp.v
541   wire                 spc_grst_l;             // From spc_hdr of bw_clk_cl_sparc_cmp.v
542   wire                 spu_ifu_corr_err_w2;    // From spu of spu.v
543   wire [39:4]          spu_ifu_err_addr_w2;    // From spu of spu.v
544   wire                 spu_ifu_int_w2;         // From spu of spu.v
545   wire                 spu_ifu_mamem_err_w1;   // From spu of spu.v
546   wire [1:0]           spu_ifu_ttype_tid_w2;   // From spu of spu.v
547   wire                 spu_ifu_ttype_vld_w2;   // From spu of spu.v
548   wire                 spu_ifu_ttype_w2;       // From spu of spu.v
549   wire                 spu_ifu_unc_err_w1;     // From spu of spu.v
550   wire [123:0]         spu_lsu_ldst_pckt;      // From spu of spu.v
551   wire                 spu_lsu_ldxa_data_vld_w2;// From spu of spu.v
552   wire [63:0]          spu_lsu_ldxa_data_w2;   // From spu of spu.v
553   wire                 spu_lsu_ldxa_illgl_va_w2;// From spu of spu.v
554   wire [1:0]           spu_lsu_ldxa_tid_w2;    // From spu of spu.v
555   wire                 spu_lsu_stxa_ack;       // From spu of spu.v
556   wire [1:0]           spu_lsu_stxa_ack_tid;   // From spu of spu.v
557   wire                 spu_lsu_unc_error_w2;   // From spu of spu.v
558   wire                 spu_mul_acc;            // From spu of spu.v
559   wire                 spu_mul_areg_rst;       // From spu of spu.v
560   wire                 spu_mul_areg_shf;       // From spu of spu.v
561   wire                 spu_mul_mulres_lshft;   // From spu of spu.v
562   wire [63:0]          spu_mul_op1_data;       // From spu of spu.v
563   wire [63:0]          spu_mul_op2_data;       // From spu of spu.v
564   wire                 spu_mul_req_vld;        // From spu of spu.v
565   wire                 testmode_l;             // From test_stub of test_stub_bist.v
566   wire                 tlu_dtlb_data_rd_g;     // From tlu of tlu.v
567   wire                 tlu_dtlb_dmp_actxt_g;   // From tlu of tlu.v
568   wire                 tlu_dtlb_dmp_all_g;     // From tlu of tlu.v
569   wire                 tlu_dtlb_dmp_nctxt_g;   // From tlu of tlu.v
570   wire                 tlu_dtlb_dmp_pctxt_g;   // From tlu of tlu.v
571   wire                 tlu_dtlb_dmp_sctxt_g;   // From tlu of tlu.v
572   wire                 tlu_dtlb_dmp_vld_g;     // From tlu of tlu.v
573   wire                 tlu_dtlb_invalidate_all_g;// From tlu of tlu.v
574   wire [5:0]           tlu_dtlb_rw_index_g;    // From tlu of tlu.v
575   wire                 tlu_dtlb_rw_index_vld_g;// From tlu of tlu.v
576   wire                 tlu_dtlb_tag_rd_g;      // From tlu of tlu.v
577   wire [42:0]          tlu_dtlb_tte_data_w2;   // From tlu of tlu.v
578   wire [58:0]          tlu_dtlb_tte_tag_w2;    // From tlu of tlu.v
579   wire                 tlu_early_flush_pipe2_w;// From tlu of tlu.v
580   wire                 tlu_early_flush_pipe_w; // From tlu of tlu.v
581   wire [`TSA_GLOBAL_WIDTH-1:0]tlu_exu_agp;     // From tlu of tlu.v
582   wire                 tlu_exu_agp_swap;       // From tlu of tlu.v
583   wire [1:0]           tlu_exu_agp_tid;        // From tlu of tlu.v
584   wire [7:0]           tlu_exu_ccr_m;          // From tlu of tlu.v
585   wire [2:0]           tlu_exu_cwp_m;          // From tlu of tlu.v
586   wire                 tlu_exu_cwp_retry_m;    // From tlu of tlu.v
587   wire                 tlu_exu_cwpccr_update_m;// From tlu of tlu.v
588   wire                 tlu_exu_early_flush_pipe_w;// From tlu of tlu.v
589   wire                 tlu_exu_pic_onebelow_m; // From tlu of tlu.v
590   wire                 tlu_exu_pic_twobelow_m; // From tlu of tlu.v
591   wire                 tlu_exu_priv_trap_m;    // From tlu of tlu.v
592   wire [`TLU_ASR_DATA_WIDTH-1:0]tlu_exu_rsr_data_m;// From tlu of tlu.v
593   wire [40:0]          tlu_idtlb_dmp_key_g;    // From tlu of tlu.v
594   wire [1:0]           tlu_idtlb_dmp_thrid_g;  // From tlu of tlu.v
595   wire [3:0]           tlu_ifu_hwint_i3;       // From tlu of tlu.v
596   wire                 tlu_ifu_nukeint_i2;     // From tlu of tlu.v
597   wire [3:0]           tlu_ifu_pstate_ie;      // From tlu of tlu.v
598   wire [3:0]           tlu_ifu_pstate_pef;     // From tlu of tlu.v
599   wire                 tlu_ifu_resumint_i2;    // From tlu of tlu.v
600   wire                 tlu_ifu_rstint_i2;      // From tlu of tlu.v
601   wire [3:0]           tlu_ifu_rstthr_i2;      // From tlu of tlu.v
602   wire [1:0]           tlu_ifu_trap_tid_w1;    // From tlu of tlu.v
603   wire                 tlu_ifu_trapnpc_vld_w1; // From tlu of tlu.v
604   wire [48:0]          tlu_ifu_trapnpc_w2;     // From tlu of tlu.v
605   wire                 tlu_ifu_trappc_vld_w1;  // From tlu of tlu.v
606   wire [48:0]          tlu_ifu_trappc_w2;      // From tlu of tlu.v
607   wire                 tlu_itlb_data_rd_g;     // From tlu of tlu.v
608   wire                 tlu_itlb_dmp_actxt_g;   // From tlu of tlu.v
609   wire                 tlu_itlb_dmp_all_g;     // From tlu of tlu.v
610   wire                 tlu_itlb_dmp_nctxt_g;   // From tlu of tlu.v
611   wire                 tlu_itlb_dmp_vld_g;     // From tlu of tlu.v
612   wire                 tlu_itlb_invalidate_all_g;// From tlu of tlu.v
613   wire [5:0]           tlu_itlb_rw_index_g;    // From tlu of tlu.v
614   wire                 tlu_itlb_rw_index_vld_g;// From tlu of tlu.v
615   wire                 tlu_itlb_tag_rd_g;      // From tlu of tlu.v
616   wire [42:0]          tlu_itlb_tte_data_w2;   // From tlu of tlu.v
617   wire [58:0]          tlu_itlb_tte_tag_w2;    // From tlu of tlu.v
618   wire                 tlu_itlb_wr_vld_g;      // From tlu of tlu.v
619   wire [7:0]           tlu_lsu_asi_m;          // From tlu of tlu.v
620   wire                 tlu_lsu_asi_update_m;   // From tlu of tlu.v
621   wire [63:0]          tlu_lsu_int_ldxa_data_w2;// From tlu of tlu.v
622   wire                 tlu_lsu_int_ldxa_vld_w2;// From tlu of tlu.v
623   wire                 tlu_lsu_ldxa_async_data_vld;// From tlu of tlu.v
624   wire [1:0]           tlu_lsu_ldxa_tid_w2;    // From tlu of tlu.v
625   wire [25:0]          tlu_lsu_pcxpkt;         // From tlu of tlu.v
626   wire                 tlu_lsu_priv_trap_m;    // From tlu of tlu.v
627   wire [3:0]           tlu_lsu_pstate_am;      // From tlu of tlu.v
628   wire [3:0]           tlu_lsu_pstate_cle;     // From tlu of tlu.v
629   wire [3:0]           tlu_lsu_pstate_priv;    // From tlu of tlu.v
630   wire [3:0]           tlu_lsu_redmode;        // From tlu of tlu.v
631   wire [3:0]           tlu_lsu_redmode_rst_d1; // From tlu of tlu.v
632   wire                 tlu_lsu_stxa_ack;       // From tlu of tlu.v
633   wire [1:0]           tlu_lsu_stxa_ack_tid;   // From tlu of tlu.v
634   wire [1:0]           tlu_lsu_tid_m;          // From tlu of tlu.v
635   wire [`TLU_THRD_NUM-1:0]tlu_lsu_tl_zero;     // From tlu of tlu.v
636   // End of automatics
637
638   wire                 cpx_spc_data_cx3_b0;    // From ff_cpx of cpx_spc_rpt.v
639   wire                 cpx_spc_data_cx3_b100;  // From ff_cpx of cpx_spc_rpt.v
640   wire                 cpx_spc_data_cx3_b103;  // From ff_cpx of cpx_spc_rpt.v
641   wire                 cpx_spc_data_cx3_b106;  // From ff_cpx of cpx_spc_rpt.v
642   wire                 cpx_spc_data_cx3_b109;  // From ff_cpx of cpx_spc_rpt.v
643   wire                 cpx_spc_data_cx3_b12;   // From ff_cpx of cpx_spc_rpt.v
644   wire [`CPX_INV_CID_HI:`CPX_INV_CID_LO]cpx_spc_data_cx3_b120to118;// From ff_cpx of cpx_spc_rpt.v
645   wire [`CPX_WIDTH-1:140]cpx_spc_data_cx3_b144to140;// From ff_cpx of cpx_spc_rpt.v
646   wire                 cpx_spc_data_cx3_b16;   // From ff_cpx of cpx_spc_rpt.v
647   wire                 cpx_spc_data_cx3_b20;   // From ff_cpx of cpx_spc_rpt.v
648   wire                 cpx_spc_data_cx3_b24;   // From ff_cpx of cpx_spc_rpt.v
649   wire                 cpx_spc_data_cx3_b28;   // From ff_cpx of cpx_spc_rpt.v
650   wire                 cpx_spc_data_cx3_b32;   // From ff_cpx of cpx_spc_rpt.v
651   wire                 cpx_spc_data_cx3_b35;   // From ff_cpx of cpx_spc_rpt.v
652   wire                 cpx_spc_data_cx3_b38;   // From ff_cpx of cpx_spc_rpt.v
653   wire                 cpx_spc_data_cx3_b4;    // From ff_cpx of cpx_spc_rpt.v
654   wire                 cpx_spc_data_cx3_b41;   // From ff_cpx of cpx_spc_rpt.v
655   wire                 cpx_spc_data_cx3_b44;   // From ff_cpx of cpx_spc_rpt.v
656   wire                 cpx_spc_data_cx3_b47;   // From ff_cpx of cpx_spc_rpt.v
657   wire                 cpx_spc_data_cx3_b50;   // From ff_cpx of cpx_spc_rpt.v
658   wire                 cpx_spc_data_cx3_b53;   // From ff_cpx of cpx_spc_rpt.v
659   wire                 cpx_spc_data_cx3_b56;   // From ff_cpx of cpx_spc_rpt.v
660   wire                 cpx_spc_data_cx3_b60;   // From ff_cpx of cpx_spc_rpt.v
661   wire                 cpx_spc_data_cx3_b64;   // From ff_cpx of cpx_spc_rpt.v
662   wire                 cpx_spc_data_cx3_b68;   // From ff_cpx of cpx_spc_rpt.v
663   wire                 cpx_spc_data_cx3_b72;   // From ff_cpx of cpx_spc_rpt.v
664   wire                 cpx_spc_data_cx3_b76;   // From ff_cpx of cpx_spc_rpt.v
665   wire                 cpx_spc_data_cx3_b8;    // From ff_cpx of cpx_spc_rpt.v
666   wire                 cpx_spc_data_cx3_b80;   // From ff_cpx of cpx_spc_rpt.v
667   wire                 cpx_spc_data_cx3_b84;   // From ff_cpx of cpx_spc_rpt.v
668   wire                 cpx_spc_data_cx3_b88;   // From ff_cpx of cpx_spc_rpt.v
669   wire                 cpx_spc_data_cx3_b91;   // From ff_cpx of cpx_spc_rpt.v
670   wire                 cpx_spc_data_cx3_b94;   // From ff_cpx of cpx_spc_rpt.v
671   wire                 cpx_spc_data_cx3_b97;   // From ff_cpx of cpx_spc_rpt.v
672   wire                 lsu_ffu_st_dtlb_perr_g;
673   wire                 spu_tlu_rsrv_illgl_m;
674
675
676
677   cpx_spc_buf buf_cpx (/*AUTOINST*/
678                        // Outputs
679                        .cpx_spc_data_cx2_buf(cpx_spc_data_cx2_buf[`CPX_WIDTH-1:0]),
680                        .cpx_spc_data_rdy_cx2_buf(cpx_spc_data_rdy_cx2_buf),
681                        // Inputs
682                        .cpx_spc_data_cx2(cpx_spc_data_cx2[`CPX_WIDTH-1:0]),
683                        .cpx_spc_data_rdy_cx2(cpx_spc_data_rdy_cx2));
684
685/*   cpx_spc_rpt AUTO_TEMPLATE  (
686                       .cpx_spc_data_cx2(cpx_spc_data_cx2_buf[`CPX_WIDTH-1:0]),
687                       .cpx_spc_data_rdy_cx2(cpx_spc_data_rdy_cx2_buf),
688                        .si             (short_scan0_6),
689                        .so             (scan0_1));
690*/
691
692   cpx_spc_rpt ff_cpx  (
693                         .cpx_spc_data_cx3_b144to140(cpx_spc_data_cx3_b144to140[`CPX_WIDTH-1:140]),
694                         .cpx_spc_data_cx3_b120to118(cpx_spc_data_cx3_b120to118[`CPX_INV_CID_HI:`CPX_INV_CID_LO]),
695                         .cpx_spc_data_cx3_b0(cpx_spc_data_cx3_b0),
696                         .cpx_spc_data_cx3_b4(cpx_spc_data_cx3_b4),
697                         .cpx_spc_data_cx3_b8(cpx_spc_data_cx3_b8),
698                         .cpx_spc_data_cx3_b12(cpx_spc_data_cx3_b12),
699                         .cpx_spc_data_cx3_b16(cpx_spc_data_cx3_b16),
700                         .cpx_spc_data_cx3_b20(cpx_spc_data_cx3_b20),
701                         .cpx_spc_data_cx3_b24(cpx_spc_data_cx3_b24),
702                         .cpx_spc_data_cx3_b28(cpx_spc_data_cx3_b28),
703                         .cpx_spc_data_cx3_b32(cpx_spc_data_cx3_b32),
704                         .cpx_spc_data_cx3_b35(cpx_spc_data_cx3_b35),
705                         .cpx_spc_data_cx3_b38(cpx_spc_data_cx3_b38),
706                         .cpx_spc_data_cx3_b41(cpx_spc_data_cx3_b41),
707                         .cpx_spc_data_cx3_b44(cpx_spc_data_cx3_b44),
708                         .cpx_spc_data_cx3_b47(cpx_spc_data_cx3_b47),
709                         .cpx_spc_data_cx3_b50(cpx_spc_data_cx3_b50),
710                         .cpx_spc_data_cx3_b53(cpx_spc_data_cx3_b53),
711                         .cpx_spc_data_cx3_b56(cpx_spc_data_cx3_b56),
712                         .cpx_spc_data_cx3_b60(cpx_spc_data_cx3_b60),
713                         .cpx_spc_data_cx3_b64(cpx_spc_data_cx3_b64),
714                         .cpx_spc_data_cx3_b68(cpx_spc_data_cx3_b68),
715                         .cpx_spc_data_cx3_b72(cpx_spc_data_cx3_b72),
716                         .cpx_spc_data_cx3_b76(cpx_spc_data_cx3_b76),
717                         .cpx_spc_data_cx3_b80(cpx_spc_data_cx3_b80),
718                         .cpx_spc_data_cx3_b84(cpx_spc_data_cx3_b84),
719                         .cpx_spc_data_cx3_b88(cpx_spc_data_cx3_b88),
720                         .cpx_spc_data_cx3_b91(cpx_spc_data_cx3_b91),
721                         .cpx_spc_data_cx3_b94(cpx_spc_data_cx3_b94),
722                         .cpx_spc_data_cx3_b97(cpx_spc_data_cx3_b97),
723                         .cpx_spc_data_cx3_b100(cpx_spc_data_cx3_b100),
724                         .cpx_spc_data_cx3_b103(cpx_spc_data_cx3_b103),
725                         .cpx_spc_data_cx3_b106(cpx_spc_data_cx3_b106),
726                         .cpx_spc_data_cx3_b109(cpx_spc_data_cx3_b109),
727
728                         /*AUTOINST*/
729                        // Outputs
730                        .so             (scan0_1),               // Templated
731                        .cpx_spc_data_cx3(cpx_spc_data_cx3[`CPX_WIDTH-1:0]),
732                        .cpx_spc_data_rdy_cx3(cpx_spc_data_rdy_cx3),
733                        // Inputs
734                        .rclk           (rclk),
735                        .si             (short_scan0_6),         // Templated
736                        .se             (se),
737                        .cpx_spc_data_cx2(cpx_spc_data_cx2_buf[`CPX_WIDTH-1:0]), // Templated
738                        .cpx_spc_data_rdy_cx2(cpx_spc_data_rdy_cx2_buf)); // Templated
739
740`ifdef FPGA_SYN_NO_SPU
741
742      sparc_ifu ifu(
743                 // scan
744                 .short_si0              (spc_scanin0),
745                 .short_si1              (spc_scanin1),
746                 .short_so0              (short_scan0_1),
747                 .short_so1              (short_scan1_1),
748                 .si0                    (scan0_1),
749                 .so0                    (scan0_2),
750                 // reset stuff and clk
751                 .grst_l                 (spc_grst_l),
752                 .arst_l                 (cmp_arst_l),
753                 .gdbginit_l             (spc_dbginit_l),
754                 
755                 // quad ldst disabled
756                 .lsu_ifu_quad_asi_e    (1'b0),
757
758                 // tlb on condition changes with hypervisor
759                 // itlb_en is the bit from the lsu control register
760                 // with no additional logic
761                 .lsu_ifu_addr_real_l  (lsu_ifu_itlb_en[3:0]),
762                 
763                 // name change
764                             .lsu_ifu_dtlb_data_ue      (lsu_ifu_tlb_data_ue),
765                             .lsu_ifu_dtlb_tag_ue       (lsu_ifu_tlb_tag_ue),
766                 .lsu_ifu_dtlb_data_su  (lsu_ifu_tlb_data_su),
767
768                       .tlu_ifu_hintp_vld           (tlu_hintp_vld[3:0]),
769                       .tlu_ifu_rerr_vld            (tlu_rerr_vld[3:0]),
770
771                             .lsu_ifu_t0_tlz            (tlu_lsu_tl_zero[0]),
772                             .lsu_ifu_t1_tlz            (tlu_lsu_tl_zero[1]),
773                             .lsu_ifu_t2_tlz        (tlu_lsu_tl_zero[2]),
774                             .lsu_ifu_t3_tlz        (tlu_lsu_tl_zero[3]),
775                 
776                 .lsu_ifu_ldst_miss_g   (lsu_ifu_ldst_miss_w),
777                 .tlu_ifu_flush_pipe_w  (lsu_ifu_flush_pipe_w),
778
779                 .lsu_idtlb_mrgn        (lsu_itlb_mrgn[7:0]),
780
781                 .mbist_loop_on_address (mbist_loop_on_addr),
782                 
783                 .tlu_sscan_data        (tlu_sscan_test_data[62:0]),
784                 .sparc_sscan_so        (spc_sscan_so),
785                 .ifu_tlu_imm_asi_d     (ifu_tlu_imm_asi_d[8:0]),
786
787                 // bus width difference
788                 .lsu_ifu_cpxpkt_i1     ({lsu_ifu_cpxpkt_vld_i1,
789                                          lsu_ifu_cpxpkt_i1[`CPX_VLD-1:0]}),
790                 
791                             /*AUTOINST*/
792                 // Outputs
793                 .ifu_exu_addr_mask_d   (ifu_exu_addr_mask_d),
794                 .ifu_tlu_inst_vld_w    (ifu_tlu_inst_vld_w),
795                 .ifu_tlu_flush_w       (ifu_tlu_flush_w),
796                 .ifu_lsu_alt_space_e   (ifu_lsu_alt_space_e),
797                 .ifu_tlu_ttype_vld_m   (ifu_tlu_ttype_vld_m),
798                 .ifu_exu_muldivop_d    (ifu_exu_muldivop_d[4:0]),
799                 .ifu_lsu_thrid_s       (ifu_lsu_thrid_s[1:0]),
800                 .mbist_write_data      (mbist_write_data[7:0]),
801                 .ifu_exu_aluop_d       (ifu_exu_aluop_d[2:0]),
802                 .ifu_exu_casa_d        (ifu_exu_casa_d),
803                 .ifu_exu_dbrinst_d     (ifu_exu_dbrinst_d),
804                 .ifu_exu_disable_ce_e  (ifu_exu_disable_ce_e),
805                 .ifu_exu_dontmv_regz0_e(ifu_exu_dontmv_regz0_e),
806                 .ifu_exu_dontmv_regz1_e(ifu_exu_dontmv_regz1_e),
807                 .ifu_exu_ecc_mask      (ifu_exu_ecc_mask[7:0]),
808                 .ifu_exu_enshift_d     (ifu_exu_enshift_d),
809                 .ifu_exu_flushw_e      (ifu_exu_flushw_e),
810                 .ifu_exu_ialign_d      (ifu_exu_ialign_d),
811                 .ifu_exu_imm_data_d    (ifu_exu_imm_data_d[31:0]),
812                 .ifu_exu_inj_irferr    (ifu_exu_inj_irferr),
813                 .ifu_exu_inst_vld_e    (ifu_exu_inst_vld_e),
814                 .ifu_exu_inst_vld_w    (ifu_exu_inst_vld_w),
815                 .ifu_exu_invert_d      (ifu_exu_invert_d),
816                 .ifu_exu_kill_e        (ifu_exu_kill_e),
817                 .ifu_exu_muls_d        (ifu_exu_muls_d),
818                 .ifu_exu_nceen_e       (ifu_exu_nceen_e),
819                 .ifu_exu_pc_d          (ifu_exu_pc_d[47:0]),
820                 .ifu_exu_pcver_e       (ifu_exu_pcver_e[63:0]),
821                 .ifu_exu_range_check_jlret_d(ifu_exu_range_check_jlret_d),
822                 .ifu_exu_range_check_other_d(ifu_exu_range_check_other_d),
823                 .ifu_exu_rd_d          (ifu_exu_rd_d[4:0]),
824                 .ifu_exu_rd_exusr_e    (ifu_exu_rd_exusr_e),
825                 .ifu_exu_rd_ffusr_e    (ifu_exu_rd_ffusr_e),
826                 .ifu_exu_rd_ifusr_e    (ifu_exu_rd_ifusr_e),
827                 .ifu_exu_ren1_s        (ifu_exu_ren1_s),
828                 .ifu_exu_ren2_s        (ifu_exu_ren2_s),
829                 .ifu_exu_ren3_s        (ifu_exu_ren3_s),
830                 .ifu_exu_restore_d     (ifu_exu_restore_d),
831                 .ifu_exu_restored_e    (ifu_exu_restored_e),
832                 .ifu_exu_return_d      (ifu_exu_return_d),
833                 .ifu_exu_rs1_s         (ifu_exu_rs1_s[4:0]),
834                 .ifu_exu_rs1_vld_d     (ifu_exu_rs1_vld_d),
835                 .ifu_exu_rs2_s         (ifu_exu_rs2_s[4:0]),
836                 .ifu_exu_rs2_vld_d     (ifu_exu_rs2_vld_d),
837                 .ifu_exu_rs3_s         (ifu_exu_rs3_s[4:0]),
838                 .ifu_exu_rs3e_vld_d    (ifu_exu_rs3e_vld_d),
839                 .ifu_exu_rs3o_vld_d    (ifu_exu_rs3o_vld_d),
840                 .ifu_exu_save_d        (ifu_exu_save_d),
841                 .ifu_exu_saved_e       (ifu_exu_saved_e),
842                 .ifu_exu_setcc_d       (ifu_exu_setcc_d),
843                 .ifu_exu_sethi_inst_d  (ifu_exu_sethi_inst_d),
844                 .ifu_exu_shiftop_d     (ifu_exu_shiftop_d[2:0]),
845                 .ifu_exu_tagop_d       (ifu_exu_tagop_d),
846                 .ifu_exu_tcc_e         (ifu_exu_tcc_e),
847                 .ifu_exu_tid_s2        (ifu_exu_tid_s2[1:0]),
848                 .ifu_exu_ttype_vld_m   (ifu_exu_ttype_vld_m),
849                 .ifu_exu_tv_d          (ifu_exu_tv_d),
850                 .ifu_exu_use_rsr_e_l   (ifu_exu_use_rsr_e_l),
851                 .ifu_exu_usecin_d      (ifu_exu_usecin_d),
852                 .ifu_exu_useimm_d      (ifu_exu_useimm_d),
853                 .ifu_exu_wen_d         (ifu_exu_wen_d),
854                 .ifu_exu_wsr_inst_d    (ifu_exu_wsr_inst_d),
855                 .ifu_ffu_fcc_num_d     (ifu_ffu_fcc_num_d[1:0]),
856                 .ifu_ffu_fld_d         (ifu_ffu_fld_d),
857                 .ifu_ffu_fpop1_d       (ifu_ffu_fpop1_d),
858                 .ifu_ffu_fpop2_d       (ifu_ffu_fpop2_d),
859                 .ifu_ffu_fpopcode_d    (ifu_ffu_fpopcode_d[8:0]),
860                 .ifu_ffu_frd_d         (ifu_ffu_frd_d[4:0]),
861                 .ifu_ffu_frs1_d        (ifu_ffu_frs1_d[4:0]),
862                 .ifu_ffu_frs2_d        (ifu_ffu_frs2_d[4:0]),
863                 .ifu_ffu_fst_d         (ifu_ffu_fst_d),
864                 .ifu_ffu_inj_frferr    (ifu_ffu_inj_frferr),
865                 .ifu_ffu_ldfsr_d       (ifu_ffu_ldfsr_d),
866                 .ifu_ffu_ldst_size_d   (ifu_ffu_ldst_size_d),
867                 .ifu_ffu_ldxfsr_d      (ifu_ffu_ldxfsr_d),
868                 .ifu_ffu_mvcnd_m       (ifu_ffu_mvcnd_m),
869                 .ifu_ffu_quad_op_e     (ifu_ffu_quad_op_e),
870                 .ifu_ffu_stfsr_d       (ifu_ffu_stfsr_d),
871                 .ifu_ffu_visop_d       (ifu_ffu_visop_d),
872                 .ifu_lsu_alt_space_d   (ifu_lsu_alt_space_d),
873                 .ifu_lsu_asi_ack       (ifu_lsu_asi_ack),
874                 .ifu_lsu_asi_rd_unc    (ifu_lsu_asi_rd_unc),
875                 .ifu_lsu_casa_e        (ifu_lsu_casa_e),
876                 .ifu_lsu_destid_s      (ifu_lsu_destid_s[2:0]),
877                 .ifu_lsu_error_inj     (ifu_lsu_error_inj[3:0]),
878                 .ifu_lsu_fwd_data_vld  (ifu_lsu_fwd_data_vld),
879                 .ifu_lsu_fwd_wr_ack    (ifu_lsu_fwd_wr_ack),
880                 .ifu_lsu_ibuf_busy     (ifu_lsu_ibuf_busy),
881                 .ifu_lsu_imm_asi_d     (ifu_lsu_imm_asi_d[7:0]),
882                 .ifu_lsu_imm_asi_vld_d (ifu_lsu_imm_asi_vld_d),
883                 .ifu_lsu_inv_clear     (ifu_lsu_inv_clear),
884                 .ifu_lsu_ld_inst_e     (ifu_lsu_ld_inst_e),
885                 .ifu_lsu_ldst_dbl_e    (ifu_lsu_ldst_dbl_e),
886                 .ifu_lsu_ldst_fp_e     (ifu_lsu_ldst_fp_e),
887                 .ifu_lsu_ldst_size_e   (ifu_lsu_ldst_size_e[1:0]),
888                 .ifu_lsu_ldstub_e      (ifu_lsu_ldstub_e),
889                 .ifu_lsu_ldxa_data_vld_w2(ifu_lsu_ldxa_data_vld_w2),
890                 .ifu_lsu_ldxa_data_w2  (ifu_lsu_ldxa_data_w2[63:0]),
891                 .ifu_lsu_ldxa_illgl_va_w2(ifu_lsu_ldxa_illgl_va_w2),
892                 .ifu_lsu_ldxa_tid_w2   (ifu_lsu_ldxa_tid_w2[1:0]),
893                 .ifu_lsu_memref_d      (ifu_lsu_memref_d),
894                 .ifu_lsu_nceen         (ifu_lsu_nceen[3:0]),
895                 .ifu_lsu_pcxpkt_e      (ifu_lsu_pcxpkt_e[51:0]),
896                 .ifu_lsu_pcxreq_d      (ifu_lsu_pcxreq_d),
897                 .ifu_lsu_pref_inst_e   (ifu_lsu_pref_inst_e),
898                 .ifu_lsu_rd_e          (ifu_lsu_rd_e[4:0]),
899                 .ifu_lsu_sign_ext_e    (ifu_lsu_sign_ext_e),
900                 .ifu_lsu_st_inst_e     (ifu_lsu_st_inst_e),
901                 .ifu_lsu_swap_e        (ifu_lsu_swap_e),
902                 .ifu_lsu_wsr_inst_d    (ifu_lsu_wsr_inst_d),
903                 .ifu_mmu_trap_m        (ifu_mmu_trap_m),
904                 .ifu_spu_inst_vld_w    (),
905                 .ifu_spu_nceen         (),
906                 .ifu_spu_trap_ack      (),
907                 .ifu_tlu_alt_space_d   (ifu_tlu_alt_space_d),
908                 .ifu_tlu_done_inst_d   (ifu_tlu_done_inst_d),
909                 .ifu_tlu_flsh_inst_e   (ifu_tlu_flsh_inst_e),
910                 .ifu_tlu_flush_m       (ifu_tlu_flush_m),
911                 .ifu_tlu_hwint_m       (ifu_tlu_hwint_m),
912                 .ifu_tlu_icmiss_e      (ifu_tlu_icmiss_e),
913                 .ifu_tlu_immu_miss_m   (ifu_tlu_immu_miss_m),
914                 .ifu_tlu_inst_vld_m    (ifu_tlu_inst_vld_m),
915                 .ifu_tlu_itlb_done     (ifu_tlu_itlb_done),
916                 .ifu_tlu_l2imiss       (ifu_tlu_l2imiss[3:0]),
917                 .ifu_tlu_mb_inst_e     (ifu_tlu_mb_inst_e),
918                 .ifu_tlu_npc_m         (ifu_tlu_npc_m[48:0]),
919                 .ifu_tlu_pc_m          (ifu_tlu_pc_m[48:0]),
920                 .ifu_tlu_pc_oor_e      (ifu_tlu_pc_oor_e),
921                 .ifu_tlu_priv_violtn_m (ifu_tlu_priv_violtn_m),
922                 .ifu_tlu_retry_inst_d  (ifu_tlu_retry_inst_d),
923                 .ifu_tlu_rsr_inst_d    (ifu_tlu_rsr_inst_d),
924                 .ifu_tlu_rstint_m      (ifu_tlu_rstint_m),
925                 .ifu_tlu_sftint_m      (ifu_tlu_sftint_m),
926                 .ifu_tlu_sir_inst_m    (ifu_tlu_sir_inst_m),
927                 .ifu_tlu_sraddr_d      (ifu_tlu_sraddr_d[6:0]),
928                 .ifu_tlu_sraddr_d_v2   (ifu_tlu_sraddr_d_v2[6:0]),
929                 .ifu_tlu_thrid_d       (ifu_tlu_thrid_d[1:0]),
930                 .ifu_tlu_thrid_e       (ifu_tlu_thrid_e[1:0]),
931                 .ifu_tlu_trap_m        (ifu_tlu_trap_m),
932                 .ifu_tlu_ttype_m       (ifu_tlu_ttype_m[8:0]),
933                 .mbist_dcache_fail     (mbist_dcache_fail),
934                 .mbist_dcache_index    (mbist_dcache_index[6:0]),
935                 .mbist_dcache_read     (mbist_dcache_read),
936                 .mbist_dcache_way      (mbist_dcache_way[1:0]),
937                 .mbist_dcache_word     (mbist_dcache_word),
938                 .mbist_dcache_write    (mbist_dcache_write),
939                 .mbist_done            (mbist_done),
940                 .mbist_icache_fail     (mbist_icache_fail),
941                 .spc_efc_ifuse_data    (spc_efc_ifuse_data),
942                 // Inputs
943                 .mem_write_disable     (mem_write_disable),
944                 .mux_drive_disable     (mux_drive_disable),
945                 .exu_tlu_wsr_data_m    (exu_tlu_wsr_data_m[2:0]),
946                 .lsu_ictag_mrgn        (lsu_ictag_mrgn[3:0]),
947                 .tlu_itlb_tte_tag_w2   (tlu_itlb_tte_tag_w2[58:0]),
948                 .tlu_itlb_tte_data_w2  (tlu_itlb_tte_data_w2[42:0]),
949                 .tlu_itlb_rw_index_vld_g(tlu_itlb_rw_index_vld_g),
950                 .tlu_itlb_rw_index_g   (tlu_itlb_rw_index_g[5:0]),
951                 .tlu_idtlb_dmp_key_g   (tlu_idtlb_dmp_key_g[40:0]),
952                 .tlu_itlb_dmp_all_g    (tlu_itlb_dmp_all_g),
953                 .lsu_sscan_data        (lsu_sscan_data[15:0]),
954                 .const_cpuid           (const_cpuid[3:0]),
955                 .const_maskid          (const_maskid[7:0]),
956                 .ctu_sscan_se          (ctu_sscan_se),
957                 .ctu_sscan_snap        (ctu_sscan_snap),
958                 .ctu_sscan_tid         (ctu_sscan_tid[3:0]),
959                 .ctu_tck               (ctu_tck),
960                 .efc_spc_fuse_clk1     (efc_spc_fuse_clk1),
961                 .efc_spc_fuse_clk2     (efc_spc_fuse_clk2),
962                 .efc_spc_ifuse_ashift  (efc_spc_ifuse_ashift),
963                 .efc_spc_ifuse_data    (efc_spc_ifuse_data),
964                 .efc_spc_ifuse_dshift  (efc_spc_ifuse_dshift),
965                 .exu_ifu_brpc_e        (exu_ifu_brpc_e[47:0]),
966                 .exu_ifu_cc_d          (exu_ifu_cc_d[7:0]),
967                 .exu_ifu_ecc_ce_m      (exu_ifu_ecc_ce_m),
968                 .exu_ifu_ecc_ue_m      (exu_ifu_ecc_ue_m),
969                 .exu_ifu_err_reg_m     (exu_ifu_err_reg_m[7:0]),
970                 .exu_ifu_err_synd_m    (exu_ifu_err_synd_m[7:0]),
971                 .exu_ifu_inj_ack       (exu_ifu_inj_ack),
972                 .exu_ifu_longop_done_g (exu_ifu_longop_done_g[3:0]),
973                 .exu_ifu_oddwin_s      (exu_ifu_oddwin_s[3:0]),
974                 .exu_ifu_regn_e        (exu_ifu_regn_e),
975                 .exu_ifu_regz_e        (exu_ifu_regz_e),
976                 .exu_ifu_spill_e       (exu_ifu_spill_e),
977                 .exu_ifu_va_oor_m      (exu_ifu_va_oor_m),
978                 .ffu_ifu_cc_vld_w2     (ffu_ifu_cc_vld_w2[3:0]),
979                 .ffu_ifu_cc_w2         (ffu_ifu_cc_w2[7:0]),
980                 .ffu_ifu_ecc_ce_w2     (ffu_ifu_ecc_ce_w2),
981                 .ffu_ifu_ecc_ue_w2     (ffu_ifu_ecc_ue_w2),
982                 .ffu_ifu_err_reg_w2    (ffu_ifu_err_reg_w2[5:0]),
983                 .ffu_ifu_err_synd_w2   (ffu_ifu_err_synd_w2[13:0]),
984                 .ffu_ifu_fpop_done_w2  (ffu_ifu_fpop_done_w2),
985                 .ffu_ifu_fst_ce_w      (ffu_ifu_fst_ce_w),
986                 .ffu_ifu_inj_ack       (ffu_ifu_inj_ack),
987                 .ffu_ifu_stallreq      (ffu_ifu_stallreq),
988                 .ffu_ifu_tid_w2        (ffu_ifu_tid_w2[1:0]),
989                 .lsu_ifu_asi_addr      (lsu_ifu_asi_addr[17:0]),
990                 .lsu_ifu_asi_load      (lsu_ifu_asi_load),
991                 .lsu_ifu_asi_state     (lsu_ifu_asi_state[7:0]),
992                 .lsu_ifu_asi_thrid     (lsu_ifu_asi_thrid[1:0]),
993                 .lsu_ifu_asi_vld       (lsu_ifu_asi_vld),
994                 .lsu_ifu_dc_parity_error_w2(lsu_ifu_dc_parity_error_w2),
995                 .lsu_ifu_dcache_data_perror(lsu_ifu_dcache_data_perror),
996                 .lsu_ifu_dcache_tag_perror(lsu_ifu_dcache_tag_perror),
997                 .lsu_ifu_direct_map_l1 (lsu_ifu_direct_map_l1),
998                 .lsu_ifu_err_addr      (lsu_ifu_err_addr[47:4]),
999                 .lsu_ifu_error_tid     (lsu_ifu_error_tid[1:0]),
1000                 .lsu_ifu_icache_en     (lsu_ifu_icache_en[3:0]),
1001                 .lsu_ifu_inj_ack       (lsu_ifu_inj_ack[3:0]),
1002                 .lsu_ifu_io_error      (lsu_ifu_io_error),
1003                 .lsu_ifu_l2_corr_error (lsu_ifu_l2_corr_error),
1004                 .lsu_ifu_l2_unc_error  (lsu_ifu_l2_unc_error),
1005                 .lsu_ifu_ld_icache_index(lsu_ifu_ld_icache_index[`IC_IDX_HI:5]),
1006                 .lsu_ifu_ld_pcxpkt_tid (lsu_ifu_ld_pcxpkt_tid[1:0]),
1007                 .lsu_ifu_ld_pcxpkt_vld (lsu_ifu_ld_pcxpkt_vld),
1008                 .lsu_ifu_ldst_cmplt    (lsu_ifu_ldst_cmplt[3:0]),
1009                 .lsu_ifu_ldsta_internal_e(lsu_ifu_ldsta_internal_e),
1010                 .lsu_ifu_pcxpkt_ack_d  (lsu_ifu_pcxpkt_ack_d),
1011                 .lsu_ifu_stallreq      (lsu_ifu_stallreq),
1012                 .lsu_ifu_stbcnt0       (lsu_ifu_stbcnt0[3:0]),
1013                 .lsu_ifu_stbcnt1       (lsu_ifu_stbcnt1[3:0]),
1014                 .lsu_ifu_stbcnt2       (lsu_ifu_stbcnt2[3:0]),
1015                 .lsu_ifu_stbcnt3       (lsu_ifu_stbcnt3[3:0]),
1016                 .lsu_ifu_stxa_data     (lsu_ifu_stxa_data[47:0]),
1017                 .lsu_pid_state0        (lsu_pid_state0[2:0]),
1018                 .lsu_pid_state1        (lsu_pid_state1[2:0]),
1019                 .lsu_pid_state2        (lsu_pid_state2[2:0]),
1020                 .lsu_pid_state3        (lsu_pid_state3[2:0]),
1021                 .lsu_t0_pctxt_state    (lsu_t0_pctxt_state[12:0]),
1022                 .lsu_t1_pctxt_state    (lsu_t1_pctxt_state[12:0]),
1023                 .lsu_t2_pctxt_state    (lsu_t2_pctxt_state[12:0]),
1024                 .lsu_t3_pctxt_state    (lsu_t3_pctxt_state[12:0]),
1025                 .mbist_bisi_mode       (mbist_bisi_mode),
1026                 .mbist_dcache_data_in  (mbist_dcache_data_in[71:0]),
1027                 .mbist_loop_mode       (mbist_loop_mode),
1028                 .mbist_start           (mbist_start),
1029                 .mbist_stop_on_fail    (mbist_stop_on_fail),
1030                 .mbist_stop_on_next_fail(mbist_stop_on_next_fail),
1031                 .mbist_userdata_mode   (mbist_userdata_mode),
1032                 .rclk                  (rclk),
1033                 .se                    (se),
1034                 .sehold                (sehold),
1035                 .spu_ifu_corr_err_w2   (1'b0),
1036                 .spu_ifu_err_addr_w2   (36'h000000000),
1037                 .spu_ifu_int_w2        (1'b0),
1038                 .spu_ifu_mamem_err_w1  (1'b0),
1039                 .spu_ifu_ttype_tid_w2  (2'b00),
1040                 .spu_ifu_ttype_vld_w2  (1'b0),
1041                 .spu_ifu_ttype_w2      (1'b0),
1042                 .spu_ifu_unc_err_w1    (1'b0),
1043                 .testmode_l            (testmode_l),
1044                 .tlu_hpstate_enb       (tlu_hpstate_enb[3:0]),
1045                 .tlu_hpstate_ibe       (tlu_hpstate_ibe[3:0]),
1046                 .tlu_hpstate_priv      (tlu_hpstate_priv[3:0]),
1047                 .tlu_idtlb_dmp_thrid_g (tlu_idtlb_dmp_thrid_g[1:0]),
1048                 .tlu_ifu_hwint_i3      (tlu_ifu_hwint_i3[3:0]),
1049                 .tlu_ifu_nukeint_i2    (tlu_ifu_nukeint_i2),
1050                 .tlu_ifu_pstate_ie     (tlu_ifu_pstate_ie[3:0]),
1051                 .tlu_ifu_pstate_pef    (tlu_ifu_pstate_pef[3:0]),
1052                 .tlu_ifu_resumint_i2   (tlu_ifu_resumint_i2),
1053                 .tlu_ifu_rstint_i2     (tlu_ifu_rstint_i2),
1054                 .tlu_ifu_rstthr_i2     (tlu_ifu_rstthr_i2[3:0]),
1055                 .tlu_ifu_sftint_vld    (tlu_ifu_sftint_vld[3:0]),
1056                 .tlu_ifu_trap_tid_w1   (tlu_ifu_trap_tid_w1[1:0]),
1057                 .tlu_ifu_trapnpc_vld_w1(tlu_ifu_trapnpc_vld_w1),
1058                 .tlu_ifu_trapnpc_w2    (tlu_ifu_trapnpc_w2[48:0]),
1059                 .tlu_ifu_trappc_vld_w1 (tlu_ifu_trappc_vld_w1),
1060                 .tlu_ifu_trappc_w2     (tlu_ifu_trappc_w2[48:0]),
1061                 .tlu_itlb_data_rd_g    (tlu_itlb_data_rd_g),
1062                 .tlu_itlb_dmp_actxt_g  (tlu_itlb_dmp_actxt_g),
1063                 .tlu_itlb_dmp_nctxt_g  (tlu_itlb_dmp_nctxt_g),
1064                 .tlu_itlb_dmp_vld_g    (tlu_itlb_dmp_vld_g),
1065                 .tlu_itlb_invalidate_all_g(tlu_itlb_invalidate_all_g),
1066                 .tlu_itlb_tag_rd_g     (tlu_itlb_tag_rd_g),
1067                 .tlu_itlb_wr_vld_g     (tlu_itlb_wr_vld_g),
1068                 .tlu_lsu_pstate_am     (tlu_lsu_pstate_am[3:0]),
1069                 .tlu_lsu_pstate_priv   (tlu_lsu_pstate_priv[3:0]),
1070                 .tlu_lsu_redmode       (tlu_lsu_redmode[3:0]));
1071
1072`else
1073   
1074   sparc_ifu ifu(
1075                 // scan
1076                 .short_si0              (spc_scanin0),
1077                 .short_si1              (spc_scanin1),
1078                 .short_so0              (short_scan0_1),
1079                 .short_so1              (short_scan1_1),
1080                 .si0                    (scan0_1),
1081                 .so0                    (scan0_2),
1082                 // reset stuff and clk
1083                 .grst_l                 (spc_grst_l),
1084                 .arst_l                 (cmp_arst_l),
1085                 .gdbginit_l             (spc_dbginit_l),
1086                 
1087                 // quad ldst disabled
1088                 .lsu_ifu_quad_asi_e    (1'b0),
1089
1090                 // tlb on condition changes with hypervisor
1091                 // itlb_en is the bit from the lsu control register
1092                 // with no additional logic
1093                 .lsu_ifu_addr_real_l  (lsu_ifu_itlb_en[3:0]),
1094                 
1095                 // name change
1096                             .lsu_ifu_dtlb_data_ue      (lsu_ifu_tlb_data_ue),
1097                             .lsu_ifu_dtlb_tag_ue       (lsu_ifu_tlb_tag_ue),
1098                 .lsu_ifu_dtlb_data_su  (lsu_ifu_tlb_data_su),
1099
1100                       .tlu_ifu_hintp_vld           (tlu_hintp_vld[3:0]),
1101                       .tlu_ifu_rerr_vld            (tlu_rerr_vld[3:0]),
1102
1103                             .lsu_ifu_t0_tlz            (tlu_lsu_tl_zero[0]),
1104                             .lsu_ifu_t1_tlz            (tlu_lsu_tl_zero[1]),
1105                             .lsu_ifu_t2_tlz        (tlu_lsu_tl_zero[2]),
1106                             .lsu_ifu_t3_tlz        (tlu_lsu_tl_zero[3]),
1107                 
1108                 .lsu_ifu_ldst_miss_g   (lsu_ifu_ldst_miss_w),
1109                 .tlu_ifu_flush_pipe_w  (lsu_ifu_flush_pipe_w),
1110
1111                 .lsu_idtlb_mrgn        (lsu_itlb_mrgn[7:0]),
1112
1113                 .mbist_loop_on_address (mbist_loop_on_addr),
1114                 
1115                 .tlu_sscan_data        (tlu_sscan_test_data[62:0]),
1116                 .sparc_sscan_so        (spc_sscan_so),
1117                 .ifu_tlu_imm_asi_d     (ifu_tlu_imm_asi_d[8:0]),
1118
1119                 // bus width difference
1120                 .lsu_ifu_cpxpkt_i1     ({lsu_ifu_cpxpkt_vld_i1,
1121                                          lsu_ifu_cpxpkt_i1[`CPX_VLD-1:0]}),
1122                 
1123                             /*AUTOINST*/
1124                 // Outputs
1125                 .ifu_exu_addr_mask_d   (ifu_exu_addr_mask_d),
1126                 .ifu_tlu_inst_vld_w    (ifu_tlu_inst_vld_w),
1127                 .ifu_tlu_flush_w       (ifu_tlu_flush_w),
1128                 .ifu_lsu_alt_space_e   (ifu_lsu_alt_space_e),
1129                 .ifu_tlu_ttype_vld_m   (ifu_tlu_ttype_vld_m),
1130                 .ifu_exu_muldivop_d    (ifu_exu_muldivop_d[4:0]),
1131                 .ifu_lsu_thrid_s       (ifu_lsu_thrid_s[1:0]),
1132                 .mbist_write_data      (mbist_write_data[7:0]),
1133                 .ifu_exu_aluop_d       (ifu_exu_aluop_d[2:0]),
1134                 .ifu_exu_casa_d        (ifu_exu_casa_d),
1135                 .ifu_exu_dbrinst_d     (ifu_exu_dbrinst_d),
1136                 .ifu_exu_disable_ce_e  (ifu_exu_disable_ce_e),
1137                 .ifu_exu_dontmv_regz0_e(ifu_exu_dontmv_regz0_e),
1138                 .ifu_exu_dontmv_regz1_e(ifu_exu_dontmv_regz1_e),
1139                 .ifu_exu_ecc_mask      (ifu_exu_ecc_mask[7:0]),
1140                 .ifu_exu_enshift_d     (ifu_exu_enshift_d),
1141                 .ifu_exu_flushw_e      (ifu_exu_flushw_e),
1142                 .ifu_exu_ialign_d      (ifu_exu_ialign_d),
1143                 .ifu_exu_imm_data_d    (ifu_exu_imm_data_d[31:0]),
1144                 .ifu_exu_inj_irferr    (ifu_exu_inj_irferr),
1145                 .ifu_exu_inst_vld_e    (ifu_exu_inst_vld_e),
1146                 .ifu_exu_inst_vld_w    (ifu_exu_inst_vld_w),
1147                 .ifu_exu_invert_d      (ifu_exu_invert_d),
1148                 .ifu_exu_kill_e        (ifu_exu_kill_e),
1149                 .ifu_exu_muls_d        (ifu_exu_muls_d),
1150                 .ifu_exu_nceen_e       (ifu_exu_nceen_e),
1151                 .ifu_exu_pc_d          (ifu_exu_pc_d[47:0]),
1152                 .ifu_exu_pcver_e       (ifu_exu_pcver_e[63:0]),
1153                 .ifu_exu_range_check_jlret_d(ifu_exu_range_check_jlret_d),
1154                 .ifu_exu_range_check_other_d(ifu_exu_range_check_other_d),
1155                 .ifu_exu_rd_d          (ifu_exu_rd_d[4:0]),
1156                 .ifu_exu_rd_exusr_e    (ifu_exu_rd_exusr_e),
1157                 .ifu_exu_rd_ffusr_e    (ifu_exu_rd_ffusr_e),
1158                 .ifu_exu_rd_ifusr_e    (ifu_exu_rd_ifusr_e),
1159                 .ifu_exu_ren1_s        (ifu_exu_ren1_s),
1160                 .ifu_exu_ren2_s        (ifu_exu_ren2_s),
1161                 .ifu_exu_ren3_s        (ifu_exu_ren3_s),
1162                 .ifu_exu_restore_d     (ifu_exu_restore_d),
1163                 .ifu_exu_restored_e    (ifu_exu_restored_e),
1164                 .ifu_exu_return_d      (ifu_exu_return_d),
1165                 .ifu_exu_rs1_s         (ifu_exu_rs1_s[4:0]),
1166                 .ifu_exu_rs1_vld_d     (ifu_exu_rs1_vld_d),
1167                 .ifu_exu_rs2_s         (ifu_exu_rs2_s[4:0]),
1168                 .ifu_exu_rs2_vld_d     (ifu_exu_rs2_vld_d),
1169                 .ifu_exu_rs3_s         (ifu_exu_rs3_s[4:0]),
1170                 .ifu_exu_rs3e_vld_d    (ifu_exu_rs3e_vld_d),
1171                 .ifu_exu_rs3o_vld_d    (ifu_exu_rs3o_vld_d),
1172                 .ifu_exu_save_d        (ifu_exu_save_d),
1173                 .ifu_exu_saved_e       (ifu_exu_saved_e),
1174                 .ifu_exu_setcc_d       (ifu_exu_setcc_d),
1175                 .ifu_exu_sethi_inst_d  (ifu_exu_sethi_inst_d),
1176                 .ifu_exu_shiftop_d     (ifu_exu_shiftop_d[2:0]),
1177                 .ifu_exu_tagop_d       (ifu_exu_tagop_d),
1178                 .ifu_exu_tcc_e         (ifu_exu_tcc_e),
1179                 .ifu_exu_tid_s2        (ifu_exu_tid_s2[1:0]),
1180                 .ifu_exu_ttype_vld_m   (ifu_exu_ttype_vld_m),
1181                 .ifu_exu_tv_d          (ifu_exu_tv_d),
1182                 .ifu_exu_use_rsr_e_l   (ifu_exu_use_rsr_e_l),
1183                 .ifu_exu_usecin_d      (ifu_exu_usecin_d),
1184                 .ifu_exu_useimm_d      (ifu_exu_useimm_d),
1185                 .ifu_exu_wen_d         (ifu_exu_wen_d),
1186                 .ifu_exu_wsr_inst_d    (ifu_exu_wsr_inst_d),
1187                 .ifu_ffu_fcc_num_d     (ifu_ffu_fcc_num_d[1:0]),
1188                 .ifu_ffu_fld_d         (ifu_ffu_fld_d),
1189                 .ifu_ffu_fpop1_d       (ifu_ffu_fpop1_d),
1190                 .ifu_ffu_fpop2_d       (ifu_ffu_fpop2_d),
1191                 .ifu_ffu_fpopcode_d    (ifu_ffu_fpopcode_d[8:0]),
1192                 .ifu_ffu_frd_d         (ifu_ffu_frd_d[4:0]),
1193                 .ifu_ffu_frs1_d        (ifu_ffu_frs1_d[4:0]),
1194                 .ifu_ffu_frs2_d        (ifu_ffu_frs2_d[4:0]),
1195                 .ifu_ffu_fst_d         (ifu_ffu_fst_d),
1196                 .ifu_ffu_inj_frferr    (ifu_ffu_inj_frferr),
1197                 .ifu_ffu_ldfsr_d       (ifu_ffu_ldfsr_d),
1198                 .ifu_ffu_ldst_size_d   (ifu_ffu_ldst_size_d),
1199                 .ifu_ffu_ldxfsr_d      (ifu_ffu_ldxfsr_d),
1200                 .ifu_ffu_mvcnd_m       (ifu_ffu_mvcnd_m),
1201                 .ifu_ffu_quad_op_e     (ifu_ffu_quad_op_e),
1202                 .ifu_ffu_stfsr_d       (ifu_ffu_stfsr_d),
1203                 .ifu_ffu_visop_d       (ifu_ffu_visop_d),
1204                 .ifu_lsu_alt_space_d   (ifu_lsu_alt_space_d),
1205                 .ifu_lsu_asi_ack       (ifu_lsu_asi_ack),
1206                 .ifu_lsu_asi_rd_unc    (ifu_lsu_asi_rd_unc),
1207                 .ifu_lsu_casa_e        (ifu_lsu_casa_e),
1208                 .ifu_lsu_destid_s      (ifu_lsu_destid_s[2:0]),
1209                 .ifu_lsu_error_inj     (ifu_lsu_error_inj[3:0]),
1210                 .ifu_lsu_fwd_data_vld  (ifu_lsu_fwd_data_vld),
1211                 .ifu_lsu_fwd_wr_ack    (ifu_lsu_fwd_wr_ack),
1212                 .ifu_lsu_ibuf_busy     (ifu_lsu_ibuf_busy),
1213                 .ifu_lsu_imm_asi_d     (ifu_lsu_imm_asi_d[7:0]),
1214                 .ifu_lsu_imm_asi_vld_d (ifu_lsu_imm_asi_vld_d),
1215                 .ifu_lsu_inv_clear     (ifu_lsu_inv_clear),
1216                 .ifu_lsu_ld_inst_e     (ifu_lsu_ld_inst_e),
1217                 .ifu_lsu_ldst_dbl_e    (ifu_lsu_ldst_dbl_e),
1218                 .ifu_lsu_ldst_fp_e     (ifu_lsu_ldst_fp_e),
1219                 .ifu_lsu_ldst_size_e   (ifu_lsu_ldst_size_e[1:0]),
1220                 .ifu_lsu_ldstub_e      (ifu_lsu_ldstub_e),
1221                 .ifu_lsu_ldxa_data_vld_w2(ifu_lsu_ldxa_data_vld_w2),
1222                 .ifu_lsu_ldxa_data_w2  (ifu_lsu_ldxa_data_w2[63:0]),
1223                 .ifu_lsu_ldxa_illgl_va_w2(ifu_lsu_ldxa_illgl_va_w2),
1224                 .ifu_lsu_ldxa_tid_w2   (ifu_lsu_ldxa_tid_w2[1:0]),
1225                 .ifu_lsu_memref_d      (ifu_lsu_memref_d),
1226                 .ifu_lsu_nceen         (ifu_lsu_nceen[3:0]),
1227                 .ifu_lsu_pcxpkt_e      (ifu_lsu_pcxpkt_e[51:0]),
1228                 .ifu_lsu_pcxreq_d      (ifu_lsu_pcxreq_d),
1229                 .ifu_lsu_pref_inst_e   (ifu_lsu_pref_inst_e),
1230                 .ifu_lsu_rd_e          (ifu_lsu_rd_e[4:0]),
1231                 .ifu_lsu_sign_ext_e    (ifu_lsu_sign_ext_e),
1232                 .ifu_lsu_st_inst_e     (ifu_lsu_st_inst_e),
1233                 .ifu_lsu_swap_e        (ifu_lsu_swap_e),
1234                 .ifu_lsu_wsr_inst_d    (ifu_lsu_wsr_inst_d),
1235                 .ifu_mmu_trap_m        (ifu_mmu_trap_m),
1236                 .ifu_spu_inst_vld_w    (ifu_spu_inst_vld_w),
1237                 .ifu_spu_nceen         (ifu_spu_nceen[3:0]),
1238                 .ifu_spu_trap_ack      (ifu_spu_trap_ack),
1239                 .ifu_tlu_alt_space_d   (ifu_tlu_alt_space_d),
1240                 .ifu_tlu_done_inst_d   (ifu_tlu_done_inst_d),
1241                 .ifu_tlu_flsh_inst_e   (ifu_tlu_flsh_inst_e),
1242                 .ifu_tlu_flush_m       (ifu_tlu_flush_m),
1243                 .ifu_tlu_hwint_m       (ifu_tlu_hwint_m),
1244                 .ifu_tlu_icmiss_e      (ifu_tlu_icmiss_e),
1245                 .ifu_tlu_immu_miss_m   (ifu_tlu_immu_miss_m),
1246                 .ifu_tlu_inst_vld_m    (ifu_tlu_inst_vld_m),
1247                 .ifu_tlu_itlb_done     (ifu_tlu_itlb_done),
1248                 .ifu_tlu_l2imiss       (ifu_tlu_l2imiss[3:0]),
1249                 .ifu_tlu_mb_inst_e     (ifu_tlu_mb_inst_e),
1250                 .ifu_tlu_npc_m         (ifu_tlu_npc_m[48:0]),
1251                 .ifu_tlu_pc_m          (ifu_tlu_pc_m[48:0]),
1252                 .ifu_tlu_pc_oor_e      (ifu_tlu_pc_oor_e),
1253                 .ifu_tlu_priv_violtn_m (ifu_tlu_priv_violtn_m),
1254                 .ifu_tlu_retry_inst_d  (ifu_tlu_retry_inst_d),
1255                 .ifu_tlu_rsr_inst_d    (ifu_tlu_rsr_inst_d),
1256                 .ifu_tlu_rstint_m      (ifu_tlu_rstint_m),
1257                 .ifu_tlu_sftint_m      (ifu_tlu_sftint_m),
1258                 .ifu_tlu_sir_inst_m    (ifu_tlu_sir_inst_m),
1259                 .ifu_tlu_sraddr_d      (ifu_tlu_sraddr_d[6:0]),
1260                 .ifu_tlu_sraddr_d_v2   (ifu_tlu_sraddr_d_v2[6:0]),
1261                 .ifu_tlu_thrid_d       (ifu_tlu_thrid_d[1:0]),
1262                 .ifu_tlu_thrid_e       (ifu_tlu_thrid_e[1:0]),
1263                 .ifu_tlu_trap_m        (ifu_tlu_trap_m),
1264                 .ifu_tlu_ttype_m       (ifu_tlu_ttype_m[8:0]),
1265                 .mbist_dcache_fail     (mbist_dcache_fail),
1266                 .mbist_dcache_index    (mbist_dcache_index[6:0]),
1267                 .mbist_dcache_read     (mbist_dcache_read),
1268                 .mbist_dcache_way      (mbist_dcache_way[1:0]),
1269                 .mbist_dcache_word     (mbist_dcache_word),
1270                 .mbist_dcache_write    (mbist_dcache_write),
1271                 .mbist_done            (mbist_done),
1272                 .mbist_icache_fail     (mbist_icache_fail),
1273                 .spc_efc_ifuse_data    (spc_efc_ifuse_data),
1274                 // Inputs
1275                 .mem_write_disable     (mem_write_disable),
1276                 .mux_drive_disable     (mux_drive_disable),
1277                 .exu_tlu_wsr_data_m    (exu_tlu_wsr_data_m[2:0]),
1278                 .lsu_ictag_mrgn        (lsu_ictag_mrgn[3:0]),
1279                 .tlu_itlb_tte_tag_w2   (tlu_itlb_tte_tag_w2[58:0]),
1280                 .tlu_itlb_tte_data_w2  (tlu_itlb_tte_data_w2[42:0]),
1281                 .tlu_itlb_rw_index_vld_g(tlu_itlb_rw_index_vld_g),
1282                 .tlu_itlb_rw_index_g   (tlu_itlb_rw_index_g[5:0]),
1283                 .tlu_idtlb_dmp_key_g   (tlu_idtlb_dmp_key_g[40:0]),
1284                 .tlu_itlb_dmp_all_g    (tlu_itlb_dmp_all_g),
1285                 .lsu_sscan_data        (lsu_sscan_data[15:0]),
1286                 .const_cpuid           (const_cpuid[3:0]),
1287                 .const_maskid          (const_maskid[7:0]),
1288                 .ctu_sscan_se          (ctu_sscan_se),
1289                 .ctu_sscan_snap        (ctu_sscan_snap),
1290                 .ctu_sscan_tid         (ctu_sscan_tid[3:0]),
1291                 .ctu_tck               (ctu_tck),
1292                 .efc_spc_fuse_clk1     (efc_spc_fuse_clk1),
1293                 .efc_spc_fuse_clk2     (efc_spc_fuse_clk2),
1294                 .efc_spc_ifuse_ashift  (efc_spc_ifuse_ashift),
1295                 .efc_spc_ifuse_data    (efc_spc_ifuse_data),
1296                 .efc_spc_ifuse_dshift  (efc_spc_ifuse_dshift),
1297                 .exu_ifu_brpc_e        (exu_ifu_brpc_e[47:0]),
1298                 .exu_ifu_cc_d          (exu_ifu_cc_d[7:0]),
1299                 .exu_ifu_ecc_ce_m      (exu_ifu_ecc_ce_m),
1300                 .exu_ifu_ecc_ue_m      (exu_ifu_ecc_ue_m),
1301                 .exu_ifu_err_reg_m     (exu_ifu_err_reg_m[7:0]),
1302                 .exu_ifu_err_synd_m    (exu_ifu_err_synd_m[7:0]),
1303                 .exu_ifu_inj_ack       (exu_ifu_inj_ack),
1304                 .exu_ifu_longop_done_g (exu_ifu_longop_done_g[3:0]),
1305                 .exu_ifu_oddwin_s      (exu_ifu_oddwin_s[3:0]),
1306                 .exu_ifu_regn_e        (exu_ifu_regn_e),
1307                 .exu_ifu_regz_e        (exu_ifu_regz_e),
1308                 .exu_ifu_spill_e       (exu_ifu_spill_e),
1309                 .exu_ifu_va_oor_m      (exu_ifu_va_oor_m),
1310                 .ffu_ifu_cc_vld_w2     (ffu_ifu_cc_vld_w2[3:0]),
1311                 .ffu_ifu_cc_w2         (ffu_ifu_cc_w2[7:0]),
1312                 .ffu_ifu_ecc_ce_w2     (ffu_ifu_ecc_ce_w2),
1313                 .ffu_ifu_ecc_ue_w2     (ffu_ifu_ecc_ue_w2),
1314                 .ffu_ifu_err_reg_w2    (ffu_ifu_err_reg_w2[5:0]),
1315                 .ffu_ifu_err_synd_w2   (ffu_ifu_err_synd_w2[13:0]),
1316                 .ffu_ifu_fpop_done_w2  (ffu_ifu_fpop_done_w2),
1317                 .ffu_ifu_fst_ce_w      (ffu_ifu_fst_ce_w),
1318                 .ffu_ifu_inj_ack       (ffu_ifu_inj_ack),
1319                 .ffu_ifu_stallreq      (ffu_ifu_stallreq),
1320                 .ffu_ifu_tid_w2        (ffu_ifu_tid_w2[1:0]),
1321                 .lsu_ifu_asi_addr      (lsu_ifu_asi_addr[17:0]),
1322                 .lsu_ifu_asi_load      (lsu_ifu_asi_load),
1323                 .lsu_ifu_asi_state     (lsu_ifu_asi_state[7:0]),
1324                 .lsu_ifu_asi_thrid     (lsu_ifu_asi_thrid[1:0]),
1325                 .lsu_ifu_asi_vld       (lsu_ifu_asi_vld),
1326                 .lsu_ifu_dc_parity_error_w2(lsu_ifu_dc_parity_error_w2),
1327                 .lsu_ifu_dcache_data_perror(lsu_ifu_dcache_data_perror),
1328                 .lsu_ifu_dcache_tag_perror(lsu_ifu_dcache_tag_perror),
1329                 .lsu_ifu_direct_map_l1 (lsu_ifu_direct_map_l1),
1330                 .lsu_ifu_err_addr      (lsu_ifu_err_addr[47:4]),
1331                 .lsu_ifu_error_tid     (lsu_ifu_error_tid[1:0]),
1332                 .lsu_ifu_icache_en     (lsu_ifu_icache_en[3:0]),
1333                 .lsu_ifu_inj_ack       (lsu_ifu_inj_ack[3:0]),
1334                 .lsu_ifu_io_error      (lsu_ifu_io_error),
1335                 .lsu_ifu_l2_corr_error (lsu_ifu_l2_corr_error),
1336                 .lsu_ifu_l2_unc_error  (lsu_ifu_l2_unc_error),
1337                 .lsu_ifu_ld_icache_index(lsu_ifu_ld_icache_index[`IC_IDX_HI:5]),
1338                 .lsu_ifu_ld_pcxpkt_tid (lsu_ifu_ld_pcxpkt_tid[1:0]),
1339                 .lsu_ifu_ld_pcxpkt_vld (lsu_ifu_ld_pcxpkt_vld),
1340                 .lsu_ifu_ldst_cmplt    (lsu_ifu_ldst_cmplt[3:0]),
1341                 .lsu_ifu_ldsta_internal_e(lsu_ifu_ldsta_internal_e),
1342                 .lsu_ifu_pcxpkt_ack_d  (lsu_ifu_pcxpkt_ack_d),
1343                 .lsu_ifu_stallreq      (lsu_ifu_stallreq),
1344                 .lsu_ifu_stbcnt0       (lsu_ifu_stbcnt0[3:0]),
1345                 .lsu_ifu_stbcnt1       (lsu_ifu_stbcnt1[3:0]),
1346                 .lsu_ifu_stbcnt2       (lsu_ifu_stbcnt2[3:0]),
1347                 .lsu_ifu_stbcnt3       (lsu_ifu_stbcnt3[3:0]),
1348                 .lsu_ifu_stxa_data     (lsu_ifu_stxa_data[47:0]),
1349                 .lsu_pid_state0        (lsu_pid_state0[2:0]),
1350                 .lsu_pid_state1        (lsu_pid_state1[2:0]),
1351                 .lsu_pid_state2        (lsu_pid_state2[2:0]),
1352                 .lsu_pid_state3        (lsu_pid_state3[2:0]),
1353                 .lsu_t0_pctxt_state    (lsu_t0_pctxt_state[12:0]),
1354                 .lsu_t1_pctxt_state    (lsu_t1_pctxt_state[12:0]),
1355                 .lsu_t2_pctxt_state    (lsu_t2_pctxt_state[12:0]),
1356                 .lsu_t3_pctxt_state    (lsu_t3_pctxt_state[12:0]),
1357                 .mbist_bisi_mode       (mbist_bisi_mode),
1358                 .mbist_dcache_data_in  (mbist_dcache_data_in[71:0]),
1359                 .mbist_loop_mode       (mbist_loop_mode),
1360                 .mbist_start           (mbist_start),
1361                 .mbist_stop_on_fail    (mbist_stop_on_fail),
1362                 .mbist_stop_on_next_fail(mbist_stop_on_next_fail),
1363                 .mbist_userdata_mode   (mbist_userdata_mode),
1364                 .rclk                  (rclk),
1365                 .se                    (se),
1366                 .sehold                (sehold),
1367                 .spu_ifu_corr_err_w2   (spu_ifu_corr_err_w2),
1368                 .spu_ifu_err_addr_w2   (spu_ifu_err_addr_w2[39:4]),
1369                 .spu_ifu_int_w2        (spu_ifu_int_w2),
1370                 .spu_ifu_mamem_err_w1  (spu_ifu_mamem_err_w1),
1371                 .spu_ifu_ttype_tid_w2  (spu_ifu_ttype_tid_w2[1:0]),
1372                 .spu_ifu_ttype_vld_w2  (spu_ifu_ttype_vld_w2),
1373                 .spu_ifu_ttype_w2      (spu_ifu_ttype_w2),
1374                 .spu_ifu_unc_err_w1    (spu_ifu_unc_err_w1),
1375                 .testmode_l            (testmode_l),
1376                 .tlu_hpstate_enb       (tlu_hpstate_enb[3:0]),
1377                 .tlu_hpstate_ibe       (tlu_hpstate_ibe[3:0]),
1378                 .tlu_hpstate_priv      (tlu_hpstate_priv[3:0]),
1379                 .tlu_idtlb_dmp_thrid_g (tlu_idtlb_dmp_thrid_g[1:0]),
1380                 .tlu_ifu_hwint_i3      (tlu_ifu_hwint_i3[3:0]),
1381                 .tlu_ifu_nukeint_i2    (tlu_ifu_nukeint_i2),
1382                 .tlu_ifu_pstate_ie     (tlu_ifu_pstate_ie[3:0]),
1383                 .tlu_ifu_pstate_pef    (tlu_ifu_pstate_pef[3:0]),
1384                 .tlu_ifu_resumint_i2   (tlu_ifu_resumint_i2),
1385                 .tlu_ifu_rstint_i2     (tlu_ifu_rstint_i2),
1386                 .tlu_ifu_rstthr_i2     (tlu_ifu_rstthr_i2[3:0]),
1387                 .tlu_ifu_sftint_vld    (tlu_ifu_sftint_vld[3:0]),
1388                 .tlu_ifu_trap_tid_w1   (tlu_ifu_trap_tid_w1[1:0]),
1389                 .tlu_ifu_trapnpc_vld_w1(tlu_ifu_trapnpc_vld_w1),
1390                 .tlu_ifu_trapnpc_w2    (tlu_ifu_trapnpc_w2[48:0]),
1391                 .tlu_ifu_trappc_vld_w1 (tlu_ifu_trappc_vld_w1),
1392                 .tlu_ifu_trappc_w2     (tlu_ifu_trappc_w2[48:0]),
1393                 .tlu_itlb_data_rd_g    (tlu_itlb_data_rd_g),
1394                 .tlu_itlb_dmp_actxt_g  (tlu_itlb_dmp_actxt_g),
1395                 .tlu_itlb_dmp_nctxt_g  (tlu_itlb_dmp_nctxt_g),
1396                 .tlu_itlb_dmp_vld_g    (tlu_itlb_dmp_vld_g),
1397                 .tlu_itlb_invalidate_all_g(tlu_itlb_invalidate_all_g),
1398                 .tlu_itlb_tag_rd_g     (tlu_itlb_tag_rd_g),
1399                 .tlu_itlb_wr_vld_g     (tlu_itlb_wr_vld_g),
1400                 .tlu_lsu_pstate_am     (tlu_lsu_pstate_am[3:0]),
1401                 .tlu_lsu_pstate_priv   (tlu_lsu_pstate_priv[3:0]),
1402                 .tlu_lsu_redmode       (tlu_lsu_redmode[3:0]));
1403
1404`endif //  `ifdef FPGA_SYN_NO_SPU
1405   
1406
1407`ifdef FPGA_SYN_NO_SPU
1408
1409      lsu lsu(
1410           // temp - name change
1411           .ifu_tlu_wsr_inst_d          (ifu_lsu_wsr_inst_d),
1412           // eco 6529 .
1413           .lsu_ffu_st_dtlb_perr_g              (lsu_ffu_st_dtlb_perr_g),
1414           // Bug 4799.
1415           .tlu_lsu_priv_trap_m         (tlu_lsu_priv_trap_m),
1416
1417           .short_si0              (short_scan0_1),
1418           .short_si1              (short_scan1_1),
1419           .short_so0              (short_scan0_2),
1420           .short_so1              (short_scan1_2),
1421           .si0                          (scan0_3),
1422           .si1                          (short_scan1_4),
1423           .so0                          (scan0_4),
1424           .so1                          (scan1_1),
1425           // reset stuff
1426           .grst_l                       (spc_grst_l),
1427           .arst_l                       (cmp_arst_l),
1428           .clk                          (rclk),
1429                 .lsu_exu_dfill_data_w2 (lsu_exu_dfill_data_g[63:0]),
1430                 .lsu_exu_dfill_vld_w2  (lsu_exu_dfill_vld_g),
1431                 .lsu_exu_ldst_miss_w2  (lsu_exu_ldst_miss_g2),
1432           //.cpx_spc_data_cx             (cpx_spc_data_cx3[`CPX_WIDTH-1:0]),
1433           .cpx_spc_data_cx             ({cpx_spc_data_cx3_b144to140[`CPX_WIDTH-1:140],
1434                                          cpx_spc_data_cx3[139:121],
1435                                          cpx_spc_data_cx3_b120to118[`CPX_INV_CID_HI:`CPX_INV_CID_LO],
1436                                          cpx_spc_data_cx3[117:110],
1437                                          cpx_spc_data_cx3_b109,
1438                                          cpx_spc_data_cx3[108:107],
1439                                          cpx_spc_data_cx3_b106,
1440                                          cpx_spc_data_cx3[105:104],
1441                                          cpx_spc_data_cx3_b103,
1442                                          cpx_spc_data_cx3[102:101],
1443                                          cpx_spc_data_cx3_b100,
1444                                          cpx_spc_data_cx3[99:98],
1445                                          cpx_spc_data_cx3_b97,
1446                                          cpx_spc_data_cx3[96:95],
1447                                          cpx_spc_data_cx3_b94,
1448                                          cpx_spc_data_cx3[93:92],
1449                                          cpx_spc_data_cx3_b91,
1450                                          cpx_spc_data_cx3[90:89],
1451                                          cpx_spc_data_cx3_b88,
1452                                          cpx_spc_data_cx3[87:85],
1453                                          cpx_spc_data_cx3_b84,
1454                                          cpx_spc_data_cx3[83:81],
1455                                          cpx_spc_data_cx3_b80,
1456                                          cpx_spc_data_cx3[79:77],
1457                                          cpx_spc_data_cx3_b76,
1458                                          cpx_spc_data_cx3[75:73],
1459                                          cpx_spc_data_cx3_b72,
1460                                          cpx_spc_data_cx3[71:69],
1461                                          cpx_spc_data_cx3_b68,
1462                                          cpx_spc_data_cx3[67:65],
1463                                          cpx_spc_data_cx3_b64,
1464                                          cpx_spc_data_cx3[63:61],
1465                                          cpx_spc_data_cx3_b60,
1466                                          cpx_spc_data_cx3[59:57],
1467                                          cpx_spc_data_cx3_b56,
1468                                          cpx_spc_data_cx3[55:54],
1469                                          cpx_spc_data_cx3_b53,
1470                                          cpx_spc_data_cx3[52:51],
1471                                          cpx_spc_data_cx3_b50,
1472                                          cpx_spc_data_cx3[49:48],
1473                                          cpx_spc_data_cx3_b47,
1474                                          cpx_spc_data_cx3[46:45],
1475                                          cpx_spc_data_cx3_b44,
1476                                          cpx_spc_data_cx3[43:42],
1477                                          cpx_spc_data_cx3_b41,
1478                                          cpx_spc_data_cx3[40:39],
1479                                          cpx_spc_data_cx3_b38,
1480                                          cpx_spc_data_cx3[37:36],
1481                                          cpx_spc_data_cx3_b35,
1482                                          cpx_spc_data_cx3[34:33],
1483                                          cpx_spc_data_cx3_b32,
1484                                          cpx_spc_data_cx3[31:29],
1485                                          cpx_spc_data_cx3_b28,
1486                                          cpx_spc_data_cx3[27:25],
1487                                          cpx_spc_data_cx3_b24,
1488                                          cpx_spc_data_cx3[23:21],
1489                                          cpx_spc_data_cx3_b20,
1490                                          cpx_spc_data_cx3[19:17],
1491                                          cpx_spc_data_cx3_b16,
1492                                          cpx_spc_data_cx3[15:13],
1493                                          cpx_spc_data_cx3_b12,
1494                                          cpx_spc_data_cx3[11:9],
1495                                          cpx_spc_data_cx3_b8,
1496                                          cpx_spc_data_cx3[7:5],
1497                                          cpx_spc_data_cx3_b4,
1498                                          cpx_spc_data_cx3[3:1],
1499                                          cpx_spc_data_cx3_b0}),
1500           .exu_tlu_wsr_data_m          (exu_tlu_wsr_data_m[7:0]),
1501           
1502           // Hypervisor related
1503           .tlu_lsu_hpv_priv            (tlu_hpstate_priv[3:0]),
1504           .tlu_lsu_hpstate_en          (tlu_hpstate_enb[3:0]),
1505
1506                 .spu_lsu_int_w2                (1'b0),
1507           .gdbginit_l                  (spc_dbginit_l),
1508           /*AUTOINST*/
1509           // Outputs
1510           .bist_ctl_reg_in             (bist_ctl_reg_in[6:0]),
1511           .bist_ctl_reg_wr_en          (bist_ctl_reg_wr_en),
1512           .ifu_tlu_flush_fd2_w         (ifu_tlu_flush_fd2_w),
1513           .ifu_tlu_flush_fd3_w         (ifu_tlu_flush_fd3_w),
1514           .ifu_tlu_flush_fd_w          (ifu_tlu_flush_fd_w),
1515           .lsu_asi_reg0                (lsu_asi_reg0[7:0]),
1516           .lsu_asi_reg1                (lsu_asi_reg1[7:0]),
1517           .lsu_asi_reg2                (lsu_asi_reg2[7:0]),
1518           .lsu_asi_reg3                (lsu_asi_reg3[7:0]),
1519           .lsu_dmmu_sfsr_trp_wr        (lsu_dmmu_sfsr_trp_wr[3:0]),
1520           .lsu_dsfsr_din_g             (lsu_dsfsr_din_g[23:0]),
1521           .lsu_exu_flush_pipe_w        (lsu_exu_flush_pipe_w),
1522           .lsu_exu_rd_m                (lsu_exu_rd_m[4:0]),
1523           .lsu_exu_st_dtlb_perr_g      (lsu_exu_st_dtlb_perr_g),
1524           .lsu_exu_thr_m               (lsu_exu_thr_m[1:0]),
1525           .lsu_ffu_ack                 (lsu_ffu_ack),
1526           .lsu_ffu_blk_asi_e           (lsu_ffu_blk_asi_e),
1527           .lsu_ffu_flush_pipe_w        (lsu_ffu_flush_pipe_w),
1528           .lsu_ffu_ld_data             (lsu_ffu_ld_data[63:0]),
1529           .lsu_ffu_ld_vld              (lsu_ffu_ld_vld),
1530           .lsu_ffu_stb_full0           (lsu_ffu_stb_full0),
1531           .lsu_ffu_stb_full1           (lsu_ffu_stb_full1),
1532           .lsu_ffu_stb_full2           (lsu_ffu_stb_full2),
1533           .lsu_ffu_stb_full3           (lsu_ffu_stb_full3),
1534           .lsu_ictag_mrgn              (lsu_ictag_mrgn[3:0]),
1535           .lsu_ifu_asi_addr            (lsu_ifu_asi_addr[17:0]),
1536           .lsu_ifu_asi_load            (lsu_ifu_asi_load),
1537           .lsu_ifu_asi_state           (lsu_ifu_asi_state[7:0]),
1538           .lsu_ifu_asi_thrid           (lsu_ifu_asi_thrid[1:0]),
1539           .lsu_ifu_asi_vld             (lsu_ifu_asi_vld),
1540           .lsu_ifu_cpxpkt_i1           (lsu_ifu_cpxpkt_i1[`CPX_VLD-1:0]),
1541           .lsu_ifu_cpxpkt_vld_i1       (lsu_ifu_cpxpkt_vld_i1),
1542           .lsu_ifu_dc_parity_error_w2  (lsu_ifu_dc_parity_error_w2),
1543           .lsu_ifu_dcache_data_perror  (lsu_ifu_dcache_data_perror),
1544           .lsu_ifu_dcache_tag_perror   (lsu_ifu_dcache_tag_perror),
1545           .lsu_ifu_direct_map_l1       (lsu_ifu_direct_map_l1),
1546           .lsu_ifu_error_tid           (lsu_ifu_error_tid[1:0]),
1547           .lsu_ifu_flush_pipe_w        (lsu_ifu_flush_pipe_w),
1548           .lsu_ifu_icache_en           (lsu_ifu_icache_en[3:0]),
1549           .lsu_ifu_io_error            (lsu_ifu_io_error),
1550           .lsu_ifu_itlb_en             (lsu_ifu_itlb_en[3:0]),
1551           .lsu_ifu_l2_corr_error       (lsu_ifu_l2_corr_error),
1552           .lsu_ifu_l2_unc_error        (lsu_ifu_l2_unc_error),
1553           .lsu_ifu_ld_icache_index     (lsu_ifu_ld_icache_index[11:5]),
1554           .lsu_ifu_ld_pcxpkt_tid       (lsu_ifu_ld_pcxpkt_tid[1:0]),
1555           .lsu_ifu_ld_pcxpkt_vld       (lsu_ifu_ld_pcxpkt_vld),
1556           .lsu_ifu_ldst_cmplt          (lsu_ifu_ldst_cmplt[3:0]),
1557           .lsu_ifu_ldst_miss_w         (lsu_ifu_ldst_miss_w),
1558           .lsu_ifu_ldsta_internal_e    (lsu_ifu_ldsta_internal_e),
1559           .lsu_ifu_pcxpkt_ack_d        (lsu_ifu_pcxpkt_ack_d),
1560           .lsu_ifu_stallreq            (lsu_ifu_stallreq),
1561           .lsu_ifu_stbcnt0             (lsu_ifu_stbcnt0[3:0]),
1562           .lsu_ifu_stbcnt1             (lsu_ifu_stbcnt1[3:0]),
1563           .lsu_ifu_stbcnt2             (lsu_ifu_stbcnt2[3:0]),
1564           .lsu_ifu_stbcnt3             (lsu_ifu_stbcnt3[3:0]),
1565           .lsu_ifu_stxa_data           (lsu_ifu_stxa_data[47:0]),
1566           .lsu_ifu_tlb_data_su         (lsu_ifu_tlb_data_su),
1567           .lsu_ifu_tlb_data_ue         (lsu_ifu_tlb_data_ue),
1568           .lsu_ifu_tlb_tag_ue          (lsu_ifu_tlb_tag_ue),
1569           .lsu_itlb_mrgn               (lsu_itlb_mrgn[7:0]),
1570           .lsu_mamem_mrgn              (),
1571           .lsu_mmu_defr_trp_taken_g    (lsu_mmu_defr_trp_taken_g),
1572           .lsu_mmu_flush_pipe_w        (lsu_mmu_flush_pipe_w),
1573           .lsu_mmu_rs3_data_g          (lsu_mmu_rs3_data_g[63:0]),
1574           .lsu_pid_state0              (lsu_pid_state0[2:0]),
1575           .lsu_pid_state1              (lsu_pid_state1[2:0]),
1576           .lsu_pid_state2              (lsu_pid_state2[2:0]),
1577           .lsu_pid_state3              (lsu_pid_state3[2:0]),
1578           .lsu_spu_asi_state_e         (),
1579           .lsu_spu_early_flush_g       (),
1580           .lsu_spu_ldst_ack            (),
1581           .lsu_spu_stb_empty           (),
1582           .lsu_spu_strm_ack_cmplt      (),
1583           .lsu_t0_pctxt_state          (lsu_t0_pctxt_state[12:0]),
1584           .lsu_t1_pctxt_state          (lsu_t1_pctxt_state[12:0]),
1585           .lsu_t2_pctxt_state          (lsu_t2_pctxt_state[12:0]),
1586           .lsu_t3_pctxt_state          (lsu_t3_pctxt_state[12:0]),
1587           .lsu_tlu_async_tid_w2        (lsu_tlu_async_tid_w2[1:0]),
1588           .lsu_tlu_async_ttype_vld_w2  (lsu_tlu_async_ttype_vld_w2),
1589           .lsu_tlu_async_ttype_w2      (lsu_tlu_async_ttype_w2[6:0]),
1590           .lsu_tlu_cpx_req             (lsu_tlu_cpx_req[3:0]),
1591           .lsu_tlu_cpx_vld             (lsu_tlu_cpx_vld),
1592           .lsu_tlu_daccess_excptn_g    (lsu_tlu_daccess_excptn_g),
1593           .lsu_tlu_dcache_miss_w2      (lsu_tlu_dcache_miss_w2[3:0]),
1594           .lsu_tlu_defr_trp_taken_g    (lsu_tlu_defr_trp_taken_g),
1595           .lsu_tlu_dmmu_miss_g         (lsu_tlu_dmmu_miss_g),
1596           .lsu_tlu_dside_ctxt_m        (lsu_tlu_dside_ctxt_m[12:0]),
1597           .lsu_tlu_dtlb_done           (lsu_tlu_dtlb_done),
1598           .lsu_tlu_early_flush2_w      (lsu_tlu_early_flush2_w),
1599           .lsu_tlu_early_flush_w       (lsu_tlu_early_flush_w),
1600           .lsu_tlu_intpkt              (lsu_tlu_intpkt[17:0]),
1601           .lsu_tlu_l2_dmiss            (lsu_tlu_l2_dmiss[3:0]),
1602           .lsu_tlu_ldst_va_m           (lsu_tlu_ldst_va_m[9:0]),
1603           .lsu_tlu_misalign_addr_ldst_atm_m(lsu_tlu_misalign_addr_ldst_atm_m),
1604           .lsu_tlu_pctxt_m             (lsu_tlu_pctxt_m[12:0]),
1605           .lsu_tlu_pcxpkt_ack          (lsu_tlu_pcxpkt_ack),
1606           .lsu_tlu_rs3_data_g          (lsu_tlu_rs3_data_g[63:0]),
1607           .lsu_tlu_rsr_data_e          (lsu_tlu_rsr_data_e[7:0]),
1608           .lsu_tlu_stb_full_w2         (lsu_tlu_stb_full_w2[3:0]),
1609           .lsu_tlu_thrid_d             (lsu_tlu_thrid_d[1:0]),
1610           .lsu_tlu_tlb_access_tid_m    (lsu_tlu_tlb_access_tid_m[1:0]),
1611           .lsu_tlu_tlb_asi_state_m     (lsu_tlu_tlb_asi_state_m[7:0]),
1612           .lsu_tlu_tlb_dmp_va_m        (lsu_tlu_tlb_dmp_va_m[47:13]),
1613           .lsu_tlu_tlb_ld_inst_m       (lsu_tlu_tlb_ld_inst_m),
1614           .lsu_tlu_tlb_ldst_va_m       (lsu_tlu_tlb_ldst_va_m[10:0]),
1615           .lsu_tlu_tlb_st_inst_m       (lsu_tlu_tlb_st_inst_m),
1616           .lsu_tlu_ttype_m2            (lsu_tlu_ttype_m2[8:0]),
1617           .lsu_tlu_ttype_vld_m2        (lsu_tlu_ttype_vld_m2),
1618           .lsu_tlu_wsr_inst_e          (lsu_tlu_wsr_inst_e),
1619           .mbist_dcache_data_in        (mbist_dcache_data_in[71:0]),
1620           .spc_efc_dfuse_data          (spc_efc_dfuse_data),
1621           .spc_pcx_atom_pq             (spc_pcx_atom_pq),
1622           .spc_pcx_data_pa             (spc_pcx_data_pa[`PCX_WIDTH-1:0]),
1623           .spc_pcx_req_pq              (spc_pcx_req_pq[4:0]),
1624           .lsu_asi_state               (lsu_asi_state[7:0]),
1625           .lsu_ifu_err_addr            (lsu_ifu_err_addr[47:4]),
1626           .lsu_sscan_data              (lsu_sscan_data[15:0]),
1627           .ifu_tlu_inst_vld_m_bf1      (ifu_tlu_inst_vld_m_bf1),
1628           .lsu_ffu_bld_cnt_w           (lsu_ffu_bld_cnt_w[2:0]),
1629           .lsu_tlu_nucleus_ctxt_m      (lsu_tlu_nucleus_ctxt_m),
1630           .lsu_tlu_tte_pg_sz_g         (lsu_tlu_tte_pg_sz_g[2:0]),
1631           .lsu_tlu_squash_va_oor_m     (lsu_tlu_squash_va_oor_m),
1632           .lsu_tlu_wtchpt_trp_g        (lsu_tlu_wtchpt_trp_g),
1633           .lsu_tlu_daccess_prot_g      (lsu_tlu_daccess_prot_g),
1634           .lsu_tlu_priv_action_g       (lsu_tlu_priv_action_g),
1635           // Inputs
1636           .bist_ctl_reg_out            (bist_ctl_reg_out[10:0]),
1637           .const_cpuid                 (const_cpuid[2:0]),
1638           .ctu_sscan_tid               (ctu_sscan_tid[3:0]),
1639           .efc_spc_dfuse_ashift        (efc_spc_dfuse_ashift),
1640           .efc_spc_dfuse_data          (efc_spc_dfuse_data),
1641           .efc_spc_dfuse_dshift        (efc_spc_dfuse_dshift),
1642           .efc_spc_fuse_clk1           (efc_spc_fuse_clk1),
1643           .efc_spc_fuse_clk2           (efc_spc_fuse_clk2),
1644           .exu_lsu_rs2_data_e          (exu_lsu_rs2_data_e[63:0]),
1645           .exu_lsu_rs3_data_e          (exu_lsu_rs3_data_e[63:0]),
1646           .exu_tlu_misalign_addr_jmpl_rtn_m(exu_tlu_misalign_addr_jmpl_rtn_m),
1647           .exu_tlu_va_oor_m            (exu_tlu_va_oor_m),
1648           .ffu_lsu_blk_st_e            (ffu_lsu_blk_st_e),
1649           .ffu_lsu_blk_st_va_e         (ffu_lsu_blk_st_va_e[5:3]),
1650           .ffu_lsu_fpop_rq_vld         (ffu_lsu_fpop_rq_vld),
1651           .ffu_lsu_kill_fst_w          (ffu_lsu_kill_fst_w),
1652           .ifu_lsu_alt_space_d         (ifu_lsu_alt_space_d),
1653           .ifu_lsu_alt_space_e         (ifu_lsu_alt_space_e),
1654           .ifu_lsu_asi_ack             (ifu_lsu_asi_ack),
1655           .ifu_lsu_asi_rd_unc          (ifu_lsu_asi_rd_unc),
1656           .ifu_lsu_casa_e              (ifu_lsu_casa_e),
1657           .ifu_lsu_destid_s            (ifu_lsu_destid_s[2:0]),
1658           .ifu_lsu_fwd_data_vld        (ifu_lsu_fwd_data_vld),
1659           .ifu_lsu_fwd_wr_ack          (ifu_lsu_fwd_wr_ack),
1660           .ifu_lsu_ibuf_busy           (ifu_lsu_ibuf_busy),
1661           .ifu_lsu_imm_asi_d           (ifu_lsu_imm_asi_d[7:0]),
1662           .ifu_lsu_imm_asi_vld_d       (ifu_lsu_imm_asi_vld_d),
1663           .ifu_lsu_inv_clear           (ifu_lsu_inv_clear),
1664           .ifu_lsu_ld_inst_e           (ifu_lsu_ld_inst_e),
1665           .ifu_lsu_ldst_dbl_e          (ifu_lsu_ldst_dbl_e),
1666           .ifu_lsu_ldst_fp_e           (ifu_lsu_ldst_fp_e),
1667           .ifu_lsu_ldst_size_e         (ifu_lsu_ldst_size_e[1:0]),
1668           .ifu_lsu_ldstub_e            (ifu_lsu_ldstub_e),
1669           .ifu_lsu_ldxa_data_vld_w2    (ifu_lsu_ldxa_data_vld_w2),
1670           .ifu_lsu_ldxa_data_w2        (ifu_lsu_ldxa_data_w2[63:0]),
1671           .ifu_lsu_ldxa_illgl_va_w2    (ifu_lsu_ldxa_illgl_va_w2),
1672           .ifu_lsu_ldxa_tid_w2         (ifu_lsu_ldxa_tid_w2[1:0]),
1673           .ifu_lsu_memref_d            (ifu_lsu_memref_d),
1674           .ifu_lsu_nceen               (ifu_lsu_nceen[3:0]),
1675           .ifu_lsu_pcxpkt_e            (ifu_lsu_pcxpkt_e[51:0]),
1676           .ifu_lsu_pcxreq_d            (ifu_lsu_pcxreq_d),
1677           .ifu_lsu_pref_inst_e         (ifu_lsu_pref_inst_e),
1678           .ifu_lsu_rd_e                (ifu_lsu_rd_e[4:0]),
1679           .ifu_lsu_sign_ext_e          (ifu_lsu_sign_ext_e),
1680           .ifu_lsu_st_inst_e           (ifu_lsu_st_inst_e),
1681           .ifu_lsu_swap_e              (ifu_lsu_swap_e),
1682           .ifu_lsu_thrid_s             (ifu_lsu_thrid_s[1:0]),
1683           .ifu_tlu_flsh_inst_e         (ifu_tlu_flsh_inst_e),
1684           .ifu_tlu_flush_m             (ifu_tlu_flush_m),
1685           .ifu_tlu_inst_vld_m          (ifu_tlu_inst_vld_m),
1686           .ifu_tlu_mb_inst_e           (ifu_tlu_mb_inst_e),
1687           .ifu_tlu_sraddr_d            (ifu_tlu_sraddr_d[6:0]),
1688           .ifu_tlu_thrid_e             (ifu_tlu_thrid_e[1:0]),
1689           .mbist_dcache_index          (mbist_dcache_index[6:0]),
1690           .mbist_dcache_read           (mbist_dcache_read),
1691           .mbist_dcache_way            (mbist_dcache_way[1:0]),
1692           .mbist_dcache_word           (mbist_dcache_word),
1693           .mbist_dcache_write          (mbist_dcache_write),
1694           .mbist_write_data            (mbist_write_data[7:0]),
1695           .mem_write_disable           (mem_write_disable),
1696           .mux_drive_disable           (mux_drive_disable),
1697           .pcx_spc_grant_px            (pcx_spc_grant_px[4:0]),
1698           .se                          (se),
1699           .sehold                      (sehold),
1700           .spu_lsu_ldxa_data_vld_w2    (1'b0),
1701           .spu_lsu_ldxa_data_w2        (64'h0000000000000000),
1702           .spu_lsu_ldxa_illgl_va_w2    (1'b0),
1703           .spu_lsu_ldxa_tid_w2         (2'b00),
1704           .spu_lsu_stxa_ack            (1'b0),
1705           .spu_lsu_stxa_ack_tid        (2'b00),
1706           .spu_lsu_unc_error_w2        (1'b0),
1707           .testmode_l                  (testmode_l),
1708           .tlu_dsfsr_flt_vld           (tlu_dsfsr_flt_vld[3:0]),
1709           .tlu_dtlb_data_rd_g          (tlu_dtlb_data_rd_g),
1710           .tlu_dtlb_dmp_actxt_g        (tlu_dtlb_dmp_actxt_g),
1711           .tlu_dtlb_dmp_all_g          (tlu_dtlb_dmp_all_g),
1712           .tlu_dtlb_dmp_nctxt_g        (tlu_dtlb_dmp_nctxt_g),
1713           .tlu_dtlb_dmp_pctxt_g        (tlu_dtlb_dmp_pctxt_g),
1714           .tlu_dtlb_dmp_sctxt_g        (tlu_dtlb_dmp_sctxt_g),
1715           .tlu_dtlb_dmp_vld_g          (tlu_dtlb_dmp_vld_g),
1716           .tlu_dtlb_invalidate_all_g   (tlu_dtlb_invalidate_all_g),
1717           .tlu_dtlb_rw_index_g         (tlu_dtlb_rw_index_g[5:0]),
1718           .tlu_dtlb_rw_index_vld_g     (tlu_dtlb_rw_index_vld_g),
1719           .tlu_dtlb_tag_rd_g           (tlu_dtlb_tag_rd_g),
1720           .tlu_dtlb_tte_data_w2        (tlu_dtlb_tte_data_w2[42:0]),
1721           .tlu_dtlb_tte_tag_w2         (tlu_dtlb_tte_tag_w2[58:0]),
1722           .tlu_early_flush_pipe2_w     (tlu_early_flush_pipe2_w),
1723           .tlu_early_flush_pipe_w      (tlu_early_flush_pipe_w),
1724           .tlu_exu_early_flush_pipe_w  (tlu_exu_early_flush_pipe_w),
1725           .tlu_idtlb_dmp_key_g         (tlu_idtlb_dmp_key_g[40:0]),
1726           .tlu_idtlb_dmp_thrid_g       (tlu_idtlb_dmp_thrid_g[1:0]),
1727           .tlu_lsu_asi_m               (tlu_lsu_asi_m[7:0]),
1728           .tlu_lsu_asi_update_m        (tlu_lsu_asi_update_m),
1729           .tlu_lsu_int_ld_ill_va_w2    (tlu_lsu_int_ld_ill_va_w2),
1730           .tlu_lsu_int_ldxa_data_w2    (tlu_lsu_int_ldxa_data_w2[63:0]),
1731           .tlu_lsu_int_ldxa_vld_w2     (tlu_lsu_int_ldxa_vld_w2),
1732           .tlu_lsu_ldxa_async_data_vld (tlu_lsu_ldxa_async_data_vld),
1733           .tlu_lsu_ldxa_tid_w2         (tlu_lsu_ldxa_tid_w2[1:0]),
1734           .tlu_lsu_pcxpkt              (tlu_lsu_pcxpkt[25:0]),
1735           .tlu_lsu_pstate_am           (tlu_lsu_pstate_am[3:0]),
1736           .tlu_lsu_pstate_cle          (tlu_lsu_pstate_cle[3:0]),
1737           .tlu_lsu_pstate_priv         (tlu_lsu_pstate_priv[3:0]),
1738           .tlu_lsu_redmode             (tlu_lsu_redmode[3:0]),
1739           .tlu_lsu_redmode_rst_d1      (tlu_lsu_redmode_rst_d1[3:0]),
1740           .tlu_lsu_stxa_ack            (tlu_lsu_stxa_ack),
1741           .tlu_lsu_stxa_ack_tid        (tlu_lsu_stxa_ack_tid[1:0]),
1742           .tlu_lsu_tid_m               (tlu_lsu_tid_m[1:0]),
1743           .tlu_lsu_tl_zero             (tlu_lsu_tl_zero[3:0]),
1744           .spu_lsu_ldst_pckt           (124'h0000000000000000000000000000000),
1745           .exu_lsu_ldst_va_e           (exu_lsu_ldst_va_e[47:0]),
1746           .exu_lsu_early_va_e          (exu_lsu_early_va_e[10:3]),
1747           .ffu_lsu_data                (ffu_lsu_data[80:0])); 
1748
1749`else
1750     
1751   lsu lsu(
1752           // temp - name change
1753           .ifu_tlu_wsr_inst_d          (ifu_lsu_wsr_inst_d),
1754           // eco 6529 .
1755           .lsu_ffu_st_dtlb_perr_g              (lsu_ffu_st_dtlb_perr_g),
1756           // Bug 4799.
1757           .tlu_lsu_priv_trap_m         (tlu_lsu_priv_trap_m),
1758
1759           .short_si0              (short_scan0_1),
1760           .short_si1              (short_scan1_1),
1761           .short_so0              (short_scan0_2),
1762           .short_so1              (short_scan1_2),
1763           .si0                          (scan0_3),
1764           .si1                          (short_scan1_5),
1765           .so0                          (scan0_4),
1766           .so1                          (scan1_1),
1767           // reset stuff
1768           .grst_l                       (spc_grst_l),
1769           .arst_l                       (cmp_arst_l),
1770           .clk                          (rclk),
1771                 .lsu_exu_dfill_data_w2 (lsu_exu_dfill_data_g[63:0]),
1772                 .lsu_exu_dfill_vld_w2  (lsu_exu_dfill_vld_g),
1773                 .lsu_exu_ldst_miss_w2  (lsu_exu_ldst_miss_g2),
1774           //.cpx_spc_data_cx             (cpx_spc_data_cx3[`CPX_WIDTH-1:0]),
1775           .cpx_spc_data_cx             ({cpx_spc_data_cx3_b144to140[`CPX_WIDTH-1:140],
1776                                          cpx_spc_data_cx3[139:121],
1777                                          cpx_spc_data_cx3_b120to118[`CPX_INV_CID_HI:`CPX_INV_CID_LO],
1778                                          cpx_spc_data_cx3[117:110],
1779                                          cpx_spc_data_cx3_b109,
1780                                          cpx_spc_data_cx3[108:107],
1781                                          cpx_spc_data_cx3_b106,
1782                                          cpx_spc_data_cx3[105:104],
1783                                          cpx_spc_data_cx3_b103,
1784                                          cpx_spc_data_cx3[102:101],
1785                                          cpx_spc_data_cx3_b100,
1786                                          cpx_spc_data_cx3[99:98],
1787                                          cpx_spc_data_cx3_b97,
1788                                          cpx_spc_data_cx3[96:95],
1789                                          cpx_spc_data_cx3_b94,
1790                                          cpx_spc_data_cx3[93:92],
1791                                          cpx_spc_data_cx3_b91,
1792                                          cpx_spc_data_cx3[90:89],
1793                                          cpx_spc_data_cx3_b88,
1794                                          cpx_spc_data_cx3[87:85],
1795                                          cpx_spc_data_cx3_b84,
1796                                          cpx_spc_data_cx3[83:81],
1797                                          cpx_spc_data_cx3_b80,
1798                                          cpx_spc_data_cx3[79:77],
1799                                          cpx_spc_data_cx3_b76,
1800                                          cpx_spc_data_cx3[75:73],
1801                                          cpx_spc_data_cx3_b72,
1802                                          cpx_spc_data_cx3[71:69],
1803                                          cpx_spc_data_cx3_b68,
1804                                          cpx_spc_data_cx3[67:65],
1805                                          cpx_spc_data_cx3_b64,
1806                                          cpx_spc_data_cx3[63:61],
1807                                          cpx_spc_data_cx3_b60,
1808                                          cpx_spc_data_cx3[59:57],
1809                                          cpx_spc_data_cx3_b56,
1810                                          cpx_spc_data_cx3[55:54],
1811                                          cpx_spc_data_cx3_b53,
1812                                          cpx_spc_data_cx3[52:51],
1813                                          cpx_spc_data_cx3_b50,
1814                                          cpx_spc_data_cx3[49:48],
1815                                          cpx_spc_data_cx3_b47,
1816                                          cpx_spc_data_cx3[46:45],
1817                                          cpx_spc_data_cx3_b44,
1818                                          cpx_spc_data_cx3[43:42],
1819                                          cpx_spc_data_cx3_b41,
1820                                          cpx_spc_data_cx3[40:39],
1821                                          cpx_spc_data_cx3_b38,
1822                                          cpx_spc_data_cx3[37:36],
1823                                          cpx_spc_data_cx3_b35,
1824                                          cpx_spc_data_cx3[34:33],
1825                                          cpx_spc_data_cx3_b32,
1826                                          cpx_spc_data_cx3[31:29],
1827                                          cpx_spc_data_cx3_b28,
1828                                          cpx_spc_data_cx3[27:25],
1829                                          cpx_spc_data_cx3_b24,
1830                                          cpx_spc_data_cx3[23:21],
1831                                          cpx_spc_data_cx3_b20,
1832                                          cpx_spc_data_cx3[19:17],
1833                                          cpx_spc_data_cx3_b16,
1834                                          cpx_spc_data_cx3[15:13],
1835                                          cpx_spc_data_cx3_b12,
1836                                          cpx_spc_data_cx3[11:9],
1837                                          cpx_spc_data_cx3_b8,
1838                                          cpx_spc_data_cx3[7:5],
1839                                          cpx_spc_data_cx3_b4,
1840                                          cpx_spc_data_cx3[3:1],
1841                                          cpx_spc_data_cx3_b0}),
1842           .exu_tlu_wsr_data_m          (exu_tlu_wsr_data_m[7:0]),
1843           
1844           // Hypervisor related
1845           .tlu_lsu_hpv_priv            (tlu_hpstate_priv[3:0]),
1846           .tlu_lsu_hpstate_en          (tlu_hpstate_enb[3:0]),
1847
1848                 .spu_lsu_int_w2                (1'b0),
1849           .gdbginit_l                  (spc_dbginit_l),
1850           /*AUTOINST*/
1851           // Outputs
1852           .bist_ctl_reg_in             (bist_ctl_reg_in[6:0]),
1853           .bist_ctl_reg_wr_en          (bist_ctl_reg_wr_en),
1854           .ifu_tlu_flush_fd2_w         (ifu_tlu_flush_fd2_w),
1855           .ifu_tlu_flush_fd3_w         (ifu_tlu_flush_fd3_w),
1856           .ifu_tlu_flush_fd_w          (ifu_tlu_flush_fd_w),
1857           .lsu_asi_reg0                (lsu_asi_reg0[7:0]),
1858           .lsu_asi_reg1                (lsu_asi_reg1[7:0]),
1859           .lsu_asi_reg2                (lsu_asi_reg2[7:0]),
1860           .lsu_asi_reg3                (lsu_asi_reg3[7:0]),
1861           .lsu_dmmu_sfsr_trp_wr        (lsu_dmmu_sfsr_trp_wr[3:0]),
1862           .lsu_dsfsr_din_g             (lsu_dsfsr_din_g[23:0]),
1863           .lsu_exu_flush_pipe_w        (lsu_exu_flush_pipe_w),
1864           .lsu_exu_rd_m                (lsu_exu_rd_m[4:0]),
1865           .lsu_exu_st_dtlb_perr_g      (lsu_exu_st_dtlb_perr_g),
1866           .lsu_exu_thr_m               (lsu_exu_thr_m[1:0]),
1867           .lsu_ffu_ack                 (lsu_ffu_ack),
1868           .lsu_ffu_blk_asi_e           (lsu_ffu_blk_asi_e),
1869           .lsu_ffu_flush_pipe_w        (lsu_ffu_flush_pipe_w),
1870           .lsu_ffu_ld_data             (lsu_ffu_ld_data[63:0]),
1871           .lsu_ffu_ld_vld              (lsu_ffu_ld_vld),
1872           .lsu_ffu_stb_full0           (lsu_ffu_stb_full0),
1873           .lsu_ffu_stb_full1           (lsu_ffu_stb_full1),
1874           .lsu_ffu_stb_full2           (lsu_ffu_stb_full2),
1875           .lsu_ffu_stb_full3           (lsu_ffu_stb_full3),
1876           .lsu_ictag_mrgn              (lsu_ictag_mrgn[3:0]),
1877           .lsu_ifu_asi_addr            (lsu_ifu_asi_addr[17:0]),
1878           .lsu_ifu_asi_load            (lsu_ifu_asi_load),
1879           .lsu_ifu_asi_state           (lsu_ifu_asi_state[7:0]),
1880           .lsu_ifu_asi_thrid           (lsu_ifu_asi_thrid[1:0]),
1881           .lsu_ifu_asi_vld             (lsu_ifu_asi_vld),
1882           .lsu_ifu_cpxpkt_i1           (lsu_ifu_cpxpkt_i1[`CPX_VLD-1:0]),
1883           .lsu_ifu_cpxpkt_vld_i1       (lsu_ifu_cpxpkt_vld_i1),
1884           .lsu_ifu_dc_parity_error_w2  (lsu_ifu_dc_parity_error_w2),
1885           .lsu_ifu_dcache_data_perror  (lsu_ifu_dcache_data_perror),
1886           .lsu_ifu_dcache_tag_perror   (lsu_ifu_dcache_tag_perror),
1887           .lsu_ifu_direct_map_l1       (lsu_ifu_direct_map_l1),
1888           .lsu_ifu_error_tid           (lsu_ifu_error_tid[1:0]),
1889           .lsu_ifu_flush_pipe_w        (lsu_ifu_flush_pipe_w),
1890           .lsu_ifu_icache_en           (lsu_ifu_icache_en[3:0]),
1891           .lsu_ifu_io_error            (lsu_ifu_io_error),
1892           .lsu_ifu_itlb_en             (lsu_ifu_itlb_en[3:0]),
1893           .lsu_ifu_l2_corr_error       (lsu_ifu_l2_corr_error),
1894           .lsu_ifu_l2_unc_error        (lsu_ifu_l2_unc_error),
1895           .lsu_ifu_ld_icache_index     (lsu_ifu_ld_icache_index[11:5]),
1896           .lsu_ifu_ld_pcxpkt_tid       (lsu_ifu_ld_pcxpkt_tid[1:0]),
1897           .lsu_ifu_ld_pcxpkt_vld       (lsu_ifu_ld_pcxpkt_vld),
1898           .lsu_ifu_ldst_cmplt          (lsu_ifu_ldst_cmplt[3:0]),
1899           .lsu_ifu_ldst_miss_w         (lsu_ifu_ldst_miss_w),
1900           .lsu_ifu_ldsta_internal_e    (lsu_ifu_ldsta_internal_e),
1901           .lsu_ifu_pcxpkt_ack_d        (lsu_ifu_pcxpkt_ack_d),
1902           .lsu_ifu_stallreq            (lsu_ifu_stallreq),
1903           .lsu_ifu_stbcnt0             (lsu_ifu_stbcnt0[3:0]),
1904           .lsu_ifu_stbcnt1             (lsu_ifu_stbcnt1[3:0]),
1905           .lsu_ifu_stbcnt2             (lsu_ifu_stbcnt2[3:0]),
1906           .lsu_ifu_stbcnt3             (lsu_ifu_stbcnt3[3:0]),
1907           .lsu_ifu_stxa_data           (lsu_ifu_stxa_data[47:0]),
1908           .lsu_ifu_tlb_data_su         (lsu_ifu_tlb_data_su),
1909           .lsu_ifu_tlb_data_ue         (lsu_ifu_tlb_data_ue),
1910           .lsu_ifu_tlb_tag_ue          (lsu_ifu_tlb_tag_ue),
1911           .lsu_itlb_mrgn               (lsu_itlb_mrgn[7:0]),
1912           .lsu_mamem_mrgn              (lsu_mamem_mrgn[3:0]),
1913           .lsu_mmu_defr_trp_taken_g    (lsu_mmu_defr_trp_taken_g),
1914           .lsu_mmu_flush_pipe_w        (lsu_mmu_flush_pipe_w),
1915           .lsu_mmu_rs3_data_g          (lsu_mmu_rs3_data_g[63:0]),
1916           .lsu_pid_state0              (lsu_pid_state0[2:0]),
1917           .lsu_pid_state1              (lsu_pid_state1[2:0]),
1918           .lsu_pid_state2              (lsu_pid_state2[2:0]),
1919           .lsu_pid_state3              (lsu_pid_state3[2:0]),
1920           .lsu_spu_asi_state_e         (lsu_spu_asi_state_e[7:0]),
1921           .lsu_spu_early_flush_g       (lsu_spu_early_flush_g),
1922           .lsu_spu_ldst_ack            (lsu_spu_ldst_ack),
1923           .lsu_spu_stb_empty           (lsu_spu_stb_empty[3:0]),
1924           .lsu_spu_strm_ack_cmplt      (lsu_spu_strm_ack_cmplt[1:0]),
1925           .lsu_t0_pctxt_state          (lsu_t0_pctxt_state[12:0]),
1926           .lsu_t1_pctxt_state          (lsu_t1_pctxt_state[12:0]),
1927           .lsu_t2_pctxt_state          (lsu_t2_pctxt_state[12:0]),
1928           .lsu_t3_pctxt_state          (lsu_t3_pctxt_state[12:0]),
1929           .lsu_tlu_async_tid_w2        (lsu_tlu_async_tid_w2[1:0]),
1930           .lsu_tlu_async_ttype_vld_w2  (lsu_tlu_async_ttype_vld_w2),
1931           .lsu_tlu_async_ttype_w2      (lsu_tlu_async_ttype_w2[6:0]),
1932           .lsu_tlu_cpx_req             (lsu_tlu_cpx_req[3:0]),
1933           .lsu_tlu_cpx_vld             (lsu_tlu_cpx_vld),
1934           .lsu_tlu_daccess_excptn_g    (lsu_tlu_daccess_excptn_g),
1935           .lsu_tlu_dcache_miss_w2      (lsu_tlu_dcache_miss_w2[3:0]),
1936           .lsu_tlu_defr_trp_taken_g    (lsu_tlu_defr_trp_taken_g),
1937           .lsu_tlu_dmmu_miss_g         (lsu_tlu_dmmu_miss_g),
1938           .lsu_tlu_dside_ctxt_m        (lsu_tlu_dside_ctxt_m[12:0]),
1939           .lsu_tlu_dtlb_done           (lsu_tlu_dtlb_done),
1940           .lsu_tlu_early_flush2_w      (lsu_tlu_early_flush2_w),
1941           .lsu_tlu_early_flush_w       (lsu_tlu_early_flush_w),
1942           .lsu_tlu_intpkt              (lsu_tlu_intpkt[17:0]),
1943           .lsu_tlu_l2_dmiss            (lsu_tlu_l2_dmiss[3:0]),
1944           .lsu_tlu_ldst_va_m           (lsu_tlu_ldst_va_m[9:0]),
1945           .lsu_tlu_misalign_addr_ldst_atm_m(lsu_tlu_misalign_addr_ldst_atm_m),
1946           .lsu_tlu_pctxt_m             (lsu_tlu_pctxt_m[12:0]),
1947           .lsu_tlu_pcxpkt_ack          (lsu_tlu_pcxpkt_ack),
1948           .lsu_tlu_rs3_data_g          (lsu_tlu_rs3_data_g[63:0]),
1949           .lsu_tlu_rsr_data_e          (lsu_tlu_rsr_data_e[7:0]),
1950           .lsu_tlu_stb_full_w2         (lsu_tlu_stb_full_w2[3:0]),
1951           .lsu_tlu_thrid_d             (lsu_tlu_thrid_d[1:0]),
1952           .lsu_tlu_tlb_access_tid_m    (lsu_tlu_tlb_access_tid_m[1:0]),
1953           .lsu_tlu_tlb_asi_state_m     (lsu_tlu_tlb_asi_state_m[7:0]),
1954           .lsu_tlu_tlb_dmp_va_m        (lsu_tlu_tlb_dmp_va_m[47:13]),
1955           .lsu_tlu_tlb_ld_inst_m       (lsu_tlu_tlb_ld_inst_m),
1956           .lsu_tlu_tlb_ldst_va_m       (lsu_tlu_tlb_ldst_va_m[10:0]),
1957           .lsu_tlu_tlb_st_inst_m       (lsu_tlu_tlb_st_inst_m),
1958           .lsu_tlu_ttype_m2            (lsu_tlu_ttype_m2[8:0]),
1959           .lsu_tlu_ttype_vld_m2        (lsu_tlu_ttype_vld_m2),
1960           .lsu_tlu_wsr_inst_e          (lsu_tlu_wsr_inst_e),
1961           .mbist_dcache_data_in        (mbist_dcache_data_in[71:0]),
1962           .spc_efc_dfuse_data          (spc_efc_dfuse_data),
1963           .spc_pcx_atom_pq             (spc_pcx_atom_pq),
1964           .spc_pcx_data_pa             (spc_pcx_data_pa[`PCX_WIDTH-1:0]),
1965           .spc_pcx_req_pq              (spc_pcx_req_pq[4:0]),
1966           .lsu_asi_state               (lsu_asi_state[7:0]),
1967           .lsu_ifu_err_addr            (lsu_ifu_err_addr[47:4]),
1968           .lsu_sscan_data              (lsu_sscan_data[15:0]),
1969           .ifu_tlu_inst_vld_m_bf1      (ifu_tlu_inst_vld_m_bf1),
1970           .lsu_ffu_bld_cnt_w           (lsu_ffu_bld_cnt_w[2:0]),
1971           .lsu_tlu_nucleus_ctxt_m      (lsu_tlu_nucleus_ctxt_m),
1972           .lsu_tlu_tte_pg_sz_g         (lsu_tlu_tte_pg_sz_g[2:0]),
1973           .lsu_tlu_squash_va_oor_m     (lsu_tlu_squash_va_oor_m),
1974           .lsu_tlu_wtchpt_trp_g        (lsu_tlu_wtchpt_trp_g),
1975           .lsu_tlu_daccess_prot_g      (lsu_tlu_daccess_prot_g),
1976           .lsu_tlu_priv_action_g       (lsu_tlu_priv_action_g),
1977           // Inputs
1978           .bist_ctl_reg_out            (bist_ctl_reg_out[10:0]),
1979           .const_cpuid                 (const_cpuid[2:0]),
1980           .ctu_sscan_tid               (ctu_sscan_tid[3:0]),
1981           .efc_spc_dfuse_ashift        (efc_spc_dfuse_ashift),
1982           .efc_spc_dfuse_data          (efc_spc_dfuse_data),
1983           .efc_spc_dfuse_dshift        (efc_spc_dfuse_dshift),
1984           .efc_spc_fuse_clk1           (efc_spc_fuse_clk1),
1985           .efc_spc_fuse_clk2           (efc_spc_fuse_clk2),
1986           .exu_lsu_rs2_data_e          (exu_lsu_rs2_data_e[63:0]),
1987           .exu_lsu_rs3_data_e          (exu_lsu_rs3_data_e[63:0]),
1988           .exu_tlu_misalign_addr_jmpl_rtn_m(exu_tlu_misalign_addr_jmpl_rtn_m),
1989           .exu_tlu_va_oor_m            (exu_tlu_va_oor_m),
1990           .ffu_lsu_blk_st_e            (ffu_lsu_blk_st_e),
1991           .ffu_lsu_blk_st_va_e         (ffu_lsu_blk_st_va_e[5:3]),
1992           .ffu_lsu_fpop_rq_vld         (ffu_lsu_fpop_rq_vld),
1993           .ffu_lsu_kill_fst_w          (ffu_lsu_kill_fst_w),
1994           .ifu_lsu_alt_space_d         (ifu_lsu_alt_space_d),
1995           .ifu_lsu_alt_space_e         (ifu_lsu_alt_space_e),
1996           .ifu_lsu_asi_ack             (ifu_lsu_asi_ack),
1997           .ifu_lsu_asi_rd_unc          (ifu_lsu_asi_rd_unc),
1998           .ifu_lsu_casa_e              (ifu_lsu_casa_e),
1999           .ifu_lsu_destid_s            (ifu_lsu_destid_s[2:0]),
2000           .ifu_lsu_fwd_data_vld        (ifu_lsu_fwd_data_vld),
2001           .ifu_lsu_fwd_wr_ack          (ifu_lsu_fwd_wr_ack),
2002           .ifu_lsu_ibuf_busy           (ifu_lsu_ibuf_busy),
2003           .ifu_lsu_imm_asi_d           (ifu_lsu_imm_asi_d[7:0]),
2004           .ifu_lsu_imm_asi_vld_d       (ifu_lsu_imm_asi_vld_d),
2005           .ifu_lsu_inv_clear           (ifu_lsu_inv_clear),
2006           .ifu_lsu_ld_inst_e           (ifu_lsu_ld_inst_e),
2007           .ifu_lsu_ldst_dbl_e          (ifu_lsu_ldst_dbl_e),
2008           .ifu_lsu_ldst_fp_e           (ifu_lsu_ldst_fp_e),
2009           .ifu_lsu_ldst_size_e         (ifu_lsu_ldst_size_e[1:0]),
2010           .ifu_lsu_ldstub_e            (ifu_lsu_ldstub_e),
2011           .ifu_lsu_ldxa_data_vld_w2    (ifu_lsu_ldxa_data_vld_w2),
2012           .ifu_lsu_ldxa_data_w2        (ifu_lsu_ldxa_data_w2[63:0]),
2013           .ifu_lsu_ldxa_illgl_va_w2    (ifu_lsu_ldxa_illgl_va_w2),
2014           .ifu_lsu_ldxa_tid_w2         (ifu_lsu_ldxa_tid_w2[1:0]),
2015           .ifu_lsu_memref_d            (ifu_lsu_memref_d),
2016           .ifu_lsu_nceen               (ifu_lsu_nceen[3:0]),
2017           .ifu_lsu_pcxpkt_e            (ifu_lsu_pcxpkt_e[51:0]),
2018           .ifu_lsu_pcxreq_d            (ifu_lsu_pcxreq_d),
2019           .ifu_lsu_pref_inst_e         (ifu_lsu_pref_inst_e),
2020           .ifu_lsu_rd_e                (ifu_lsu_rd_e[4:0]),
2021           .ifu_lsu_sign_ext_e          (ifu_lsu_sign_ext_e),
2022           .ifu_lsu_st_inst_e           (ifu_lsu_st_inst_e),
2023           .ifu_lsu_swap_e              (ifu_lsu_swap_e),
2024           .ifu_lsu_thrid_s             (ifu_lsu_thrid_s[1:0]),
2025           .ifu_tlu_flsh_inst_e         (ifu_tlu_flsh_inst_e),
2026           .ifu_tlu_flush_m             (ifu_tlu_flush_m),
2027           .ifu_tlu_inst_vld_m          (ifu_tlu_inst_vld_m),
2028           .ifu_tlu_mb_inst_e           (ifu_tlu_mb_inst_e),
2029           .ifu_tlu_sraddr_d            (ifu_tlu_sraddr_d[6:0]),
2030           .ifu_tlu_thrid_e             (ifu_tlu_thrid_e[1:0]),
2031           .mbist_dcache_index          (mbist_dcache_index[6:0]),
2032           .mbist_dcache_read           (mbist_dcache_read),
2033           .mbist_dcache_way            (mbist_dcache_way[1:0]),
2034           .mbist_dcache_word           (mbist_dcache_word),
2035           .mbist_dcache_write          (mbist_dcache_write),
2036           .mbist_write_data            (mbist_write_data[7:0]),
2037           .mem_write_disable           (mem_write_disable),
2038           .mux_drive_disable           (mux_drive_disable),
2039           .pcx_spc_grant_px            (pcx_spc_grant_px[4:0]),
2040           .se                          (se),
2041           .sehold                      (sehold),
2042           .spu_lsu_ldxa_data_vld_w2    (spu_lsu_ldxa_data_vld_w2),
2043           .spu_lsu_ldxa_data_w2        (spu_lsu_ldxa_data_w2[63:0]),
2044           .spu_lsu_ldxa_illgl_va_w2    (spu_lsu_ldxa_illgl_va_w2),
2045           .spu_lsu_ldxa_tid_w2         (spu_lsu_ldxa_tid_w2[1:0]),
2046           .spu_lsu_stxa_ack            (spu_lsu_stxa_ack),
2047           .spu_lsu_stxa_ack_tid        (spu_lsu_stxa_ack_tid[1:0]),
2048           .spu_lsu_unc_error_w2        (spu_lsu_unc_error_w2),
2049           .testmode_l                  (testmode_l),
2050           .tlu_dsfsr_flt_vld           (tlu_dsfsr_flt_vld[3:0]),
2051           .tlu_dtlb_data_rd_g          (tlu_dtlb_data_rd_g),
2052           .tlu_dtlb_dmp_actxt_g        (tlu_dtlb_dmp_actxt_g),
2053           .tlu_dtlb_dmp_all_g          (tlu_dtlb_dmp_all_g),
2054           .tlu_dtlb_dmp_nctxt_g        (tlu_dtlb_dmp_nctxt_g),
2055           .tlu_dtlb_dmp_pctxt_g        (tlu_dtlb_dmp_pctxt_g),
2056           .tlu_dtlb_dmp_sctxt_g        (tlu_dtlb_dmp_sctxt_g),
2057           .tlu_dtlb_dmp_vld_g          (tlu_dtlb_dmp_vld_g),
2058           .tlu_dtlb_invalidate_all_g   (tlu_dtlb_invalidate_all_g),
2059           .tlu_dtlb_rw_index_g         (tlu_dtlb_rw_index_g[5:0]),
2060           .tlu_dtlb_rw_index_vld_g     (tlu_dtlb_rw_index_vld_g),
2061           .tlu_dtlb_tag_rd_g           (tlu_dtlb_tag_rd_g),
2062           .tlu_dtlb_tte_data_w2        (tlu_dtlb_tte_data_w2[42:0]),
2063           .tlu_dtlb_tte_tag_w2         (tlu_dtlb_tte_tag_w2[58:0]),
2064           .tlu_early_flush_pipe2_w     (tlu_early_flush_pipe2_w),
2065           .tlu_early_flush_pipe_w      (tlu_early_flush_pipe_w),
2066           .tlu_exu_early_flush_pipe_w  (tlu_exu_early_flush_pipe_w),
2067           .tlu_idtlb_dmp_key_g         (tlu_idtlb_dmp_key_g[40:0]),
2068           .tlu_idtlb_dmp_thrid_g       (tlu_idtlb_dmp_thrid_g[1:0]),
2069           .tlu_lsu_asi_m               (tlu_lsu_asi_m[7:0]),
2070           .tlu_lsu_asi_update_m        (tlu_lsu_asi_update_m),
2071           .tlu_lsu_int_ld_ill_va_w2    (tlu_lsu_int_ld_ill_va_w2),
2072           .tlu_lsu_int_ldxa_data_w2    (tlu_lsu_int_ldxa_data_w2[63:0]),
2073           .tlu_lsu_int_ldxa_vld_w2     (tlu_lsu_int_ldxa_vld_w2),
2074           .tlu_lsu_ldxa_async_data_vld (tlu_lsu_ldxa_async_data_vld),
2075           .tlu_lsu_ldxa_tid_w2         (tlu_lsu_ldxa_tid_w2[1:0]),
2076           .tlu_lsu_pcxpkt              (tlu_lsu_pcxpkt[25:0]),
2077           .tlu_lsu_pstate_am           (tlu_lsu_pstate_am[3:0]),
2078           .tlu_lsu_pstate_cle          (tlu_lsu_pstate_cle[3:0]),
2079           .tlu_lsu_pstate_priv         (tlu_lsu_pstate_priv[3:0]),
2080           .tlu_lsu_redmode             (tlu_lsu_redmode[3:0]),
2081           .tlu_lsu_redmode_rst_d1      (tlu_lsu_redmode_rst_d1[3:0]),
2082           .tlu_lsu_stxa_ack            (tlu_lsu_stxa_ack),
2083           .tlu_lsu_stxa_ack_tid        (tlu_lsu_stxa_ack_tid[1:0]),
2084           .tlu_lsu_tid_m               (tlu_lsu_tid_m[1:0]),
2085           .tlu_lsu_tl_zero             (tlu_lsu_tl_zero[3:0]),
2086           .spu_lsu_ldst_pckt           (spu_lsu_ldst_pckt[`PCX_WIDTH-1:0]),
2087           .exu_lsu_ldst_va_e           (exu_lsu_ldst_va_e[47:0]),
2088           .exu_lsu_early_va_e          (exu_lsu_early_va_e[10:3]),
2089           .ffu_lsu_data                (ffu_lsu_data[80:0])); 
2090
2091`endif //  `ifdef FPGA_SYN_NO_SPU
2092
2093`ifdef FPGA_SYN_NO_SPU
2094
2095   sparc_exu exu   (
2096                 .short_si0              (short_scan0_2),
2097                 .short_so0              (short_scan0_3),
2098                 .short_si1 (short_scan1_2),
2099                 .short_so1 (short_scan1_3),
2100                 .si0 (scan0_2),
2101                 .so0 (scan0_3),
2102                 // reset stuff
2103                 .grst_l                (spc_grst_l),
2104                 .arst_l                (cmp_arst_l),
2105                 .mul_exu_data_g (mul_data_out[63:0]),
2106                 .ifu_tlu_wsr_inst_d (ifu_exu_wsr_inst_d),
2107                 //
2108                 .exu_tlu_ue_trap_m     (),
2109                 
2110                             /*AUTOINST*/
2111                 // Outputs
2112                 .exu_ffu_wsr_inst_e    (exu_ffu_wsr_inst_e),
2113                 .exu_ifu_brpc_e        (exu_ifu_brpc_e[47:0]),
2114                 .exu_ifu_cc_d          (exu_ifu_cc_d[7:0]),
2115                 .exu_ifu_ecc_ce_m      (exu_ifu_ecc_ce_m),
2116                 .exu_ifu_ecc_ue_m      (exu_ifu_ecc_ue_m),
2117                 .exu_ifu_err_reg_m     (exu_ifu_err_reg_m[7:0]),
2118                 .exu_ifu_inj_ack       (exu_ifu_inj_ack),
2119                 .exu_ifu_longop_done_g (exu_ifu_longop_done_g[3:0]),
2120                 .exu_ifu_oddwin_s      (exu_ifu_oddwin_s[3:0]),
2121                 .exu_ifu_regn_e        (exu_ifu_regn_e),
2122                 .exu_ifu_regz_e        (exu_ifu_regz_e),
2123                 .exu_ifu_spill_e       (exu_ifu_spill_e),
2124                 .exu_ifu_va_oor_m      (exu_ifu_va_oor_m),
2125                 .exu_lsu_early_va_e    (exu_lsu_early_va_e[10:3]),
2126                 .exu_lsu_ldst_va_e     (exu_lsu_ldst_va_e[47:0]),
2127                 .exu_lsu_priority_trap_m(exu_lsu_priority_trap_m),
2128                 .exu_lsu_rs2_data_e    (exu_lsu_rs2_data_e[63:0]),
2129                 .exu_lsu_rs3_data_e    (exu_lsu_rs3_data_e[63:0]),
2130                 .exu_mmu_early_va_e    (exu_mmu_early_va_e[7:0]),
2131                 .exu_mul_input_vld     (exu_mul_input_vld),
2132                 .exu_mul_rs1_data      (exu_mul_rs1_data[63:0]),
2133                 .exu_mul_rs2_data      (exu_mul_rs2_data[63:0]),
2134                 .exu_spu_rs3_data_e    (),
2135                 .exu_tlu_ccr0_w        (exu_tlu_ccr0_w[7:0]),
2136                 .exu_tlu_ccr1_w        (exu_tlu_ccr1_w[7:0]),
2137                 .exu_tlu_ccr2_w        (exu_tlu_ccr2_w[7:0]),
2138                 .exu_tlu_ccr3_w        (exu_tlu_ccr3_w[7:0]),
2139                 .exu_tlu_cwp0_w        (exu_tlu_cwp0_w[2:0]),
2140                 .exu_tlu_cwp1_w        (exu_tlu_cwp1_w[2:0]),
2141                 .exu_tlu_cwp2_w        (exu_tlu_cwp2_w[2:0]),
2142                 .exu_tlu_cwp3_w        (exu_tlu_cwp3_w[2:0]),
2143                 .exu_tlu_cwp_cmplt     (exu_tlu_cwp_cmplt),
2144                 .exu_tlu_cwp_cmplt_tid (exu_tlu_cwp_cmplt_tid[1:0]),
2145                 .exu_tlu_cwp_retry     (exu_tlu_cwp_retry),
2146                 .exu_tlu_misalign_addr_jmpl_rtn_m(exu_tlu_misalign_addr_jmpl_rtn_m),
2147                 .exu_tlu_spill         (exu_tlu_spill),
2148                 .exu_tlu_spill_other   (exu_tlu_spill_other),
2149                 .exu_tlu_spill_tid     (exu_tlu_spill_tid[1:0]),
2150                 .exu_tlu_spill_wtype   (exu_tlu_spill_wtype[2:0]),
2151                 .exu_tlu_ttype_m       (exu_tlu_ttype_m[8:0]),
2152                 .exu_tlu_ttype_vld_m   (exu_tlu_ttype_vld_m),
2153                 .exu_tlu_va_oor_jl_ret_m(exu_tlu_va_oor_jl_ret_m),
2154                 .exu_tlu_va_oor_m      (exu_tlu_va_oor_m),
2155                 .exu_tlu_wsr_data_m    (exu_tlu_wsr_data_m[63:0]),
2156                 .exu_ifu_err_synd_m    (exu_ifu_err_synd_m[7:0]),
2157                 // Inputs
2158                 .mux_drive_disable     (mux_drive_disable),
2159                 .mem_write_disable     (mem_write_disable),
2160                 .ffu_exu_rsr_data_m    (ffu_exu_rsr_data_m[63:0]),
2161                 .ifu_exu_addr_mask_d   (ifu_exu_addr_mask_d),
2162                 .ifu_exu_aluop_d       (ifu_exu_aluop_d[2:0]),
2163                 .ifu_exu_casa_d        (ifu_exu_casa_d),
2164                 .ifu_exu_dbrinst_d     (ifu_exu_dbrinst_d),
2165                 .ifu_exu_disable_ce_e  (ifu_exu_disable_ce_e),
2166                 .ifu_exu_dontmv_regz0_e(ifu_exu_dontmv_regz0_e),
2167                 .ifu_exu_dontmv_regz1_e(ifu_exu_dontmv_regz1_e),
2168                 .ifu_exu_ecc_mask      (ifu_exu_ecc_mask[7:0]),
2169                 .ifu_exu_enshift_d     (ifu_exu_enshift_d),
2170                 .ifu_exu_flushw_e      (ifu_exu_flushw_e),
2171                 .ifu_exu_ialign_d      (ifu_exu_ialign_d),
2172                 .ifu_exu_imm_data_d    (ifu_exu_imm_data_d[31:0]),
2173                 .ifu_exu_inj_irferr    (ifu_exu_inj_irferr),
2174                 .ifu_exu_inst_vld_e    (ifu_exu_inst_vld_e),
2175                 .ifu_exu_inst_vld_w    (ifu_exu_inst_vld_w),
2176                 .ifu_exu_invert_d      (ifu_exu_invert_d),
2177                 .ifu_exu_kill_e        (ifu_exu_kill_e),
2178                 .ifu_exu_muldivop_d    (ifu_exu_muldivop_d[4:0]),
2179                 .ifu_exu_muls_d        (ifu_exu_muls_d),
2180                 .ifu_exu_nceen_e       (ifu_exu_nceen_e),
2181                 .ifu_exu_pc_d          (ifu_exu_pc_d[47:0]),
2182                 .ifu_exu_pcver_e       (ifu_exu_pcver_e[63:0]),
2183                 .ifu_exu_range_check_jlret_d(ifu_exu_range_check_jlret_d),
2184                 .ifu_exu_range_check_other_d(ifu_exu_range_check_other_d),
2185                 .ifu_exu_rd_d          (ifu_exu_rd_d[4:0]),
2186                 .ifu_exu_rd_exusr_e    (ifu_exu_rd_exusr_e),
2187                 .ifu_exu_rd_ffusr_e    (ifu_exu_rd_ffusr_e),
2188                 .ifu_exu_rd_ifusr_e    (ifu_exu_rd_ifusr_e),
2189                 .ifu_exu_ren1_s        (ifu_exu_ren1_s),
2190                 .ifu_exu_ren2_s        (ifu_exu_ren2_s),
2191                 .ifu_exu_ren3_s        (ifu_exu_ren3_s),
2192                 .ifu_exu_restore_d     (ifu_exu_restore_d),
2193                 .ifu_exu_restored_e    (ifu_exu_restored_e),
2194                 .ifu_exu_return_d      (ifu_exu_return_d),
2195                 .ifu_exu_rs1_s         (ifu_exu_rs1_s[4:0]),
2196                 .ifu_exu_rs1_vld_d     (ifu_exu_rs1_vld_d),
2197                 .ifu_exu_rs2_s         (ifu_exu_rs2_s[4:0]),
2198                 .ifu_exu_rs2_vld_d     (ifu_exu_rs2_vld_d),
2199                 .ifu_exu_rs3_s         (ifu_exu_rs3_s[4:0]),
2200                 .ifu_exu_rs3e_vld_d    (ifu_exu_rs3e_vld_d),
2201                 .ifu_exu_rs3o_vld_d    (ifu_exu_rs3o_vld_d),
2202                 .ifu_exu_save_d        (ifu_exu_save_d),
2203                 .ifu_exu_saved_e       (ifu_exu_saved_e),
2204                 .ifu_exu_setcc_d       (ifu_exu_setcc_d),
2205                 .ifu_exu_sethi_inst_d  (ifu_exu_sethi_inst_d),
2206                 .ifu_exu_shiftop_d     (ifu_exu_shiftop_d[2:0]),
2207                 .ifu_exu_tagop_d       (ifu_exu_tagop_d),
2208                 .ifu_exu_tcc_e         (ifu_exu_tcc_e),
2209                 .ifu_exu_tid_s2        (ifu_exu_tid_s2[1:0]),
2210                 .ifu_exu_ttype_vld_m   (ifu_exu_ttype_vld_m),
2211                 .ifu_exu_tv_d          (ifu_exu_tv_d),
2212                 .ifu_exu_use_rsr_e_l   (ifu_exu_use_rsr_e_l),
2213                 .ifu_exu_usecin_d      (ifu_exu_usecin_d),
2214                 .ifu_exu_useimm_d      (ifu_exu_useimm_d),
2215                 .ifu_exu_wen_d         (ifu_exu_wen_d),
2216                 .ifu_tlu_flush_m       (ifu_tlu_flush_m),
2217                 .ifu_tlu_sraddr_d      (ifu_tlu_sraddr_d[6:0]),
2218                 .lsu_exu_dfill_data_g  (lsu_exu_dfill_data_g[63:0]),
2219                 .lsu_exu_dfill_vld_g   (lsu_exu_dfill_vld_g),
2220                 .lsu_exu_flush_pipe_w  (lsu_exu_flush_pipe_w),
2221                 .lsu_exu_ldst_miss_g2  (lsu_exu_ldst_miss_g2),
2222                 .lsu_exu_ldxa_data_g   (lsu_exu_ldxa_data_g[63:0]),
2223                 .lsu_exu_ldxa_m        (lsu_exu_ldxa_m),
2224                 .lsu_exu_rd_m          (lsu_exu_rd_m[4:0]),
2225                 .lsu_exu_st_dtlb_perr_g(lsu_exu_st_dtlb_perr_g),
2226                 .lsu_exu_thr_m         (lsu_exu_thr_m[1:0]),
2227                 .mul_exu_ack           (mul_exu_ack),
2228                 .rclk                  (rclk),
2229                 .se                    (se),
2230                 .sehold                (sehold),
2231                 .tlu_exu_agp           (tlu_exu_agp[1:0]),
2232                 .tlu_exu_agp_swap      (tlu_exu_agp_swap),
2233                 .tlu_exu_agp_tid       (tlu_exu_agp_tid[1:0]),
2234                 .tlu_exu_ccr_m         (tlu_exu_ccr_m[7:0]),
2235                 .tlu_exu_cwp_m         (tlu_exu_cwp_m[2:0]),
2236                 .tlu_exu_cwp_retry_m   (tlu_exu_cwp_retry_m),
2237                 .tlu_exu_cwpccr_update_m(tlu_exu_cwpccr_update_m),
2238                 .tlu_exu_pic_onebelow_m(tlu_exu_pic_onebelow_m),
2239                 .tlu_exu_pic_twobelow_m(tlu_exu_pic_twobelow_m),
2240                 .tlu_exu_priv_trap_m   (tlu_exu_priv_trap_m),
2241                 .tlu_exu_rsr_data_m    (tlu_exu_rsr_data_m[63:0]));
2242
2243`else
2244   
2245sparc_exu exu   (
2246                 .short_si0              (short_scan0_2),
2247                 .short_so0              (short_scan0_3),
2248                 .short_si1 (short_scan1_2),
2249                 .short_so1 (short_scan1_3),
2250                 .si0 (scan0_2),
2251                 .so0 (scan0_3),
2252                 // reset stuff
2253                 .grst_l                (spc_grst_l),
2254                 .arst_l                (cmp_arst_l),
2255                 .mul_exu_data_g (mul_data_out[63:0]),
2256                 .ifu_tlu_wsr_inst_d (ifu_exu_wsr_inst_d),
2257                 //
2258                 .exu_tlu_ue_trap_m     (),
2259                 
2260                             /*AUTOINST*/
2261                 // Outputs
2262                 .exu_ffu_wsr_inst_e    (exu_ffu_wsr_inst_e),
2263                 .exu_ifu_brpc_e        (exu_ifu_brpc_e[47:0]),
2264                 .exu_ifu_cc_d          (exu_ifu_cc_d[7:0]),
2265                 .exu_ifu_ecc_ce_m      (exu_ifu_ecc_ce_m),
2266                 .exu_ifu_ecc_ue_m      (exu_ifu_ecc_ue_m),
2267                 .exu_ifu_err_reg_m     (exu_ifu_err_reg_m[7:0]),
2268                 .exu_ifu_inj_ack       (exu_ifu_inj_ack),
2269                 .exu_ifu_longop_done_g (exu_ifu_longop_done_g[3:0]),
2270                 .exu_ifu_oddwin_s      (exu_ifu_oddwin_s[3:0]),
2271                 .exu_ifu_regn_e        (exu_ifu_regn_e),
2272                 .exu_ifu_regz_e        (exu_ifu_regz_e),
2273                 .exu_ifu_spill_e       (exu_ifu_spill_e),
2274                 .exu_ifu_va_oor_m      (exu_ifu_va_oor_m),
2275                 .exu_lsu_early_va_e    (exu_lsu_early_va_e[10:3]),
2276                 .exu_lsu_ldst_va_e     (exu_lsu_ldst_va_e[47:0]),
2277                 .exu_lsu_priority_trap_m(exu_lsu_priority_trap_m),
2278                 .exu_lsu_rs2_data_e    (exu_lsu_rs2_data_e[63:0]),
2279                 .exu_lsu_rs3_data_e    (exu_lsu_rs3_data_e[63:0]),
2280                 .exu_mmu_early_va_e    (exu_mmu_early_va_e[7:0]),
2281                 .exu_mul_input_vld     (exu_mul_input_vld),
2282                 .exu_mul_rs1_data      (exu_mul_rs1_data[63:0]),
2283                 .exu_mul_rs2_data      (exu_mul_rs2_data[63:0]),
2284                 .exu_spu_rs3_data_e    (exu_spu_rs3_data_e[63:0]),
2285                 .exu_tlu_ccr0_w        (exu_tlu_ccr0_w[7:0]),
2286                 .exu_tlu_ccr1_w        (exu_tlu_ccr1_w[7:0]),
2287                 .exu_tlu_ccr2_w        (exu_tlu_ccr2_w[7:0]),
2288                 .exu_tlu_ccr3_w        (exu_tlu_ccr3_w[7:0]),
2289                 .exu_tlu_cwp0_w        (exu_tlu_cwp0_w[2:0]),
2290                 .exu_tlu_cwp1_w        (exu_tlu_cwp1_w[2:0]),
2291                 .exu_tlu_cwp2_w        (exu_tlu_cwp2_w[2:0]),
2292                 .exu_tlu_cwp3_w        (exu_tlu_cwp3_w[2:0]),
2293                 .exu_tlu_cwp_cmplt     (exu_tlu_cwp_cmplt),
2294                 .exu_tlu_cwp_cmplt_tid (exu_tlu_cwp_cmplt_tid[1:0]),
2295                 .exu_tlu_cwp_retry     (exu_tlu_cwp_retry),
2296                 .exu_tlu_misalign_addr_jmpl_rtn_m(exu_tlu_misalign_addr_jmpl_rtn_m),
2297                 .exu_tlu_spill         (exu_tlu_spill),
2298                 .exu_tlu_spill_other   (exu_tlu_spill_other),
2299                 .exu_tlu_spill_tid     (exu_tlu_spill_tid[1:0]),
2300                 .exu_tlu_spill_wtype   (exu_tlu_spill_wtype[2:0]),
2301                 .exu_tlu_ttype_m       (exu_tlu_ttype_m[8:0]),
2302                 .exu_tlu_ttype_vld_m   (exu_tlu_ttype_vld_m),
2303                 .exu_tlu_va_oor_jl_ret_m(exu_tlu_va_oor_jl_ret_m),
2304                 .exu_tlu_va_oor_m      (exu_tlu_va_oor_m),
2305                 .exu_tlu_wsr_data_m    (exu_tlu_wsr_data_m[63:0]),
2306                 .exu_ifu_err_synd_m    (exu_ifu_err_synd_m[7:0]),
2307                 // Inputs
2308                 .mux_drive_disable     (mux_drive_disable),
2309                 .mem_write_disable     (mem_write_disable),
2310                 .ffu_exu_rsr_data_m    (ffu_exu_rsr_data_m[63:0]),
2311                 .ifu_exu_addr_mask_d   (ifu_exu_addr_mask_d),
2312                 .ifu_exu_aluop_d       (ifu_exu_aluop_d[2:0]),
2313                 .ifu_exu_casa_d        (ifu_exu_casa_d),
2314                 .ifu_exu_dbrinst_d     (ifu_exu_dbrinst_d),
2315                 .ifu_exu_disable_ce_e  (ifu_exu_disable_ce_e),
2316                 .ifu_exu_dontmv_regz0_e(ifu_exu_dontmv_regz0_e),
2317                 .ifu_exu_dontmv_regz1_e(ifu_exu_dontmv_regz1_e),
2318                 .ifu_exu_ecc_mask      (ifu_exu_ecc_mask[7:0]),
2319                 .ifu_exu_enshift_d     (ifu_exu_enshift_d),
2320                 .ifu_exu_flushw_e      (ifu_exu_flushw_e),
2321                 .ifu_exu_ialign_d      (ifu_exu_ialign_d),
2322                 .ifu_exu_imm_data_d    (ifu_exu_imm_data_d[31:0]),
2323                 .ifu_exu_inj_irferr    (ifu_exu_inj_irferr),
2324                 .ifu_exu_inst_vld_e    (ifu_exu_inst_vld_e),
2325                 .ifu_exu_inst_vld_w    (ifu_exu_inst_vld_w),
2326                 .ifu_exu_invert_d      (ifu_exu_invert_d),
2327                 .ifu_exu_kill_e        (ifu_exu_kill_e),
2328                 .ifu_exu_muldivop_d    (ifu_exu_muldivop_d[4:0]),
2329                 .ifu_exu_muls_d        (ifu_exu_muls_d),
2330                 .ifu_exu_nceen_e       (ifu_exu_nceen_e),
2331                 .ifu_exu_pc_d          (ifu_exu_pc_d[47:0]),
2332                 .ifu_exu_pcver_e       (ifu_exu_pcver_e[63:0]),
2333                 .ifu_exu_range_check_jlret_d(ifu_exu_range_check_jlret_d),
2334                 .ifu_exu_range_check_other_d(ifu_exu_range_check_other_d),
2335                 .ifu_exu_rd_d          (ifu_exu_rd_d[4:0]),
2336                 .ifu_exu_rd_exusr_e    (ifu_exu_rd_exusr_e),
2337                 .ifu_exu_rd_ffusr_e    (ifu_exu_rd_ffusr_e),
2338                 .ifu_exu_rd_ifusr_e    (ifu_exu_rd_ifusr_e),
2339                 .ifu_exu_ren1_s        (ifu_exu_ren1_s),
2340                 .ifu_exu_ren2_s        (ifu_exu_ren2_s),
2341                 .ifu_exu_ren3_s        (ifu_exu_ren3_s),
2342                 .ifu_exu_restore_d     (ifu_exu_restore_d),
2343                 .ifu_exu_restored_e    (ifu_exu_restored_e),
2344                 .ifu_exu_return_d      (ifu_exu_return_d),
2345                 .ifu_exu_rs1_s         (ifu_exu_rs1_s[4:0]),
2346                 .ifu_exu_rs1_vld_d     (ifu_exu_rs1_vld_d),
2347                 .ifu_exu_rs2_s         (ifu_exu_rs2_s[4:0]),
2348                 .ifu_exu_rs2_vld_d     (ifu_exu_rs2_vld_d),
2349                 .ifu_exu_rs3_s         (ifu_exu_rs3_s[4:0]),
2350                 .ifu_exu_rs3e_vld_d    (ifu_exu_rs3e_vld_d),
2351                 .ifu_exu_rs3o_vld_d    (ifu_exu_rs3o_vld_d),
2352                 .ifu_exu_save_d        (ifu_exu_save_d),
2353                 .ifu_exu_saved_e       (ifu_exu_saved_e),
2354                 .ifu_exu_setcc_d       (ifu_exu_setcc_d),
2355                 .ifu_exu_sethi_inst_d  (ifu_exu_sethi_inst_d),
2356                 .ifu_exu_shiftop_d     (ifu_exu_shiftop_d[2:0]),
2357                 .ifu_exu_tagop_d       (ifu_exu_tagop_d),
2358                 .ifu_exu_tcc_e         (ifu_exu_tcc_e),
2359                 .ifu_exu_tid_s2        (ifu_exu_tid_s2[1:0]),
2360                 .ifu_exu_ttype_vld_m   (ifu_exu_ttype_vld_m),
2361                 .ifu_exu_tv_d          (ifu_exu_tv_d),
2362                 .ifu_exu_use_rsr_e_l   (ifu_exu_use_rsr_e_l),
2363                 .ifu_exu_usecin_d      (ifu_exu_usecin_d),
2364                 .ifu_exu_useimm_d      (ifu_exu_useimm_d),
2365                 .ifu_exu_wen_d         (ifu_exu_wen_d),
2366                 .ifu_tlu_flush_m       (ifu_tlu_flush_m),
2367                 .ifu_tlu_sraddr_d      (ifu_tlu_sraddr_d[6:0]),
2368                 .lsu_exu_dfill_data_g  (lsu_exu_dfill_data_g[63:0]),
2369                 .lsu_exu_dfill_vld_g   (lsu_exu_dfill_vld_g),
2370                 .lsu_exu_flush_pipe_w  (lsu_exu_flush_pipe_w),
2371                 .lsu_exu_ldst_miss_g2  (lsu_exu_ldst_miss_g2),
2372                 .lsu_exu_ldxa_data_g   (lsu_exu_ldxa_data_g[63:0]),
2373                 .lsu_exu_ldxa_m        (lsu_exu_ldxa_m),
2374                 .lsu_exu_rd_m          (lsu_exu_rd_m[4:0]),
2375                 .lsu_exu_st_dtlb_perr_g(lsu_exu_st_dtlb_perr_g),
2376                 .lsu_exu_thr_m         (lsu_exu_thr_m[1:0]),
2377                 .mul_exu_ack           (mul_exu_ack),
2378                 .rclk                  (rclk),
2379                 .se                    (se),
2380                 .sehold                (sehold),
2381                 .tlu_exu_agp           (tlu_exu_agp[1:0]),
2382                 .tlu_exu_agp_swap      (tlu_exu_agp_swap),
2383                 .tlu_exu_agp_tid       (tlu_exu_agp_tid[1:0]),
2384                 .tlu_exu_ccr_m         (tlu_exu_ccr_m[7:0]),
2385                 .tlu_exu_cwp_m         (tlu_exu_cwp_m[2:0]),
2386                 .tlu_exu_cwp_retry_m   (tlu_exu_cwp_retry_m),
2387                 .tlu_exu_cwpccr_update_m(tlu_exu_cwpccr_update_m),
2388                 .tlu_exu_pic_onebelow_m(tlu_exu_pic_onebelow_m),
2389                 .tlu_exu_pic_twobelow_m(tlu_exu_pic_twobelow_m),
2390                 .tlu_exu_priv_trap_m   (tlu_exu_priv_trap_m),
2391                 .tlu_exu_rsr_data_m    (tlu_exu_rsr_data_m[63:0]));
2392
2393`endif
2394   
2395`ifdef FPGA_SYN_NO_SPU
2396
2397      tlu tlu(
2398           .short_si0              (short_scan0_3),
2399           .short_si1              (short_scan1_3),
2400           .short_so0              (short_scan0_4),
2401           .short_so1              (short_scan1_4),
2402           .si0 (scan0_4),
2403           .si1 (scan1_1),
2404           .so0 (scan0_5),
2405           .so1 (scan1_2),
2406           .grst_l                (spc_grst_l),
2407           .arst_l                (cmp_arst_l),
2408               .tlu_sftint_vld              (tlu_ifu_sftint_vld[3:0]),
2409               .ifu_tlu_swint_m             (ifu_tlu_sftint_m),
2410           .exu_tlu_cwp0                (exu_tlu_cwp0_w[2:0]),
2411           .exu_tlu_cwp1                (exu_tlu_cwp1_w[2:0]),
2412           .exu_tlu_cwp2                (exu_tlu_cwp2_w[2:0]),
2413           .exu_tlu_cwp3                (exu_tlu_cwp3_w[2:0]),
2414
2415           // fix for bug 5953
2416           .exu_tlu_ue_trap_m           (1'b0),
2417
2418           // temporary fix for bug 5863
2419           // TBD: change for TO 2.0
2420           // fixed for eco 6660
2421           .spu_tlu_rsrv_illgl_m        (1'b0),
2422
2423           // new interface to the pib block
2424           .ifu_lsu_imm_asi_d           (ifu_tlu_imm_asi_d[8:0]),
2425           
2426           .ifu_tlu_imiss_e       (ifu_tlu_icmiss_e),
2427           // MMU_ASI_RD_CHANGE
2428           .ifu_tlu_thrid_d             (lsu_tlu_thrid_d[1:0]),
2429           .lsu_tlu_st_rs3_data_g       (lsu_mmu_rs3_data_g[63:0]),
2430           .lsu_tlu_async_ttype_g       (lsu_tlu_async_ttype_w2[6:0]),
2431           .lsu_tlu_async_tid_g         (lsu_tlu_async_tid_w2[1:0]),
2432           .lsu_tlu_async_ttype_vld_g   (lsu_tlu_async_ttype_vld_w2),
2433       // end of new interface to the pib
2434           /*AUTOINST*/
2435           // Outputs
2436           .tlu_lsu_int_ldxa_data_w2    (tlu_lsu_int_ldxa_data_w2[63:0]),
2437           .tlu_lsu_int_ld_ill_va_w2    (tlu_lsu_int_ld_ill_va_w2),
2438           .tlu_lsu_int_ldxa_vld_w2     (tlu_lsu_int_ldxa_vld_w2),
2439           .tlu_dtlb_data_rd_g          (tlu_dtlb_data_rd_g),
2440           .tlu_dtlb_dmp_actxt_g        (tlu_dtlb_dmp_actxt_g),
2441           .tlu_dtlb_dmp_all_g          (tlu_dtlb_dmp_all_g),
2442           .tlu_dtlb_dmp_nctxt_g        (tlu_dtlb_dmp_nctxt_g),
2443           .tlu_dtlb_dmp_pctxt_g        (tlu_dtlb_dmp_pctxt_g),
2444           .tlu_dtlb_dmp_sctxt_g        (tlu_dtlb_dmp_sctxt_g),
2445           .tlu_dtlb_dmp_vld_g          (tlu_dtlb_dmp_vld_g),
2446           .tlu_dtlb_invalidate_all_g   (tlu_dtlb_invalidate_all_g),
2447           .tlu_dtlb_rw_index_g         (tlu_dtlb_rw_index_g[5:0]),
2448           .tlu_dtlb_rw_index_vld_g     (tlu_dtlb_rw_index_vld_g),
2449           .tlu_dtlb_tag_rd_g           (tlu_dtlb_tag_rd_g),
2450           .tlu_dtlb_tte_data_w2        (tlu_dtlb_tte_data_w2[42:0]),
2451           .tlu_dtlb_tte_tag_w2         (tlu_dtlb_tte_tag_w2[58:0]),
2452           .lsu_ifu_inj_ack             (lsu_ifu_inj_ack[3:0]),
2453           .tlu_exu_agp                 (tlu_exu_agp[`TSA_GLOBAL_WIDTH-1:0]),
2454           .tlu_exu_agp_swap            (tlu_exu_agp_swap),
2455           .tlu_exu_agp_tid             (tlu_exu_agp_tid[1:0]),
2456           .tlu_exu_ccr_m               (tlu_exu_ccr_m[7:0]),
2457           .tlu_exu_cwp_m               (tlu_exu_cwp_m[2:0]),
2458           .tlu_exu_cwp_retry_m         (tlu_exu_cwp_retry_m),
2459           .tlu_exu_cwpccr_update_m     (tlu_exu_cwpccr_update_m),
2460           .tlu_exu_rsr_data_m          (tlu_exu_rsr_data_m[`TLU_ASR_DATA_WIDTH-1:0]),
2461           .tlu_idtlb_dmp_key_g         (tlu_idtlb_dmp_key_g[40:0]),
2462           .tlu_idtlb_dmp_thrid_g       (tlu_idtlb_dmp_thrid_g[1:0]),
2463           .tlu_ifu_hwint_i3            (tlu_ifu_hwint_i3[3:0]),
2464           .tlu_ifu_nukeint_i2          (tlu_ifu_nukeint_i2),
2465           .tlu_ifu_pstate_ie           (tlu_ifu_pstate_ie[3:0]),
2466           .tlu_ifu_pstate_pef          (tlu_ifu_pstate_pef[3:0]),
2467           .tlu_ifu_resumint_i2         (tlu_ifu_resumint_i2),
2468           .tlu_ifu_rstint_i2           (tlu_ifu_rstint_i2),
2469           .tlu_ifu_rstthr_i2           (tlu_ifu_rstthr_i2[3:0]),
2470           .tlu_ifu_trap_tid_w1         (tlu_ifu_trap_tid_w1[1:0]),
2471           .tlu_ifu_trapnpc_vld_w1      (tlu_ifu_trapnpc_vld_w1),
2472           .tlu_ifu_trapnpc_w2          (tlu_ifu_trapnpc_w2[48:0]),
2473           .tlu_ifu_trappc_w2           (tlu_ifu_trappc_w2[48:0]),
2474           .tlu_ifu_trappc_vld_w1       (tlu_ifu_trappc_vld_w1),
2475           .tlu_itlb_data_rd_g          (tlu_itlb_data_rd_g),
2476           .tlu_itlb_dmp_actxt_g        (tlu_itlb_dmp_actxt_g),
2477           .tlu_itlb_dmp_all_g          (tlu_itlb_dmp_all_g),
2478           .tlu_itlb_dmp_nctxt_g        (tlu_itlb_dmp_nctxt_g),
2479           .tlu_itlb_dmp_vld_g          (tlu_itlb_dmp_vld_g),
2480           .tlu_itlb_invalidate_all_g   (tlu_itlb_invalidate_all_g),
2481           .tlu_itlb_rw_index_g         (tlu_itlb_rw_index_g[5:0]),
2482           .tlu_itlb_rw_index_vld_g     (tlu_itlb_rw_index_vld_g),
2483           .tlu_itlb_tag_rd_g           (tlu_itlb_tag_rd_g),
2484           .tlu_itlb_tte_data_w2        (tlu_itlb_tte_data_w2[42:0]),
2485           .tlu_itlb_tte_tag_w2         (tlu_itlb_tte_tag_w2[58:0]),
2486           .tlu_itlb_wr_vld_g           (tlu_itlb_wr_vld_g),
2487           .tlu_lsu_asi_m               (tlu_lsu_asi_m[7:0]),
2488           .tlu_lsu_asi_update_m        (tlu_lsu_asi_update_m),
2489           .tlu_sscan_test_data         (tlu_sscan_test_data[62:0]),
2490           .tlu_lsu_ldxa_tid_w2         (tlu_lsu_ldxa_tid_w2[1:0]),
2491           .tlu_lsu_pcxpkt              (tlu_lsu_pcxpkt[25:0]),
2492           .tlu_lsu_pstate_am           (tlu_lsu_pstate_am[3:0]),
2493           .tlu_lsu_pstate_cle          (tlu_lsu_pstate_cle[3:0]),
2494           .tlu_lsu_pstate_priv         (tlu_lsu_pstate_priv[3:0]),
2495           .tlu_lsu_redmode             (tlu_lsu_redmode[3:0]),
2496           .tlu_lsu_redmode_rst_d1      (tlu_lsu_redmode_rst_d1[3:0]),
2497           .tlu_lsu_stxa_ack            (tlu_lsu_stxa_ack),
2498           .tlu_lsu_stxa_ack_tid        (tlu_lsu_stxa_ack_tid[1:0]),
2499           .tlu_lsu_tid_m               (tlu_lsu_tid_m[1:0]),
2500           .tlu_lsu_tl_zero             (tlu_lsu_tl_zero[`TLU_THRD_NUM-1:0]),
2501           .tlu_hintp_vld               (tlu_hintp_vld[`TLU_THRD_NUM-1:0]),
2502           .tlu_rerr_vld                (tlu_rerr_vld[`TLU_THRD_NUM-1:0]),
2503           .tlu_early_flush_pipe_w      (tlu_early_flush_pipe_w),
2504           .tlu_early_flush_pipe2_w     (tlu_early_flush_pipe2_w),
2505           .tlu_exu_early_flush_pipe_w  (tlu_exu_early_flush_pipe_w),
2506           .tlu_lsu_ldxa_async_data_vld (tlu_lsu_ldxa_async_data_vld),
2507           .tlu_hpstate_priv            (tlu_hpstate_priv[`TLU_THRD_NUM-1:0]),
2508           .tlu_hpstate_enb             (tlu_hpstate_enb[`TLU_THRD_NUM-1:0]),
2509           .tlu_hpstate_ibe             (tlu_hpstate_ibe[`TLU_THRD_NUM-1:0]),
2510           .tlu_exu_priv_trap_m         (tlu_exu_priv_trap_m),
2511           .tlu_lsu_priv_trap_m         (tlu_lsu_priv_trap_m),
2512           .tlu_exu_pic_onebelow_m      (tlu_exu_pic_onebelow_m),
2513           .tlu_exu_pic_twobelow_m      (tlu_exu_pic_twobelow_m),
2514           .lsu_exu_ldxa_m              (lsu_exu_ldxa_m),
2515           .lsu_exu_ldxa_data_g         (lsu_exu_ldxa_data_g[63:0]),
2516           .tlu_dsfsr_flt_vld           (tlu_dsfsr_flt_vld[3:0]),
2517           // Inputs
2518           .rclk                        (rclk),
2519           .const_cpuid                 (const_cpuid[3:0]),
2520           .exu_lsu_ldst_va_e           (exu_lsu_ldst_va_e[`ASI_VA_WIDTH-1:0]),
2521           .lsu_tlu_ldst_va_m           (lsu_tlu_ldst_va_m[`TLU_ASI_VA_WIDTH-1:0]),
2522           .exu_mmu_early_va_e          (exu_mmu_early_va_e[7:0]),
2523           .exu_tlu_ccr0_w              (exu_tlu_ccr0_w[7:0]),
2524           .exu_tlu_ccr1_w              (exu_tlu_ccr1_w[7:0]),
2525           .exu_tlu_ccr2_w              (exu_tlu_ccr2_w[7:0]),
2526           .exu_tlu_ccr3_w              (exu_tlu_ccr3_w[7:0]),
2527           .exu_tlu_cwp_cmplt           (exu_tlu_cwp_cmplt),
2528           .exu_tlu_cwp_cmplt_tid       (exu_tlu_cwp_cmplt_tid[1:0]),
2529           .exu_tlu_cwp_retry           (exu_tlu_cwp_retry),
2530           .exu_tlu_misalign_addr_jmpl_rtn_m(exu_tlu_misalign_addr_jmpl_rtn_m),
2531           .exu_tlu_spill               (exu_tlu_spill),
2532           .exu_tlu_spill_tid           (exu_tlu_spill_tid[1:0]),
2533           .exu_tlu_spill_other         (exu_tlu_spill_other),
2534           .exu_tlu_spill_wtype         (exu_tlu_spill_wtype[2:0]),
2535           .exu_tlu_ttype_m             (exu_tlu_ttype_m[8:0]),
2536           .exu_tlu_ttype_vld_m         (exu_tlu_ttype_vld_m),
2537           .exu_tlu_va_oor_jl_ret_m     (exu_tlu_va_oor_jl_ret_m),
2538           .exu_tlu_va_oor_m            (exu_tlu_va_oor_m),
2539           .ffu_tlu_ill_inst_m          (ffu_tlu_ill_inst_m),
2540           .ffu_ifu_tid_w2              (ffu_ifu_tid_w2[1:0]),
2541           .ffu_tlu_trap_ieee754        (ffu_tlu_trap_ieee754),
2542           .ffu_tlu_trap_other          (ffu_tlu_trap_other),
2543           .ffu_tlu_trap_ue             (ffu_tlu_trap_ue),
2544           .ifu_lsu_ld_inst_e           (ifu_lsu_ld_inst_e),
2545           .ifu_lsu_memref_d            (ifu_lsu_memref_d),
2546           .ifu_lsu_st_inst_e           (ifu_lsu_st_inst_e),
2547           .ifu_tlu_done_inst_d         (ifu_tlu_done_inst_d),
2548           .ifu_tlu_flush_m             (ifu_tlu_flush_m),
2549           .ifu_tlu_flush_fd_w          (ifu_tlu_flush_fd_w),
2550           .ifu_tlu_flush_fd2_w         (ifu_tlu_flush_fd2_w),
2551           .ifu_tlu_flush_fd3_w         (ifu_tlu_flush_fd3_w),
2552           .lsu_tlu_early_flush_w       (lsu_tlu_early_flush_w),
2553           .lsu_tlu_early_flush2_w      (lsu_tlu_early_flush2_w),
2554           .ifu_tlu_hwint_m             (ifu_tlu_hwint_m),
2555           .ifu_tlu_immu_miss_m         (ifu_tlu_immu_miss_m),
2556           .ifu_tlu_pc_oor_e            (ifu_tlu_pc_oor_e),
2557           .ifu_tlu_l2imiss             (ifu_tlu_l2imiss[`TLU_THRD_NUM-1:0]),
2558           .ifu_tlu_inst_vld_m          (ifu_tlu_inst_vld_m),
2559           .ifu_tlu_inst_vld_m_bf1      (ifu_tlu_inst_vld_m_bf1),
2560           .ifu_tlu_itlb_done           (ifu_tlu_itlb_done),
2561           .ifu_tlu_npc_m               (ifu_tlu_npc_m[48:0]),
2562           .ifu_tlu_pc_m                (ifu_tlu_pc_m[48:0]),
2563           .ifu_tlu_priv_violtn_m       (ifu_tlu_priv_violtn_m),
2564           .ifu_tlu_retry_inst_d        (ifu_tlu_retry_inst_d),
2565           .ifu_tlu_rstint_m            (ifu_tlu_rstint_m),
2566           .ifu_tlu_sir_inst_m          (ifu_tlu_sir_inst_m),
2567           .ifu_lsu_thrid_s             (ifu_lsu_thrid_s[1:0]),
2568           .ifu_tlu_ttype_m             (ifu_tlu_ttype_m[8:0]),
2569           .ifu_tlu_ttype_vld_m         (ifu_tlu_ttype_vld_m),
2570           .ifu_mmu_trap_m              (ifu_mmu_trap_m),
2571           .ifu_tlu_trap_m              (ifu_tlu_trap_m),
2572           .lsu_asi_reg0                (lsu_asi_reg0[7:0]),
2573           .lsu_asi_reg1                (lsu_asi_reg1[7:0]),
2574           .lsu_asi_reg2                (lsu_asi_reg2[7:0]),
2575           .lsu_asi_reg3                (lsu_asi_reg3[7:0]),
2576           .lsu_asi_state               (lsu_asi_state[`TLU_ASI_STATE_WIDTH-1:0]),
2577           .lsu_tlu_defr_trp_taken_g    (lsu_tlu_defr_trp_taken_g),
2578           .lsu_mmu_defr_trp_taken_g    (lsu_mmu_defr_trp_taken_g),
2579           .lsu_tlu_cpx_req             (lsu_tlu_cpx_req[3:0]),
2580           .lsu_tlu_cpx_vld             (lsu_tlu_cpx_vld),
2581           .lsu_tlu_daccess_excptn_g    (lsu_tlu_daccess_excptn_g),
2582           .lsu_tlu_daccess_prot_g      (lsu_tlu_daccess_prot_g),
2583           .lsu_tlu_dmmu_miss_g         (lsu_tlu_dmmu_miss_g),
2584           .lsu_tlu_dside_ctxt_m        (lsu_tlu_dside_ctxt_m[12:0]),
2585           .lsu_tlu_dtlb_done           (lsu_tlu_dtlb_done),
2586           .lsu_tlu_intpkt              (lsu_tlu_intpkt[17:0]),
2587           .ctu_sscan_tid               (ctu_sscan_tid[`TLU_THRD_NUM-1:0]),
2588           .lsu_tlu_misalign_addr_ldst_atm_m(lsu_tlu_misalign_addr_ldst_atm_m),
2589           .lsu_tlu_pctxt_m             (lsu_tlu_pctxt_m[12:0]),
2590           .lsu_tlu_pcxpkt_ack          (lsu_tlu_pcxpkt_ack),
2591           .lsu_tlu_priv_action_g       (lsu_tlu_priv_action_g),
2592           .lsu_tlu_rs3_data_g          (lsu_tlu_rs3_data_g[63:0]),
2593           .lsu_tlu_tlb_access_tid_m    (lsu_tlu_tlb_access_tid_m[1:0]),
2594           .lsu_tlu_tlb_asi_state_m     (lsu_tlu_tlb_asi_state_m[7:0]),
2595           .lsu_tlu_tlb_dmp_va_m        (lsu_tlu_tlb_dmp_va_m[47:13]),
2596           .lsu_tlu_tlb_ld_inst_m       (lsu_tlu_tlb_ld_inst_m),
2597           .lsu_tlu_tlb_ldst_va_m       (lsu_tlu_tlb_ldst_va_m[10:0]),
2598           .lsu_tlu_tlb_st_inst_m       (lsu_tlu_tlb_st_inst_m),
2599           .lsu_tlu_ttype_m2            (lsu_tlu_ttype_m2[8:0]),
2600           .lsu_tlu_ttype_vld_m2        (lsu_tlu_ttype_vld_m2),
2601           .lsu_tlu_wtchpt_trp_g        (lsu_tlu_wtchpt_trp_g),
2602           .mem_write_disable           (mem_write_disable),
2603           .mux_drive_disable           (mux_drive_disable),
2604           .sehold                      (sehold),
2605           .se                          (se),
2606           .ifu_tlu_sraddr_d            (ifu_tlu_sraddr_d[`TLU_ASR_ADDR_WIDTH-1:0]),
2607           .ifu_tlu_sraddr_d_v2         (ifu_tlu_sraddr_d_v2[`TLU_ASR_ADDR_WIDTH-1:0]),
2608           .ifu_tlu_rsr_inst_d          (ifu_tlu_rsr_inst_d),
2609           .lsu_tlu_wsr_inst_e          (lsu_tlu_wsr_inst_e),
2610           .exu_tlu_wsr_data_m          (exu_tlu_wsr_data_m[63:0]),
2611           .lsu_tlu_rsr_data_e          (lsu_tlu_rsr_data_e[7:0]),
2612           .ifu_lsu_alt_space_e         (ifu_lsu_alt_space_e),
2613           .ifu_tlu_alt_space_d         (ifu_tlu_alt_space_d),
2614           .lsu_tlu_squash_va_oor_m     (lsu_tlu_squash_va_oor_m),
2615           .lsu_tlu_dcache_miss_w2      (lsu_tlu_dcache_miss_w2[3:0]),
2616           .lsu_tlu_l2_dmiss            (lsu_tlu_l2_dmiss[3:0]),
2617           .lsu_tlu_stb_full_w2         (lsu_tlu_stb_full_w2[3:0]),
2618           .ffu_tlu_fpu_tid             (ffu_tlu_fpu_tid[1:0]),
2619           .ffu_tlu_fpu_cmplt           (ffu_tlu_fpu_cmplt),
2620           .lsu_pid_state0              (lsu_pid_state0[2:0]),
2621           .lsu_pid_state1              (lsu_pid_state1[2:0]),
2622           .lsu_pid_state2              (lsu_pid_state2[2:0]),
2623           .lsu_pid_state3              (lsu_pid_state3[2:0]),
2624           .lsu_tlu_nucleus_ctxt_m      (lsu_tlu_nucleus_ctxt_m),
2625           .lsu_tlu_tte_pg_sz_g         (lsu_tlu_tte_pg_sz_g[2:0]),
2626           .ifu_lsu_error_inj           (ifu_lsu_error_inj[3:0]),
2627           .ifu_lsu_imm_asi_vld_d       (ifu_lsu_imm_asi_vld_d),
2628           .lsu_dsfsr_din_g             (lsu_dsfsr_din_g[23:0]),
2629           .lsu_dmmu_sfsr_trp_wr        (lsu_dmmu_sfsr_trp_wr[3:0]),
2630           .lsu_mmu_flush_pipe_w        (lsu_mmu_flush_pipe_w),
2631           .exu_lsu_priority_trap_m     (exu_lsu_priority_trap_m));
2632   
2633`else
2634   
2635   tlu tlu(
2636           .short_si0              (short_scan0_3),
2637           .short_si1              (short_scan1_3),
2638           .short_so0              (short_scan0_4),
2639           .short_so1              (short_scan1_4),
2640           .si0 (scan0_4),
2641           .si1 (scan1_1),
2642           .so0 (scan0_5),
2643           .so1 (scan1_2),
2644           .grst_l                (spc_grst_l),
2645           .arst_l                (cmp_arst_l),
2646               .tlu_sftint_vld              (tlu_ifu_sftint_vld[3:0]),
2647               .ifu_tlu_swint_m             (ifu_tlu_sftint_m),
2648           .exu_tlu_cwp0                (exu_tlu_cwp0_w[2:0]),
2649           .exu_tlu_cwp1                (exu_tlu_cwp1_w[2:0]),
2650           .exu_tlu_cwp2                (exu_tlu_cwp2_w[2:0]),
2651           .exu_tlu_cwp3                (exu_tlu_cwp3_w[2:0]),
2652
2653           // fix for bug 5953
2654           .exu_tlu_ue_trap_m           (1'b0),
2655
2656           // temporary fix for bug 5863
2657           // TBD: change for TO 2.0
2658           // fixed for eco 6660
2659           .spu_tlu_rsrv_illgl_m        (spu_tlu_rsrv_illgl_m),
2660
2661           // new interface to the pib block
2662           .ifu_lsu_imm_asi_d           (ifu_tlu_imm_asi_d[8:0]),
2663           
2664           .ifu_tlu_imiss_e       (ifu_tlu_icmiss_e),
2665           // MMU_ASI_RD_CHANGE
2666           .ifu_tlu_thrid_d             (lsu_tlu_thrid_d[1:0]),
2667           .lsu_tlu_st_rs3_data_g       (lsu_mmu_rs3_data_g[63:0]),
2668           .lsu_tlu_async_ttype_g       (lsu_tlu_async_ttype_w2[6:0]),
2669           .lsu_tlu_async_tid_g         (lsu_tlu_async_tid_w2[1:0]),
2670           .lsu_tlu_async_ttype_vld_g   (lsu_tlu_async_ttype_vld_w2),
2671       // end of new interface to the pib
2672           /*AUTOINST*/
2673           // Outputs
2674           .tlu_lsu_int_ldxa_data_w2    (tlu_lsu_int_ldxa_data_w2[63:0]),
2675           .tlu_lsu_int_ld_ill_va_w2    (tlu_lsu_int_ld_ill_va_w2),
2676           .tlu_lsu_int_ldxa_vld_w2     (tlu_lsu_int_ldxa_vld_w2),
2677           .tlu_dtlb_data_rd_g          (tlu_dtlb_data_rd_g),
2678           .tlu_dtlb_dmp_actxt_g        (tlu_dtlb_dmp_actxt_g),
2679           .tlu_dtlb_dmp_all_g          (tlu_dtlb_dmp_all_g),
2680           .tlu_dtlb_dmp_nctxt_g        (tlu_dtlb_dmp_nctxt_g),
2681           .tlu_dtlb_dmp_pctxt_g        (tlu_dtlb_dmp_pctxt_g),
2682           .tlu_dtlb_dmp_sctxt_g        (tlu_dtlb_dmp_sctxt_g),
2683           .tlu_dtlb_dmp_vld_g          (tlu_dtlb_dmp_vld_g),
2684           .tlu_dtlb_invalidate_all_g   (tlu_dtlb_invalidate_all_g),
2685           .tlu_dtlb_rw_index_g         (tlu_dtlb_rw_index_g[5:0]),
2686           .tlu_dtlb_rw_index_vld_g     (tlu_dtlb_rw_index_vld_g),
2687           .tlu_dtlb_tag_rd_g           (tlu_dtlb_tag_rd_g),
2688           .tlu_dtlb_tte_data_w2        (tlu_dtlb_tte_data_w2[42:0]),
2689           .tlu_dtlb_tte_tag_w2         (tlu_dtlb_tte_tag_w2[58:0]),
2690           .lsu_ifu_inj_ack             (lsu_ifu_inj_ack[3:0]),
2691           .tlu_exu_agp                 (tlu_exu_agp[`TSA_GLOBAL_WIDTH-1:0]),
2692           .tlu_exu_agp_swap            (tlu_exu_agp_swap),
2693           .tlu_exu_agp_tid             (tlu_exu_agp_tid[1:0]),
2694           .tlu_exu_ccr_m               (tlu_exu_ccr_m[7:0]),
2695           .tlu_exu_cwp_m               (tlu_exu_cwp_m[2:0]),
2696           .tlu_exu_cwp_retry_m         (tlu_exu_cwp_retry_m),
2697           .tlu_exu_cwpccr_update_m     (tlu_exu_cwpccr_update_m),
2698           .tlu_exu_rsr_data_m          (tlu_exu_rsr_data_m[`TLU_ASR_DATA_WIDTH-1:0]),
2699           .tlu_idtlb_dmp_key_g         (tlu_idtlb_dmp_key_g[40:0]),
2700           .tlu_idtlb_dmp_thrid_g       (tlu_idtlb_dmp_thrid_g[1:0]),
2701           .tlu_ifu_hwint_i3            (tlu_ifu_hwint_i3[3:0]),
2702           .tlu_ifu_nukeint_i2          (tlu_ifu_nukeint_i2),
2703           .tlu_ifu_pstate_ie           (tlu_ifu_pstate_ie[3:0]),
2704           .tlu_ifu_pstate_pef          (tlu_ifu_pstate_pef[3:0]),
2705           .tlu_ifu_resumint_i2         (tlu_ifu_resumint_i2),
2706           .tlu_ifu_rstint_i2           (tlu_ifu_rstint_i2),
2707           .tlu_ifu_rstthr_i2           (tlu_ifu_rstthr_i2[3:0]),
2708           .tlu_ifu_trap_tid_w1         (tlu_ifu_trap_tid_w1[1:0]),
2709           .tlu_ifu_trapnpc_vld_w1      (tlu_ifu_trapnpc_vld_w1),
2710           .tlu_ifu_trapnpc_w2          (tlu_ifu_trapnpc_w2[48:0]),
2711           .tlu_ifu_trappc_w2           (tlu_ifu_trappc_w2[48:0]),
2712           .tlu_ifu_trappc_vld_w1       (tlu_ifu_trappc_vld_w1),
2713           .tlu_itlb_data_rd_g          (tlu_itlb_data_rd_g),
2714           .tlu_itlb_dmp_actxt_g        (tlu_itlb_dmp_actxt_g),
2715           .tlu_itlb_dmp_all_g          (tlu_itlb_dmp_all_g),
2716           .tlu_itlb_dmp_nctxt_g        (tlu_itlb_dmp_nctxt_g),
2717           .tlu_itlb_dmp_vld_g          (tlu_itlb_dmp_vld_g),
2718           .tlu_itlb_invalidate_all_g   (tlu_itlb_invalidate_all_g),
2719           .tlu_itlb_rw_index_g         (tlu_itlb_rw_index_g[5:0]),
2720           .tlu_itlb_rw_index_vld_g     (tlu_itlb_rw_index_vld_g),
2721           .tlu_itlb_tag_rd_g           (tlu_itlb_tag_rd_g),
2722           .tlu_itlb_tte_data_w2        (tlu_itlb_tte_data_w2[42:0]),
2723           .tlu_itlb_tte_tag_w2         (tlu_itlb_tte_tag_w2[58:0]),
2724           .tlu_itlb_wr_vld_g           (tlu_itlb_wr_vld_g),
2725           .tlu_lsu_asi_m               (tlu_lsu_asi_m[7:0]),
2726           .tlu_lsu_asi_update_m        (tlu_lsu_asi_update_m),
2727           .tlu_sscan_test_data         (tlu_sscan_test_data[62:0]),
2728           .tlu_lsu_ldxa_tid_w2         (tlu_lsu_ldxa_tid_w2[1:0]),
2729           .tlu_lsu_pcxpkt              (tlu_lsu_pcxpkt[25:0]),
2730           .tlu_lsu_pstate_am           (tlu_lsu_pstate_am[3:0]),
2731           .tlu_lsu_pstate_cle          (tlu_lsu_pstate_cle[3:0]),
2732           .tlu_lsu_pstate_priv         (tlu_lsu_pstate_priv[3:0]),
2733           .tlu_lsu_redmode             (tlu_lsu_redmode[3:0]),
2734           .tlu_lsu_redmode_rst_d1      (tlu_lsu_redmode_rst_d1[3:0]),
2735           .tlu_lsu_stxa_ack            (tlu_lsu_stxa_ack),
2736           .tlu_lsu_stxa_ack_tid        (tlu_lsu_stxa_ack_tid[1:0]),
2737           .tlu_lsu_tid_m               (tlu_lsu_tid_m[1:0]),
2738           .tlu_lsu_tl_zero             (tlu_lsu_tl_zero[`TLU_THRD_NUM-1:0]),
2739           .tlu_hintp_vld               (tlu_hintp_vld[`TLU_THRD_NUM-1:0]),
2740           .tlu_rerr_vld                (tlu_rerr_vld[`TLU_THRD_NUM-1:0]),
2741           .tlu_early_flush_pipe_w      (tlu_early_flush_pipe_w),
2742           .tlu_early_flush_pipe2_w     (tlu_early_flush_pipe2_w),
2743           .tlu_exu_early_flush_pipe_w  (tlu_exu_early_flush_pipe_w),
2744           .tlu_lsu_ldxa_async_data_vld (tlu_lsu_ldxa_async_data_vld),
2745           .tlu_hpstate_priv            (tlu_hpstate_priv[`TLU_THRD_NUM-1:0]),
2746           .tlu_hpstate_enb             (tlu_hpstate_enb[`TLU_THRD_NUM-1:0]),
2747           .tlu_hpstate_ibe             (tlu_hpstate_ibe[`TLU_THRD_NUM-1:0]),
2748           .tlu_exu_priv_trap_m         (tlu_exu_priv_trap_m),
2749           .tlu_lsu_priv_trap_m         (tlu_lsu_priv_trap_m),
2750           .tlu_exu_pic_onebelow_m      (tlu_exu_pic_onebelow_m),
2751           .tlu_exu_pic_twobelow_m      (tlu_exu_pic_twobelow_m),
2752           .lsu_exu_ldxa_m              (lsu_exu_ldxa_m),
2753           .lsu_exu_ldxa_data_g         (lsu_exu_ldxa_data_g[63:0]),
2754           .tlu_dsfsr_flt_vld           (tlu_dsfsr_flt_vld[3:0]),
2755           // Inputs
2756           .rclk                        (rclk),
2757           .const_cpuid                 (const_cpuid[3:0]),
2758           .exu_lsu_ldst_va_e           (exu_lsu_ldst_va_e[`ASI_VA_WIDTH-1:0]),
2759           .lsu_tlu_ldst_va_m           (lsu_tlu_ldst_va_m[`TLU_ASI_VA_WIDTH-1:0]),
2760           .exu_mmu_early_va_e          (exu_mmu_early_va_e[7:0]),
2761           .exu_tlu_ccr0_w              (exu_tlu_ccr0_w[7:0]),
2762           .exu_tlu_ccr1_w              (exu_tlu_ccr1_w[7:0]),
2763           .exu_tlu_ccr2_w              (exu_tlu_ccr2_w[7:0]),
2764           .exu_tlu_ccr3_w              (exu_tlu_ccr3_w[7:0]),
2765           .exu_tlu_cwp_cmplt           (exu_tlu_cwp_cmplt),
2766           .exu_tlu_cwp_cmplt_tid       (exu_tlu_cwp_cmplt_tid[1:0]),
2767           .exu_tlu_cwp_retry           (exu_tlu_cwp_retry),
2768           .exu_tlu_misalign_addr_jmpl_rtn_m(exu_tlu_misalign_addr_jmpl_rtn_m),
2769           .exu_tlu_spill               (exu_tlu_spill),
2770           .exu_tlu_spill_tid           (exu_tlu_spill_tid[1:0]),
2771           .exu_tlu_spill_other         (exu_tlu_spill_other),
2772           .exu_tlu_spill_wtype         (exu_tlu_spill_wtype[2:0]),
2773           .exu_tlu_ttype_m             (exu_tlu_ttype_m[8:0]),
2774           .exu_tlu_ttype_vld_m         (exu_tlu_ttype_vld_m),
2775           .exu_tlu_va_oor_jl_ret_m     (exu_tlu_va_oor_jl_ret_m),
2776           .exu_tlu_va_oor_m            (exu_tlu_va_oor_m),
2777           .ffu_tlu_ill_inst_m          (ffu_tlu_ill_inst_m),
2778           .ffu_ifu_tid_w2              (ffu_ifu_tid_w2[1:0]),
2779           .ffu_tlu_trap_ieee754        (ffu_tlu_trap_ieee754),
2780           .ffu_tlu_trap_other          (ffu_tlu_trap_other),
2781           .ffu_tlu_trap_ue             (ffu_tlu_trap_ue),
2782           .ifu_lsu_ld_inst_e           (ifu_lsu_ld_inst_e),
2783           .ifu_lsu_memref_d            (ifu_lsu_memref_d),
2784           .ifu_lsu_st_inst_e           (ifu_lsu_st_inst_e),
2785           .ifu_tlu_done_inst_d         (ifu_tlu_done_inst_d),
2786           .ifu_tlu_flush_m             (ifu_tlu_flush_m),
2787           .ifu_tlu_flush_fd_w          (ifu_tlu_flush_fd_w),
2788           .ifu_tlu_flush_fd2_w         (ifu_tlu_flush_fd2_w),
2789           .ifu_tlu_flush_fd3_w         (ifu_tlu_flush_fd3_w),
2790           .lsu_tlu_early_flush_w       (lsu_tlu_early_flush_w),
2791           .lsu_tlu_early_flush2_w      (lsu_tlu_early_flush2_w),
2792           .ifu_tlu_hwint_m             (ifu_tlu_hwint_m),
2793           .ifu_tlu_immu_miss_m         (ifu_tlu_immu_miss_m),
2794           .ifu_tlu_pc_oor_e            (ifu_tlu_pc_oor_e),
2795           .ifu_tlu_l2imiss             (ifu_tlu_l2imiss[`TLU_THRD_NUM-1:0]),
2796           .ifu_tlu_inst_vld_m          (ifu_tlu_inst_vld_m),
2797           .ifu_tlu_inst_vld_m_bf1      (ifu_tlu_inst_vld_m_bf1),
2798           .ifu_tlu_itlb_done           (ifu_tlu_itlb_done),
2799           .ifu_tlu_npc_m               (ifu_tlu_npc_m[48:0]),
2800           .ifu_tlu_pc_m                (ifu_tlu_pc_m[48:0]),
2801           .ifu_tlu_priv_violtn_m       (ifu_tlu_priv_violtn_m),
2802           .ifu_tlu_retry_inst_d        (ifu_tlu_retry_inst_d),
2803           .ifu_tlu_rstint_m            (ifu_tlu_rstint_m),
2804           .ifu_tlu_sir_inst_m          (ifu_tlu_sir_inst_m),
2805           .ifu_lsu_thrid_s             (ifu_lsu_thrid_s[1:0]),
2806           .ifu_tlu_ttype_m             (ifu_tlu_ttype_m[8:0]),
2807           .ifu_tlu_ttype_vld_m         (ifu_tlu_ttype_vld_m),
2808           .ifu_mmu_trap_m              (ifu_mmu_trap_m),
2809           .ifu_tlu_trap_m              (ifu_tlu_trap_m),
2810           .lsu_asi_reg0                (lsu_asi_reg0[7:0]),
2811           .lsu_asi_reg1                (lsu_asi_reg1[7:0]),
2812           .lsu_asi_reg2                (lsu_asi_reg2[7:0]),
2813           .lsu_asi_reg3                (lsu_asi_reg3[7:0]),
2814           .lsu_asi_state               (lsu_asi_state[`TLU_ASI_STATE_WIDTH-1:0]),
2815           .lsu_tlu_defr_trp_taken_g    (lsu_tlu_defr_trp_taken_g),
2816           .lsu_mmu_defr_trp_taken_g    (lsu_mmu_defr_trp_taken_g),
2817           .lsu_tlu_cpx_req             (lsu_tlu_cpx_req[3:0]),
2818           .lsu_tlu_cpx_vld             (lsu_tlu_cpx_vld),
2819           .lsu_tlu_daccess_excptn_g    (lsu_tlu_daccess_excptn_g),
2820           .lsu_tlu_daccess_prot_g      (lsu_tlu_daccess_prot_g),
2821           .lsu_tlu_dmmu_miss_g         (lsu_tlu_dmmu_miss_g),
2822           .lsu_tlu_dside_ctxt_m        (lsu_tlu_dside_ctxt_m[12:0]),
2823           .lsu_tlu_dtlb_done           (lsu_tlu_dtlb_done),
2824           .lsu_tlu_intpkt              (lsu_tlu_intpkt[17:0]),
2825           .ctu_sscan_tid               (ctu_sscan_tid[`TLU_THRD_NUM-1:0]),
2826           .lsu_tlu_misalign_addr_ldst_atm_m(lsu_tlu_misalign_addr_ldst_atm_m),
2827           .lsu_tlu_pctxt_m             (lsu_tlu_pctxt_m[12:0]),
2828           .lsu_tlu_pcxpkt_ack          (lsu_tlu_pcxpkt_ack),
2829           .lsu_tlu_priv_action_g       (lsu_tlu_priv_action_g),
2830           .lsu_tlu_rs3_data_g          (lsu_tlu_rs3_data_g[63:0]),
2831           .lsu_tlu_tlb_access_tid_m    (lsu_tlu_tlb_access_tid_m[1:0]),
2832           .lsu_tlu_tlb_asi_state_m     (lsu_tlu_tlb_asi_state_m[7:0]),
2833           .lsu_tlu_tlb_dmp_va_m        (lsu_tlu_tlb_dmp_va_m[47:13]),
2834           .lsu_tlu_tlb_ld_inst_m       (lsu_tlu_tlb_ld_inst_m),
2835           .lsu_tlu_tlb_ldst_va_m       (lsu_tlu_tlb_ldst_va_m[10:0]),
2836           .lsu_tlu_tlb_st_inst_m       (lsu_tlu_tlb_st_inst_m),
2837           .lsu_tlu_ttype_m2            (lsu_tlu_ttype_m2[8:0]),
2838           .lsu_tlu_ttype_vld_m2        (lsu_tlu_ttype_vld_m2),
2839           .lsu_tlu_wtchpt_trp_g        (lsu_tlu_wtchpt_trp_g),
2840           .mem_write_disable           (mem_write_disable),
2841           .mux_drive_disable           (mux_drive_disable),
2842           .sehold                      (sehold),
2843           .se                          (se),
2844           .ifu_tlu_sraddr_d            (ifu_tlu_sraddr_d[`TLU_ASR_ADDR_WIDTH-1:0]),
2845           .ifu_tlu_sraddr_d_v2         (ifu_tlu_sraddr_d_v2[`TLU_ASR_ADDR_WIDTH-1:0]),
2846           .ifu_tlu_rsr_inst_d          (ifu_tlu_rsr_inst_d),
2847           .lsu_tlu_wsr_inst_e          (lsu_tlu_wsr_inst_e),
2848           .exu_tlu_wsr_data_m          (exu_tlu_wsr_data_m[63:0]),
2849           .lsu_tlu_rsr_data_e          (lsu_tlu_rsr_data_e[7:0]),
2850           .ifu_lsu_alt_space_e         (ifu_lsu_alt_space_e),
2851           .ifu_tlu_alt_space_d         (ifu_tlu_alt_space_d),
2852           .lsu_tlu_squash_va_oor_m     (lsu_tlu_squash_va_oor_m),
2853           .lsu_tlu_dcache_miss_w2      (lsu_tlu_dcache_miss_w2[3:0]),
2854           .lsu_tlu_l2_dmiss            (lsu_tlu_l2_dmiss[3:0]),
2855           .lsu_tlu_stb_full_w2         (lsu_tlu_stb_full_w2[3:0]),
2856           .ffu_tlu_fpu_tid             (ffu_tlu_fpu_tid[1:0]),
2857           .ffu_tlu_fpu_cmplt           (ffu_tlu_fpu_cmplt),
2858           .lsu_pid_state0              (lsu_pid_state0[2:0]),
2859           .lsu_pid_state1              (lsu_pid_state1[2:0]),
2860           .lsu_pid_state2              (lsu_pid_state2[2:0]),
2861           .lsu_pid_state3              (lsu_pid_state3[2:0]),
2862           .lsu_tlu_nucleus_ctxt_m      (lsu_tlu_nucleus_ctxt_m),
2863           .lsu_tlu_tte_pg_sz_g         (lsu_tlu_tte_pg_sz_g[2:0]),
2864           .ifu_lsu_error_inj           (ifu_lsu_error_inj[3:0]),
2865           .ifu_lsu_imm_asi_vld_d       (ifu_lsu_imm_asi_vld_d),
2866           .lsu_dsfsr_din_g             (lsu_dsfsr_din_g[23:0]),
2867           .lsu_dmmu_sfsr_trp_wr        (lsu_dmmu_sfsr_trp_wr[3:0]),
2868           .lsu_mmu_flush_pipe_w        (lsu_mmu_flush_pipe_w),
2869           .exu_lsu_priority_trap_m     (exu_lsu_priority_trap_m));
2870
2871`endif //  `ifdef FPGA_SYN_NO_SPU
2872
2873
2874   spu spu(
2875           .short_si0                   (short_scan0_4),
2876           .short_so0                   (short_scan0_5),
2877           .short_si1                   (short_scan1_4),
2878           .short_so1                   (short_scan1_5),
2879           .si1 (scan1_2),
2880           .so1 (scan1_3),
2881           // reset stuff
2882           .grst_l                      (spc_grst_l),
2883           .arst_l                      (cmp_arst_l),
2884           .mem_bypass (mem_bypass),
2885           
2886           .tlu_spu_flush_w             (tlu_exu_early_flush_pipe_w),
2887           .ifu_spu_flush_w             (ifu_tlu_flush_w),
2888
2889           .cpx_spu_data_cx             ({cpx_spc_data_cx3[144:140],cpx_spc_data_cx3[138:137],
2890                                                cpx_spc_data_cx3[127:0]}),
2891
2892           .exu_spu_rsrv_data_e         (exu_spu_rs3_data_e[8:6]),
2893           .exu_lsu_rs3_data_e          (exu_spu_rs3_data_e[63:0]),
2894
2895                 .mux_drive_disable             (mux_drive_disable),
2896           .lsu_spu_strm_ack_cmplt      (lsu_spu_strm_ack_cmplt[1:0]),
2897
2898           //
2899           .spu_tlu_rsrv_illgl_m        (spu_tlu_rsrv_illgl_m),
2900           
2901           /*AUTOINST*/
2902           // Outputs
2903           .spu_ifu_ttype_w2            (spu_ifu_ttype_w2),
2904           .spu_ifu_ttype_vld_w2        (spu_ifu_ttype_vld_w2),
2905           .spu_ifu_ttype_tid_w2        (spu_ifu_ttype_tid_w2[1:0]),
2906           .spu_lsu_ldst_pckt           (spu_lsu_ldst_pckt[123:0]),
2907           .spu_mul_req_vld             (spu_mul_req_vld),
2908           .spu_mul_areg_shf            (spu_mul_areg_shf),
2909           .spu_mul_areg_rst            (spu_mul_areg_rst),
2910           .spu_mul_acc                 (spu_mul_acc),
2911           .spu_mul_op1_data            (spu_mul_op1_data[63:0]),
2912           .spu_mul_op2_data            (spu_mul_op2_data[63:0]),
2913           .spu_lsu_ldxa_data_w2        (spu_lsu_ldxa_data_w2[63:0]),
2914           .spu_lsu_ldxa_data_vld_w2    (spu_lsu_ldxa_data_vld_w2),
2915           .spu_lsu_ldxa_tid_w2         (spu_lsu_ldxa_tid_w2[1:0]),
2916           .spu_lsu_stxa_ack            (spu_lsu_stxa_ack),
2917           .spu_lsu_stxa_ack_tid        (spu_lsu_stxa_ack_tid[1:0]),
2918           .spu_mul_mulres_lshft        (spu_mul_mulres_lshft),
2919           .spu_ifu_corr_err_w2         (spu_ifu_corr_err_w2),
2920           .spu_ifu_unc_err_w1          (spu_ifu_unc_err_w1),
2921           .spu_lsu_unc_error_w2        (spu_lsu_unc_error_w2),
2922           .spu_ifu_err_addr_w2         (spu_ifu_err_addr_w2[39:4]),
2923           .spu_ifu_mamem_err_w1        (spu_ifu_mamem_err_w1),
2924           .spu_ifu_int_w2              (spu_ifu_int_w2),
2925           .spu_lsu_ldxa_illgl_va_w2    (spu_lsu_ldxa_illgl_va_w2),
2926           // Inputs
2927           .se                          (se),
2928           .rclk                        (rclk),
2929           .mem_write_disable           (mem_write_disable),
2930           .sehold                      (sehold),
2931           .const_cpuid                 (const_cpuid[2:0]),
2932           .lsu_spu_ldst_ack            (lsu_spu_ldst_ack),
2933           .mul_spu_ack                 (mul_spu_ack),
2934           .mul_spu_shf_ack             (mul_spu_shf_ack),
2935           .mul_data_out                (mul_data_out[63:0]),
2936           .lsu_spu_asi_state_e         (lsu_spu_asi_state_e[7:0]),
2937           .ifu_spu_inst_vld_w          (ifu_spu_inst_vld_w),
2938           .ifu_lsu_ld_inst_e           (ifu_lsu_ld_inst_e),
2939           .ifu_lsu_st_inst_e           (ifu_lsu_st_inst_e),
2940           .ifu_lsu_alt_space_e         (ifu_lsu_alt_space_e),
2941           .ifu_tlu_thrid_e             (ifu_tlu_thrid_e[1:0]),
2942           .exu_lsu_ldst_va_e           (exu_lsu_ldst_va_e[7:0]),
2943           .ifu_spu_trap_ack            (ifu_spu_trap_ack),
2944           .lsu_spu_stb_empty           (lsu_spu_stb_empty[3:0]),
2945           .lsu_spu_early_flush_g       (lsu_spu_early_flush_g),
2946           .ifu_spu_nceen               (ifu_spu_nceen[3:0]),
2947           .lsu_mamem_mrgn              (lsu_mamem_mrgn[3:0]));
2948 
2949
2950`ifdef FPGA_SYN_NO_SPU
2951
2952      sparc_mul_top mul(
2953                     .si                (scan1_2),
2954                     .so                (scan1_4),
2955                     //
2956                     .grst_l             (spc_grst_l),
2957                     .arst_l                    (cmp_arst_l),
2958                     /*AUTOINST*/
2959                     // Outputs
2960                     .mul_exu_ack       (mul_exu_ack),
2961                     .mul_spu_ack       (),
2962                     .mul_spu_shf_ack   (),
2963                     .mul_data_out      (mul_data_out[63:0]),
2964                     // Inputs
2965                     .rclk              (rclk),
2966                     .se                (se),
2967                     .exu_mul_input_vld (exu_mul_input_vld),
2968                     .exu_mul_rs1_data  (exu_mul_rs1_data[63:0]),
2969                     .exu_mul_rs2_data  (exu_mul_rs2_data[63:0]),
2970                     .spu_mul_req_vld   (1'b0),
2971                     .spu_mul_acc       (1'b0),
2972                     .spu_mul_areg_shf  (1'b0),
2973                     .spu_mul_areg_rst  (1'b0),
2974                     .spu_mul_op1_data  (64'h0000000000000000),
2975                     .spu_mul_op2_data  (64'h0000000000000000),
2976                     .spu_mul_mulres_lshft(spu_mul_mulres_lshft));
2977   
2978`else
2979   
2980   sparc_mul_top mul(
2981                     .si                (scan1_3),
2982                     .so                (scan1_4),
2983                     //
2984                     .grst_l             (spc_grst_l),
2985                     .arst_l                    (cmp_arst_l),
2986                     /*AUTOINST*/
2987                     // Outputs
2988                     .mul_exu_ack       (mul_exu_ack),
2989                     .mul_spu_ack       (mul_spu_ack),
2990                     .mul_spu_shf_ack   (mul_spu_shf_ack),
2991                     .mul_data_out      (mul_data_out[63:0]),
2992                     // Inputs
2993                     .rclk              (rclk),
2994                     .se                (se),
2995                     .exu_mul_input_vld (exu_mul_input_vld),
2996                     .exu_mul_rs1_data  (exu_mul_rs1_data[63:0]),
2997                     .exu_mul_rs2_data  (exu_mul_rs2_data[63:0]),
2998                     .spu_mul_req_vld   (spu_mul_req_vld),
2999                     .spu_mul_acc       (spu_mul_acc),
3000                     .spu_mul_areg_shf  (spu_mul_areg_shf),
3001                     .spu_mul_areg_rst  (spu_mul_areg_rst),
3002                     .spu_mul_op1_data  (spu_mul_op1_data[63:0]),
3003                     .spu_mul_op2_data  (spu_mul_op2_data[63:0]),
3004                     .spu_mul_mulres_lshft(spu_mul_mulres_lshft));
3005   
3006`endif //  `ifdef FPGA_SYN_NO_SPU
3007
3008`ifdef FPGA_SYN_NO_SPU
3009
3010   sparc_ffu ffu(
3011                 .short_si0             (short_scan0_4),
3012                 .short_so0             (short_scan0_6),
3013                 .si                    (scan0_5),
3014                 .so                    (scan0_6),
3015                 // reset stuff
3016                 .grst_l                (spc_grst_l),
3017                 .arst_l                (cmp_arst_l),
3018                 
3019           // eco 6529 .
3020           .lsu_ffu_st_dtlb_perr_g              (lsu_ffu_st_dtlb_perr_g),
3021
3022                 .exu_ffu_ist_e         (ifu_lsu_st_inst_e),
3023                 .ifu_ffu_tid_d         (ifu_tlu_thrid_d[1:0]),
3024                 .cpx_fpu_data          (cpx_spc_data_cx2_buf[63:0]),
3025                 .cpx_vld             (cpx_spc_data_cx2_buf[`CPX_VLD]),
3026                 .cpx_fcmp            (cpx_spc_data_cx2_buf[69]),
3027                 .cpx_req             (cpx_spc_data_cx2_buf[`CPX_RQ_HI:`CPX_RQ_LO]),
3028                 .cpx_fccval          (cpx_spc_data_cx2_buf[68:67]),
3029                 .cpx_fpexc           (cpx_spc_data_cx2_buf[76:72]),                   
3030                 .exu_ffu_gsr_mask_m  (exu_tlu_wsr_data_m[63:32]),
3031                 .exu_ffu_gsr_scale_m (exu_tlu_wsr_data_m[7:3]),
3032                 .exu_ffu_gsr_align_m (exu_tlu_wsr_data_m[2:0]),
3033                 .exu_ffu_gsr_rnd_m   (exu_tlu_wsr_data_m[27:25]),
3034                 .ifu_ffu_ldst_single_d   (ifu_ffu_ldst_size_d),
3035                             /*AUTOINST*/
3036                 // Outputs
3037                 .ffu_lsu_data          (ffu_lsu_data[80:0]),
3038                 .ffu_ifu_cc_vld_w2     (ffu_ifu_cc_vld_w2[3:0]),
3039                 .ffu_ifu_cc_w2         (ffu_ifu_cc_w2[7:0]),
3040                 .ffu_ifu_ecc_ce_w2     (ffu_ifu_ecc_ce_w2),
3041                 .ffu_ifu_ecc_ue_w2     (ffu_ifu_ecc_ue_w2),
3042                 .ffu_ifu_err_reg_w2    (ffu_ifu_err_reg_w2[5:0]),
3043                 .ffu_ifu_err_synd_w2   (ffu_ifu_err_synd_w2[13:0]),
3044                 .ffu_ifu_fpop_done_w2  (ffu_ifu_fpop_done_w2),
3045                 .ffu_ifu_fst_ce_w      (ffu_ifu_fst_ce_w),
3046                 .ffu_ifu_inj_ack       (ffu_ifu_inj_ack),
3047                 .ffu_ifu_stallreq      (ffu_ifu_stallreq),
3048                 .ffu_ifu_tid_w2        (ffu_ifu_tid_w2[1:0]),
3049                 .ffu_lsu_blk_st_e      (ffu_lsu_blk_st_e),
3050                 .ffu_lsu_blk_st_va_e   (ffu_lsu_blk_st_va_e[5:3]),
3051                 .ffu_lsu_fpop_rq_vld   (ffu_lsu_fpop_rq_vld),
3052                 .ffu_lsu_kill_fst_w    (ffu_lsu_kill_fst_w),
3053                 .ffu_tlu_fpu_cmplt     (ffu_tlu_fpu_cmplt),
3054                 .ffu_tlu_fpu_tid       (ffu_tlu_fpu_tid[1:0]),
3055                 .ffu_tlu_ill_inst_m    (ffu_tlu_ill_inst_m),
3056                 .ffu_tlu_trap_ieee754  (ffu_tlu_trap_ieee754),
3057                 .ffu_tlu_trap_other    (ffu_tlu_trap_other),
3058                 .ffu_tlu_trap_ue       (ffu_tlu_trap_ue),
3059                 .ffu_exu_rsr_data_m    (ffu_exu_rsr_data_m[63:0]),
3060                 // Inputs
3061                 .mux_drive_disable     (mux_drive_disable),
3062                 .mem_write_disable     (mem_write_disable),
3063                 .exu_ffu_wsr_inst_e    (exu_ffu_wsr_inst_e),
3064                 .ifu_exu_disable_ce_e  (ifu_exu_disable_ce_e),
3065                 .ifu_exu_ecc_mask      (ifu_exu_ecc_mask[6:0]),
3066                 .ifu_exu_nceen_e       (ifu_exu_nceen_e),
3067                 .ifu_ffu_fcc_num_d     (ifu_ffu_fcc_num_d[1:0]),
3068                 .ifu_ffu_fld_d         (ifu_ffu_fld_d),
3069                 .ifu_ffu_fpop1_d       (ifu_ffu_fpop1_d),
3070                 .ifu_ffu_fpop2_d       (ifu_ffu_fpop2_d),
3071                 .ifu_ffu_fpopcode_d    (ifu_ffu_fpopcode_d[8:0]),
3072                 .ifu_ffu_frd_d         (ifu_ffu_frd_d[4:0]),
3073                 .ifu_ffu_frs1_d        (ifu_ffu_frs1_d[4:0]),
3074                 .ifu_ffu_frs2_d        (ifu_ffu_frs2_d[4:0]),
3075                 .ifu_ffu_fst_d         (ifu_ffu_fst_d),
3076                 .ifu_ffu_inj_frferr    (ifu_ffu_inj_frferr),
3077                 .ifu_ffu_ldfsr_d       (ifu_ffu_ldfsr_d),
3078                 .ifu_ffu_ldxfsr_d      (ifu_ffu_ldxfsr_d),
3079                 .ifu_ffu_mvcnd_m       (ifu_ffu_mvcnd_m),
3080                 .ifu_ffu_quad_op_e     (ifu_ffu_quad_op_e),
3081                 .ifu_ffu_stfsr_d       (ifu_ffu_stfsr_d),
3082                 .ifu_ffu_visop_d       (ifu_ffu_visop_d),
3083                 .ifu_lsu_ld_inst_e     (ifu_lsu_ld_inst_e),
3084                 .ifu_tlu_flsh_inst_e   (ifu_tlu_flsh_inst_e),
3085                 .ifu_tlu_flush_w       (ifu_tlu_flush_w),
3086                 .ifu_tlu_inst_vld_w    (ifu_tlu_inst_vld_w),
3087                 .ifu_tlu_sraddr_d      (ifu_tlu_sraddr_d[6:0]),
3088                 .lsu_ffu_ack           (lsu_ffu_ack),
3089                 .lsu_ffu_bld_cnt_w     (lsu_ffu_bld_cnt_w[2:0]),
3090                 .lsu_ffu_blk_asi_e     (lsu_ffu_blk_asi_e),
3091                 .lsu_ffu_flush_pipe_w  (lsu_ffu_flush_pipe_w),
3092                 .lsu_ffu_ld_data       (lsu_ffu_ld_data[63:0]),
3093                 .lsu_ffu_ld_vld        (lsu_ffu_ld_vld),
3094                 .lsu_ffu_stb_full0     (lsu_ffu_stb_full0),
3095                 .lsu_ffu_stb_full1     (lsu_ffu_stb_full1),
3096                 .lsu_ffu_stb_full2     (lsu_ffu_stb_full2),
3097                 .lsu_ffu_stb_full3     (lsu_ffu_stb_full3),
3098                 .rclk                  (rclk),
3099                 .se                    (se),
3100                 .sehold                (sehold));
3101 
3102`else
3103 
3104   sparc_ffu ffu(
3105                 .short_si0             (short_scan0_5),
3106                 .short_so0             (short_scan0_6),
3107                 .si                    (scan0_5),
3108                 .so                    (scan0_6),
3109                 // reset stuff
3110                 .grst_l                (spc_grst_l),
3111                 .arst_l                (cmp_arst_l),
3112                 
3113           // eco 6529 .
3114           .lsu_ffu_st_dtlb_perr_g              (lsu_ffu_st_dtlb_perr_g),
3115
3116                 .exu_ffu_ist_e         (ifu_lsu_st_inst_e),
3117                 .ifu_ffu_tid_d         (ifu_tlu_thrid_d[1:0]),
3118                 .cpx_fpu_data          (cpx_spc_data_cx2_buf[63:0]),
3119                 .cpx_vld             (cpx_spc_data_cx2_buf[`CPX_VLD]),
3120                 .cpx_fcmp            (cpx_spc_data_cx2_buf[69]),
3121                 .cpx_req             (cpx_spc_data_cx2_buf[`CPX_RQ_HI:`CPX_RQ_LO]),
3122                 .cpx_fccval          (cpx_spc_data_cx2_buf[68:67]),
3123                 .cpx_fpexc           (cpx_spc_data_cx2_buf[76:72]),                   
3124                 .exu_ffu_gsr_mask_m  (exu_tlu_wsr_data_m[63:32]),
3125                 .exu_ffu_gsr_scale_m (exu_tlu_wsr_data_m[7:3]),
3126                 .exu_ffu_gsr_align_m (exu_tlu_wsr_data_m[2:0]),
3127                 .exu_ffu_gsr_rnd_m   (exu_tlu_wsr_data_m[27:25]),
3128                 .ifu_ffu_ldst_single_d   (ifu_ffu_ldst_size_d),
3129                             /*AUTOINST*/
3130                 // Outputs
3131                 .ffu_lsu_data          (ffu_lsu_data[80:0]),
3132                 .ffu_ifu_cc_vld_w2     (ffu_ifu_cc_vld_w2[3:0]),
3133                 .ffu_ifu_cc_w2         (ffu_ifu_cc_w2[7:0]),
3134                 .ffu_ifu_ecc_ce_w2     (ffu_ifu_ecc_ce_w2),
3135                 .ffu_ifu_ecc_ue_w2     (ffu_ifu_ecc_ue_w2),
3136                 .ffu_ifu_err_reg_w2    (ffu_ifu_err_reg_w2[5:0]),
3137                 .ffu_ifu_err_synd_w2   (ffu_ifu_err_synd_w2[13:0]),
3138                 .ffu_ifu_fpop_done_w2  (ffu_ifu_fpop_done_w2),
3139                 .ffu_ifu_fst_ce_w      (ffu_ifu_fst_ce_w),
3140                 .ffu_ifu_inj_ack       (ffu_ifu_inj_ack),
3141                 .ffu_ifu_stallreq      (ffu_ifu_stallreq),
3142                 .ffu_ifu_tid_w2        (ffu_ifu_tid_w2[1:0]),
3143                 .ffu_lsu_blk_st_e      (ffu_lsu_blk_st_e),
3144                 .ffu_lsu_blk_st_va_e   (ffu_lsu_blk_st_va_e[5:3]),
3145                 .ffu_lsu_fpop_rq_vld   (ffu_lsu_fpop_rq_vld),
3146                 .ffu_lsu_kill_fst_w    (ffu_lsu_kill_fst_w),
3147                 .ffu_tlu_fpu_cmplt     (ffu_tlu_fpu_cmplt),
3148                 .ffu_tlu_fpu_tid       (ffu_tlu_fpu_tid[1:0]),
3149                 .ffu_tlu_ill_inst_m    (ffu_tlu_ill_inst_m),
3150                 .ffu_tlu_trap_ieee754  (ffu_tlu_trap_ieee754),
3151                 .ffu_tlu_trap_other    (ffu_tlu_trap_other),
3152                 .ffu_tlu_trap_ue       (ffu_tlu_trap_ue),
3153                 .ffu_exu_rsr_data_m    (ffu_exu_rsr_data_m[63:0]),
3154                 // Inputs
3155                 .mux_drive_disable     (mux_drive_disable),
3156                 .mem_write_disable     (mem_write_disable),
3157                 .exu_ffu_wsr_inst_e    (exu_ffu_wsr_inst_e),
3158                 .ifu_exu_disable_ce_e  (ifu_exu_disable_ce_e),
3159                 .ifu_exu_ecc_mask      (ifu_exu_ecc_mask[6:0]),
3160                 .ifu_exu_nceen_e       (ifu_exu_nceen_e),
3161                 .ifu_ffu_fcc_num_d     (ifu_ffu_fcc_num_d[1:0]),
3162                 .ifu_ffu_fld_d         (ifu_ffu_fld_d),
3163                 .ifu_ffu_fpop1_d       (ifu_ffu_fpop1_d),
3164                 .ifu_ffu_fpop2_d       (ifu_ffu_fpop2_d),
3165                 .ifu_ffu_fpopcode_d    (ifu_ffu_fpopcode_d[8:0]),
3166                 .ifu_ffu_frd_d         (ifu_ffu_frd_d[4:0]),
3167                 .ifu_ffu_frs1_d        (ifu_ffu_frs1_d[4:0]),
3168                 .ifu_ffu_frs2_d        (ifu_ffu_frs2_d[4:0]),
3169                 .ifu_ffu_fst_d         (ifu_ffu_fst_d),
3170                 .ifu_ffu_inj_frferr    (ifu_ffu_inj_frferr),
3171                 .ifu_ffu_ldfsr_d       (ifu_ffu_ldfsr_d),
3172                 .ifu_ffu_ldxfsr_d      (ifu_ffu_ldxfsr_d),
3173                 .ifu_ffu_mvcnd_m       (ifu_ffu_mvcnd_m),
3174                 .ifu_ffu_quad_op_e     (ifu_ffu_quad_op_e),
3175                 .ifu_ffu_stfsr_d       (ifu_ffu_stfsr_d),
3176                 .ifu_ffu_visop_d       (ifu_ffu_visop_d),
3177                 .ifu_lsu_ld_inst_e     (ifu_lsu_ld_inst_e),
3178                 .ifu_tlu_flsh_inst_e   (ifu_tlu_flsh_inst_e),
3179                 .ifu_tlu_flush_w       (ifu_tlu_flush_w),
3180                 .ifu_tlu_inst_vld_w    (ifu_tlu_inst_vld_w),
3181                 .ifu_tlu_sraddr_d      (ifu_tlu_sraddr_d[6:0]),
3182                 .lsu_ffu_ack           (lsu_ffu_ack),
3183                 .lsu_ffu_bld_cnt_w     (lsu_ffu_bld_cnt_w[2:0]),
3184                 .lsu_ffu_blk_asi_e     (lsu_ffu_blk_asi_e),
3185                 .lsu_ffu_flush_pipe_w  (lsu_ffu_flush_pipe_w),
3186                 .lsu_ffu_ld_data       (lsu_ffu_ld_data[63:0]),
3187                 .lsu_ffu_ld_vld        (lsu_ffu_ld_vld),
3188                 .lsu_ffu_stb_full0     (lsu_ffu_stb_full0),
3189                 .lsu_ffu_stb_full1     (lsu_ffu_stb_full1),
3190                 .lsu_ffu_stb_full2     (lsu_ffu_stb_full2),
3191                 .lsu_ffu_stb_full3     (lsu_ffu_stb_full3),
3192                 .rclk                  (rclk),
3193                 .se                    (se),
3194                 .sehold                (sehold));
3195
3196`endif //  `ifdef FPGA_SYN_NO_SPU
3197   
3198/*   test_stub_bist AUTO_TEMPLATE(
3199                                  // Outputs
3200                                  .so_0 (spc_scanout0),
3201                                  .so_1 (spc_scanout1),
3202                                  .mbist_data_mode(mbist_userdata_mode),
3203 
3204                                  // Inputs
3205                                  .mbist_err ({1'b0, mbist_dcache_fail, mbist_icache_fail}),
3206                                  .cluster_grst_l  (spc_grst_l),
3207                                  .arst_l (cmp_arst_l));
3208 */
3209   
3210`ifdef FPGA_SYN_NO_SPU
3211
3212      test_stub_bist test_stub(
3213                            // unused
3214                            .so_2             (),
3215                            .long_chain_so_2  (1'b0),
3216                            .short_chain_so_2 (1'b0),
3217
3218                            // connect with scan stitch
3219                            .si(scan1_4),
3220                            .so (scan1_5),
3221                            .long_chain_so_0  (scan0_7),
3222                            .short_chain_so_0 (short_scan0_6),
3223                            .long_chain_so_1  (scan1_5),
3224                            .short_chain_so_1 (short_scan1_4),
3225                           
3226                            // from LSU
3227                            .bist_ctl_reg_in(bist_ctl_reg_in[6:0]),
3228                           
3229                            /*AUTOINST*/
3230                            // Outputs
3231                            .mux_drive_disable(mux_drive_disable),
3232                            .mem_write_disable(mem_write_disable),
3233                            .sehold     (sehold),
3234                            .se         (se),
3235                            .testmode_l (testmode_l),
3236                            .mem_bypass (),
3237                            .so_0       (spc_scanout0),          // Templated
3238                            .so_1       (spc_scanout1),          // Templated
3239                            .tst_ctu_mbist_done(tst_ctu_mbist_done),
3240                            .tst_ctu_mbist_fail(tst_ctu_mbist_fail),
3241                            .bist_ctl_reg_out(bist_ctl_reg_out[10:0]),
3242                            .mbist_bisi_mode(mbist_bisi_mode),
3243                            .mbist_stop_on_next_fail(mbist_stop_on_next_fail),
3244                            .mbist_stop_on_fail(mbist_stop_on_fail),
3245                            .mbist_loop_mode(mbist_loop_mode),
3246                            .mbist_loop_on_addr(mbist_loop_on_addr),
3247                            .mbist_data_mode(mbist_userdata_mode), // Templated
3248                            .mbist_start(mbist_start),
3249                            // Inputs
3250                            .ctu_tst_pre_grst_l(ctu_tst_pre_grst_l),
3251                            .arst_l     (cmp_arst_l),            // Templated
3252                            .cluster_grst_l(spc_grst_l),         // Templated
3253                            .global_shift_enable(global_shift_enable),
3254                            .ctu_tst_scan_disable(ctu_tst_scan_disable),
3255                            .ctu_tst_scanmode(ctu_tst_scanmode),
3256                            .ctu_tst_macrotest(ctu_tst_macrotest),
3257                            .ctu_tst_short_chain(ctu_tst_short_chain),
3258                            .ctu_tst_mbist_enable(ctu_tst_mbist_enable),
3259                            .rclk       (rclk),
3260                            .bist_ctl_reg_wr_en(bist_ctl_reg_wr_en),
3261                            .mbist_done (mbist_done),
3262                            .mbist_err  ({1'b0, mbist_dcache_fail, mbist_icache_fail})); // Templated
3263
3264`else
3265
3266   test_stub_bist test_stub(
3267                            // unused
3268                            .so_2             (),
3269                            .long_chain_so_2  (1'b0),
3270                            .short_chain_so_2 (1'b0),
3271
3272                            // connect with scan stitch
3273                            .si(scan1_4),
3274                            .so (scan1_5),
3275                            .long_chain_so_0  (scan0_7),
3276                            .short_chain_so_0 (short_scan0_6),
3277                            .long_chain_so_1  (scan1_5),
3278                            .short_chain_so_1 (short_scan1_5),
3279                           
3280                            // from LSU
3281                            .bist_ctl_reg_in(bist_ctl_reg_in[6:0]),
3282                           
3283                            /*AUTOINST*/
3284                            // Outputs
3285                            .mux_drive_disable(mux_drive_disable),
3286                            .mem_write_disable(mem_write_disable),
3287                            .sehold     (sehold),
3288                            .se         (se),
3289                            .testmode_l (testmode_l),
3290                            .mem_bypass (mem_bypass),
3291                            .so_0       (spc_scanout0),          // Templated
3292                            .so_1       (spc_scanout1),          // Templated
3293                            .tst_ctu_mbist_done(tst_ctu_mbist_done),
3294                            .tst_ctu_mbist_fail(tst_ctu_mbist_fail),
3295                            .bist_ctl_reg_out(bist_ctl_reg_out[10:0]),
3296                            .mbist_bisi_mode(mbist_bisi_mode),
3297                            .mbist_stop_on_next_fail(mbist_stop_on_next_fail),
3298                            .mbist_stop_on_fail(mbist_stop_on_fail),
3299                            .mbist_loop_mode(mbist_loop_mode),
3300                            .mbist_loop_on_addr(mbist_loop_on_addr),
3301                            .mbist_data_mode(mbist_userdata_mode), // Templated
3302                            .mbist_start(mbist_start),
3303                            // Inputs
3304                            .ctu_tst_pre_grst_l(ctu_tst_pre_grst_l),
3305                            .arst_l     (cmp_arst_l),            // Templated
3306                            .cluster_grst_l(spc_grst_l),         // Templated
3307                            .global_shift_enable(global_shift_enable),
3308                            .ctu_tst_scan_disable(ctu_tst_scan_disable),
3309                            .ctu_tst_scanmode(ctu_tst_scanmode),
3310                            .ctu_tst_macrotest(ctu_tst_macrotest),
3311                            .ctu_tst_short_chain(ctu_tst_short_chain),
3312                            .ctu_tst_mbist_enable(ctu_tst_mbist_enable),
3313                            .rclk       (rclk),
3314                            .bist_ctl_reg_wr_en(bist_ctl_reg_wr_en),
3315                            .mbist_done (mbist_done),
3316                            .mbist_err  ({1'b0, mbist_dcache_fail, mbist_icache_fail})); // Templated
3317
3318`endif //  `ifdef FPGA_SYN_NO_SPU
3319   
3320
3321/*  bw_clk_cl_sparc_cmp AUTO_TEMPLATE(
3322                               .si      (scan0_6),
3323                               .so      (scan0_7),                               
3324                           .arst_l       (cmp_arst_l),
3325                           .grst_l       (cmp_grst_l),
3326                           // Outputs
3327                           .dbginit_l    (spc_dbginit_l),
3328                           .cluster_grst_l   (spc_grst_l));
3329 */
3330   bw_clk_cl_sparc_cmp spc_hdr(/*AUTOINST*/
3331                               // Outputs
3332                               .cluster_grst_l(spc_grst_l),      // Templated
3333                               .dbginit_l(spc_dbginit_l),        // Templated
3334                               .rclk    (rclk),
3335                               .so      (scan0_7),               // Templated
3336                               // Inputs
3337                               .adbginit_l(adbginit_l),
3338                               .arst_l  (cmp_arst_l),            // Templated
3339                               .cluster_cken(cluster_cken),
3340                               .gclk    (gclk),
3341                               .gdbginit_l(gdbginit_l),
3342                               .grst_l  (cmp_grst_l),            // Templated
3343                               .se      (se),
3344                               .si      (scan0_6));               // Templated
3345endmodule // sparc
3346
3347
3348// Local Variables:
3349// verilog-library-directories:("../tlu/rtl" "../ifu/rtl" "../exu/rtl" "../lsu/rtl" "../spu/rtl" "../mul/rtl" "../ffu/rtl/" "../../common/rtl" ".")
3350// End:
3351
3352     
Note: See TracBrowser for help on using the repository browser.