@@ -9,6 +9,28 @@ namespace l1t {
99 uint64_t set_high_bits (const std::vector<int >& lo_hi_pair);
1010 Mask get_ly_mask (const patdef_t & ly_pat, int max_span);
1111
12+ /*
13+ create_pat_ly(low, high) returns a vector of hi_lo_t objects with the given low and high values.
14+ low and high are relative distances from the center of the pattern (strip 18 for max_span=37).
15+
16+ For example, create_pat_ly(0.2, 0.9) returns a vector of hi_lo_t objects with the following values:
17+ { [ hi: 0, lo: -3 ], [ hi: 0, lo: -2 ], [ hi: 0, lo: -1 ], [ hi: 1, lo: 0 ], [ hi: 2, lo: 0 ], [ hi: 3, lo: 0 ]}
18+
19+ patdef_t(id, layers) saves the pattern ID and the vector of hi_lo_t objects for each layer.
20+
21+ get_ly_mask(patdef_f pat, int pat_width) returns a Mask object with the given pattern and max_span values.
22+ example:
23+
24+ get_ly_mask(pat_l, 37) returns a Mask object with the following values:
25+ Pattern ID: 16
26+ {0b0000000000000000001111000000000000000, // ly5
27+ 0b0000000000000000001110000000000000000, // ly4
28+ 0b0000000000000000001100000000000000000, // ly3
29+ 0b0000000000000000011000000000000000000, // ly2
30+ 0b0000000000000000111000000000000000000, // ly1
31+ 0b0000000000000001111000000000000000000} // ly0
32+ */
33+
1234 const patdef_t pat_straight = patdef_t (17 , create_pat_ly(-0.4 , 0.4 ));
1335 const patdef_t pat_l = patdef_t (16 , create_pat_ly(0.2 , 0.9 ));
1436 const patdef_t pat_r = mirror_patdef(pat_l, pat_l.id - 1 );
@@ -46,4 +68,261 @@ namespace l1t {
4668 get_ly_mask (pat_r8, 37 )};
4769 } // namespace me0
4870} // namespace l1t
49- #endif
71+ #endif
72+
73+ /*
74+ patlist:
75+ Pattern ID: 17
76+ ly5 -----------------XXX-----------------
77+
78+ ly4 -----------------XXX-----------------
79+
80+ ly3 -----------------XXX-----------------
81+
82+ ly2 -----------------XXX-----------------
83+
84+ ly1 -----------------XXX-----------------
85+
86+ ly0 -----------------XXX-----------------
87+
88+
89+
90+ Pattern ID: 16
91+ ly5 ------------------XXXX---------------
92+
93+ ly4 ------------------XXX----------------
94+
95+ ly3 ------------------XX-----------------
96+
97+ ly2 -----------------XX------------------
98+
99+ ly1 ----------------XXX------------------
100+
101+ ly0 ---------------XXXX------------------
102+
103+
104+
105+ Pattern ID: 15
106+ ly5 ---------------XXXX------------------
107+
108+ ly4 ----------------XXX------------------
109+
110+ ly3 -----------------XX------------------
111+
112+ ly2 ------------------XX-----------------
113+
114+ ly1 ------------------XXX----------------
115+
116+ ly0 ------------------XXXX---------------
117+
118+
119+
120+ Pattern ID: 14
121+ ly5 --------------------XXXX-------------
122+
123+ ly4 -------------------XXX---------------
124+
125+ ly3 ------------------XX-----------------
126+
127+ ly2 -----------------XX------------------
128+
129+ ly1 ---------------XXX-------------------
130+
131+ ly0 -------------XXXX--------------------
132+
133+
134+
135+ Pattern ID: 13
136+ ly5 -------------XXXX--------------------
137+
138+ ly4 ---------------XXX-------------------
139+
140+ ly3 -----------------XX------------------
141+
142+ ly2 ------------------XX-----------------
143+
144+ ly1 -------------------XXX---------------
145+
146+ ly0 --------------------XXXX-------------
147+
148+
149+
150+ Pattern ID: 12
151+ ly5 ---------------------XXXX------------
152+
153+ ly4 --------------------XXX--------------
154+
155+ ly3 ------------------XXX----------------
156+
157+ ly2 ----------------XXX------------------
158+
159+ ly1 --------------XXX--------------------
160+
161+ ly0 ------------XXXX---------------------
162+
163+
164+
165+ Pattern ID: 11
166+ ly5 ------------XXXX---------------------
167+
168+ ly4 --------------XXX--------------------
169+
170+ ly3 ----------------XXX------------------
171+
172+ ly2 ------------------XXX----------------
173+
174+ ly1 --------------------XXX--------------
175+
176+ ly0 ---------------------XXXX------------
177+
178+
179+
180+ Pattern ID: 10
181+ ly5 -----------------------XXXX----------
182+
183+ ly4 ---------------------XXX-------------
184+
185+ ly3 -------------------XX----------------
186+
187+ ly2 ----------------XX-------------------
188+
189+ ly1 -------------XXX---------------------
190+
191+ ly0 ----------XXXX-----------------------
192+
193+
194+
195+ Pattern ID: 9
196+ ly5 ----------XXXX-----------------------
197+
198+ ly4 -------------XXX---------------------
199+
200+ ly3 ----------------XX-------------------
201+
202+ ly2 -------------------XX----------------
203+
204+ ly1 ---------------------XXX-------------
205+
206+ ly0 -----------------------XXXX----------
207+
208+
209+
210+ Pattern ID: 8
211+ ly5 ------------------------XXXXX--------
212+
213+ ly4 ----------------------XXX------------
214+
215+ ly3 -------------------XX----------------
216+
217+ ly2 ----------------XX-------------------
218+
219+ ly1 ------------XXX----------------------
220+
221+ ly0 --------XXXXX------------------------
222+
223+
224+
225+ Pattern ID: 7
226+ ly5 --------XXXXX------------------------
227+
228+ ly4 ------------XXX----------------------
229+
230+ ly3 ----------------XX-------------------
231+
232+ ly2 -------------------XX----------------
233+
234+ ly1 ----------------------XXX------------
235+
236+ ly0 ------------------------XXXXX--------
237+
238+
239+
240+ Pattern ID: 6
241+ ly5 --------------------------XXXXX------
242+
243+ ly4 -----------------------XXXX----------
244+
245+ ly3 -------------------XXX---------------
246+
247+ ly2 ---------------XXX-------------------
248+
249+ ly1 ----------XXXX-----------------------
250+
251+ ly0 ------XXXXX--------------------------
252+
253+
254+
255+ Pattern ID: 5
256+ ly5 ------XXXXX--------------------------
257+
258+ ly4 ----------XXXX-----------------------
259+
260+ ly3 ---------------XXX-------------------
261+
262+ ly2 -------------------XXX---------------
263+
264+ ly1 -----------------------XXXX----------
265+
266+ ly0 --------------------------XXXXX------
267+
268+
269+
270+ Pattern ID: 4
271+ ly5 ----------------------------XXXXX----
272+
273+ ly4 ------------------------XXXX---------
274+
275+ ly3 --------------------XX---------------
276+
277+ ly2 ---------------XX--------------------
278+
279+ ly1 ---------XXXX------------------------
280+
281+ ly0 ----XXXXX----------------------------
282+
283+
284+
285+ Pattern ID: 3
286+ ly5 ----XXXXX----------------------------
287+
288+ ly4 ---------XXXX------------------------
289+
290+ ly3 ---------------XX--------------------
291+
292+ ly2 --------------------XX---------------
293+
294+ ly1 ------------------------XXXX---------
295+
296+ ly0 ----------------------------XXXXX----
297+
298+
299+
300+ Pattern ID: 2
301+ ly5 -------------------------------XXXXXX
302+
303+ ly4 --------------------------XXXX-------
304+
305+ ly3 --------------------XXX--------------
306+
307+ ly2 --------------XXX--------------------
308+
309+ ly1 -------XXXX--------------------------
310+
311+ ly0 XXXXXX-------------------------------
312+
313+
314+
315+ Pattern ID: 1
316+ ly5 XXXXXX-------------------------------
317+
318+ ly4 -------XXXX--------------------------
319+
320+ ly3 --------------XXX--------------------
321+
322+ ly2 --------------------XXX--------------
323+
324+ ly1 --------------------------XXXX-------
325+
326+ ly0 -------------------------------XXXXXX
327+
328+ */
0 commit comments