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

Public Member Functions

 TofinoDevice (Options options)
 
Device::Device_t device_type () const override
 
cstring get_name () const override
 
int getAlwaysRunIMemAddr () const override
 
const ArchSpec & getArchSpec () const override
 
int getCloneSessionIdWidth () const override
 
unsigned int getEgressIntrinsicMetadataMinLen () const override
 
const GatewaySpec & getGatewaySpec () const override
 
bool getHasCompareInstructions () const override
 
bool getHasEgressParser () const override
 
bool getHasGhostThread () const override
 
bool getHasIngressDeparser () const override
 
bool getHasMetadataPOV () const override
 
bool getHasMirrorIOSelect () const override
 
bool getIfMemoryCoreSplit () const override
 
int getLongBranchTags () const override
 
const MauPowerSpec & getMauPowerSpec () const override
 
const MauSpec & getMauSpec () const override
 
unsigned getMaxCloneId (gress_t gress) const override
 
unsigned getMaxDigestId () const override
 
unsigned getMaxDigestSizeInBytes () const override
 
gress_t getMaxGress () const override
 
int getMaxParserMatchBits () const override
 
unsigned getMaxResubmitId () const override
 
int getMetaGlobalTimestampLen () const override
 
int getMetaGlobalTimestampStart () const override
 
int getMetaGlobalVersionLen () const override
 
int getMetaGlobalVersionStart () const override
 
int getMirrorTypeWidth () const override
 
int getNumChannelsPerPort () const override
 
int getNumLogTablesPerStage () const override
 
int getNumMaxChannels () const override
 
int getNumPipes () const override
 
int getNumPortsPerPipe () const override
 
int getNumStages () const override
 
const PardeSpec & getPardeSpec () const override
 
const PhvSpec & getPhvSpec () const override
 
int getPortBitWidth () const override
 
int getQueueIdWidth () const override
 
int getSramColumnAdjust () const override
 
int getSramMaxPackEntries () const override
 
int getSramMaxPackEntriesPerRow () const override
 
int getSramMinPackEntries () const override
 
const StatefulAluSpec & getStatefulAluSpec () const override
 
bool getThreadsSharePipe (gress_t, gress_t) const override
 

Additional Inherited Members

- Public Types inherited from Device
enum  Device_t { TOFINO , JBAY }
 
- Static Public Member Functions inherited from Device
static RangeIter< gress_t > allGresses ()
 
static int alwaysRunIMemAddr ()
 
static const ArchSpec & archSpec ()
 
static int cloneSessionIdWidth ()
 
static Device_t currentDevice ()
 
static unsigned int egressIntrinsicMetadataMinLen ()
 
static const GatewaySpec & gatewaySpec ()
 
static const Device & get ()
 
static bool hasAlwaysRunInstr ()
 
static bool hasCompareInstructions ()
 
static bool hasEgressParser ()
 
static bool hasGhostThread ()
 
static bool hasIngressDeparser ()
 
static bool hasLongBranches ()
 
static bool hasMetadataPOV ()
 
static bool hasMirrorIOSelect ()
 
static const IMemSpec & imemSpec ()
 
static void init (cstring name, Options options)
 
static int isMemoryCoreSplit ()
 
static const IXBarSpec & ixbarSpec ()
 
static const MauPowerSpec & mauPowerSpec ()
 
static const MauSpec & mauSpec ()
 
static unsigned maxCloneId (gress_t gress)
 
static unsigned maxDigestId ()
 
static unsigned maxDigestSizeInBytes ()
 
static gress_t maxGress ()
 
static int maxParserMatchBits ()
 
static unsigned maxResubmitId ()
 
static int metaGlobalTimestampLen ()
 
static int metaGlobalTimestampStart ()
 
static int metaGlobalVersionLen ()
 
static int metaGlobalVersionStart ()
 
static int mirrorTypeWidth ()
 
static cstring name ()
 
static int numClots ()
 
static int numLogTablesPerStage ()
 
static int numLongBranchTags ()
 
static int numMaxChannels ()
 
static int numParsersPerPipe ()
 
static int numPipes ()
 
static int numStages ()
 
static void overrideNumStages (int num)
 
static const PardeSpec & pardeSpec ()
 
static const PhvSpec & phvSpec ()
 
static int portBitWidth ()
 
static int queueIdWidth ()
 
static int sramColumnAdjust ()
 
static int sramMaxPackEntries ()
 
static int sramMaxPackEntriesPerRow ()
 
static int sramMinPackEntries ()
 
static const StatefulAluSpec & statefulAluSpec ()
 
static bool threadsSharePipe (gress_t a, gress_t b)
 
- Protected Member Functions inherited from Device
 Device (Options options, cstring name)
 
- Protected Attributes inherited from Device
struct Device::Options options_
 

Member Function Documentation

◆ device_type()

Device::Device_t TofinoDevice::device_type ( ) const
inlineoverridevirtual

Implements Device.

◆ get_name()

cstring TofinoDevice::get_name ( ) const
inlineoverridevirtual

Implements Device.

◆ getAlwaysRunIMemAddr()

int TofinoDevice::getAlwaysRunIMemAddr ( ) const
inlineoverridevirtual

Implements Device.

◆ getArchSpec()

const ArchSpec & TofinoDevice::getArchSpec ( ) const
inlineoverridevirtual

Implements Device.

◆ getCloneSessionIdWidth()

int TofinoDevice::getCloneSessionIdWidth ( ) const
inlineoverridevirtual

Implements Device.

◆ getEgressIntrinsicMetadataMinLen()

unsigned int TofinoDevice::getEgressIntrinsicMetadataMinLen ( ) const
inlineoverridevirtual

Implements Device.

