diff options
author | gatecat <gatecat@ds0.me> | 2021-03-23 16:59:35 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-23 16:59:35 +0000 |
commit | 2300d81c3c3874801176121b1a97446146ec6efd (patch) | |
tree | cd4fb58c4a239a360c65f45972e621381b908e42 /fpga_interchange/site_arch.h | |
parent | 8c85e648dfdb73d69d4adbc6420e706d21d61f93 (diff) | |
parent | 831b94cdac7af66e11d0e3d67fa3bbff29678d05 (diff) | |
download | nextpnr-2300d81c3c3874801176121b1a97446146ec6efd.tar.gz nextpnr-2300d81c3c3874801176121b1a97446146ec6efd.tar.bz2 nextpnr-2300d81c3c3874801176121b1a97446146ec6efd.zip |
Merge pull request #640 from litghost/inversion_logic
Initial inverter logic for FPGA interchange
Diffstat (limited to 'fpga_interchange/site_arch.h')
-rw-r--r-- | fpga_interchange/site_arch.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/fpga_interchange/site_arch.h b/fpga_interchange/site_arch.h index f8524586..95b6fcba 100644 --- a/fpga_interchange/site_arch.h +++ b/fpga_interchange/site_arch.h @@ -289,6 +289,12 @@ struct SiteArch inline SiteWire getPipSrcWire(const SitePip &site_pip) const NPNR_ALWAYS_INLINE; inline SiteWire getPipDstWire(const SitePip &site_pip) const NPNR_ALWAYS_INLINE; + // Does this site pip always invert its signal? + inline bool isInverting(const SitePip &site_pip) const NPNR_ALWAYS_INLINE; + + // Can this site pip optional invert its signal? + inline bool canInvert(const SitePip &site_pip) const NPNR_ALWAYS_INLINE; + inline SitePipDownhillRange getPipsDownhill(const SiteWire &site_wire) const NPNR_ALWAYS_INLINE; inline SitePipUphillRange getPipsUphill(const SiteWire &site_wire) const NPNR_ALWAYS_INLINE; SiteWireRange getWires() const; @@ -341,6 +347,7 @@ struct SiteArch void archcheck(); bool is_pip_synthetic(const SitePip &pip) const NPNR_ALWAYS_INLINE; + SyntheticType pip_synthetic_type(const SitePip &pip) const NPNR_ALWAYS_INLINE; }; struct SitePipDownhillIterator |