Open Dolu1990 opened 3 months ago
For NaxRiscv (set as toplevel) :
I did aswell hit the fmax limit in the multiplication unit (190 Mhz), went up to 209 Mhz after some tunning. So to explaine the multiplcation unit tunning, by default, i had KEEP attribute on the input and output registers of the multiplication as a way to avoid having the synthesis merging those register into the DSP block.
I will be in travel for the next two weeks.
Thanks @Dolu1990, from what we discussed, the SpinalHDL changes to increase the FMax were still local. Have you been able to upstream them or can you update the issue when done?
Hi @enjoy-digital,
I just pushed everything i had in hands. Also i added the --relaxed-mul-inputs option with VexiiRiscv (--vexii-args="... --relaxed-mul-inputs" This is in https://github.com/enjoy-digital/litex/pull/2059.
Overall, the main timings which created issues was :
That --relaxed-mul-inputs option will push the DSP mul to the second stage of the execute pipeline.
Let's me know if you have any issues.
Thanks @Dolu1990, I just merge https://github.com/enjoy-digital/litex/pull/2059. We'll do more test with increased freq when https://github.com/enjoy-digital/litex_agilex5_test/issues/14 will be done, allow more flexible clocking.
Sure ^^
Hi,
Here is were i'm reporting the FMax mesurments and progress.
For VexiiRiscv (set as toplevel, after some tunning) with :
On Agilex, the FMax is limited by the multiplication unit. Without it, it goes to 260 Mhz
It seems like the the timings to go from the FPGA interconnect -> DSP(mul 17*17 -> reg) is high.