Computes the worst-case power consumed given parameters that indicate the number of different memory types read and written. This function is intended to be called per logical table in each stage, where the parameters include the sum of memories accessed by the match table and all its attached tables. For example, if an exact match table has a directly attached counter, the parameters should have non-zero values for rams_read, rams_write, map_rams_read, and map_rams_write. If the counter runs at EOP time, the deferred_rams_read and deferred_rams_write should have non-zero values as well. Note that the value this function returns should not be exposed to an end-user.
- Parameters
-
num_pipes | The number of pipes to consider this table in. |
- Returns
- The total power consumed (in Watts).
Computes the power consumed by a single table in the specified number of pipelines. Note that the result of this function should not be exposed to the user in logging. (Yes, it can experimentally derived fairly easily...)
- Parameters
-
num_pipes | The number of pipelines to consider the table in. |
- Returns
- An estimate for the power consumption (in Watts) based on the table's access pattern.