◆ getGatewaySpec()

const Device::GatewaySpec & TofinoDevice::getGatewaySpec ( ) const
overridevirtual

Implements Device.

◆ getHasCompareInstructions()

bool TofinoDevice::getHasCompareInstructions ( ) const
inlineoverridevirtual

Implements Device.

◆ getHasEgressParser()

bool TofinoDevice::getHasEgressParser ( ) const
inlineoverridevirtual

Implements Device.

◆ getHasGhostThread()

bool TofinoDevice::getHasGhostThread ( ) const
inlineoverridevirtual

Implements Device.

◆ getHasIngressDeparser()

bool TofinoDevice::getHasIngressDeparser ( ) const
inlineoverridevirtual

Implements Device.

◆ getHasMetadataPOV()

bool TofinoDevice::getHasMetadataPOV ( ) const
inlineoverridevirtual

Implements Device.

◆ getHasMirrorIOSelect()

bool TofinoDevice::getHasMirrorIOSelect ( ) const
inlineoverridevirtual

Implements Device.

◆ getIfMemoryCoreSplit()

bool TofinoDevice::getIfMemoryCoreSplit ( ) const
inlineoverridevirtual

Implements Device.

◆ getLongBranchTags()

int TofinoDevice::getLongBranchTags ( ) const
inlineoverridevirtual

Implements Device.

◆ getMauPowerSpec()

const MauPowerSpec & TofinoDevice::getMauPowerSpec ( ) const
inlineoverridevirtual

Implements Device.

◆ getMauSpec()

const MauSpec & TofinoDevice::getMauSpec ( ) const
inlineoverridevirtual

Implements Device.

◆ getMaxCloneId()

unsigned TofinoDevice::getMaxCloneId ( gress_t gress) const
inlineoverridevirtual

Implements Device.

◆ getMaxDigestId()

unsigned TofinoDevice::getMaxDigestId ( ) const
inlineoverridevirtual

Implements Device.

◆ getMaxDigestSizeInBytes()

unsigned TofinoDevice::getMaxDigestSizeInBytes ( ) const
inlineoverridevirtual

Implements Device.

◆ getMaxGress()

gress_t TofinoDevice::getMaxGress ( ) const
inlineoverridevirtual

Implements Device.

◆ getMaxParserMatchBits()

int TofinoDevice::getMaxParserMatchBits ( ) const
inlineoverridevirtual

Implements Device.

◆ getMaxResubmitId()

unsigned TofinoDevice::getMaxResubmitId ( ) const
inlineoverridevirtual

Implements Device.

◆ getMetaGlobalTimestampLen()

int TofinoDevice::getMetaGlobalTimestampLen ( ) const
inlineoverridevirtual

Implements Device.

◆ getMetaGlobalTimestampStart()

int TofinoDevice::getMetaGlobalTimestampStart ( ) const
inlineoverridevirtual

Implements Device.

◆ getMetaGlobalVersionLen()

int TofinoDevice::getMetaGlobalVersionLen ( ) const
inlineoverridevirtual

Implements Device.

◆ getMetaGlobalVersionStart()

int TofinoDevice::getMetaGlobalVersionStart ( ) const
inlineoverridevirtual

Implements Device.

◆ getMirrorTypeWidth()

int TofinoDevice::getMirrorTypeWidth ( ) const
inlineoverridevirtual

Implements Device.

◆ getNumChannelsPerPort()

int TofinoDevice::getNumChannelsPerPort ( ) const
inlineoverridevirtual

Implements Device.

◆ getNumLogTablesPerStage()

int TofinoDevice::getNumLogTablesPerStage ( ) const
inlineoverridevirtual

Implements Device.

◆ getNumMaxChannels()

int TofinoDevice::getNumMaxChannels ( ) const
inlineoverridevirtual

Implements Device.

◆ getNumPipes()

int TofinoDevice::getNumPipes ( ) const
inlineoverridevirtual

Implements Device.

◆ getNumPortsPerPipe()

int TofinoDevice::getNumPortsPerPipe ( ) const
inlineoverridevirtual

Implements Device.

◆ getNumStages()

int TofinoDevice::getNumStages ( ) const
inlineoverridevirtual

Implements Device.

◆ getPardeSpec()

const PardeSpec & TofinoDevice::getPardeSpec ( ) const
inlineoverridevirtual

Implements Device.

◆ getPhvSpec()

const PhvSpec & TofinoDevice::getPhvSpec ( ) const
inlineoverridevirtual

Implements Device.

◆ getPortBitWidth()

int TofinoDevice::getPortBitWidth ( ) const
inlineoverridevirtual

Implements Device.

◆ getQueueIdWidth()

int TofinoDevice::getQueueIdWidth ( ) const
inlineoverridevirtual

Implements Device.

◆ getSramColumnAdjust()

int TofinoDevice::getSramColumnAdjust ( ) const
inlineoverridevirtual

Implements Device.

◆ getSramMaxPackEntries()

int TofinoDevice::getSramMaxPackEntries ( ) const
inlineoverridevirtual

Implements Device.

◆ getSramMaxPackEntriesPerRow()

int TofinoDevice::getSramMaxPackEntriesPerRow ( ) const
inlineoverridevirtual

Implements Device.

◆ getSramMinPackEntries()

int TofinoDevice::getSramMinPackEntries ( ) const
inlineoverridevirtual

Implements Device.

◆ getStatefulAluSpec()

const Device::StatefulAluSpec & TofinoDevice::getStatefulAluSpec ( ) const
overridevirtual

Implements Device.

◆ getThreadsSharePipe()

bool TofinoDevice::getThreadsSharePipe ( gress_t ,
gress_t  ) const
inlineoverridevirtual

Implements Device.