Closed gatecat closed 3 years ago
I think the second bullet point is somewhat covered by this FIXME and was intended to be illegal but not implemented: https://github.com/YosysHQ/nextpnr/blob/c322cda3f875a5e5dd2575d3a390cbe1cee073e0/fpga_interchange/arch.cc#L1793
GitHub
nextpnr portable FPGA place and route tool. Contribute to YosysHQ/nextpnr development by creating an account on GitHub.
Currently there is an undocumented contract inside nextpnr that site PIPs should only be used for nets that originate/terminate inside that site: https://github.com/YosysHQ/nextpnr/blob/c322cda3f875a5e5dd2575d3a390cbe1cee073e0/fpga_interchange/arch.cc#L1769-L1791
In particular, site PIPs shouldn't be used as general route-throughs, for example through sites that aren't otherwise occupied at all. Tile pseudo-PIPs should be used for these cases.
However, there are two problems: