blob: d04ab40d20606a4a65dfa14fcf57fd237030300b [file] [log] [blame]
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001+---------------------------------------------------------------------+
2| Log file: mau.log |
3| Compiler version: 5.1.0 (fca32d1) |
Carmelo Cascone8aa05482017-09-12 13:21:59 +02004| Created on: Tue Sep 12 11:15:53 2017 |
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005+---------------------------------------------------------------------+
6
7Match Table table0 did not specify the number of entries required. A default value (512) will be used.
8Match Table ecmp_group_table did not specify the number of entries required. A default value (1024) will be used.
9Match Entry Table table0 has already been associated with stat Table table0_counter.
10Match Entry Table ecmp_group_table has already been associated with stat Table ecmp_group_table_counter.
Brian O'Connora6862e02017-09-08 01:17:39 -070011Cannot implement table0 in phase 0 resources because table uses side effect tables.
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012Match Table table0 did not specify the number of entries required. A default value (512) will be used.
13Match Table ecmp_group_table did not specify the number of entries required. A default value (1024) will be used.
14Match Entry Table table0 has already been associated with stat Table table0_counter.
15Match Entry Table ecmp_group_table has already been associated with stat Table ecmp_group_table_counter.
Brian O'Connora6862e02017-09-08 01:17:39 -070016Cannot implement table0 in phase 0 resources because table uses side effect tables.
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017Match Table table0 did not specify the number of entries required. A default value (512) will be used.
18Match Table ecmp_group_table did not specify the number of entries required. A default value (1024) will be used.
Brian O'Connora6862e02017-09-08 01:17:39 -070019POV/metadata bridge containers added between ingress/egress: [0]
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020Metadata bridge_ingress_intrinsic containers added between ingress/egress: [128]
21Match Entry Table table0 has already been associated with stat Table table0_counter.
22Match Entry Table ecmp_group_table has already been associated with stat Table ecmp_group_table_counter.
23Match table ingress_port_count_table has no match key fields
Brian O'Connora6862e02017-09-08 01:17:39 -070024Cannot use hash-action for table ingress_port_count_table with no key because the number of entries required by side-effect table ingress_port_counter is not a power of 2 -- 510.
Carmelo Casconef1d0a422017-09-07 17:21:46 +020025
26##########################################
27 Call to decide_action_data_placement(stage=0, table=ingress_port_count_table)
28##########################################
29
30
31Max immediate bits used in any action is 0 bits.
32Overhead bit width for table ingress_port_count_table is 22 bits.
33Bits available in overhead for non-essential immediate data is 32 bits.
34~~~~~~~~~~~~~~~~~~~~~
35 Examining placing 0 bits in match overhead
36Overhead bit width for table ingress_port_count_table is 22 bits.
37Overhead SRAMs to use = 97
38 Entries requested = 1024 and match entries get = 0
39ram_size_matrix =
40 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
41 0 0 0 0 0 0 0 0 # 0
42
43immediate_size_matrix =
44 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
45 0 0 0 0 0 0 0 0 # 0
46
47hash_to_phv_matrix =
48 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
49 0 0 0 0 0 0 0 0 # 0
50
51total action ram packing size = [0, 0, 0]
52action_ram_packing:
53 action count_ingress has []
54total action ram packing size = [0, 0, 0]
55action_ram_packing:
56 action count_ingress has []
57total action ram packing size = [0, 0, 0]
58action_ram_packing:
59 action count_ingress has []
60byte_enables = []
61After allocation of 32s, available_slots is []
62final packing is []
63byte_enables = []
64After allocation of 32s, available_slots is []
65final packing is []
66byte_enables = []
67After allocation of 32s, available_slots is []
68final packing is []
69Action Data SRAMs to use = 0
70TODO: Total RAMs use when put 0 bits in match overhead: 97
71TODO: Total RAMs use when put 0 bits in match overhead: 97
72~~~~~~~~~~~~~~~~~~~~~
73 Examining placing 8 bits in match overhead
74~~~~~~~~~~~~~~~~~~~~~
75 Examining placing 16 bits in match overhead
76~~~~~~~~~~~~~~~~~~~~~
77 Examining placing 24 bits in match overhead
78~~~~~~~~~~~~~~~~~~~~~
79 Examining placing 32 bits in match overhead
80
81##########################################
82
83Best Ram Usage is 97 rams
84Best Immediate placement is 0 bits
85Match table egress_port_count_table has no match key fields
Brian O'Connora6862e02017-09-08 01:17:39 -070086Cannot use hash-action for table egress_port_count_table with no key because the number of entries required by side-effect table egress_port_counter is not a power of 2 -- 510.
Carmelo Casconef1d0a422017-09-07 17:21:46 +020087
88##########################################
89 Call to decide_action_data_placement(stage=0, table=egress_port_count_table)
90##########################################
91
92
93Max immediate bits used in any action is 0 bits.
94Overhead bit width for table egress_port_count_table is 20 bits.
95Bits available in overhead for non-essential immediate data is 32 bits.
96~~~~~~~~~~~~~~~~~~~~~
97 Examining placing 0 bits in match overhead
98Overhead bit width for table egress_port_count_table is 20 bits.
99Overhead SRAMs to use = 97
100 Entries requested = 1024 and match entries get = 0
101ram_size_matrix =
102 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
103 0 0 0 0 0 0 0 0 # 0
104
105immediate_size_matrix =
106 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
107 0 0 0 0 0 0 0 0 # 0
108
109hash_to_phv_matrix =
110 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
111 0 0 0 0 0 0 0 0 # 0
112
113total action ram packing size = [0, 0, 0]
114action_ram_packing:
115 action count_egress has []
116total action ram packing size = [0, 0, 0]
117action_ram_packing:
118 action count_egress has []
119total action ram packing size = [0, 0, 0]
120action_ram_packing:
121 action count_egress has []
122byte_enables = []
123After allocation of 32s, available_slots is []
124final packing is []
125byte_enables = []
126After allocation of 32s, available_slots is []
127final packing is []
128byte_enables = []
129After allocation of 32s, available_slots is []
130final packing is []
131Action Data SRAMs to use = 0
132TODO: Total RAMs use when put 0 bits in match overhead: 97
133TODO: Total RAMs use when put 0 bits in match overhead: 97
134~~~~~~~~~~~~~~~~~~~~~
135 Examining placing 8 bits in match overhead
136~~~~~~~~~~~~~~~~~~~~~
137 Examining placing 16 bits in match overhead
138~~~~~~~~~~~~~~~~~~~~~
139 Examining placing 24 bits in match overhead
140~~~~~~~~~~~~~~~~~~~~~
141 Examining placing 32 bits in match overhead
142
143##########################################
144
145Best Ram Usage is 97 rams
146Best Immediate placement is 0 bits
147
148##########################################
Brian O'Connora6862e02017-09-08 01:17:39 -0700149 Call to decide_action_data_placement(stage=0, table=process_packet_out_table)
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200150##########################################
151
152
153Max immediate bits used in any action is 0 bits.
Brian O'Connora6862e02017-09-08 01:17:39 -0700154Overhead bit width for table process_packet_out_table is 0 bits.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200155Bits available in overhead for non-essential immediate data is 32 bits.
156~~~~~~~~~~~~~~~~~~~~~
157 Examining placing 0 bits in match overhead
Brian O'Connora6862e02017-09-08 01:17:39 -0700158Overhead bit width for table process_packet_out_table is 0 bits.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200159Overhead SRAMs to use = 97
160 Entries requested = 1024 and match entries get = 0
161ram_size_matrix =
162 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
163 0 0 0 0 0 0 0 0 # 0
164
165immediate_size_matrix =
166 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
167 0 0 0 0 0 0 0 0 # 0
168
169hash_to_phv_matrix =
170 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
171 0 0 0 0 0 0 0 0 # 0
172
173total action ram packing size = [0, 0, 0]
174action_ram_packing:
Brian O'Connora6862e02017-09-08 01:17:39 -0700175 action _process_packet_out has []
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200176total action ram packing size = [0, 0, 0]
177action_ram_packing:
Brian O'Connora6862e02017-09-08 01:17:39 -0700178 action _process_packet_out has []
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200179total action ram packing size = [0, 0, 0]
180action_ram_packing:
Brian O'Connora6862e02017-09-08 01:17:39 -0700181 action _process_packet_out has []
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200182byte_enables = []
183After allocation of 32s, available_slots is []
184final packing is []
185byte_enables = []
186After allocation of 32s, available_slots is []
187final packing is []
188byte_enables = []
189After allocation of 32s, available_slots is []
190final packing is []
191Action Data SRAMs to use = 0
192TODO: Total RAMs use when put 0 bits in match overhead: 97
193TODO: Total RAMs use when put 0 bits in match overhead: 97
194~~~~~~~~~~~~~~~~~~~~~
195 Examining placing 8 bits in match overhead
196~~~~~~~~~~~~~~~~~~~~~
197 Examining placing 16 bits in match overhead
198~~~~~~~~~~~~~~~~~~~~~
199 Examining placing 24 bits in match overhead
200~~~~~~~~~~~~~~~~~~~~~
201 Examining placing 32 bits in match overhead
202
203##########################################
204
205Best Ram Usage is 97 rams
206Best Immediate placement is 0 bits
207Cannot use hash-action for table ecmp_group_table because it has more than one side-effect table
208
209##########################################
210 Call to decide_action_data_placement(stage=0, table=ecmp_group_table)
211##########################################
212
213
214Max immediate bits used in any action is 0 bits.
215Overhead bit width for table ecmp_group_table is 0 bits.
216Bits available in overhead for non-essential immediate data is 32 bits.
217~~~~~~~~~~~~~~~~~~~~~
218 Examining placing 0 bits in match overhead
219Overhead bit width for table ecmp_group_table is 0 bits.
220Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
221Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200222Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
223Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200224
225---------------------------------------------
226Call to can_any_match_key_fields_be_shared(stage=0, table=ecmp_group_table)
227---------------------------------------------
228Decided way to allocate for table ecmp_group_table in stage 0 WAS non_shared
229Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
230Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200231Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
232Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200233Overhead SRAMs to use = 3
234 Entries requested = 1024 and match entries get = 3072
235ram_size_matrix =
236 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
237 0 0 0 1 0 0 0 0 # 0
238
239immediate_size_matrix =
240 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
241 0 0 0 0 0 0 0 0 # 0
242
243hash_to_phv_matrix =
244 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
245 0 0 0 0 0 0 0 0 # 0
246
247total action ram packing size = [16, 0, 0]
248action_ram_packing:
249 action set_egress_port has [(16, 16, False)]
250total action ram packing size = [16, 0, 0]
251action_ram_packing:
252 action set_egress_port has []
253total action ram packing size = [16, 0, 0]
254action_ram_packing:
255 action set_egress_port has []
256byte_enables = [1, 1]
257Allocating Action Parameter Bus Byte 32 in stage 0 for Byte 0 of 16-bit constant
258Allocating Action Parameter Bus Byte 33 in stage 0 for Byte 1 of 16-bit constant
259Allocating Action Parameter Bus Byte 34 in stage 0 for Byte 0 of 16-bit constant
260Allocating Action Parameter Bus Byte 35 in stage 0 for Byte 1 of 16-bit constant
261After allocation of 32s, available_slots is [(16, 0, 0), (32, 8, 0), (16, 1, 16)]
262final packing is [(16, 16, False)]
263byte_enables = []
264After allocation of 32s, available_slots is []
265final packing is []
266byte_enables = []
267After allocation of 32s, available_slots is []
268final packing is []
269Action Data SRAMs to use = 1
270TODO: Total RAMs use when put 0 bits in match overhead: 4
271TODO: Total RAMs use when put 0 bits in match overhead: 4
272~~~~~~~~~~~~~~~~~~~~~
273 Examining placing 8 bits in match overhead
274~~~~~~~~~~~~~~~~~~~~~
275 Examining placing 16 bits in match overhead
276Overhead bit width for table ecmp_group_table is 0 bits.
277Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
278Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200279Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
280Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200281
282---------------------------------------------
283Call to can_any_match_key_fields_be_shared(stage=0, table=ecmp_group_table)
284---------------------------------------------
285Decided way to allocate for table ecmp_group_table in stage 0 WAS non_shared
286Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
287Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200288Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
289Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200290Overhead SRAMs to use = 3
291 Entries requested = 1024 and match entries get = 3072
292ram_size_matrix =
293 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
294 0 0 0 0 0 0 0 0 # 0
295
296immediate_size_matrix =
297 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
298 0 0 0 1 0 0 0 0 # 0
299
300hash_to_phv_matrix =
301 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
302 0 0 0 0 0 0 0 0 # 0
303
304total action ram packing size = [0, 0, 0]
305action_ram_packing:
306 action set_egress_port has []
307total action ram packing size = [0, 16, 0]
308action_ram_packing:
309 action set_egress_port has [(16, 16, False)]
310total action ram packing size = [0, 16, 0]
311action_ram_packing:
312 action set_egress_port has []
313byte_enables = []
314After allocation of 32s, available_slots is []
315final packing is []
316byte_enables = [1, 1]
317Allocating Action Parameter Bus Byte 32 in stage 0 for Byte 0 of 16-bit constant
318Allocating Action Parameter Bus Byte 33 in stage 0 for Byte 1 of 16-bit constant
319Allocating Action Parameter Bus Byte 34 in stage 0 for Byte 0 of 16-bit constant
320Allocating Action Parameter Bus Byte 35 in stage 0 for Byte 1 of 16-bit constant
321After allocation of 32s, available_slots is [(16, 0, 0), (32, 8, 0), (16, 1, 16)]
322final packing is [(16, 16, False)]
323byte_enables = []
324After allocation of 32s, available_slots is []
325final packing is []
326Action Data SRAMs to use = 0
327TODO: Total RAMs use when put 16 bits in match overhead: 3
328TODO: Total RAMs use when put 16 bits in match overhead: 3
329~~~~~~~~~~~~~~~~~~~~~
330 Examining placing 24 bits in match overhead
331Overhead bit width for table ecmp_group_table is 0 bits.
332Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
333Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200334Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
335Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200336
337---------------------------------------------
338Call to can_any_match_key_fields_be_shared(stage=0, table=ecmp_group_table)
339---------------------------------------------
340Decided way to allocate for table ecmp_group_table in stage 0 WAS non_shared
341Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
342Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200343Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
344Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200345Overhead SRAMs to use = 3
346 Entries requested = 1024 and match entries get = 3072
347ram_size_matrix =
348 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
349 0 0 0 0 0 0 0 0 # 0
350
351immediate_size_matrix =
352 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
353 0 0 0 1 0 0 0 0 # 0
354
355hash_to_phv_matrix =
356 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
357 0 0 0 0 0 0 0 0 # 0
358
359total action ram packing size = [0, 0, 0]
360action_ram_packing:
361 action set_egress_port has []
362total action ram packing size = [0, 16, 0]
363action_ram_packing:
364 action set_egress_port has [(16, 16, False)]
365total action ram packing size = [0, 16, 0]
366action_ram_packing:
367 action set_egress_port has []
368byte_enables = []
369After allocation of 32s, available_slots is []
370final packing is []
371byte_enables = [1, 1]
372Allocating Action Parameter Bus Byte 32 in stage 0 for Byte 0 of 16-bit constant
373Allocating Action Parameter Bus Byte 33 in stage 0 for Byte 1 of 16-bit constant
374Allocating Action Parameter Bus Byte 34 in stage 0 for Byte 0 of 16-bit constant
375Allocating Action Parameter Bus Byte 35 in stage 0 for Byte 1 of 16-bit constant
376After allocation of 32s, available_slots is [(16, 0, 0), (32, 8, 0), (16, 1, 16)]
377final packing is [(16, 16, False)]
378byte_enables = []
379After allocation of 32s, available_slots is []
380final packing is []
381Action Data SRAMs to use = 0
382TODO: Total RAMs use when put 24 bits in match overhead: 3
383TODO: Total RAMs use when put 24 bits in match overhead: 3
384~~~~~~~~~~~~~~~~~~~~~
385 Examining placing 32 bits in match overhead
386Overhead bit width for table ecmp_group_table is 0 bits.
387Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
388Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200389Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
390Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200391
392---------------------------------------------
393Call to can_any_match_key_fields_be_shared(stage=0, table=ecmp_group_table)
394---------------------------------------------
395Decided way to allocate for table ecmp_group_table in stage 0 WAS non_shared
396Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
397Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200398Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
399Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200400Overhead SRAMs to use = 3
401 Entries requested = 1024 and match entries get = 3072
402ram_size_matrix =
403 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
404 0 0 0 0 0 0 0 0 # 0
405
406immediate_size_matrix =
407 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
408 0 0 0 1 0 0 0 0 # 0
409
410hash_to_phv_matrix =
411 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
412 0 0 0 0 0 0 0 0 # 0
413
414total action ram packing size = [0, 0, 0]
415action_ram_packing:
416 action set_egress_port has []
417total action ram packing size = [0, 16, 0]
418action_ram_packing:
419 action set_egress_port has [(16, 16, False)]
420total action ram packing size = [0, 16, 0]
421action_ram_packing:
422 action set_egress_port has []
423byte_enables = []
424After allocation of 32s, available_slots is []
425final packing is []
426byte_enables = [1, 1]
427Allocating Action Parameter Bus Byte 32 in stage 0 for Byte 0 of 16-bit constant
428Allocating Action Parameter Bus Byte 33 in stage 0 for Byte 1 of 16-bit constant
429Allocating Action Parameter Bus Byte 34 in stage 0 for Byte 0 of 16-bit constant
430Allocating Action Parameter Bus Byte 35 in stage 0 for Byte 1 of 16-bit constant
431After allocation of 32s, available_slots is [(16, 0, 0), (32, 8, 0), (16, 1, 16)]
432final packing is [(16, 16, False)]
433byte_enables = []
434After allocation of 32s, available_slots is []
435final packing is []
436Action Data SRAMs to use = 0
437TODO: Total RAMs use when put 32 bits in match overhead: 3
438TODO: Total RAMs use when put 32 bits in match overhead: 3
439
440##########################################
441
442Best Ram Usage is 3 rams
443Best Immediate placement is 16 bits
Brian O'Connora6862e02017-09-08 01:17:39 -0700444Cannot implement table0 in phase 0 resources because table uses side effect tables.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200445
446----------------------------------------------
447Call to Allocate P4 Table with table table0__action__, number_entries = 512, table id = None, and match type = exact
Brian O'Connora6862e02017-09-08 01:17:39 -0700448 Allocating in stage 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200449----------------------------------------------
450
451ram_size_matrix =
452 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
453 0 0 0 1 0 0 0 0 # 0
454 0 0 0 1 0 0 0 0 # 1
Brian O'Connora6862e02017-09-08 01:17:39 -0700455 0 0 0 1 0 0 0 0 # 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200456 0 0 0 0 0 0 0 0 # 3
457
458immediate_size_matrix =
459 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
460 0 0 0 0 0 0 0 0 # 0
461 0 0 0 0 0 0 0 0 # 1
462 0 0 0 0 0 0 0 0 # 2
463 0 0 0 0 0 0 0 0 # 3
464
465hash_to_phv_matrix =
466 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
467 0 0 0 0 0 0 0 0 # 0
468 0 0 0 1 0 0 0 0 # 1
469 0 0 0 0 0 0 0 0 # 2
470 0 0 0 0 0 0 0 0 # 3
471
472total action ram packing size = [16, 0, 0]
473action_ram_packing:
474 action set_egress_port has [(16, 16, False)]
475 action ecmp_group has [(16, 16, False)]
Brian O'Connora6862e02017-09-08 01:17:39 -0700476 action send_to_cpu has [(16, 16, False)]
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200477 action _drop has []
478total action ram packing size = [16, 0, 0]
479action_ram_packing:
480 action set_egress_port has []
481 action ecmp_group has []
482 action send_to_cpu has []
483 action _drop has []
484total action ram packing size = [16, 0, 16]
485action_ram_packing:
486 action set_egress_port has [(16, 0, False)]
487 action ecmp_group has [(16, 16, False)]
488 action send_to_cpu has [(16, 0, False)]
489 action _drop has [(16, 0, False)]
490byte_enables = [1, 1]
Brian O'Connora6862e02017-09-08 01:17:39 -0700491Allocating Action Parameter Bus Byte 32 in stage 0 for Byte 0 of 16-bit constant
492Allocating Action Parameter Bus Byte 33 in stage 0 for Byte 1 of 16-bit constant
493Allocating Action Parameter Bus Byte 34 in stage 0 for Byte 0 of 16-bit constant
494Allocating Action Parameter Bus Byte 35 in stage 0 for Byte 1 of 16-bit constant
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200495After allocation of 32s, available_slots is [(16, 0, 0), (32, 8, 0), (16, 1, 16)]
496final packing is [(16, 16, False)]
497final packing is [(16, 16, False)]
Brian O'Connora6862e02017-09-08 01:17:39 -0700498final packing is [(16, 16, False)]
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200499final packing is []
500byte_enables = []
501After allocation of 32s, available_slots is []
502final packing is []
503final packing is []
504final packing is []
505final packing is []
506byte_enables = [1, 1]
Brian O'Connora6862e02017-09-08 01:17:39 -0700507Allocating Action Parameter Bus Byte 36 in stage 0 for Byte 0 of 16-bit constant
508Allocating Action Parameter Bus Byte 37 in stage 0 for Byte 1 of 16-bit constant
509Allocating Action Parameter Bus Byte 38 in stage 0 for Byte 0 of 16-bit constant
510Allocating Action Parameter Bus Byte 39 in stage 0 for Byte 1 of 16-bit constant
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200511After allocation of 32s, available_slots is [(16, 2, 0), (32, 9, 0), (16, 3, 16)]
512final packing is [(16, 0, False)]
513final packing is [(16, 16, False)]
514final packing is [(16, 0, False)]
515final packing is [(16, 0, False)]
516----------------------------------------------
517 Call to allocate_hash_distribution_units with
518 hash_algorithm = crc32
519 hash_output_width = 32
520 hash_bits_need = 1
521 output_hash_bit_start = 0
522 immediate_bit_positions = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
523 used_for = Immediate
524----------------------------------------------
525available_tuples_sorted_by_parity_bytes_available = [(0, 3, 0), (1, 3, 0)]
526available_tuples_split_sorted_by_parity_bytes_available = []
527Allocate fresh exact match group / hash group
528Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {udp.dstPort[7:0]}.
529Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {udp.dstPort[15:8]}.
530Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {udp.srcPort[7:0]}.
531Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {udp.srcPort[15:8]}.
532Allocating: Byte 4 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ipv4.dstAddr[7:0]}.
533Allocating: Byte 5 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ipv4.dstAddr[15:8]}.
534Allocating: Byte 6 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ipv4.dstAddr[23:16]}.
535Allocating: Byte 7 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ipv4.dstAddr[31:24]}.
536Allocating: Byte 8 is of type exact and member of group 0 (parity group 1) with 16 bytes. for {ipv4.srcAddr[31:24]}.
537Allocating: Byte 9 is of type exact and member of group 0 (parity group 1) with 16 bytes. for {ipv4.srcAddr[15:8]}.
538Allocating: Byte 10 is of type exact and member of group 0 (parity group 1) with 16 bytes. for {ipv4.srcAddr[7:0]}.
539Allocating: Byte 11 is of type exact and member of group 0 (parity group 1) with 16 bytes. for {ipv4.srcAddr[23:16]}.
540-------------------
541Call to _allocate_hash_distribution_and_hash_bits
542 p4_table = table0__action__
543 used_for = Immediate
544 hash_distribution_hash_id = 0
545 hash_group_id = 0
546 hash_bits_in_units = OrderedDict([(0, [0])])
547 address_left_shift = 0
548-------------------
Brian O'Connora6862e02017-09-08 01:17:39 -0700549Allocating Hash Distribution Group 0/0 for table table0__action__ in stage 0.
550Allocating Hash Bit 0 in hash match group 0 for table table0__action__ in stage 0.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200551seed = 0x7bd5c66f
552set the seed to be [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
553Hash Function 0
554hash_bit_0 = udp.dstPort[2] ^ udp.dstPort[8] ^ udp.dstPort[12] ^ udp.dstPort[14] ^ udp.dstPort[15] ^ udp.srcPort[0] ^ udp.srcPort[8] ^ udp.srcPort[9] ^ udp.srcPort[10] ^ udp.srcPort[11] ^ udp.srcPort[12] ^ udp.srcPort[14] ^ udp.srcPort[15] ^ ipv4.dstAddr[3] ^ ipv4.dstAddr[6] ^ ipv4.dstAddr[8] ^ ipv4.dstAddr[9] ^ ipv4.dstAddr[11] ^ ipv4.dstAddr[12] ^ ipv4.dstAddr[17] ^ ipv4.dstAddr[18] ^ ipv4.dstAddr[19] ^ ipv4.dstAddr[22] ^ ipv4.dstAddr[25] ^ ipv4.dstAddr[27] ^ ipv4.dstAddr[28] ^ ipv4.dstAddr[30] ^ ipv4.srcAddr[24] ^ ipv4.srcAddr[25] ^ ipv4.srcAddr[26] ^ ipv4.srcAddr[9] ^ ipv4.srcAddr[15] ^ ipv4.srcAddr[0] ^ ipv4.srcAddr[4] ^ ipv4.srcAddr[5] ^ ipv4.srcAddr[6] ^ ipv4.srcAddr[7] ^ ipv4.srcAddr[17] ^ ipv4.srcAddr[19] ^ ipv4.srcAddr[20] ^ ipv4.srcAddr[21] ^ ipv4.srcAddr[22] ^ ipv4.srcAddr[23] ^ 1
555hash_bit_1 = 0
556hash_bit_2 = 0
557hash_bit_3 = 0
558hash_bit_4 = 0
559hash_bit_5 = 0
560hash_bit_6 = 0
561hash_bit_7 = 0
562hash_bit_8 = 0
563hash_bit_9 = 0
564hash_bit_10 = 0
565hash_bit_11 = 0
566hash_bit_12 = 0
567hash_bit_13 = 0
568hash_bit_14 = 0
569hash_bit_15 = 0
570hash_bit_16 = 0
571hash_bit_17 = 0
572hash_bit_18 = 0
573hash_bit_19 = 0
574hash_bit_20 = 0
575hash_bit_21 = 0
576hash_bit_22 = 0
577hash_bit_23 = 0
578hash_bit_24 = 0
579hash_bit_25 = 0
580hash_bit_26 = 0
581hash_bit_27 = 0
582hash_bit_28 = 0
583hash_bit_29 = 0
584hash_bit_30 = 0
585hash_bit_31 = 0
586hash_bit_32 = 0
587hash_bit_33 = 0
588hash_bit_34 = 0
589hash_bit_35 = 0
590hash_bit_36 = 0
591hash_bit_37 = 0
592hash_bit_38 = 0
593hash_bit_39 = 0
594hash_bit_40 = 0
595hash_bit_41 = 0
596hash_bit_42 = 0
597hash_bit_43 = 0
598hash_bit_44 = 0
599hash_bit_45 = 0
600hash_bit_46 = 0
601hash_bit_47 = 0
602hash_bit_48 = 0
603hash_bit_49 = 0
604hash_bit_50 = 0
605hash_bit_51 = 0
606
Brian O'Connora6862e02017-09-08 01:17:39 -0700607Allocating Action Logical Table ID 0 in stage 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200608
609----------------------------------------------
610Call to Allocate P4 Table with table table0_counter, number_entries = 512, table id = None, and match type = exact
Brian O'Connora6862e02017-09-08 01:17:39 -0700611 Allocating in stage 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200612----------------------------------------------
613
614stat_stage_table referenced: direct
615stat Table Resource Request is:
616SRAM Resource Request for table table0_counter (of type statistics), with 1 ways wants 2 rams.
Brian O'Connora6862e02017-09-08 01:17:39 -0700617Sram Resource Request for P4 table table0_counter with handle 67108867 of type statistics in stage 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200618 table_type : statistics
619 rams_for_width : 1
620 use_stash : False
621 number_ways : 1
622 way #0
623 SRAM Request Group 0
624 rams_for_depth : 2
625 map_rams : 0
626 way_number : 0
627 ram_word_select_bits : 0
628 ram_enable_select_bits : 0
629
630
631----------------------------------------------
632Call to Allocate P4 Table with table table0, number_entries = 512, table id = None, and match type = ternary
Brian O'Connora6862e02017-09-08 01:17:39 -0700633 Allocating in stage 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200634----------------------------------------------
635
Brian O'Connora6862e02017-09-08 01:17:39 -0700636Logical Table ID in stage 0 was not supplied by table placement for table table0.
637Allocating Logical Table ID 0 in stage 0
638Allocating Table Type ID 0 of type ternary in stage 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200639
640-----------------------------------------
641 Call to allocate_ternary_match_key_2
642-----------------------------------------
643Total crossbar bytes to allocate = 16
644Minimum key bytes required by this match key = 16
645Allocating: Byte 133 is of type ternary and member of group 0 with 1 bytes
646 version/valid in nibble 1 for table table0. for version/valid
647{unused[6:0], ig_intr_md.ingress_port[8:8]}.
648Allocating: Byte 128 is of type ternary and member of group 0 with 5 bytes. for {ethernet.srcAddr[7:0]}.
649Allocating: Byte 129 is of type ternary and member of group 0 with 5 bytes. for {ethernet.srcAddr[15:8]}.
650Allocating: Byte 130 is of type ternary and member of group 0 with 5 bytes. for {ethernet.srcAddr[23:16]}.
651Allocating: Byte 131 is of type ternary and member of group 0 with 5 bytes. for {ethernet.srcAddr[31:24]}.
652Allocating: Byte 132 is of type ternary and member of group 0 with 5 bytes. for {ethernet.dstAddr[15:8]}.
653Allocating: Byte 134 is of type ternary and member of group 1 with 5 bytes. for {ethernet.dstAddr[31:24]}.
654Allocating: Byte 135 is of type ternary and member of group 1 with 5 bytes. for {ethernet.dstAddr[39:32]}.
655Allocating: Byte 136 is of type ternary and member of group 1 with 5 bytes. for {ethernet.etherType[7:0]}.
656Allocating: Byte 137 is of type ternary and member of group 1 with 5 bytes. for {ethernet.dstAddr[23:16]}.
657Allocating: Byte 138 is of type ternary and member of group 1 with 5 bytes. for {ethernet.srcAddr[47:40]}.
658Allocating: Byte 139 is of type ternary and member of group 2 with 5 bytes. for {ethernet.etherType[15:8]}.
659Allocating: Byte 140 is of type ternary and member of group 2 with 5 bytes. for {ig_intr_md.ingress_port[7:0]}.
660Allocating: Byte 141 is of type ternary and member of group 2 with 5 bytes. for {ethernet.dstAddr[7:0]}.
661Allocating: Byte 142 is of type ternary and member of group 2 with 5 bytes. for {ethernet.srcAddr[39:32]}.
662Allocating: Byte 143 is of type ternary and member of group 2 with 5 bytes. for {ethernet.dstAddr[47:40]}.
663Formed Ternary Match Key:
664{--unused--[3:0], ethernet.dstAddr[47:40], ethernet.srcAddr[39:32], ethernet.dstAddr[7:0], ig_intr_md.ingress_port[7:0], ethernet.etherType[15:8], --version--[1:0], --unused--[1:0], ethernet.srcAddr[47:40], ethernet.dstAddr[23:16], ethernet.etherType[7:0], ethernet.dstAddr[39:24], --unused--[2:0], ig_intr_md.ingress_port[8:8], ethernet.dstAddr[15:8], ethernet.srcAddr[31:0]}
665
666---------------------------------------------
Brian O'Connora6862e02017-09-08 01:17:39 -0700667Call to can_any_match_key_fields_be_shared(stage=0, table=table0)
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200668---------------------------------------------
Brian O'Connora6862e02017-09-08 01:17:39 -0700669Decided way to allocate for table table0 in stage 0 WAS non_shared
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200670
671-----------------------------------------
672 Call to allocate_ternary_match_key_2
673-----------------------------------------
674Total crossbar bytes to allocate = 16
675Minimum key bytes required by this match key = 16
676Allocating: Byte 133 is of type ternary and member of group 0 with 1 bytes
677 version/valid in nibble 1 for table table0. for version/valid
678{unused[6:0], ig_intr_md.ingress_port[8:8]}.
679Allocating: Byte 128 is of type ternary and member of group 0 with 5 bytes. for {ethernet.srcAddr[7:0]}.
680Allocating: Byte 129 is of type ternary and member of group 0 with 5 bytes. for {ethernet.srcAddr[15:8]}.
681Allocating: Byte 130 is of type ternary and member of group 0 with 5 bytes. for {ethernet.srcAddr[23:16]}.
682Allocating: Byte 131 is of type ternary and member of group 0 with 5 bytes. for {ethernet.srcAddr[31:24]}.
683Allocating: Byte 132 is of type ternary and member of group 0 with 5 bytes. for {ethernet.dstAddr[15:8]}.
684Allocating: Byte 134 is of type ternary and member of group 1 with 5 bytes. for {ethernet.dstAddr[31:24]}.
685Allocating: Byte 135 is of type ternary and member of group 1 with 5 bytes. for {ethernet.dstAddr[39:32]}.
686Allocating: Byte 136 is of type ternary and member of group 1 with 5 bytes. for {ethernet.etherType[7:0]}.
687Allocating: Byte 137 is of type ternary and member of group 1 with 5 bytes. for {ethernet.dstAddr[23:16]}.
688Allocating: Byte 138 is of type ternary and member of group 1 with 5 bytes. for {ethernet.srcAddr[47:40]}.
689Allocating: Byte 139 is of type ternary and member of group 2 with 5 bytes. for {ethernet.etherType[15:8]}.
690Allocating: Byte 140 is of type ternary and member of group 2 with 5 bytes. for {ig_intr_md.ingress_port[7:0]}.
691Allocating: Byte 141 is of type ternary and member of group 2 with 5 bytes. for {ethernet.dstAddr[7:0]}.
692Allocating: Byte 142 is of type ternary and member of group 2 with 5 bytes. for {ethernet.srcAddr[39:32]}.
693Allocating: Byte 143 is of type ternary and member of group 2 with 5 bytes. for {ethernet.dstAddr[47:40]}.
694Formed Ternary Match Key:
695{--unused--[3:0], ethernet.dstAddr[47:40], ethernet.srcAddr[39:32], ethernet.dstAddr[7:0], ig_intr_md.ingress_port[7:0], ethernet.etherType[15:8], --version--[1:0], --unused--[1:0], ethernet.srcAddr[47:40], ethernet.dstAddr[23:16], ethernet.etherType[7:0], ethernet.dstAddr[39:24], --unused--[2:0], ig_intr_md.ingress_port[8:8], ethernet.dstAddr[15:8], ethernet.srcAddr[31:0]}
696Skipping p4_primitive StageModifyFieldFromHashBitsPrimitive from overhead calculation.
697Allocating: Byte 12 is of type exact and member of group 0 (parity group 1) with 16 bytes. for {unused[5:0], --validity_check--packet_out_hdr[0:0], unused[0:0]}.
698Allocating: Byte 12 is of type exact and member of group 0 (parity group 1) with 16 bytes. for {unused[5:0], --validity_check--packet_out_hdr[0:0], unused[0:0]}.
699For action set_egress_port, formed micro_instruction:
700Micro Instruction deposit-field for PHV Container 130 has bit width 23
701 Field Src2 [3:0] : 0x2 (4 bits in instruction bits [3:0])
702 Field Src1 [4:0] : 0x0 (5 bits in instruction bits [8:4])
703 Field Src1i [0:0] : 0x1 (1 bits in instruction bits [9:9])
704 Field opcode [0:0] : 0x1 (1 bits in instruction bits [10:10])
705 Field high_bit [3:0] : 0x8 (4 bits in instruction bits [14:11])
706 Field low_bit_lo [0:0] : 0x0 (1 bits in instruction bits [15:15])
707 Field right_rotate [3:0] : 0x0 (4 bits in instruction bits [19:16])
708 Field low_bit_hi [2:0] : 0x0 (3 bits in instruction bits [22:20])
709
Brian O'Connora6862e02017-09-08 01:17:39 -0700710Allocating Action ALU 2 (16 bits) in stage 0 for match table table0's action set_egress_port
711Allocating VLIW Instruction : 0 in stage 0 for match table table0's action set_egress_port
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200712For action ecmp_group, formed micro_instruction:
713Micro Instruction alu_a for PHV Container 134 has bit width 23
714 Field Src2 [3:0] : 0x6 (4 bits in instruction bits [3:0])
715 Field Src1 [4:0] : 0x0 (5 bits in instruction bits [8:4])
716 Field Src1i [0:0] : 0x1 (1 bits in instruction bits [9:9])
717 Field opcode [9:0] : 0x31e (10 bits in instruction bits [19:10])
718 Field unused [2:0] : 0x0 (3 bits in instruction bits [22:20])
719
720For action ecmp_group, formed micro_instruction:
721Micro Instruction alu_a for PHV Container 135 has bit width 23
722 Field Src2 [3:0] : 0x7 (4 bits in instruction bits [3:0])
723 Field Src1 [4:0] : 0x2 (5 bits in instruction bits [8:4])
724 Field Src1i [0:0] : 0x1 (1 bits in instruction bits [9:9])
725 Field opcode [9:0] : 0x31e (10 bits in instruction bits [19:10])
726 Field unused [2:0] : 0x0 (3 bits in instruction bits [22:20])
727
Brian O'Connora6862e02017-09-08 01:17:39 -0700728Allocating Action ALU 6 (16 bits) in stage 0 for match table table0's action ecmp_group
729Allocating Action ALU 7 (16 bits) in stage 0 for match table table0's action ecmp_group
730Allocating VLIW Instruction : 1 in stage 0 for match table table0's action ecmp_group
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200731For action send_to_cpu, formed micro_instruction:
Brian O'Connora6862e02017-09-08 01:17:39 -0700732Micro Instruction deposit-field for PHV Container 130 has bit width 23
733 Field Src2 [3:0] : 0x2 (4 bits in instruction bits [3:0])
734 Field Src1 [4:0] : 0x0 (5 bits in instruction bits [8:4])
735 Field Src1i [0:0] : 0x1 (1 bits in instruction bits [9:9])
736 Field opcode [0:0] : 0x1 (1 bits in instruction bits [10:10])
737 Field high_bit [3:0] : 0x8 (4 bits in instruction bits [14:11])
738 Field low_bit_lo [0:0] : 0x0 (1 bits in instruction bits [15:15])
739 Field right_rotate [3:0] : 0x0 (4 bits in instruction bits [19:16])
740 Field low_bit_hi [2:0] : 0x0 (3 bits in instruction bits [22:20])
741
742For action send_to_cpu, formed micro_instruction:
743Micro Instruction deposit-field for PHV Container 67 has bit width 20
744 Field Src2 [3:0] : 0x3 (4 bits in instruction bits [3:0])
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200745 Field Src1 [4:0] : 0x19 (5 bits in instruction bits [8:4])
746 Field Src1i [0:0] : 0x0 (1 bits in instruction bits [9:9])
747 Field opcode [0:0] : 0x1 (1 bits in instruction bits [10:10])
748 Field high_bit [2:0] : 0x0 (3 bits in instruction bits [13:11])
749 Field low_bit_lo [1:0] : 0x0 (2 bits in instruction bits [15:14])
750 Field right_rotate [2:0] : 0x0 (3 bits in instruction bits [18:16])
751 Field low_bit_hi [0:0] : 0x0 (1 bits in instruction bits [19:19])
752
Brian O'Connora6862e02017-09-08 01:17:39 -0700753For action send_to_cpu, formed micro_instruction:
754Micro Instruction deposit-field for PHV Container 129 has bit width 23
755 Field Src2 [3:0] : 0x1 (4 bits in instruction bits [3:0])
756 Field Src1 [4:0] : 0x0 (5 bits in instruction bits [8:4])
757 Field Src1i [0:0] : 0x0 (1 bits in instruction bits [9:9])
758 Field opcode [0:0] : 0x1 (1 bits in instruction bits [10:10])
759 Field high_bit [3:0] : 0xf (4 bits in instruction bits [14:11])
760 Field low_bit_lo [0:0] : 0x1 (1 bits in instruction bits [15:15])
761 Field right_rotate [3:0] : 0x9 (4 bits in instruction bits [19:16])
762 Field low_bit_hi [2:0] : 0x3 (3 bits in instruction bits [22:20])
763
764Allocating Action ALU 2 (16 bits) in stage 0 for match table table0's action send_to_cpu
765Allocating Action ALU 3 (8 bits) in stage 0 for match table table0's action send_to_cpu
766Allocating Action ALU 1 (16 bits) in stage 0 for match table table0's action send_to_cpu
767Allocating VLIW Instruction : 1 in stage 0 for match table table0's action send_to_cpu
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200768For action _drop, formed micro_instruction:
Brian O'Connora6862e02017-09-08 01:17:39 -0700769Micro Instruction deposit-field for PHV Container 68 has bit width 20
770 Field Src2 [3:0] : 0x4 (4 bits in instruction bits [3:0])
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200771 Field Src1 [4:0] : 0x19 (5 bits in instruction bits [8:4])
772 Field Src1i [0:0] : 0x0 (1 bits in instruction bits [9:9])
773 Field opcode [0:0] : 0x1 (1 bits in instruction bits [10:10])
774 Field high_bit [2:0] : 0x7 (3 bits in instruction bits [13:11])
775 Field low_bit_lo [1:0] : 0x1 (2 bits in instruction bits [15:14])
776 Field right_rotate [2:0] : 0x3 (3 bits in instruction bits [18:16])
777 Field low_bit_hi [0:0] : 0x1 (1 bits in instruction bits [19:19])
778
Brian O'Connora6862e02017-09-08 01:17:39 -0700779Allocating Action ALU 4 (8 bits) in stage 0 for match table table0's action _drop
780Allocating VLIW Instruction : 2 in stage 0 for match table table0's action _drop
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200781Ternary table Pack Format =
782Pack Format:
783 table_word_width: 141
784 memory_word_width: 47
785 entries_per_table_word: 1
786 number_memory_units_per_table_word: 3
787 entry_list: [
788 entry_number : 0
789 field_list : [
790 ]
791 Field --tcam_parity_2-- [1:0] : in bits [140:139]
792 Field --unused-- [3:0] : in bits [138:135]
793 Field ethernet.dstAddr [47:40] : in bits [134:127]
794 Field ethernet.srcAddr [39:32] : in bits [126:119]
795 Field ethernet.dstAddr [7:0] : in bits [118:111]
796 Field ig_intr_md.ingress_port [7:0] : in bits [110:103]
797 Field ethernet.etherType [15:8] : in bits [102:95]
798 Field --tcam_payload_2-- [0:0] : in bits [94:94]
799 Field --tcam_parity_1-- [1:0] : in bits [93:92]
800 Field --version-- [1:0] : in bits [91:90]
801 Field --unused-- [1:0] : in bits [89:88]
802 Field ethernet.srcAddr [47:40] : in bits [87:80]
803 Field ethernet.dstAddr [23:16] : in bits [79:72]
804 Field ethernet.etherType [7:0] : in bits [71:64]
805 Field ethernet.dstAddr [39:24] : in bits [63:48]
806 Field --tcam_payload_1-- [0:0] : in bits [47:47]
807 Field --tcam_parity_0-- [1:0] : in bits [46:45]
808 Field --unused-- [2:0] : in bits [44:42]
809 Field ig_intr_md.ingress_port [8:8] : in bits [41:41]
810 Field ethernet.dstAddr [15:8] : in bits [40:33]
811 Field ethernet.srcAddr [31:0] : in bits [32:1]
812 Field --tcam_payload_0-- [0:0] : in bits [0:0]
813]
814
815
816----------------------------------------------
Brian O'Connora6862e02017-09-08 01:17:39 -0700817Call to Allocate P4 Table with table process_packet_out_table__action__, number_entries = 1024, table id = None, and match type = exact
818 Allocating in stage 0
819----------------------------------------------
820
821ram_size_matrix =
822 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
823 0 0 0 0 0 0 0 0 # 0
824
825immediate_size_matrix =
826 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
827 0 0 0 0 0 0 0 0 # 0
828
829hash_to_phv_matrix =
830 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
831 0 0 0 0 0 0 0 0 # 0
832
833total action ram packing size = [0, 0, 0]
834action_ram_packing:
835 action _process_packet_out has []
836total action ram packing size = [0, 0, 0]
837action_ram_packing:
838 action _process_packet_out has []
839total action ram packing size = [0, 0, 0]
840action_ram_packing:
841 action _process_packet_out has []
842byte_enables = []
843After allocation of 32s, available_slots is []
844final packing is []
845byte_enables = []
846After allocation of 32s, available_slots is []
847final packing is []
848byte_enables = []
849After allocation of 32s, available_slots is []
850final packing is []
851Allocating Action Logical Table ID 1 in stage 0
852
853----------------------------------------------
854Call to Allocate P4 Table with table process_packet_out_table, number_entries = 1024, table id = None, and match type = exact
855 Allocating in stage 0
856----------------------------------------------
857
858Logical Table ID in stage 0 was not supplied by table placement for table process_packet_out_table.
859Allocating Logical Table ID 1 in stage 0
860Allocating Table Type ID 0 of type exact in stage 0
861Match Overhead:
862 Field --version_valid-- [3:0] (4 bits)
863
864Logical Table ID in stage 0 was not supplied by table placement for table process_packet_out_table.
865Allocating Logical Table ID 1 in stage 0
866Allocating Table Type ID 0 of type exact in stage 0
867Allocating: Byte 12 is of type exact and member of group 0 (parity group 1) with 16 bytes. for {unused[5:0], --validity_check--packet_out_hdr[0:0], unused[0:0]}.
868Match Table Resource Request is:
869SRAM Resource Request for table process_packet_out_table (of type match), with 0 ways wants 0 rams.
870Allocating: Byte 12 is of type exact and member of group 0 (parity group 1) with 16 bytes. for {unused[5:0], --validity_check--packet_out_hdr[0:0], unused[0:0]}.
871For action _process_packet_out, formed micro_instruction:
872Micro Instruction deposit-field for PHV Container 130 has bit width 23
873 Field Src2 [3:0] : 0x2 (4 bits in instruction bits [3:0])
874 Field Src1 [4:0] : 0x1 (5 bits in instruction bits [8:4])
875 Field Src1i [0:0] : 0x0 (1 bits in instruction bits [9:9])
876 Field opcode [0:0] : 0x1 (1 bits in instruction bits [10:10])
877 Field high_bit [3:0] : 0x8 (4 bits in instruction bits [14:11])
878 Field low_bit_lo [0:0] : 0x0 (1 bits in instruction bits [15:15])
879 Field right_rotate [3:0] : 0x7 (4 bits in instruction bits [19:16])
880 Field low_bit_hi [2:0] : 0x0 (3 bits in instruction bits [22:20])
881
882For action _process_packet_out, formed micro_instruction:
883Micro Instruction deposit-field for PHV Container 67 has bit width 20
884 Field Src2 [3:0] : 0x3 (4 bits in instruction bits [3:0])
885 Field Src1 [4:0] : 0x18 (5 bits in instruction bits [8:4])
886 Field Src1i [0:0] : 0x0 (1 bits in instruction bits [9:9])
887 Field opcode [0:0] : 0x1 (1 bits in instruction bits [10:10])
888 Field high_bit [2:0] : 0x1 (3 bits in instruction bits [13:11])
889 Field low_bit_lo [1:0] : 0x1 (2 bits in instruction bits [15:14])
890 Field right_rotate [2:0] : 0x7 (3 bits in instruction bits [18:16])
891 Field low_bit_hi [0:0] : 0x0 (1 bits in instruction bits [19:19])
892
893Allocating Action ALU 2 (16 bits) in stage 0 for match table process_packet_out_table's action _process_packet_out
894Allocating Action ALU 3 (8 bits) in stage 0 for match table process_packet_out_table's action _process_packet_out
895Allocating VLIW Instruction : 2 in stage 0 for match table process_packet_out_table's action _process_packet_out
896
897----------------------------------------------
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200898Call to Allocate P4 Table with table ecmp_group_table__action__, number_entries = 1024, table id = None, and match type = exact
Brian O'Connora6862e02017-09-08 01:17:39 -0700899 Allocating in stage 1
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200900----------------------------------------------
901
902ram_size_matrix =
903 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
904 0 0 0 0 0 0 0 0 # 0
905
906immediate_size_matrix =
907 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
908 0 0 0 1 0 0 0 0 # 0
909
910hash_to_phv_matrix =
911 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
912 0 0 0 0 0 0 0 0 # 0
913
914total action ram packing size = [0, 0, 0]
915action_ram_packing:
916 action set_egress_port has []
917total action ram packing size = [0, 16, 0]
918action_ram_packing:
919 action set_egress_port has [(16, 16, False)]
920total action ram packing size = [0, 16, 0]
921action_ram_packing:
922 action set_egress_port has []
923byte_enables = []
924After allocation of 32s, available_slots is []
925final packing is []
926byte_enables = [1, 1]
Brian O'Connora6862e02017-09-08 01:17:39 -0700927Allocating Action Parameter Bus Byte 32 in stage 1 for Byte 0 of 16-bit constant
928Allocating Action Parameter Bus Byte 33 in stage 1 for Byte 1 of 16-bit constant
929Allocating Action Parameter Bus Byte 34 in stage 1 for Byte 0 of 16-bit constant
930Allocating Action Parameter Bus Byte 35 in stage 1 for Byte 1 of 16-bit constant
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200931After allocation of 32s, available_slots is [(16, 0, 0), (32, 8, 0), (16, 1, 16)]
932final packing is [(16, 16, False)]
933byte_enables = []
934After allocation of 32s, available_slots is []
935final packing is []
Brian O'Connora6862e02017-09-08 01:17:39 -0700936Allocating Action Logical Table ID 0 in stage 1
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200937
938----------------------------------------------
939Call to Allocate P4 Table with table ecmp_group_table_counter, number_entries = 1024, table id = None, and match type = exact
Brian O'Connora6862e02017-09-08 01:17:39 -0700940 Allocating in stage 1
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200941----------------------------------------------
942
943stat_stage_table referenced: direct
944stat Table Resource Request is:
945SRAM Resource Request for table ecmp_group_table_counter (of type statistics), with 1 ways wants 2 rams.
Brian O'Connora6862e02017-09-08 01:17:39 -0700946Sram Resource Request for P4 table ecmp_group_table_counter with handle 67108868 of type statistics in stage 1
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200947 table_type : statistics
948 rams_for_width : 1
949 use_stash : False
950 number_ways : 1
951 way #0
952 SRAM Request Group 0
953 rams_for_depth : 2
954 map_rams : 0
955 way_number : 0
956 ram_word_select_bits : 0
957 ram_enable_select_bits : 0
958
959
960----------------------------------------------
961Call to Allocate P4 Table with table ecmp_group_table, number_entries = 1024, table id = None, and match type = exact
Brian O'Connora6862e02017-09-08 01:17:39 -0700962 Allocating in stage 1
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200963----------------------------------------------
964
Brian O'Connora6862e02017-09-08 01:17:39 -0700965Logical Table ID in stage 1 was not supplied by table placement for table ecmp_group_table.
966Allocating Logical Table ID 0 in stage 1
967Allocating Table Type ID 0 of type exact in stage 1
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200968Match Overhead:
969 Field --version_valid-- [3:0] (4 bits)
970 Field --immediate-- [15:0] (16 bits)
971
972Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
973Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200974Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
975Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200976
977---------------------------------------------
Brian O'Connora6862e02017-09-08 01:17:39 -0700978Call to can_any_match_key_fields_be_shared(stage=1, table=ecmp_group_table)
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200979---------------------------------------------
Brian O'Connora6862e02017-09-08 01:17:39 -0700980Decided way to allocate for table ecmp_group_table in stage 1 WAS non_shared
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200981Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[7:0]}.
982Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.selector[15:8]}.
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200983Allocating: Byte 2 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[7:0]}.
984Allocating: Byte 3 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ecmp_metadata.group_id[15:8]}.
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200985Packing choices are:
986Choice 0
987 entries_per_table_word : 1
988 rams_for_width : 1
989 total_rams_need : 1
990 utilization : 0.328125
991 total_logical_entries_get : 1024
992 total_logical_entries_want : 1024
993Choice 1
994 entries_per_table_word : 2
995 rams_for_width : 1
996 total_rams_need : 1
997 utilization : 0.656250
998 total_logical_entries_get : 2048
999 total_logical_entries_want : 1024
1000Choice 2
1001 entries_per_table_word : 3
1002 rams_for_width : 2
1003 total_rams_need : 2
1004 utilization : 0.492188
1005 total_logical_entries_get : 3072
1006 total_logical_entries_want : 1024
1007Choice 3
1008 entries_per_table_word : 4
1009 rams_for_width : 2
1010 total_rams_need : 2
1011 utilization : 0.656250
1012 total_logical_entries_get : 4096
1013 total_logical_entries_want : 1024
1014Choice 4
1015 entries_per_table_word : 5
1016 rams_for_width : 2
1017 total_rams_need : 2
1018 utilization : 0.820312
1019 total_logical_entries_get : 5120
1020 total_logical_entries_want : 1024
1021Choice 5
1022 entries_per_table_word : 6
1023 rams_for_width : 3
1024 total_rams_need : 3
1025 utilization : 0.656250
1026 total_logical_entries_get : 6144
1027 total_logical_entries_want : 1024
1028Choice 6
1029 entries_per_table_word : 7
1030 rams_for_width : 3
1031 total_rams_need : 3
1032 utilization : 0.765625
1033 total_logical_entries_get : 7168
1034 total_logical_entries_want : 1024
1035Choice 7
1036 entries_per_table_word : 8
1037 rams_for_width : 3
1038 total_rams_need : 3
1039 utilization : 0.875000
1040 total_logical_entries_get : 8192
1041 total_logical_entries_want : 1024
1042Choice 8
1043 entries_per_table_word : 9
1044 rams_for_width : 4
1045 total_rams_need : 4
1046 utilization : 0.738281
1047 total_logical_entries_get : 9216
1048 total_logical_entries_want : 1024
1049First choice is to pack 1 entries per table word (1 rams)
1050--------------------------------------
1051Attempting packing (attempt #1):
1052--------------------------------------
1053 number entries per table word: 1
1054 rams_for_width: 1
1055 total_rams: 1
1056 utilization: 0.328125
1057 total_ram_blocks_need_for_depth: 1
1058This will be split into a 3-way table distributed as [1, 1, 1].
1059Total number of hash functions need is 1.
1060Allocating Hash Bit 0 in hash match group 0 for match table ecmp_group_table's hash way 0.
1061Allocating Hash Bit 1 in hash match group 0 for match table ecmp_group_table's hash way 0.
1062Allocating Hash Bit 2 in hash match group 0 for match table ecmp_group_table's hash way 0.
1063Allocating Hash Bit 3 in hash match group 0 for match table ecmp_group_table's hash way 0.
1064Allocating Hash Bit 4 in hash match group 0 for match table ecmp_group_table's hash way 0.
1065Allocating Hash Bit 5 in hash match group 0 for match table ecmp_group_table's hash way 0.
1066Allocating Hash Bit 6 in hash match group 0 for match table ecmp_group_table's hash way 0.
1067Allocating Hash Bit 7 in hash match group 0 for match table ecmp_group_table's hash way 0.
1068Allocating Hash Bit 8 in hash match group 0 for match table ecmp_group_table's hash way 0.
1069Allocating Hash Bit 9 in hash match group 0 for match table ecmp_group_table's hash way 0.
1070Allocating Hash Bit 10 in hash match group 0 for match table ecmp_group_table's hash way 1.
1071Allocating Hash Bit 11 in hash match group 0 for match table ecmp_group_table's hash way 1.
1072Allocating Hash Bit 12 in hash match group 0 for match table ecmp_group_table's hash way 1.
1073Allocating Hash Bit 13 in hash match group 0 for match table ecmp_group_table's hash way 1.
1074Allocating Hash Bit 14 in hash match group 0 for match table ecmp_group_table's hash way 1.
1075Allocating Hash Bit 15 in hash match group 0 for match table ecmp_group_table's hash way 1.
1076Allocating Hash Bit 16 in hash match group 0 for match table ecmp_group_table's hash way 1.
1077Allocating Hash Bit 17 in hash match group 0 for match table ecmp_group_table's hash way 1.
1078Allocating Hash Bit 18 in hash match group 0 for match table ecmp_group_table's hash way 1.
1079Allocating Hash Bit 19 in hash match group 0 for match table ecmp_group_table's hash way 1.
1080Allocating Hash Bit 20 in hash match group 0 for match table ecmp_group_table's hash way 2.
1081Allocating Hash Bit 21 in hash match group 0 for match table ecmp_group_table's hash way 2.
1082Allocating Hash Bit 22 in hash match group 0 for match table ecmp_group_table's hash way 2.
1083Allocating Hash Bit 23 in hash match group 0 for match table ecmp_group_table's hash way 2.
1084Allocating Hash Bit 24 in hash match group 0 for match table ecmp_group_table's hash way 2.
1085Allocating Hash Bit 25 in hash match group 0 for match table ecmp_group_table's hash way 2.
1086Allocating Hash Bit 26 in hash match group 0 for match table ecmp_group_table's hash way 2.
1087Allocating Hash Bit 27 in hash match group 0 for match table ecmp_group_table's hash way 2.
1088Allocating Hash Bit 28 in hash match group 0 for match table ecmp_group_table's hash way 2.
1089Allocating Hash Bit 29 in hash match group 0 for match table ecmp_group_table's hash way 2.
1090Match Table Resource Request is:
1091SRAM Resource Request for table ecmp_group_table (of type match), with 3 ways wants 3 rams.
1092--------
1093set the seed to be [0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
1094For action set_egress_port, formed micro_instruction:
1095Micro Instruction deposit-field for PHV Container 130 has bit width 23
1096 Field Src2 [3:0] : 0x2 (4 bits in instruction bits [3:0])
1097 Field Src1 [4:0] : 0x0 (5 bits in instruction bits [8:4])
1098 Field Src1i [0:0] : 0x1 (1 bits in instruction bits [9:9])
1099 Field opcode [0:0] : 0x1 (1 bits in instruction bits [10:10])
1100 Field high_bit [3:0] : 0x8 (4 bits in instruction bits [14:11])
1101 Field low_bit_lo [0:0] : 0x0 (1 bits in instruction bits [15:15])
1102 Field right_rotate [3:0] : 0x0 (4 bits in instruction bits [19:16])
1103 Field low_bit_hi [2:0] : 0x0 (3 bits in instruction bits [22:20])
1104
Brian O'Connora6862e02017-09-08 01:17:39 -07001105Allocating Action ALU 2 (16 bits) in stage 1 for match table ecmp_group_table's action set_egress_port
1106Allocating VLIW Instruction : 0 in stage 1 for match table ecmp_group_table's action set_egress_port
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001107
1108----------------------------------------------
1109Call to Allocate P4 Table with table ingress_port_count_table__action__, number_entries = 1024, table id = None, and match type = exact
Brian O'Connora6862e02017-09-08 01:17:39 -07001110 Allocating in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001111----------------------------------------------
1112
1113ram_size_matrix =
1114 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
1115 0 0 0 0 0 0 0 0 # 0
1116
1117immediate_size_matrix =
1118 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
1119 0 0 0 0 0 0 0 0 # 0
1120
1121hash_to_phv_matrix =
1122 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
1123 0 0 0 0 0 0 0 0 # 0
1124
1125total action ram packing size = [0, 0, 0]
1126action_ram_packing:
1127 action count_ingress has []
1128total action ram packing size = [0, 0, 0]
1129action_ram_packing:
1130 action count_ingress has []
1131total action ram packing size = [0, 0, 0]
1132action_ram_packing:
1133 action count_ingress has []
1134byte_enables = []
1135After allocation of 32s, available_slots is []
1136final packing is []
1137byte_enables = []
1138After allocation of 32s, available_slots is []
1139final packing is []
1140byte_enables = []
1141After allocation of 32s, available_slots is []
1142final packing is []
Brian O'Connora6862e02017-09-08 01:17:39 -07001143Allocating Action Logical Table ID 0 in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001144
1145----------------------------------------------
Brian O'Connora6862e02017-09-08 01:17:39 -07001146Call to Allocate P4 Table with table ingress_port_counter, number_entries = 510, table id = None, and match type = exact
1147 Allocating in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001148----------------------------------------------
1149
1150stat_stage_table referenced: indirect
1151stat Table Resource Request is:
1152SRAM Resource Request for table ingress_port_counter (of type statistics), with 1 ways wants 2 rams.
Brian O'Connora6862e02017-09-08 01:17:39 -07001153Sram Resource Request for P4 table ingress_port_counter with handle 67108865 of type statistics in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001154 table_type : statistics
1155 rams_for_width : 1
1156 use_stash : False
1157 number_ways : 1
1158 way #0
1159 SRAM Request Group 0
1160 rams_for_depth : 2
1161 map_rams : 0
1162 way_number : 0
1163 ram_word_select_bits : 0
1164 ram_enable_select_bits : 0
1165
1166
1167----------------------------------------------
1168Call to Allocate P4 Table with table ingress_port_count_table, number_entries = 1024, table id = None, and match type = exact
Brian O'Connora6862e02017-09-08 01:17:39 -07001169 Allocating in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001170----------------------------------------------
1171
Brian O'Connora6862e02017-09-08 01:17:39 -07001172Logical Table ID in stage 2 was not supplied by table placement for table ingress_port_count_table.
1173Allocating Logical Table ID 0 in stage 2
1174Allocating Table Type ID 0 of type exact in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001175Match Overhead:
1176 Field --version_valid-- [3:0] (4 bits)
1177 Field --instruction_address-- [1:0] (2 bits)
1178 Field --statistics_pointer-- [19:0] (20 bits)
1179
Brian O'Connora6862e02017-09-08 01:17:39 -07001180Logical Table ID in stage 2 was not supplied by table placement for table ingress_port_count_table.
1181Allocating Logical Table ID 0 in stage 2
1182Allocating Table Type ID 0 of type exact in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001183Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ig_intr_md_for_tm.ucast_egress_port[7:0]}.
1184Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {unused[6:0], ig_intr_md_for_tm.ucast_egress_port[8:8]}.
1185Match Table Resource Request is:
1186SRAM Resource Request for table ingress_port_count_table (of type match), with 0 ways wants 0 rams.
1187Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ig_intr_md_for_tm.ucast_egress_port[7:0]}.
1188Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {unused[6:0], ig_intr_md_for_tm.ucast_egress_port[8:8]}.
1189No micro instructions needed for action count_ingress executed from table ingress_port_count_table.
Brian O'Connora6862e02017-09-08 01:17:39 -07001190Allocating Action ALU 0 (32 bits) in stage 2 for match table ingress_port_count_table's action count_ingress
1191Allocating VLIW Instruction : 0 in stage 2 for match table ingress_port_count_table's action count_ingress
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001192
1193----------------------------------------------
1194Call to Allocate P4 Table with table egress_port_count_table__action__, number_entries = 1024, table id = None, and match type = exact
Brian O'Connora6862e02017-09-08 01:17:39 -07001195 Allocating in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001196----------------------------------------------
1197
1198ram_size_matrix =
1199 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
1200 0 0 0 0 0 0 0 0 # 0
1201
1202immediate_size_matrix =
1203 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
1204 0 0 0 0 0 0 0 0 # 0
1205
1206hash_to_phv_matrix =
1207 (8, 8, False) (8, 8, True) (8, 32, False) (16, 16, False) (16, 16, True) (16, 32, False) (32, 32, False) (32, 32, True)
1208 0 0 0 0 0 0 0 0 # 0
1209
1210total action ram packing size = [0, 0, 0]
1211action_ram_packing:
1212 action count_egress has []
1213total action ram packing size = [0, 0, 0]
1214action_ram_packing:
1215 action count_egress has []
1216total action ram packing size = [0, 0, 0]
1217action_ram_packing:
1218 action count_egress has []
1219byte_enables = []
1220After allocation of 32s, available_slots is []
1221final packing is []
1222byte_enables = []
1223After allocation of 32s, available_slots is []
1224final packing is []
1225byte_enables = []
1226After allocation of 32s, available_slots is []
1227final packing is []
Brian O'Connora6862e02017-09-08 01:17:39 -07001228Allocating Action Logical Table ID 1 in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001229
1230----------------------------------------------
Brian O'Connora6862e02017-09-08 01:17:39 -07001231Call to Allocate P4 Table with table egress_port_counter, number_entries = 510, table id = None, and match type = exact
1232 Allocating in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001233----------------------------------------------
1234
1235stat_stage_table referenced: indirect
1236stat Table Resource Request is:
1237SRAM Resource Request for table egress_port_counter (of type statistics), with 1 ways wants 2 rams.
Brian O'Connora6862e02017-09-08 01:17:39 -07001238Sram Resource Request for P4 table egress_port_counter with handle 67108866 of type statistics in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001239 table_type : statistics
1240 rams_for_width : 1
1241 use_stash : False
1242 number_ways : 1
1243 way #0
1244 SRAM Request Group 0
1245 rams_for_depth : 2
1246 map_rams : 0
1247 way_number : 0
1248 ram_word_select_bits : 0
1249 ram_enable_select_bits : 0
1250
1251Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ig_intr_md_for_tm.ucast_egress_port[7:0]}.
1252Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {unused[6:0], ig_intr_md_for_tm.ucast_egress_port[8:8]}.
1253
1254----------------------------------------------
1255Call to Allocate P4 Table with table egress_port_count_table, number_entries = 1024, table id = None, and match type = exact
Brian O'Connora6862e02017-09-08 01:17:39 -07001256 Allocating in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001257----------------------------------------------
1258
Brian O'Connora6862e02017-09-08 01:17:39 -07001259Logical Table ID in stage 2 was not supplied by table placement for table egress_port_count_table.
1260Allocating Logical Table ID 1 in stage 2
1261Allocating Table Type ID 1 of type exact in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001262Match Overhead:
1263 Field --version_valid-- [3:0] (4 bits)
1264 Field --statistics_pointer-- [19:0] (20 bits)
1265
Brian O'Connora6862e02017-09-08 01:17:39 -07001266Logical Table ID in stage 2 was not supplied by table placement for table egress_port_count_table.
1267Allocating Logical Table ID 1 in stage 2
1268Allocating Table Type ID 1 of type exact in stage 2
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001269Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ig_intr_md_for_tm.ucast_egress_port[7:0]}.
1270Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {unused[6:0], ig_intr_md_for_tm.ucast_egress_port[8:8]}.
1271Match Table Resource Request is:
1272SRAM Resource Request for table egress_port_count_table (of type match), with 0 ways wants 0 rams.
1273Allocating: Byte 0 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {ig_intr_md_for_tm.ucast_egress_port[7:0]}.
1274Allocating: Byte 1 is of type exact and member of group 0 (parity group 0) with 16 bytes. for {unused[6:0], ig_intr_md_for_tm.ucast_egress_port[8:8]}.
1275No micro instructions needed for action count_egress executed from table egress_port_count_table.
Brian O'Connora6862e02017-09-08 01:17:39 -07001276Allocating Action ALU 0 (32 bits) in stage 2 for match table egress_port_count_table's action count_egress
1277Allocating VLIW Instruction : 0 in stage 2 for match table egress_port_count_table's action count_egress
1278Cannot find table object for 'process_packet_out_table_always_true_condition'.
1279Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001280Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001281Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001282Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001283Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001284Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001285Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001286Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001287Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001288Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001289Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001290Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001291Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001292Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001293Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001294Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001295Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001296Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001297Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001298Cannot find table object for 'egress_port_count_table_always_true_condition'.
Brian O'Connora6862e02017-09-08 01:17:39 -07001299Cannot find table object for 'process_packet_out_table_always_true_condition'.
1300Cannot find table object for 'egress_port_count_table_always_true_condition'.
1301Cannot find table object for 'process_packet_out_table_always_true_condition'.
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001302Skipping p4_primitive StageModifyFieldFromHashBitsPrimitive from overhead calculation.
1303Action ecmp_group for table table0 cannot be used as a default action (table miss action). The action requires the use of hash distribution, which is not available when a table misses.
1304Field ig_intr_md_for_tm.ucast_egress_port not contiguous on gateway input
1305Field ig_intr_md_for_tm.ucast_egress_port not contiguous on gateway input
1306Writing configuration registers: regs.match_action_stage.00
1307Writing configuration registers: regs.match_action_stage.01
1308Writing configuration registers: regs.match_action_stage.02
1309Writing configuration registers: regs.match_action_stage.03
1310Writing configuration registers: regs.match_action_stage.04
1311Writing configuration registers: regs.match_action_stage.05
1312Writing configuration registers: regs.match_action_stage.06
1313Writing configuration registers: regs.match_action_stage.07
1314Writing configuration registers: regs.match_action_stage.08
1315Writing configuration registers: regs.match_action_stage.09
1316Writing configuration registers: regs.match_action_stage.0a
1317Writing configuration registers: regs.match_action_stage.0b