diff options
Diffstat (limited to 'ice40')
-rw-r--r-- | ice40/arch.cc | 21 | ||||
-rw-r--r-- | ice40/arch.h | 10 |
2 files changed, 31 insertions, 0 deletions
diff --git a/ice40/arch.cc b/ice40/arch.cc index ba372410..380f3386 100644 --- a/ice40/arch.cc +++ b/ice40/arch.cc @@ -416,4 +416,25 @@ std::vector<GraphicElement> Arch::getPipGraphics(PipId pip) const return ret; } +// ----------------------------------------------------------------------- + +delay_t Arch::getCellDelay(const CellInfo *cell, IdString fromPort, + IdString toPort) const +{ + // TODO + return 0; +} + +IdString Arch::getPortClock(const CellInfo *cell, IdString port) const +{ + // TODO + return IdString(); +} + +bool Arch::isClockPort(const CellInfo *cell, IdString port) const +{ + // TODO + return false; +} + NEXTPNR_NAMESPACE_END diff --git a/ice40/arch.h b/ice40/arch.h index c1256a41..172541c0 100644 --- a/ice40/arch.h +++ b/ice40/arch.h @@ -755,6 +755,16 @@ struct Arch : BaseCtx std::unordered_set<BelId> belGraphicsReload; std::unordered_set<WireId> wireGraphicsReload; std::unordered_set<PipId> pipGraphicsReload; + + // ------------------------------------------------- + + // Get the delay through a cell from one port to another + delay_t getCellDelay(const CellInfo *cell, IdString fromPort, + IdString toPort) const; + // Get the associated clock to a port, or empty if the port is combinational + IdString getPortClock(const CellInfo *cell, IdString port) const; + // Return true if a port is a clock + bool isClockPort(const CellInfo *cell, IdString port) const; }; NEXTPNR_NAMESPACE_END |