P4C
The P4 Compiler
Loading...
Searching...
No Matches
TofinoMauPowerSpec Class Reference
Inheritance diagram for TofinoMauPowerSpec:
[legend]

Public Member Functions

double get_absolute_max_power_threshold () const override
 
int get_concurrent_latency_contribution () const override
 
int get_cycles_to_issue_credit_to_pmarb () const override
 
double get_deferred_ram_read_power () const override
 
double get_deferred_ram_write_power () const override
 
int get_deparser_max_phv_valid () const override
 
int get_deparser_throughput_scaling_starts () const override
 
double get_excess_power_threshold () const override
 
double get_map_ram_read_power () const override
 
double get_map_ram_write_power () const override
 
int get_mau_corner_turn_delay () const override
 
double get_max_power () const override
 
int get_min_required_egress_mau_latency () const override
 
int get_pmarb_cycles_from_receive_credit_to_issue_phv_to_mau () const override
 
double get_ram_read_power () const override
 
double get_ram_scaling_factor () const override
 
double get_ram_write_power () const override
 
double get_tcam_scaling_factor () const override
 
double get_tcam_search_power () const override
 
double get_voltage_scaling_factor () const override
 
- Public Member Functions inherited from MauPowerSpec
virtual int get_action_latency_contribution () const
 
virtual int get_base_delay () const
 
virtual int get_base_predication_delay () const
 
virtual int get_meter_lpf_delay () const
 
virtual int get_selector_delay () const
 
virtual int get_stateful_delay () const
 
virtual int get_tcam_delay () const
 

Member Function Documentation

◆ get_absolute_max_power_threshold()

double TofinoMauPowerSpec::get_absolute_max_power_threshold ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_concurrent_latency_contribution()

int TofinoMauPowerSpec::get_concurrent_latency_contribution ( ) const
inlineoverridevirtual

For computing latency contribution of a MAU stage.

Implements MauPowerSpec.

◆ get_cycles_to_issue_credit_to_pmarb()

int TofinoMauPowerSpec::get_cycles_to_issue_credit_to_pmarb ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_deferred_ram_read_power()

double TofinoMauPowerSpec::get_deferred_ram_read_power ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_deferred_ram_write_power()

double TofinoMauPowerSpec::get_deferred_ram_write_power ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_deparser_max_phv_valid()

int TofinoMauPowerSpec::get_deparser_max_phv_valid ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_deparser_throughput_scaling_starts()

int TofinoMauPowerSpec::get_deparser_throughput_scaling_starts ( ) const
inlineoverridevirtual

For scaling MAU power based on deparser buffer depth. The deparser limits how many PHVs may be traversing the MAU pipeline simultaneously.

Implements MauPowerSpec.

◆ get_excess_power_threshold()

double TofinoMauPowerSpec::get_excess_power_threshold ( ) const
inlineoverridevirtual

The additional power given when –disable-power-check is provided at the command line.

Implements MauPowerSpec.

◆ get_map_ram_read_power()

double TofinoMauPowerSpec::get_map_ram_read_power ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_map_ram_write_power()

double TofinoMauPowerSpec::get_map_ram_write_power ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_mau_corner_turn_delay()

int TofinoMauPowerSpec::get_mau_corner_turn_delay ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_max_power()

double TofinoMauPowerSpec::get_max_power ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_min_required_egress_mau_latency()

int TofinoMauPowerSpec::get_min_required_egress_mau_latency ( ) const
inlineoverridevirtual

For enforcing minimum latency (where appropriate).

Implements MauPowerSpec.

◆ get_pmarb_cycles_from_receive_credit_to_issue_phv_to_mau()

int TofinoMauPowerSpec::get_pmarb_cycles_from_receive_credit_to_issue_phv_to_mau ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_ram_read_power()

double TofinoMauPowerSpec::get_ram_read_power ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_ram_scaling_factor()

double TofinoMauPowerSpec::get_ram_scaling_factor ( ) const
inlineoverridevirtual

Memory access power consumption (in Watts) Note that these numbers are not to be made available in any user-facing form.

Implements MauPowerSpec.

◆ get_ram_write_power()

double TofinoMauPowerSpec::get_ram_write_power ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_tcam_scaling_factor()

double TofinoMauPowerSpec::get_tcam_scaling_factor ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_tcam_search_power()

double TofinoMauPowerSpec::get_tcam_search_power ( ) const
inlineoverridevirtual

Implements MauPowerSpec.

◆ get_voltage_scaling_factor()

double TofinoMauPowerSpec::get_voltage_scaling_factor ( ) const
inlineoverridevirtual

No voltage scaling factor currently needed for Tofino.

Implements MauPowerSpec.