YosysHQ / nextpnr

nextpnr portable FPGA place and route tool
ISC License
1.26k stars 237 forks source link

Fmax estimation implemented with nextpnr-himbaechel for Gowin devices? #1339

Open janschiefer opened 1 week ago

janschiefer commented 1 week ago

nextpnr-gowin seems to have been removed from oss-cad-suite (current git version), so I'm using nextpnr-himbaechel.

Is Fmax estimation (yet) implemented in nextpnr-himbaechel for Gowin devices? If yes, how do I enable it?

nextpnr-himbaechel --detailed-timing-report --json build.yosys.json --write build.nextpnr.json --device GW1NR-LV9QN88PC6/I5 --vopt family=GW1N-9C --vopt cst=tangnano9k.cst Output:

(...)
Info: No Fmax available; no interior timing paths found in design.
Info: Checksum: 0xab4fa0f8
Info: Routing globals...
Info:     routed net 'toplevel.clk' using global resources only.

Info: Routing..
(...)

Info: No Fmax available; no interior timing paths found in design.

Info: Program finished normally.

Thank you!

yrabbit commented 1 week ago

I don't think this functionality can be enabled at the moment. My theoretical knowledge on this subject tends to zero, so we are waiting for volunteers to implement Fmax in himbaechel-gowin :)

janschiefer commented 1 week ago

So I guess I'll compile nextpnr-gowin manually additionally to using oss-cad-suite for now.

However, thank you!

Ravenslofty commented 1 week ago

So, there's the lofty/himbaechel-gowin-timing branch (which admittedly I need to revise), but the challenge is that the Fmax numbers produced by it seem way too high compared to the vendor toolchain numbers.

I probably should attempt to debug that and figure out the difference...