Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / design / sys / iop / rtx / rtl / rtx_n2_efuhdr1b_p1_spare_ctl_macro__num_4.v
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: rtx_n2_efuhdr1b_p1_spare_ctl_macro__num_4.v
4// Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
5// 4150 Network Circle, Santa Clara, California 95054, U.S.A.
6//
7// * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
8//
9// This program is free software; you can redistribute it and/or modify
10// it under the terms of the GNU General Public License as published by
11// the Free Software Foundation; version 2 of the License.
12//
13// This program is distributed in the hope that it will be useful,
14// but WITHOUT ANY WARRANTY; without even the implied warranty of
15// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16// GNU General Public License for more details.
17//
18// You should have received a copy of the GNU General Public License
19// along with this program; if not, write to the Free Software
20// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21//
22// For the avoidance of doubt, and except that if any non-GPL license
23// choice is available it will apply instead, Sun elects to use only
24// the General Public License version 2 (GPLv2) at this time for any
25// software where a choice of GPL license versions is made
26// available with the language indicating that GPLv2 or any later version
27// may be used, or where a choice of which version of the GPL is applied is
28// otherwise unspecified.
29//
30// Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
31// CA 95054 USA or visit www.sun.com if you need additional information or
32// have any questions.
33//
34// ========== Copyright Header End ============================================
35
36// Description: Spare gate macro for control blocks
37//
38// Param num controls the number of times the macro is added
39// flops=0 can be used to use only combination spare logic
40
41
42module rtx_n2_efuhdr1b_p1_spare_ctl_macro__num_4 (
43 l1clk,
44 scan_in,
45 siclk,
46 soclk,
47 scan_out);
48wire si_0;
49wire so_0;
50wire spare0_flop_unused;
51wire spare0_buf_32x_unused;
52wire spare0_nand3_8x_unused;
53wire spare0_inv_8x_unused;
54wire spare0_aoi22_4x_unused;
55wire spare0_buf_8x_unused;
56wire spare0_oai22_4x_unused;
57wire spare0_inv_16x_unused;
58wire spare0_nand2_16x_unused;
59wire spare0_nor3_4x_unused;
60wire spare0_nand2_8x_unused;
61wire spare0_buf_16x_unused;
62wire spare0_nor2_16x_unused;
63wire spare0_inv_32x_unused;
64wire si_1;
65wire so_1;
66wire spare1_flop_unused;
67wire spare1_buf_32x_unused;
68wire spare1_nand3_8x_unused;
69wire spare1_inv_8x_unused;
70wire spare1_aoi22_4x_unused;
71wire spare1_buf_8x_unused;
72wire spare1_oai22_4x_unused;
73wire spare1_inv_16x_unused;
74wire spare1_nand2_16x_unused;
75wire spare1_nor3_4x_unused;
76wire spare1_nand2_8x_unused;
77wire spare1_buf_16x_unused;
78wire spare1_nor2_16x_unused;
79wire spare1_inv_32x_unused;
80wire si_2;
81wire so_2;
82wire spare2_flop_unused;
83wire spare2_buf_32x_unused;
84wire spare2_nand3_8x_unused;
85wire spare2_inv_8x_unused;
86wire spare2_aoi22_4x_unused;
87wire spare2_buf_8x_unused;
88wire spare2_oai22_4x_unused;
89wire spare2_inv_16x_unused;
90wire spare2_nand2_16x_unused;
91wire spare2_nor3_4x_unused;
92wire spare2_nand2_8x_unused;
93wire spare2_buf_16x_unused;
94wire spare2_nor2_16x_unused;
95wire spare2_inv_32x_unused;
96wire si_3;
97wire so_3;
98wire spare3_flop_unused;
99wire spare3_buf_32x_unused;
100wire spare3_nand3_8x_unused;
101wire spare3_inv_8x_unused;
102wire spare3_aoi22_4x_unused;
103wire spare3_buf_8x_unused;
104wire spare3_oai22_4x_unused;
105wire spare3_inv_16x_unused;
106wire spare3_nand2_16x_unused;
107wire spare3_nor3_4x_unused;
108wire spare3_nand2_8x_unused;
109wire spare3_buf_16x_unused;
110wire spare3_nor2_16x_unused;
111wire spare3_inv_32x_unused;
112
113
114input l1clk;
115input scan_in;
116input siclk;
117input soclk;
118output scan_out;
119
120cl_a1_msff_8x spare0_flop (.l1clk(l1clk),
121 .siclk(siclk),
122 .soclk(soclk),
123 .si(si_0),
124 .so(so_0),
125 .d(1'b0),
126 .q(spare0_flop_unused));
127assign si_0 = scan_in;
128
129cl_a1_buf_32x spare0_buf_32x (.in(1'b1),
130 .out(spare0_buf_32x_unused));
131cl_a1_nand3_8x spare0_nand3_8x (.in0(1'b1),
132 .in1(1'b1),
133 .in2(1'b1),
134 .out(spare0_nand3_8x_unused));
135cl_a1_inv_8x spare0_inv_8x (.in(1'b1),
136 .out(spare0_inv_8x_unused));
137cl_a1_aoi22_4x spare0_aoi22_4x (.in00(1'b1),
138 .in01(1'b1),
139 .in10(1'b1),
140 .in11(1'b1),
141 .out(spare0_aoi22_4x_unused));
142cl_a1_buf_8x spare0_buf_8x (.in(1'b1),
143 .out(spare0_buf_8x_unused));
144cl_a1_oai22_4x spare0_oai22_4x (.in00(1'b1),
145 .in01(1'b1),
146 .in10(1'b1),
147 .in11(1'b1),
148 .out(spare0_oai22_4x_unused));
149cl_a1_inv_16x spare0_inv_16x (.in(1'b1),
150 .out(spare0_inv_16x_unused));
151cl_a1_nand2_16x spare0_nand2_16x (.in0(1'b1),
152 .in1(1'b1),
153 .out(spare0_nand2_16x_unused));
154cl_a1_nor3_4x spare0_nor3_4x (.in0(1'b0),
155 .in1(1'b0),
156 .in2(1'b0),
157 .out(spare0_nor3_4x_unused));
158cl_a1_nand2_8x spare0_nand2_8x (.in0(1'b1),
159 .in1(1'b1),
160 .out(spare0_nand2_8x_unused));
161cl_a1_buf_16x spare0_buf_16x (.in(1'b1),
162 .out(spare0_buf_16x_unused));
163cl_a1_nor2_16x spare0_nor2_16x (.in0(1'b0),
164 .in1(1'b0),
165 .out(spare0_nor2_16x_unused));
166cl_a1_inv_32x spare0_inv_32x (.in(1'b1),
167 .out(spare0_inv_32x_unused));
168
169cl_a1_msff_8x spare1_flop (.l1clk(l1clk),
170 .siclk(siclk),
171 .soclk(soclk),
172 .si(si_1),
173 .so(so_1),
174 .d(1'b0),
175 .q(spare1_flop_unused));
176assign si_1 = so_0;
177
178cl_a1_buf_32x spare1_buf_32x (.in(1'b1),
179 .out(spare1_buf_32x_unused));
180cl_a1_nand3_8x spare1_nand3_8x (.in0(1'b1),
181 .in1(1'b1),
182 .in2(1'b1),
183 .out(spare1_nand3_8x_unused));
184cl_a1_inv_8x spare1_inv_8x (.in(1'b1),
185 .out(spare1_inv_8x_unused));
186cl_a1_aoi22_4x spare1_aoi22_4x (.in00(1'b1),
187 .in01(1'b1),
188 .in10(1'b1),
189 .in11(1'b1),
190 .out(spare1_aoi22_4x_unused));
191cl_a1_buf_8x spare1_buf_8x (.in(1'b1),
192 .out(spare1_buf_8x_unused));
193cl_a1_oai22_4x spare1_oai22_4x (.in00(1'b1),
194 .in01(1'b1),
195 .in10(1'b1),
196 .in11(1'b1),
197 .out(spare1_oai22_4x_unused));
198cl_a1_inv_16x spare1_inv_16x (.in(1'b1),
199 .out(spare1_inv_16x_unused));
200cl_a1_nand2_16x spare1_nand2_16x (.in0(1'b1),
201 .in1(1'b1),
202 .out(spare1_nand2_16x_unused));
203cl_a1_nor3_4x spare1_nor3_4x (.in0(1'b0),
204 .in1(1'b0),
205 .in2(1'b0),
206 .out(spare1_nor3_4x_unused));
207cl_a1_nand2_8x spare1_nand2_8x (.in0(1'b1),
208 .in1(1'b1),
209 .out(spare1_nand2_8x_unused));
210cl_a1_buf_16x spare1_buf_16x (.in(1'b1),
211 .out(spare1_buf_16x_unused));
212cl_a1_nor2_16x spare1_nor2_16x (.in0(1'b0),
213 .in1(1'b0),
214 .out(spare1_nor2_16x_unused));
215cl_a1_inv_32x spare1_inv_32x (.in(1'b1),
216 .out(spare1_inv_32x_unused));
217
218cl_a1_msff_8x spare2_flop (.l1clk(l1clk),
219 .siclk(siclk),
220 .soclk(soclk),
221 .si(si_2),
222 .so(so_2),
223 .d(1'b0),
224 .q(spare2_flop_unused));
225assign si_2 = so_1;
226
227cl_a1_buf_32x spare2_buf_32x (.in(1'b1),
228 .out(spare2_buf_32x_unused));
229cl_a1_nand3_8x spare2_nand3_8x (.in0(1'b1),
230 .in1(1'b1),
231 .in2(1'b1),
232 .out(spare2_nand3_8x_unused));
233cl_a1_inv_8x spare2_inv_8x (.in(1'b1),
234 .out(spare2_inv_8x_unused));
235cl_a1_aoi22_4x spare2_aoi22_4x (.in00(1'b1),
236 .in01(1'b1),
237 .in10(1'b1),
238 .in11(1'b1),
239 .out(spare2_aoi22_4x_unused));
240cl_a1_buf_8x spare2_buf_8x (.in(1'b1),
241 .out(spare2_buf_8x_unused));
242cl_a1_oai22_4x spare2_oai22_4x (.in00(1'b1),
243 .in01(1'b1),
244 .in10(1'b1),
245 .in11(1'b1),
246 .out(spare2_oai22_4x_unused));
247cl_a1_inv_16x spare2_inv_16x (.in(1'b1),
248 .out(spare2_inv_16x_unused));
249cl_a1_nand2_16x spare2_nand2_16x (.in0(1'b1),
250 .in1(1'b1),
251 .out(spare2_nand2_16x_unused));
252cl_a1_nor3_4x spare2_nor3_4x (.in0(1'b0),
253 .in1(1'b0),
254 .in2(1'b0),
255 .out(spare2_nor3_4x_unused));
256cl_a1_nand2_8x spare2_nand2_8x (.in0(1'b1),
257 .in1(1'b1),
258 .out(spare2_nand2_8x_unused));
259cl_a1_buf_16x spare2_buf_16x (.in(1'b1),
260 .out(spare2_buf_16x_unused));
261cl_a1_nor2_16x spare2_nor2_16x (.in0(1'b0),
262 .in1(1'b0),
263 .out(spare2_nor2_16x_unused));
264cl_a1_inv_32x spare2_inv_32x (.in(1'b1),
265 .out(spare2_inv_32x_unused));
266
267cl_a1_msff_8x spare3_flop (.l1clk(l1clk),
268 .siclk(siclk),
269 .soclk(soclk),
270 .si(si_3),
271 .so(so_3),
272 .d(1'b0),
273 .q(spare3_flop_unused));
274assign si_3 = so_2;
275
276cl_a1_buf_32x spare3_buf_32x (.in(1'b1),
277 .out(spare3_buf_32x_unused));
278cl_a1_nand3_8x spare3_nand3_8x (.in0(1'b1),
279 .in1(1'b1),
280 .in2(1'b1),
281 .out(spare3_nand3_8x_unused));
282cl_a1_inv_8x spare3_inv_8x (.in(1'b1),
283 .out(spare3_inv_8x_unused));
284cl_a1_aoi22_4x spare3_aoi22_4x (.in00(1'b1),
285 .in01(1'b1),
286 .in10(1'b1),
287 .in11(1'b1),
288 .out(spare3_aoi22_4x_unused));
289cl_a1_buf_8x spare3_buf_8x (.in(1'b1),
290 .out(spare3_buf_8x_unused));
291cl_a1_oai22_4x spare3_oai22_4x (.in00(1'b1),
292 .in01(1'b1),
293 .in10(1'b1),
294 .in11(1'b1),
295 .out(spare3_oai22_4x_unused));
296cl_a1_inv_16x spare3_inv_16x (.in(1'b1),
297 .out(spare3_inv_16x_unused));
298cl_a1_nand2_16x spare3_nand2_16x (.in0(1'b1),
299 .in1(1'b1),
300 .out(spare3_nand2_16x_unused));
301cl_a1_nor3_4x spare3_nor3_4x (.in0(1'b0),
302 .in1(1'b0),
303 .in2(1'b0),
304 .out(spare3_nor3_4x_unused));
305cl_a1_nand2_8x spare3_nand2_8x (.in0(1'b1),
306 .in1(1'b1),
307 .out(spare3_nand2_8x_unused));
308cl_a1_buf_16x spare3_buf_16x (.in(1'b1),
309 .out(spare3_buf_16x_unused));
310cl_a1_nor2_16x spare3_nor2_16x (.in0(1'b0),
311 .in1(1'b0),
312 .out(spare3_nor2_16x_unused));
313cl_a1_inv_32x spare3_inv_32x (.in(1'b1),
314 .out(spare3_inv_32x_unused));
315assign scan_out = so_3;
316
317
318
319endmodule