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