diff options
Diffstat (limited to 'generic')
| -rw-r--r-- | generic/arch.cc | 7 | ||||
| -rw-r--r-- | generic/arch.h | 14 | 
2 files changed, 18 insertions, 3 deletions
| diff --git a/generic/arch.cc b/generic/arch.cc index 4f2e07a2..77417d27 100644 --- a/generic/arch.cc +++ b/generic/arch.cc @@ -463,11 +463,16 @@ bool Arch::getCellDelay(const CellInfo *cell, IdString fromPort, IdString toPort  }  // Get the port class, also setting clockPort if applicable -TimingPortClass Arch::getPortTimingClass(const CellInfo *cell, IdString port, IdString &clockPort) const +TimingPortClass Arch::getPortTimingClass(const CellInfo *cell, IdString port, int &clockInfoCount) const  {      return TMG_IGNORE;  } +TimingClockingInfo Arch::getPortClockingInfo(const CellInfo *cell, IdString port, int index) const +{ +    NPNR_ASSERT_FALSE("no clocking info for generic"); +} +  bool Arch::isValidBelForCell(CellInfo *cell, BelId bel) const { return true; }  bool Arch::isBelLocationValid(BelId bel) const { return true; } diff --git a/generic/arch.h b/generic/arch.h index 9311464e..dc4258cc 100644 --- a/generic/arch.h +++ b/generic/arch.h @@ -211,6 +211,14 @@ struct Arch : BaseCtx      delay_t getDelayEpsilon() const { return 0.01; }      delay_t getRipupDelayPenalty() const { return 1.0; }      float getDelayNS(delay_t v) const { return v; } + +    DelayInfo getDelayFromNS(float ns) const +    { +        DelayInfo del; +        del.delay = ns; +        return del; +    } +      uint32_t getDelayChecksum(delay_t v) const { return 0; }      bool getBudgetOverride(const NetInfo *net_info, const PortRef &sink, delay_t &budget) const; @@ -225,8 +233,10 @@ struct Arch : BaseCtx      DecalXY getGroupDecal(GroupId group) const;      bool getCellDelay(const CellInfo *cell, IdString fromPort, IdString toPort, DelayInfo &delay) const; -    // Get the port class, also setting clockPort if applicable -    TimingPortClass getPortTimingClass(const CellInfo *cell, IdString port, IdString &clockPort) const; +    // Get the port class, also setting clockInfoCount to the number of TimingClockingInfos associated with a port +    TimingPortClass getPortTimingClass(const CellInfo *cell, IdString port, int &clockInfoCount) const; +    // Get the TimingClockingInfo of a port +    TimingClockingInfo getPortClockingInfo(const CellInfo *cell, IdString port, int index) const;      bool isValidBelForCell(CellInfo *cell, BelId bel) const;      bool isBelLocationValid(BelId bel) const; | 
