![]() |
P4C
The P4 Compiler
|
Classes | |
class | ActionTable |
class | CounterTable |
struct | deparser_regs |
class | ExactMatchTable |
class | GatewayTable |
class | MeterTable |
struct | parser_regs |
class | Phv |
class | StatefulTable |
class | TernaryIndirectTable |
class | TernaryMatchTable |
struct | top_level_regs |
Public Types | |
enum | { ARAM_UNITS_PER_STAGE = 0 , PARSER_CHECKSUM_UNITS = 2 , PARSER_EXTRACT_BYTES = false , PARSER_DEPTH_MAX_BYTES_INGRESS = (((1 << 10) - 1) * 16) , PARSER_DEPTH_MAX_BYTES_EGRESS = (((1 << 10) - 1) * 16) , PARSER_DEPTH_MAX_BYTES_MULTITHREADED_EGRESS = 160 , PARSER_DEPTH_MIN_BYTES_INGRESS = 0 , PARSER_DEPTH_MIN_BYTES_EGRESS = 65 , MATCH_BYTE_16BIT_PAIRS = true , MATCH_REQUIRES_PHYSID = false , MAX_IMMED_ACTION_DATA = 32 , MAX_OVERHEAD_OFFSET = 64 , MAX_OVERHEAD_OFFSET_NEXT = 40 , NUM_MAU_STAGES_PRIVATE = 12 , NUM_EGRESS_STAGES_PRIVATE = NUM_MAU_STAGES_PRIVATE , ACTION_INSTRUCTION_MAP_WIDTH = 7 , DEPARSER_CHECKSUM_UNITS = 6 , DEPARSER_CONSTANTS = 0 , DEPARSER_MAX_POV_BYTES = 32 , DEPARSER_MAX_POV_PER_USE = 1 , DEPARSER_MAX_FD_ENTRIES = 192 , DP_UNITS_PER_STAGE = 0 , DYNAMIC_CONFIG = 0 , DYNAMIC_CONFIG_INPUT_BITS = 0 , EGRESS_SEPARATE = false , END_OF_PIPE = 0xff , EXACT_HASH_GROUPS = 8 , EXACT_HASH_TABLES = 16 , EXTEND_ALU_8_SLOTS = 0 , EXTEND_ALU_16_SLOTS = 0 , EXTEND_ALU_32_SLOTS = 0 , GATEWAY_INHIBIT_INDEX = false , GATEWAY_MATCH_BITS = 56 , GATEWAY_NEEDS_SEARCH_BUS = true , GATEWAY_PAYLOAD_GROUPS = 1 , GATEWAY_ROWS = 8 , GATEWAY_SINGLE_XBAR_GROUP = true , SUPPORT_TRUE_EOP = 0 , INSTR_SRC2_BITS = 4 , IMEM_COLORS = 2 , IXBAR_HASH_GROUPS = 8 , IXBAR_HASH_INDEX_MAX = 40 , IXBAR_HASH_INDEX_STRIDE = 10 , LOCAL_TIND_UNITS = 0 , LONG_BRANCH_TAGS = 0 , MAU_BASE_DELAY = 20 , MAU_BASE_PREDICATION_DELAY = 11 , MAU_ERROR_DELAY_ADJUST = 2 , METER_ALU_GROUP_DATA_DELAY = 13 , MINIMUM_REQUIRED_EGRESS_PIPELINE_LATENCY = 160 , NEXT_TABLE_EXEC_COMBINED = false , NEXT_TABLE_SUCCESSOR_TABLE_DEPTH = 8 , PHASE0_FORMAT_WIDTH = 64 , REQUIRE_TCAM_ID = false , SRAM_EGRESS_ROWS = 8 , SRAM_GLOBAL_ACCESS = false , SRAM_HBUS_SECTIONS_PER_STAGE = 0 , SRAM_HBUSSES_PER_ROW = 0 , SRAM_INGRESS_ROWS = 8 , SRAM_LAMBS_PER_STAGE = 0 , SRAM_LOGICAL_UNITS_PER_ROW = 6 , SRAM_REMOVED_COLUMNS = 2 , SRAM_STRIDE_COLUMN = 1 , SRAM_STRIDE_ROW = 12 , SRAM_STRIDE_STAGE = 0 , SRAM_UNITS_PER_ROW = 12 , STATEFUL_CMP_UNITS = 2 , STATEFUL_CMP_ADDR_WIDTH = 2 , STATEFUL_CMP_CONST_WIDTH = 4 , STATEFUL_CMP_CONST_MASK = 0xf , STATEFUL_CMP_CONST_MIN = -8 , STATEFUL_CMP_CONST_MAX = 7 , STATEFUL_TMATCH_UNITS = 0 , STATEFUL_OUTPUT_UNITS = 1 , STATEFUL_PRED_MASK = (1U << (1 << STATEFUL_CMP_UNITS)) - 1 , STATEFUL_REGFILE_ROWS = 4 , STATEFUL_REGFILE_CONST_WIDTH = 32 , SUPPORT_ALWAYS_RUN = 0 , HAS_MPR = 0 , SUPPORT_CONCURRENT_STAGE_DEP = 1 , SUPPORT_OVERFLOW_BUS = 1 , SUPPORT_SALU_FAST_CLEAR = 0 , STATEFUL_ALU_ADDR_WIDTH = 2 , STATEFUL_ALU_CONST_WIDTH = 4 , STATEFUL_ALU_CONST_MASK = 0xf , STATEFUL_ALU_CONST_MIN = -8 , STATEFUL_ALU_CONST_MAX = 7 , MINIMUM_INSTR_CONSTANT = -8 , NUM_PARSERS = 18 , NUM_PIPES = 4 , OUTPUT_STAGE_EXTENSION_PRIVATE = 0 , SYNTH2PORT_NEED_MAPRAMS = true , TCAM_EXTRA_NIBBLE = true , TCAM_GLOBAL_ACCESS = false , TCAM_MATCH_BUSSES = 2 , TCAM_MEMORY_FULL_WIDTH = 47 , TCAM_ROWS = 12 , TCAM_UNITS_PER_ROW = 2 , TCAM_XBAR_GROUPS = 12 , TABLES_REQUIRE_ROW = 1 } |
typedef ::Tofino::regs_match_action_stage_ | mau_regs |
typedef Target::Tofino | register_type |
typedef Target::Tofino | target_type |
Static Public Member Functions | |
static int | encodeConst (int src) |
![]() | |
static int | encodeConst (int src) |
static int | NUM_BUS_OF_TYPE (int bus_type) |
static int | NUM_EGRESS_STAGES () |
static int | NUM_MAU_STAGES () |
static int | NUM_STAGES (gress_t gr) |
static int | OUTPUT_STAGE_EXTENSION () |
static void | OVERRIDE_NUM_MAU_STAGES (int num) |
static int | SRAM_ROWS (gress_t gr) |
Static Public Attributes | |
static constexpr const char *const | name = "tofino" |
static constexpr target_t | register_set = TOFINO |
static constexpr target_t | tag = TOFINO |
Additional Inherited Members | |
![]() | |
virtual int | NUM_BUS_OF_TYPE_v (int bus_type) const |
struct Target::Tofino::deparser_regs |
struct Target::Tofino::top_level_regs |
Class Members | ||
---|---|---|
typedef ::memories_pipe | _mem_pipe | |
typedef ::memories_top | _mem_top | |
typedef ::regs_pipe | _regs_pipe | |
typedef ::regs_top | _regs_top |