Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / design / sys / iop / rtx / rtl / rtx_n2_efuhdr1b_p0_msff_ctl_macro__en_1__width_22.v
CommitLineData
86530b38
AT
1// ========== Copyright Header Begin ==========================================
2//
3// OpenSPARC T2 Processor File: rtx_n2_efuhdr1b_p0_msff_ctl_macro__en_1__width_22.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
37
38
39
40// any PARAMS parms go into naming of macro
41
42module rtx_n2_efuhdr1b_p0_msff_ctl_macro__en_1__width_22 (
43 din,
44 en,
45 l1clk,
46 scan_in,
47 siclk,
48 soclk,
49 dout,
50 scan_out);
51wire [21:0] fdin;
52wire [21:1] sout;
53
54 input [ 21 : 0 ] din;
55 input en;
56 input l1clk;
57 input scan_in;
58
59
60 input siclk;
61 input soclk;
62
63 output [ 21 : 0 ] dout;
64 output scan_out;
65assign fdin[ 21 : 0 ] = (din[ 21 : 0 ] & {22{en}}) | (dout[ 21 : 0 ] & ~{22{en}});
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82cl_a1_msff_4x d0_0 (
83.l1clk(l1clk),
84.siclk(siclk),
85.soclk(soclk),
86.d(fdin[ 0 ]),
87.si(sout[ 1 ]),
88.so(scan_out),
89.q(dout[ 0 ])
90);
91cl_a1_msff_4x d0_1 (
92.l1clk(l1clk),
93.siclk(siclk),
94.soclk(soclk),
95.d(fdin[ 1 ]),
96.si(sout[ 2 ]),
97.so(sout[ 1 ]),
98.q(dout[ 1 ])
99);
100cl_a1_msff_4x d0_2 (
101.l1clk(l1clk),
102.siclk(siclk),
103.soclk(soclk),
104.d(fdin[ 2 ]),
105.si(sout[ 3 ]),
106.so(sout[ 2 ]),
107.q(dout[ 2 ])
108);
109cl_a1_msff_4x d0_3 (
110.l1clk(l1clk),
111.siclk(siclk),
112.soclk(soclk),
113.d(fdin[ 3 ]),
114.si(sout[ 4 ]),
115.so(sout[ 3 ]),
116.q(dout[ 3 ])
117);
118cl_a1_msff_4x d0_4 (
119.l1clk(l1clk),
120.siclk(siclk),
121.soclk(soclk),
122.d(fdin[ 4 ]),
123.si(sout[ 5 ]),
124.so(sout[ 4 ]),
125.q(dout[ 4 ])
126);
127cl_a1_msff_4x d0_5 (
128.l1clk(l1clk),
129.siclk(siclk),
130.soclk(soclk),
131.d(fdin[ 5 ]),
132.si(sout[ 6 ]),
133.so(sout[ 5 ]),
134.q(dout[ 5 ])
135);
136cl_a1_msff_4x d0_6 (
137.l1clk(l1clk),
138.siclk(siclk),
139.soclk(soclk),
140.d(fdin[ 6 ]),
141.si(sout[ 7 ]),
142.so(sout[ 6 ]),
143.q(dout[ 6 ])
144);
145cl_a1_msff_4x d0_7 (
146.l1clk(l1clk),
147.siclk(siclk),
148.soclk(soclk),
149.d(fdin[ 7 ]),
150.si(sout[ 8 ]),
151.so(sout[ 7 ]),
152.q(dout[ 7 ])
153);
154cl_a1_msff_4x d0_8 (
155.l1clk(l1clk),
156.siclk(siclk),
157.soclk(soclk),
158.d(fdin[ 8 ]),
159.si(sout[ 9 ]),
160.so(sout[ 8 ]),
161.q(dout[ 8 ])
162);
163cl_a1_msff_4x d0_9 (
164.l1clk(l1clk),
165.siclk(siclk),
166.soclk(soclk),
167.d(fdin[ 9 ]),
168.si(sout[ 10 ]),
169.so(sout[ 9 ]),
170.q(dout[ 9 ])
171);
172cl_a1_msff_4x d0_10 (
173.l1clk(l1clk),
174.siclk(siclk),
175.soclk(soclk),
176.d(fdin[ 10 ]),
177.si(sout[ 11 ]),
178.so(sout[ 10 ]),
179.q(dout[ 10 ])
180);
181cl_a1_msff_4x d0_11 (
182.l1clk(l1clk),
183.siclk(siclk),
184.soclk(soclk),
185.d(fdin[ 11 ]),
186.si(sout[ 12 ]),
187.so(sout[ 11 ]),
188.q(dout[ 11 ])
189);
190cl_a1_msff_4x d0_12 (
191.l1clk(l1clk),
192.siclk(siclk),
193.soclk(soclk),
194.d(fdin[ 12 ]),
195.si(sout[ 13 ]),
196.so(sout[ 12 ]),
197.q(dout[ 12 ])
198);
199cl_a1_msff_4x d0_13 (
200.l1clk(l1clk),
201.siclk(siclk),
202.soclk(soclk),
203.d(fdin[ 13 ]),
204.si(sout[ 14 ]),
205.so(sout[ 13 ]),
206.q(dout[ 13 ])
207);
208cl_a1_msff_4x d0_14 (
209.l1clk(l1clk),
210.siclk(siclk),
211.soclk(soclk),
212.d(fdin[ 14 ]),
213.si(sout[ 15 ]),
214.so(sout[ 14 ]),
215.q(dout[ 14 ])
216);
217cl_a1_msff_4x d0_15 (
218.l1clk(l1clk),
219.siclk(siclk),
220.soclk(soclk),
221.d(fdin[ 15 ]),
222.si(sout[ 16 ]),
223.so(sout[ 15 ]),
224.q(dout[ 15 ])
225);
226cl_a1_msff_4x d0_16 (
227.l1clk(l1clk),
228.siclk(siclk),
229.soclk(soclk),
230.d(fdin[ 16 ]),
231.si(sout[ 17 ]),
232.so(sout[ 16 ]),
233.q(dout[ 16 ])
234);
235cl_a1_msff_4x d0_17 (
236.l1clk(l1clk),
237.siclk(siclk),
238.soclk(soclk),
239.d(fdin[ 17 ]),
240.si(sout[ 18 ]),
241.so(sout[ 17 ]),
242.q(dout[ 17 ])
243);
244cl_a1_msff_4x d0_18 (
245.l1clk(l1clk),
246.siclk(siclk),
247.soclk(soclk),
248.d(fdin[ 18 ]),
249.si(sout[ 19 ]),
250.so(sout[ 18 ]),
251.q(dout[ 18 ])
252);
253cl_a1_msff_4x d0_19 (
254.l1clk(l1clk),
255.siclk(siclk),
256.soclk(soclk),
257.d(fdin[ 19 ]),
258.si(sout[ 20 ]),
259.so(sout[ 19 ]),
260.q(dout[ 19 ])
261);
262cl_a1_msff_4x d0_20 (
263.l1clk(l1clk),
264.siclk(siclk),
265.soclk(soclk),
266.d(fdin[ 20 ]),
267.si(sout[ 21 ]),
268.so(sout[ 20 ]),
269.q(dout[ 20 ])
270);
271cl_a1_msff_4x d0_21 (
272.l1clk(l1clk),
273.siclk(siclk),
274.soclk(soclk),
275.d(fdin[ 21 ]),
276.si(scan_in),
277.so(sout[ 21 ]),
278.q(dout[ 21 ])
279);
280
281
282
283
284endmodule
285
286
287
288
289
290
291
292