Belle II Software  release-05-01-25
Cluster.cc
1 #ifdef __clang__
2 // This file takes forever when compiled with clang (~25min just for this one
3 // file) so let's selectively disable optimization. As this is a simple enough
4 // tool this should not make any problems
5 #pragma clang optimize off
6 #endif
7 
8 #include <fstream>
9 #include <iomanip>
10 
11 using namespace std;
12 
13 
14 int main()
15 {
16 
17  ofstream outputp("UT3_0_Cluster_M.vhd");
18  ofstream outputpp("UT3_0_Cluster_P.vhd");
19 
21  outputp << "library IEEE;" << endl;
22  outputp << "use IEEE.STD_LOGIC_1164.ALL;" << endl;
23  outputpp << "library IEEE;" << endl;
24  outputpp << "use IEEE.STD_LOGIC_1164.ALL;" << endl;
25  outputpp << " " << endl;
26  outputp << " " << endl;
27 
29  outputp << "entity UT3_0_Cluster_M is" << endl;
30  outputpp << "entity UT3_0_Cluster_P is" << endl;
31  outputp << "Port (";
32  outputpp << "Port (";
33 
34  for (unsigned a = 1; a <= 16; a++) {
35  outputp << " Minus_row" << a << " : out STD_LOGIC_VECTOR (79 downto 40);" << endl;
36  outputpp << " Plus_row" << a << " : out STD_LOGIC_VECTOR (39 downto 0);" << endl;
37  }
38 
39  outputp << " SL0_TS : IN std_logic_vector(80 downto 0);" << endl;
40  outputp << " SL2_TS : IN std_logic_vector(96 downto 0);" << endl;
41  outputp << " SL4_TS : IN std_logic_vector(128 downto 0);" << endl;
42  outputp << " SL6_TS : IN std_logic_vector(160 downto 0);" << endl;
43  outputp << " SL8_TS : IN std_logic_vector(192 downto 0);" << endl;
44  outputp << " Top_clkData_s: IN std_logic" << endl;
45  outputp << " );" << endl;
46  outputpp << " SL0_TS : IN std_logic_vector(80 downto 0);" << endl;
47  outputpp << " SL2_TS : IN std_logic_vector(96 downto 0);" << endl;
48  outputpp << " SL4_TS : IN std_logic_vector(128 downto 0);" << endl;
49  outputpp << " SL6_TS : IN std_logic_vector(160 downto 0);" << endl;
50  outputpp << " SL8_TS : IN std_logic_vector(192 downto 0);" << endl;
51  outputpp << " Top_clkData_s: IN std_logic" << endl;
52  outputpp << " );" << endl;
53  outputpp << " " << endl;
54  outputp << " " << endl;
55  outputp << "end UT3_0_Cluster_M;" << endl;
56  outputpp << "end UT3_0_Cluster_P;" << endl;
57  outputpp << " " << endl;
58  outputp << " " << endl;
60  outputp << "architecture Behavioral of UT3_0_Cluster_M is" << endl;
61  outputpp << "architecture Behavioral of UT3_0_Cluster_P is" << endl;
62  outputpp << " " << endl;
63  outputp << " " << endl;
65  for (unsigned a = 1; a <= 16; a++) {
66  outputp << "signal row" << a << " : STD_LOGIC_VECTOR (79 downto 40);" << endl;
67  outputpp << "signal row" << a << " : STD_LOGIC_VECTOR (0 to 39);" << endl;
68  outputpp << "signal row" << a << "_s : STD_LOGIC_VECTOR (39 downto 0);" << endl;
69  }
70  outputpp << " " << endl;
71  outputp << " " << endl;
72  for (unsigned js = 1; js < 16; js += 2) {
73  for (unsigned ts = 0; ts < 80; ts += 2) {
74  if (ts < 40) {
75  outputpp << "signal patternI_" << ts % 160 + 1 << "_" << js << "_A : STD_LOGIC_VECTOR (3 downto 0);" << endl;
76  outputpp << "signal patternI_" << ts % 160 + 1 << "_" << js << "_B : STD_LOGIC_VECTOR (3 downto 0);" << endl;
77  outputpp << "signal patternI_" << ts % 160 + 1 << "_" << js << "_D : STD_LOGIC_VECTOR (3 downto 0);" << endl;
78  outputpp << "signal patternI_" << ts % 160 + 1 << "_" << js << "_E : STD_LOGIC_VECTOR (3 downto 0);" << endl;
79  outputpp << "signal patternI_" << ts % 160 + 1 << "_" << js << "_G : STD_LOGIC_VECTOR (3 downto 0);" << endl;
80  outputpp << "signal patternI_" << ts % 160 + 1 << "_" << js << "_H : STD_LOGIC_VECTOR (3 downto 0);" << endl;
81  }
82  if (ts >= 40 && ts < 80) {
83  outputp << "signal patternI_" << ts % 160 << "_" << js << "_A : STD_LOGIC_VECTOR (3 downto 0);" << endl;
84  outputp << "signal patternI_" << ts % 160 << "_" << js << "_B : STD_LOGIC_VECTOR (3 downto 0);" << endl;
85  outputp << "signal patternI_" << ts % 160 << "_" << js << "_D : STD_LOGIC_VECTOR (3 downto 0);" << endl;
86  outputp << "signal patternI_" << ts % 160 << "_" << js << "_E : STD_LOGIC_VECTOR (3 downto 0);" << endl;
87  outputp << "signal patternI_" << ts % 160 << "_" << js << "_G : STD_LOGIC_VECTOR (3 downto 0);" << endl;
88  outputp << "signal patternI_" << ts % 160 << "_" << js << "_H : STD_LOGIC_VECTOR (3 downto 0);" << endl;
89  }
90  }
91  }
92  outputpp << " " << endl;
93  outputp << " " << endl;
96  outputp << " COMPONENT UT3_0_HoughVoting_M" << endl;
97  outputp << " Port ( ";
98  outputpp << " COMPONENT UT3_0_HoughVoting_P" << endl;
99  outputpp << " Port ( ";
100  for (unsigned a = 1; a <= 16; a++) {
101  outputp << " row" << a << " : out STD_LOGIC_VECTOR (79 downto 40);" << endl;
102  outputpp << " row" << a << " : out STD_LOGIC_VECTOR (39 downto 0);" << endl;
103  }
104  outputp << " SL0_TS : IN std_logic_vector(80 downto 0);" << endl;
105  outputp << " SL2_TS : IN std_logic_vector(96 downto 0);" << endl;
106  outputp << " SL4_TS : IN std_logic_vector(128 downto 0);" << endl;
107  outputp << " SL6_TS : IN std_logic_vector(160 downto 0);" << endl;
108  outputp << " SL8_TS : IN std_logic_vector(192 downto 0);" << endl;
109  outputp << " Top_clkData_s: IN std_logic" << endl;
110  outputp << " );" << endl;
111  outputpp << " SL0_TS : IN std_logic_vector(80 downto 0);" << endl;
112  outputpp << " SL2_TS : IN std_logic_vector(96 downto 0);" << endl;
113  outputpp << " SL4_TS : IN std_logic_vector(128 downto 0);" << endl;
114  outputpp << " SL6_TS : IN std_logic_vector(160 downto 0);" << endl;
115  outputpp << " SL8_TS : IN std_logic_vector(192 downto 0);" << endl;
116  outputpp << " Top_clkData_s: IN std_logic" << endl;
117  outputpp << " );" << endl;
118  outputp << " end COMPONENT;" << endl;
119  outputpp << " end COMPONENT;" << endl;
120  outputpp << " " << endl;
121  outputp << " " << endl;
122 
124  outputp << " COMPONENT cluster_center is" << endl;
125  outputp << " port( new_cluster_A : out std_logic_vector(3 downto 0);" << endl;
126  outputp << " new_cluster_B : out std_logic_vector(3 downto 0);" << endl;
127  outputp << " new_cluster_D : out std_logic_vector(3 downto 0);" << endl;
128  outputp << " new_cluster_E : out std_logic_vector(3 downto 0);" << endl;
129  outputp << " new_cluster_G : out std_logic_vector(3 downto 0);" << endl;
130  outputp << " new_cluster_H : out std_logic_vector(3 downto 0); " << endl;
131  outputp << " X : IN std_logic_vector(3 downto 0);" << endl;
132  outputp << " Y : IN std_logic_vector(3 downto 0);" << endl;
133  outputp << " Z : IN std_logic_vector(3 downto 0);" << endl;
134  outputp << " A : IN std_logic_vector(3 downto 0);" << endl;
135  outputp << " B : IN std_logic_vector(3 downto 0);" << endl;
136  outputp << " D : IN std_logic_vector(3 downto 0);" << endl;
137  outputp << " E : IN std_logic_vector(3 downto 0);" << endl;
138  outputp << " G : IN std_logic_vector(3 downto 0);" << endl;
139  outputp << " H : IN std_logic_vector(3 downto 0);" << endl;
140  outputp << " top_clkdata_s:IN std_logic" << endl;
141  outputp << " );" << endl;
142  outputp << " end COMPONENT;" << endl;
143  outputpp << " COMPONENT cluster_center is" << endl;
144  outputpp << " port( new_cluster_A : out std_logic_vector(3 downto 0);" << endl;
145  outputpp << " new_cluster_B : out std_logic_vector(3 downto 0);" << endl;
146  outputpp << " new_cluster_D : out std_logic_vector(3 downto 0);" << endl;
147  outputpp << " new_cluster_E : out std_logic_vector(3 downto 0);" << endl;
148  outputpp << " new_cluster_G : out std_logic_vector(3 downto 0);" << endl;
149  outputpp << " new_cluster_H : out std_logic_vector(3 downto 0); " << endl;
150  outputpp << " X : IN std_logic_vector(3 downto 0);" << endl;
151  outputpp << " Y : IN std_logic_vector(3 downto 0);" << endl;
152  outputpp << " Z : IN std_logic_vector(3 downto 0);" << endl;
153  outputpp << " A : IN std_logic_vector(3 downto 0);" << endl;
154  outputpp << " B : IN std_logic_vector(3 downto 0);" << endl;
155  outputpp << " D : IN std_logic_vector(3 downto 0);" << endl;
156  outputpp << " E : IN std_logic_vector(3 downto 0);" << endl;
157  outputpp << " G : IN std_logic_vector(3 downto 0);" << endl;
158  outputpp << " H : IN std_logic_vector(3 downto 0);" << endl;
159  outputpp << " top_clkdata_s:IN std_logic" << endl;
160  outputpp << " );" << endl;
161  outputpp << " end COMPONENT;" << endl;
162  outputpp << " " << endl;
163  outputp << " " << endl;
164  outputp << "begin" << endl;
165  outputpp << "begin" << endl;
166  outputpp << " " << endl;
167  outputp << " " << endl;
168 
170  outputp << "Center_1: UT3_0_HoughVoting_M " << endl;
171  outputp << " Port map(" << endl;
172  outputpp << "Center_1: UT3_0_HoughVoting_P" << endl;
173  outputpp << " Port map(" << endl;
174  for (unsigned a = 1; a <= 16; a++) {
175  outputp << " row" << a << "(79 downto 40) =>row" << a << "(79 downto 40)," << endl;
176  outputpp << " row" << a << "(39 downto 0) =>row" << a << "_s(39 downto 0)," << endl;
177  }
178  outputp << " SL0_TS(80 downto 0)=>SL0_TS(80 downto 0)," << endl;
179  outputp << " SL2_TS(96 downto 0)=>SL2_TS(96 downto 0)," << endl;
180  outputp << " SL4_TS(128 downto 0)=>SL4_TS(128 downto 0)," << endl;
181  outputp << " SL6_TS(160 downto 0)=>SL6_TS(160 downto 0)," << endl;
182  outputp << " SL8_TS(192 downto 0)=>SL8_TS(192 downto 0)," << endl;
183  outputp << " Top_clkData_s =>Top_clkData_s " << endl;
184  outputp << " );" << endl;
185  outputpp << " SL0_TS(80 downto 0)=>SL0_TS(80 downto 0)," << endl;
186  outputpp << " SL2_TS(96 downto 0)=>SL2_TS(96 downto 0)," << endl;
187  outputpp << " SL4_TS(128 downto 0)=>SL4_TS(128 downto 0)," << endl;
188 
189 
190  outputpp << " SL6_TS(160 downto 0)=>SL6_TS(160 downto 0)," << endl;
191  outputpp << " SL8_TS(192 downto 0)=>SL8_TS(192 downto 0)," << endl;
192  outputpp << " Top_clkData_s =>Top_clkData_s " << endl;
193  outputpp << " );" << endl;
194  outputpp << " " << endl;
195  outputp << " " << endl;
196 
197  outputpp << "ss : for i in 0 to 39 generate" << endl;
198  for (unsigned a = 1; a <= 16; a++) {
199  outputpp << "row" << a << "(i)<=row" << a << "_s(i);" << endl;
200  }
201  outputpp << "end generate;" << endl;
202  outputpp << " " << endl;
203 
205 
206  int i = 1, c = 1, z = 0;
207  for (unsigned j = 1; j < 16; j += 2) {
208  for (unsigned t = z % 160; t < 80; t += 2) {
209 
210  if (t >= 40 && t < 80) {
211  ++i;
212  outputp << "Center_" << i << " :cluster_center" << endl;
213  outputp << "port map (" << endl;
214  }
215 
216  if (t < 40) {
217  ++c;
218  outputpp << "Center_" << c << " :cluster_center" << endl;
219  outputpp << "port map (" << endl;
220  }
222  if (t >= 40 && t <= 78) {
223  if (t == 40) {
224  if (j == 1) {
225  outputp << setw(21) << "X =>\"0000\"," << endl;
226  outputp << setw(21) << "Y =>\"0000\"," << endl;
227  outputp << setw(21) << "Z =>\"0000\"," << endl;
228  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
229  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
230  outputp << setw(26) << "B(1 downto 0)=>row" << j << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
231  outputp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
232  outputp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << t + 1 << " downto " << t << ")," << endl;
233  outputp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << t + 1 << " downto " << t << ")," << endl;
234  outputp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
235  outputp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
236  outputp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << t + 1 << " downto " << t << ")," << endl;
237  outputp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << t + 1 << " downto " << t << ")," << endl;
238  outputp << setw(26) << "H(1 downto 0)=>row" << j + 4 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
239  outputp << setw(26) << "H(3 downto 2)=>row" << j + 5 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
240  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
241  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
242  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
243  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
244  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
245  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
246  }
247  if (j > 1 and j <= 11) {
248  outputp << setw(21) << "X =>\"0000\"," << endl;
249  outputp << setw(21) << "Y =>\"0000\"," << endl;
250  outputp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << t + 1 << " downto " << t << ")," << endl;
251  outputp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << t + 1 << " downto " << t << ")," << endl;
252  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
253  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
254  outputp << setw(26) << "B(1 downto 0)=>row" << j << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
255  outputp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
256  outputp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << t + 1 << " downto " << t << ")," << endl;
257  outputp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << t + 1 << " downto " << t << ")," << endl;
258  outputp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
259  outputp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
260  outputp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << t + 1 << " downto " << t << ")," << endl;
261  outputp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << t + 1 << " downto " << t << ")," << endl;
262  outputp << setw(26) << "H(1 downto 0)=>row" << j + 4 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
263  outputp << setw(26) << "H(3 downto 2)=>row" << j + 5 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
264 
265  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
266  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
267  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
268  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
269  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
270  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
271 
272  }
273 
274  if (j == 13) {
275 
276  outputp << setw(21) << "X =>\"0000\"," << endl;
277  outputp << setw(21) << "Y =>\"0000\"," << endl;
278  outputp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << t + 1 << " downto " << t << ")," << endl;
279  outputp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << t + 1 << " downto " << t << ")," << endl;
280  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
281  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
282  outputp << setw(26) << "B(1 downto 0)=>row" << j << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
283  outputp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
284  outputp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << t + 1 << " downto " << t << ")," << endl;
285  outputp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << t + 1 << " downto " << t << ")," << endl;
286  outputp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
287  outputp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
288  outputp << setw(21) << "G =>\"0000\"," << endl;
289  outputp << setw(21) << "H =>\"0000\"," << endl;
290 
291  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
292  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
293  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
294  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
295  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
296  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
297 
298  }
299 
300  if (j == 15) {
301  outputp << setw(21) << "X =>\"0000\"," << endl;
302  outputp << setw(21) << "Y =>\"0000\"," << endl;
303  outputp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << t + 1 << " downto " << t << ")," << endl;
304  outputp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << t + 1 << " downto " << t << ")," << endl;
305  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
306  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
307  outputp << setw(26) << "B(1 downto 0)=>row" << j << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
308  outputp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
309  outputp << setw(21) << "D =>\"0000\"," << endl;
310  outputp << setw(21) << "E =>\"0000\"," << endl;
311  outputp << setw(21) << "G =>\"0000\"," << endl;
312  outputp << setw(21) << "H =>\"0000\"," << endl;
313 
314  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
315  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
316  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
317  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
318  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
319  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
320 
321  }
322  }
323  if (t == 78) {
324  if (j == 1) {
325  outputp << setw(26) << "X(1 downto 0)=>row" << j << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
326  outputp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
327  outputp << setw(21) << "Y =>\"0000\"," << endl;
328  outputp << setw(21) << "Z =>\"0000\"," << endl;
329  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
330  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
331  outputp << setw(21) << "B =>\"0000\"," << endl;
332  outputp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << t + 1 << " downto " << t << ")," << endl;
333  outputp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << t + 1 << " downto " << t << ")," << endl;
334  outputp << setw(21) << "E =>\"0000\"," << endl;
335  outputp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << t + 1 << " downto " << t << ")," << endl;
336  outputp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << t + 1 << " downto " << t << ")," << endl;
337  outputp << setw(21) << "H =>\"0000\"," << endl;
338 
339  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
340  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
341  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
342  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
343  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
344  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
345  }
346 
347  if (j > 1 and j <= 11) {
348  outputp << setw(26) << "X(1 downto 0)=>row" << j << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
349  outputp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
350  outputp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
351  outputp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
352  outputp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << t + 1 << " downto " << t << ")," << endl;
353  outputp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << t + 1 << " downto " << t << ")," << endl;
354  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
355  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
356  outputp << setw(21) << "B =>\"0000\"," << endl;
357  outputp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << t + 1 << " downto " << t << ")," << endl;
358  outputp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << t + 1 << " downto " << t << ")," << endl;
359  outputp << setw(21) << "E =>\"0000\"," << endl;
360  outputp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << t + 1 << " downto " << t << ")," << endl;
361  outputp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << t + 1 << " downto " << t << ")," << endl;
362  outputp << setw(21) << "H =>\"0000\"," << endl;
363 
364  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
365  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
366  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
367  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
368  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
369  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
370 
371  }
372 
373  if (j == 13) {
374  outputp << setw(26) << "X(1 downto 0)=>row" << j << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
375  outputp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
376  outputp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
377  outputp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
378  outputp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << t + 1 << " downto " << t << ")," << endl;
379  outputp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << t + 1 << " downto " << t << ")," << endl;
380  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
381  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
382  outputp << setw(21) << "B =>\"0000\"," << endl;
383  outputp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << t + 1 << " downto " << t << ")," << endl;
384  outputp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << t + 1 << " downto " << t << ")," << endl;
385  outputp << setw(21) << "E =>\"0000\"," << endl;
386  outputp << setw(21) << "G =>\"0000\"," << endl;
387  outputp << setw(21) << "H =>\"0000\"," << endl;
388 
389  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
390  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
391  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
392  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
393  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
394  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
395 
396  }
397 
398  if (j == 15) {
399  outputp << setw(26) << "X(1 downto 0)=>row" << j << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
400  outputp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
401  outputp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
402  outputp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
403  outputp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << t + 1 << " downto " << t << ")," << endl;
404  outputp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << t + 1 << " downto " << t << ")," << endl;
405  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
406  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
407  outputp << setw(21) << "B =>\"0000\"," << endl;
408  outputp << setw(21) << "D =>\"0000\"," << endl;
409  outputp << setw(21) << "E =>\"0000\"," << endl;
410  outputp << setw(21) << "G =>\"0000\"," << endl;
411  outputp << setw(21) << "H =>\"0000\"," << endl;
412 
413  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
414  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
415  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
416  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
417  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
418  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
419 
420  }
421  }
422  if (t > 40 and t < 78) {
423  if (j == 1) {
424  outputp << setw(26) << "X(1 downto 0)=>row" << j << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
425  outputp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
426  outputp << setw(21) << "Y =>\"0000\"," << endl;
427  outputp << setw(21) << "Z =>\"0000\"," << endl;
428  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
429  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
430  outputp << setw(26) << "B(1 downto 0)=>row" << j << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
431  outputp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
432  outputp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << t + 1 << " downto " << t << ")," << endl;
433  outputp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << t + 1 << " downto " << t << ")," << endl;
434  outputp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
435  outputp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
436  outputp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << t + 1 << " downto " << t << ")," << endl;
437  outputp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << t + 1 << " downto " << t << ")," << endl;
438  outputp << setw(26) << "H(1 downto 0)=>row" << j + 4 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
439  outputp << setw(26) << "H(3 downto 2)=>row" << j + 5 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
440 
441  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
442  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
443  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
444  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
445  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
446  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
447  }
448  if (j > 1 and j <= 11) {
449 
450  outputp << setw(26) << "X(1 downto 0)=>row" << j << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
451  outputp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
452  outputp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
453  outputp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
454  outputp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << t + 1 << " downto " << t << ")," << endl;
455  outputp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << t + 1 << " downto " << t << ")," << endl;
456  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
457  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
458  outputp << setw(26) << "B(1 downto 0)=>row" << j << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
459  outputp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
460  outputp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << t + 1 << " downto " << t << ")," << endl;
461  outputp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << t + 1 << " downto " << t << ")," << endl;
462  outputp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
463  outputp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
464  outputp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << t + 1 << " downto " << t << ")," << endl;
465  outputp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << t + 1 << " downto " << t << ")," << endl;
466  outputp << setw(26) << "H(1 downto 0)=>row" << j + 4 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
467  outputp << setw(26) << "H(3 downto 2)=>row" << j + 5 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
468 
469  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
470  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
471  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
472  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
473  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
474  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
475 
476  }
477 
478  if (j == 13) {
479  outputp << setw(26) << "X(1 downto 0)=>row" << j << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
480  outputp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
481  outputp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
482  outputp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
483  outputp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << t + 1 << " downto " << t << ")," << endl;
484  outputp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << t + 1 << " downto " << t << ")," << endl;
485  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
486  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
487  outputp << setw(26) << "B(1 downto 0)=>row" << j << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
488  outputp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
489  outputp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << t + 1 << " downto " << t << ")," << endl;
490  outputp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << t + 1 << " downto " << t << ")," << endl;
491  outputp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
492  outputp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
493  outputp << setw(21) << "G =>\"0000\"," << endl;
494  outputp << setw(21) << "H =>\"0000\"," << endl;
495 
496  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
497  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
498  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
499  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
500  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
501  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
502 
503  }
504 
505  if (j == 15) {
506  outputp << setw(26) << "X(1 downto 0)=>row" << j << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
507  outputp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
508  outputp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
509  outputp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << t - 1 << " downto " << t - 2 << ")," << endl;
510  outputp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << t + 1 << " downto " << t << ")," << endl;
511  outputp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << t + 1 << " downto " << t << ")," << endl;
512  outputp << setw(26) << "A(1 downto 0)=>row" << j << "(" << t + 1 << " downto " << t << ")," << endl;
513  outputp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << t + 1 << " downto " << t << ")," << endl;
514  outputp << setw(26) << "B(1 downto 0)=>row" << j << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
515  outputp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << t + 3 << " downto " << t + 2 << ")," << endl;
516  outputp << setw(21) << "D =>\"0000\"," << endl;
517  outputp << setw(21) << "E =>\"0000\"," << endl;
518  outputp << setw(21) << "G =>\"0000\"," << endl;
519  outputp << setw(21) << "H =>\"0000\"," << endl;
520 
521  outputp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << t << "_" << j << "_A(3 downto 0)," << endl;
522  outputp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << t << "_" << j << "_B(3 downto 0)," << endl;
523  outputp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << t << "_" << j << "_D(3 downto 0)," << endl;
524  outputp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << t << "_" << j << "_E(3 downto 0)," << endl;
525  outputp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << t << "_" << j << "_G(3 downto 0)," << endl;
526  outputp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << t << "_" << j << "_H(3 downto 0)," << endl;
527 
528  }
529  }
530  }
532  if (t <= 38) {
533  if (t == 0) {
534  if (j == 1) {
535  outputpp << setw(21) << "X =>\"0000\"," << endl;
536  outputpp << setw(21) << "Y =>\"0000\"," << endl;
537  outputpp << setw(21) << "Z =>\"0000\"," << endl;
538  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
539  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
540  outputpp << setw(26) << "B(1 downto 0)=>row" << j << "(" << 36 - t << " to " << 37 - t << ")," << endl;
541  outputpp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
542  outputpp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
543  outputpp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
544  outputpp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
545  outputpp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
546  outputpp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
547  outputpp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
548  outputpp << setw(26) << "H(1 downto 0)=>row" << j + 4 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
549  outputpp << setw(26) << "H(3 downto 2)=>row" << j + 5 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
550  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
551  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
552  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
553  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
554  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
555  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
556  }
557  if (j > 1 and j <= 11) {
558  outputpp << setw(21) << "X =>\"0000\"," << endl;
559  outputpp << setw(21) << "Y =>\"0000\"," << endl;
560  outputpp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
561  outputpp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
562  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
563  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
564  outputpp << setw(26) << "B(1 downto 0)=>row" << j << "(" << 36 - t << " to " << 37 - t << ")," << endl;
565  outputpp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
566  outputpp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
567  outputpp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
568  outputpp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
569  outputpp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
570  outputpp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
571  outputpp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
572  outputpp << setw(26) << "H(1 downto 0)=>row" << j + 4 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
573  outputpp << setw(26) << "H(3 downto 2)=>row" << j + 5 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
574  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
575  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
576  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
577  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
578  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
579  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
580  }
581  if (j == 13) {
582  outputpp << setw(21) << "X =>\"0000\"," << endl;
583  outputpp << setw(21) << "Y =>\"0000\"," << endl;
584  outputpp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
585  outputpp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
586  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
587  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
588  outputpp << setw(26) << "B(1 downto 0)=>row" << j << "(" << 36 - t << " to " << 37 - t << ")," << endl;
589  outputpp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
590  outputpp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
591  outputpp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
592  outputpp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
593  outputpp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
594  outputpp << setw(21) << "G =>\"0000\"," << endl;
595  outputpp << setw(21) << "H =>\"0000\"," << endl;
596  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
597  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
598  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
599  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
600  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
601  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
602  }
603  if (j == 15) {
604  outputpp << setw(21) << "X =>\"0000\"," << endl;
605  outputpp << setw(21) << "Y =>\"0000\"," << endl;
606  outputpp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
607  outputpp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
608  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
609  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
610  outputpp << setw(26) << "B(1 downto 0)=>row" << j << "(" << 36 - t << " to " << 37 - t << ")," << endl;
611  outputpp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
612  outputpp << setw(21) << "D =>\"0000\"," << endl;
613  outputpp << setw(21) << "E =>\"0000\"," << endl;
614  outputpp << setw(21) << "G =>\"0000\"," << endl;
615  outputpp << setw(21) << "H =>\"0000\"," << endl;
616  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
617  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
618  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
619  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
620  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
621  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
622  }
623  }
624  if (t == 38) {
625  if (j == 1) {
626  outputpp << setw(26) << "X(1 downto 0)=>row" << j << "(" << 40 - t << " to " << 41 - t << ")," << endl;
627  outputpp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
628  outputpp << setw(21) << "Y =>\"0000\"," << endl;
629  outputpp << setw(21) << "Z =>\"0000\"," << endl;
630  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
631  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
632  outputpp << setw(21) << "B =>\"0000\"," << endl;
633  outputpp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
634  outputpp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
635  outputpp << setw(21) << "E =>\"0000\"," << endl;
636  outputpp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
637  outputpp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
638  outputpp << setw(21) << "H =>\"0000\"," << endl;
639  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
640  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
641  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
642  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
643  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
644  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
645  }
646  if (j > 1 and j <= 11) {
647  outputpp << setw(26) << "X(1 downto 0)=>row" << j << "(" << 40 - t << " to " << 41 - t << ")," << endl;
648  outputpp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
649  outputpp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
650  outputpp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
651  outputpp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
652  outputpp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
653  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
654  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
655  outputpp << setw(21) << "B =>\"0000\"," << endl;
656  outputpp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
657  outputpp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
658  outputpp << setw(21) << "E =>\"0000\"," << endl;
659  outputpp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
660  outputpp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
661  outputpp << setw(21) << "H =>\"0000\"," << endl;
662  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
663  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
664  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
665  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
666  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
667  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
668  }
669  if (j == 13) {
670  outputpp << setw(26) << "X(1 downto 0)=>row" << j << "(" << 40 - t << " to " << 41 - t << ")," << endl;
671  outputpp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
672  outputpp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
673  outputpp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
674  outputpp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
675  outputpp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
676  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
677  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
678  outputpp << setw(21) << "B =>\"0000\"," << endl;
679  outputpp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
680  outputpp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
681  outputpp << setw(21) << "E =>\"0000\"," << endl;
682  outputpp << setw(21) << "G =>\"0000\"," << endl;
683  outputpp << setw(21) << "H =>\"0000\"," << endl;
684  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
685  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
686  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
687  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
688  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
689  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
690  }
691  if (j == 15) {
692  outputpp << setw(26) << "X(1 downto 0)=>row" << j << "(" << 40 - t << " to " << 41 - t << ")," << endl;
693  outputpp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
694  outputpp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
695  outputpp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
696  outputpp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
697  outputpp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
698  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
699  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
700  outputpp << setw(21) << "B =>\"0000\"," << endl;
701  outputpp << setw(21) << "D =>\"0000\"," << endl;
702  outputpp << setw(21) << "E =>\"0000\"," << endl;
703  outputpp << setw(21) << "G =>\"0000\"," << endl;
704  outputpp << setw(21) << "H =>\"0000\"," << endl;
705  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
706  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
707  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
708  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
709  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
710  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
711  }
712  }
713  if (t > 0 and t < 38) {
714  if (j == 1) {
715  outputpp << setw(26) << "X(1 downto 0)=>row" << j << "(" << 40 - t << " to " << 41 - t << ")," << endl;
716  outputpp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
717  outputpp << setw(21) << "Y =>\"0000\"," << endl;
718  outputpp << setw(21) << "Z =>\"0000\"," << endl;
719  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
720  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
721  outputpp << setw(26) << "B(1 downto 0)=>row" << j << "(" << 36 - t << " to " << 37 - t << ")," << endl;
722  outputpp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
723  outputpp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
724  outputpp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
725  outputpp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
726  outputpp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
727  outputpp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
728  outputpp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
729  outputpp << setw(26) << "H(1 downto 0)=>row" << j + 4 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
730  outputpp << setw(26) << "H(3 downto 2)=>row" << j + 5 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
731  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
732  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
733  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
734  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
735  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
736  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
737  }
738  if (j > 1 and j <= 11) {
739  outputpp << setw(26) << "X(1 downto 0)=>row" << j << "(" << 40 - t << " to " << 41 - t << ")," << endl;
740  outputpp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
741  outputpp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
742  outputpp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
743  outputpp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
744  outputpp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
745  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
746  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
747  outputpp << setw(26) << "B(1 downto 0)=>row" << j << "(" << 36 - t << " to " << 37 - t << ")," << endl;
748  outputpp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
749  outputpp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
750  outputpp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
751  outputpp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
752  outputpp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
753  outputpp << setw(26) << "G(1 downto 0)=>row" << j + 4 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
754  outputpp << setw(26) << "G(3 downto 2)=>row" << j + 5 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
755  outputpp << setw(26) << "H(1 downto 0)=>row" << j + 4 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
756  outputpp << setw(26) << "H(3 downto 2)=>row" << j + 5 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
757  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
758  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
759  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
760  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
761  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
762  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
763  }
764  if (j == 13) {
765  outputpp << setw(26) << "X(1 downto 0)=>row" << j << "(" << 40 - t << " to " << 41 - t << ")," << endl;
766  outputpp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
767  outputpp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
768  outputpp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
769  outputpp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
770  outputpp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
771  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
772  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
773  outputpp << setw(26) << "B(1 downto 0)=>row" << j << "(" << 36 - t << " to " << 37 - t << ")," << endl;
774  outputpp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
775  outputpp << setw(26) << "D(1 downto 0)=>row" << j + 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
776  outputpp << setw(26) << "D(3 downto 2)=>row" << j + 3 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
777  outputpp << setw(26) << "E(1 downto 0)=>row" << j + 2 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
778  outputpp << setw(26) << "E(3 downto 2)=>row" << j + 3 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
779  outputpp << setw(21) << "G =>\"0000\"," << endl;
780  outputpp << setw(21) << "H =>\"0000\"," << endl;
781  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
782  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
783  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
784  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
785  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
786  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
787  }
788  if (j == 15) {
789  outputpp << setw(26) << "X(1 downto 0)=>row" << j << "(" << 40 - t << " to " << 41 - t << ")," << endl;
790  outputpp << setw(26) << "X(3 downto 2)=>row" << j + 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
791  outputpp << setw(26) << "Y(1 downto 0)=>row" << j - 2 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
792  outputpp << setw(26) << "Y(3 downto 2)=>row" << j - 1 << "(" << 40 - t << " to " << 41 - t << ")," << endl;
793  outputpp << setw(26) << "Z(1 downto 0)=>row" << j - 2 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
794  outputpp << setw(26) << "Z(3 downto 2)=>row" << j - 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
795  outputpp << setw(26) << "A(1 downto 0)=>row" << j << "(" << 38 - t << " to " << 39 - t << ")," << endl;
796  outputpp << setw(26) << "A(3 downto 2)=>row" << j + 1 << "(" << 38 - t << " to " << 39 - t << ")," << endl;
797  outputpp << setw(26) << "B(1 downto 0)=>row" << j << "(" << 36 - t << " to " << 37 - t << ")," << endl;
798  outputpp << setw(26) << "B(3 downto 2)=>row" << j + 1 << "(" << 36 - t << " to " << 37 - t << ")," << endl;
799  outputpp << setw(21) << "D =>\"0000\"," << endl;
800  outputpp << setw(21) << "E =>\"0000\"," << endl;
801  outputpp << setw(21) << "G =>\"0000\"," << endl;
802  outputpp << setw(21) << "H =>\"0000\"," << endl;
803  outputpp << setw(43) << "new_cluster_A(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_A(3 downto 0)," << endl;
804  outputpp << setw(43) << "new_cluster_B(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_B(3 downto 0)," << endl;
805  outputpp << setw(43) << "new_cluster_D(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_D(3 downto 0)," << endl;
806  outputpp << setw(43) << "new_cluster_E(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_E(3 downto 0)," << endl;
807  outputpp << setw(43) << "new_cluster_G(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_G(3 downto 0)," << endl;
808  outputpp << setw(43) << "new_cluster_H(3 downto 0) =>patternI_" << 39 - t << "_" << j << "_H(3 downto 0)," << endl;
809  }
810  }
811  }
812 
813 
814  if (t >= 40 && t < 80) {
815  outputp << setw(40) << "top_clkData_s =>top_clkData_s );" << endl;
816  outputp << " " << endl;
817  }
818  if (t < 40) {
819  outputpp << setw(40) << "top_clkData_s =>top_clkData_s );" << endl;
820  outputpp << " " << endl;
821  }
822  }
823  }
824 
827  for (int jj = 1; jj <= 15; jj += 2) {
828  for (int tt = 0; tt < 80; tt += 2) {
829  if (tt >= 40 && tt < 80) {
830  if (jj == 1 or jj == 15) {
831  if (tt == 40) {
832  outputp << "Minus_row" << jj << "(" << tt + 1 << " downto " << tt << ")<=patternI_" << tt << "_" << jj << "_A(1 downto 0);" << endl;
833  outputp << "Minus_row" << jj + 1 << "(" << tt + 1 << " downto " << tt << ")<=patternI_" << tt << "_" << jj << "_A(3 downto 2);" <<
834  endl;
835  outputp << " " << endl;
836  }
837  if (tt != 40 && jj == 1) {
838  outputp << "Minus_row" << jj << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(0) or patternI_" << tt - 2 << "_" << jj <<
839  "_B(0);" << endl;
840  outputp << "Minus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(1) or patternI_" << tt - 2 << "_" << jj <<
841  "_B(1);" << endl;
842  outputp << "Minus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(2) or patternI_" << tt - 2 << "_" << jj <<
843  "_B(2);" << endl;
844  outputp << "Minus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(3) or patternI_" << tt - 2 << "_" <<
845  jj << "_B(3);" << endl;
846  outputp << " " << endl;
847  }
848  if (tt != 40 && jj == 15) {
849  outputp << "Minus_row" << jj << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(0) or patternI_" << tt - 2 << "_" << jj <<
850  "_B(0) or patternI_";
851  outputp << tt << "_" << jj - 2 << "_D(0) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(0) or patternI_" << tt << "_" << jj - 4 <<
852  "_G(0) or patternI_" << tt - 2 << "_" << jj - 4 << "_H(0);" << endl;
853  outputp << "Minus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(1) or patternI_" << tt - 2 << "_" << jj <<
854  "_B(1) or patternI_";
855  outputp << tt << "_" << jj - 2 << "_D(1) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(1) or patternI_" << tt << "_" << jj - 4 <<
856  "_G(1) or patternI_" << tt - 2 << "_" << jj - 4 << "_H(1);" << endl;
857  outputp << "Minus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(2) or patternI_" << tt - 2 << "_" << jj <<
858  "_B(2) or patternI_";
859  outputp << tt << "_" << jj - 2 << "_D(2) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(2) or patternI_" << tt << "_" << jj - 4 <<
860  "_G(2) or patternI_" << tt - 2 << "_" << jj - 4 << "_H(2);" << endl;
861  outputp << "Minus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(3) or patternI_" << tt - 2 << "_" <<
862  jj << "_B(3) or patternI_";
863  outputp << tt << "_" << jj - 2 << "_D(3) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(3) or patternI_" << tt << "_" << jj - 4 <<
864  "_G(3) or patternI_" << tt - 2 << "_" << jj - 4 << "_H(3);" << endl;
865  outputp << " " << endl;
866  }
867  }
868  if (jj >= 3 && jj < 15) {
869  if (jj == 3 && tt == 40) {
870  outputp << "Minus_row" << jj << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(0) or patternI_" << tt << "_" << jj - 2 <<
871  "_D(0);" << endl;
872  outputp << "Minus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(1) or patternI_" << tt << "_" << jj - 2 <<
873  "_D(1);" << endl;
874  outputp << "Minus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(2) or patternI_" << tt << "_" << jj - 2 <<
875  "_D(2);" << endl;
876  outputp << "Minus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(3) or patternI_" << tt << "_" << jj -
877  2 << "_D(3);" << endl;
878  }
879  if (jj == 3 && tt != 40) {
880  outputp << "Minus_row" << jj << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(0) or patternI_" << tt - 2 << "_" << jj <<
881  "_B(0) or patternI_" << tt << "_" << jj - 2 << "_D(0) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(0);" << endl;
882  outputp << "Minus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(1) or patternI_" << tt - 2 << "_" << jj <<
883  "_B(1) or patternI_" << tt << "_" << jj - 2 << "_D(1) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(1);" << endl;
884  outputp << "Minus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(2) or patternI_" << tt - 2 << "_" << jj <<
885  "_B(2) or patternI_" << tt << "_" << jj - 2 << "_D(2) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(2);" << endl;
886  outputp << "Minus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(3) or patternI_" << tt - 2 << "_" <<
887  jj << "_B(3) or patternI_" << tt << "_" << jj - 2 << "_D(3) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(3);" << endl;
888  outputp << " " << endl;
889  }
890  if (jj != 3 && tt == 40) {
891  outputp << "Minus_row" << jj << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(0) or patternI_" << tt << "_" << jj - 2 <<
892  "_D(0) or patternI_" << tt << "_" << jj - 4 << "_G(0);" << endl;
893  outputp << "Minus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(1) or patternI_" << tt << "_" << jj - 2 <<
894  "_D(1) or patternI_" << tt << "_" << jj - 4 << "_G(1);" << endl;
895  outputp << "Minus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(2) or patternI_" << tt << "_" << jj - 2 <<
896  "_D(2) or patternI_" << tt << "_" << jj - 4 << "_G(2);" << endl;
897  outputp << "Minus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(3) or patternI_" << tt << "_" << jj -
898  2 << "_D(3) or patternI_" << tt << "_" << jj - 4 << "_G(3);" << endl;
899  outputp << " " << endl;
900  }
901  if (jj != 3 && tt != 40) {
902  outputp << "Minus_row" << jj << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(0) or patternI_" << tt - 2 << "_" << jj <<
903  "_B(0) or patternI_" << tt << "_" << jj - 2 << "_D(0) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(0) or patternI_" << tt << "_"
904  << jj - 4 << "_G(0) or patternI_" << tt - 2 << "_" << jj - 4 << "_H(0);" << endl;
905  outputp << "Minus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(1) or patternI_" << tt - 2 << "_" << jj <<
906  "_B(1) or patternI_" << tt << "_" << jj - 2 << "_D(1) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(1) or patternI_" << tt << "_"
907  << jj - 4 << "_G(1) or patternI_" << tt - 2 << "_" << jj - 4 << "_H(1);" << endl;
908  outputp << "Minus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt << "_" << jj << "_A(2) or patternI_" << tt - 2 << "_" << jj <<
909  "_B(2) or patternI_" << tt << "_" << jj - 2 << "_D(2) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(2) or patternI_" << tt << "_"
910  << jj - 4 << "_G(2) or patternI_" << tt - 2 << "_" << jj - 4 << "_H(2);" << endl;
911  outputp << "Minus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt << "_" << jj << "_A(3) or patternI_" << tt - 2 << "_" <<
912  jj << "_B(3) or patternI_" << tt << "_" << jj - 2 << "_D(3) or patternI_" << tt - 2 << "_" << jj - 2 << "_E(3) or patternI_" << tt
913  << "_" << jj - 4 << "_G(3) or patternI_" << tt - 2 << "_" << jj - 4 << "_H(3);" << endl;
914  outputp << " " << endl;
915  }
916  }
917  }
919  if (tt >= 0 && tt < 40) {
920  if (jj == 1 or jj == 15) {
921  if (tt == 38) {
922  outputpp << "Plus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(0);" << endl;
923  outputpp << "Plus_row" << jj << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(1);" << endl;
924  outputpp << "Plus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(2);" << endl;
925  outputpp << "Plus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(3);" << endl;
926  outputpp << " " << endl;
927  }
928  if (tt != 38 && jj == 1) {
929  outputpp << "Plus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(0) or patternI_" << tt + 3 << "_" <<
930  jj << "_B(0);" << endl;
931  outputpp << "Plus_row" << jj << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(1) or patternI_" << tt + 3 << "_" << jj <<
932  "_B(1);" << endl;
933  outputpp << "Plus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(2) or patternI_" << tt + 3 << "_"
934  << jj << "_B(2);" << endl;
935  outputpp << "Plus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(3) or patternI_" << tt + 3 << "_" <<
936  jj << "_B(3);" << endl;
937  outputpp << " " << endl;
938  }
939  if (tt != 38 && jj == 15) {
940  outputpp << "Plus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(0) or patternI_" << tt + 3 << "_" <<
941  jj << "_B(0) or patternI_";
942  outputpp << tt + 1 << "_" << jj - 2 << "_D(0) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(0) or patternI_" << tt + 1 << "_" <<
943  jj - 4 << "_G(0) or patternI_" << tt + 3 << "_" << jj - 4 << "_H(0);" << endl;
944  outputpp << "Plus_row" << jj << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(1) or patternI_" << tt + 3 << "_" << jj <<
945  "_B(1) or patternI_";
946  outputpp << tt + 1 << "_" << jj - 2 << "_D(1) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(1) or patternI_" << tt + 1 << "_" <<
947  jj - 4 << "_G(1) or patternI_" << tt + 3 << "_" << jj - 4 << "_H(1);" << endl;
948  outputpp << "Plus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(2) or patternI_" << tt + 3 << "_"
949  << jj << "_B(2) or patternI_";
950  outputpp << tt + 1 << "_" << jj - 2 << "_D(2) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(2) or patternI_" << tt + 1 << "_" <<
951  jj - 4 << "_G(2) or patternI_" << tt + 3 << "_" << jj - 4 << "_H(2);" << endl;
952  outputpp << "Plus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(3) or patternI_" << tt + 3 << "_" <<
953  jj << "_B(3) or patternI_";
954  outputpp << tt + 1 << "_" << jj - 2 << "_D(3) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(3) or patternI_" << tt + 1 << "_" <<
955  jj - 4 << "_G(3) or patternI_" << tt + 3 << "_" << jj - 4 << "_H(3);" << endl;
956  outputpp << " " << endl;
957  }
958  }
959  if (jj >= 3 && jj < 15) {
960  if (jj == 3 && tt == 38) {
961  outputpp << "Plus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(0) or patternI_" << tt + 1 << "_" <<
962  jj - 2 << "_D(0);" << endl;
963  outputpp << "Plus_row" << jj << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(1) or patternI_" << tt + 1 << "_" << jj -
964  2 << "_D(1);" << endl;
965  outputpp << "Plus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(2) or patternI_" << tt + 1 << "_"
966  << jj - 2 << "_D(2);" << endl;
967  outputpp << "Plus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(3) or patternI_" << tt + 1 << "_" <<
968  jj - 2 << "_D(3);" << endl;
969  }
970  if (jj == 3 && tt != 38) {
971  outputpp << "Plus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(0) or patternI_" << tt + 3 << "_" <<
972  jj << "_B(0) or patternI_" << tt + 1 << "_" << jj - 2 << "_D(0) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(0);" << endl;
973  outputpp << "Plus_row" << jj << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(1) or patternI_" << tt + 3 << "_" << jj <<
974  "_B(1) or patternI_" << tt + 1 << "_" << jj - 2 << "_D(1) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(1);" << endl;
975  outputpp << "Plus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(2) or patternI_" << tt + 3 << "_"
976  << jj << "_B(2) or patternI_" << tt + 1 << "_" << jj - 2 << "_D(2) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(2);" << endl;
977  outputpp << "Plus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(3) or patternI_" << tt + 3 << "_" <<
978  jj << "_B(3) or patternI_" << tt + 1 << "_" << jj - 2 << "_D(3) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(3);" << endl;
979  outputpp << " " << endl;
980  }
981  if (jj != 3 && tt == 38) {
982  outputpp << "Plus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(0) or patternI_" << tt + 1 << "_" <<
983  jj - 2 << "_D(0) or patternI_" << tt + 1 << "_" << jj - 4 << "_G(0);" << endl;
984  outputpp << "Plus_row" << jj << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(1) or patternI_" << tt + 1 << "_" << jj -
985  2 << "_D(1) or patternI_" << tt + 1 << "_" << jj - 4 << "_G(1);" << endl;
986  outputpp << "Plus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(2) or patternI_" << tt + 1 << "_"
987  << jj - 2 << "_D(2) or patternI_" << tt + 1 << "_" << jj - 4 << "_G(2);" << endl;
988  outputpp << "Plus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(3) or patternI_" << tt + 1 << "_" <<
989  jj - 2 << "_D(3) or patternI_" << tt + 1 << "_" << jj - 4 << "_G(3);" << endl;
990  outputpp << " " << endl;
991  }
992  if (jj != 3 && tt != 38) {
993  outputpp << "Plus_row" << jj << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(0) or patternI_" << tt + 3 << "_" <<
994  jj << "_B(0) or patternI_" << tt + 1 << "_" << jj - 2 << "_D(0) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(0) or patternI_" <<
995  tt + 1 << "_" << jj - 4 << "_G(0) or patternI_" << tt + 3 << "_" << jj - 4 << "_H(0);" << endl;
996  outputpp << "Plus_row" << jj << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(1) or patternI_" << tt + 3 << "_" << jj <<
997  "_B(1) or patternI_" << tt + 1 << "_" << jj - 2 << "_D(1) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(1) or patternI_" << tt + 1
998  << "_" << jj - 4 << "_G(1) or patternI_" << tt + 3 << "_" << jj - 4 << "_H(1);" << endl;
999  outputpp << "Plus_row" << jj + 1 << "(" << tt + 1 << ")<=patternI_" << tt + 1 << "_" << jj << "_A(2) or patternI_" << tt + 3 << "_"
1000  << jj << "_B(2) or patternI_" << tt + 1 << "_" << jj - 2 << "_D(2) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(2) or patternI_"
1001  << tt + 1 << "_" << jj - 4 << "_G(2) or patternI_" << tt + 3 << "_" << jj - 4 << "_H(2);" << endl;
1002  outputpp << "Plus_row" << jj + 1 << "(" << tt << ")<=patternI_" << tt + 1 << "_" << jj << "_A(3) or patternI_" << tt + 3 << "_" <<
1003  jj << "_B(3) or patternI_" << tt + 1 << "_" << jj - 2 << "_D(3) or patternI_" << tt + 3 << "_" << jj - 2 << "_E(3) or patternI_" <<
1004  tt + 1 << "_" << jj - 4 << "_G(3) or patternI_" << tt + 3 << "_" << jj - 4 << "_H(3);" << endl;
1005  outputpp << " " << endl;
1006  }
1007  }
1008  }
1009  }
1010  }
1011 
1012 
1013  outputp << "end Behavioral;" << endl;
1014  outputpp << "end Behavioral;" << endl;
1015  outputp << " " << endl;
1016  outputpp << " " << endl;
1017  return 0;
1018 }
main
int main(int argc, char **argv)
Run all tests.
Definition: test_main.cc:77