Atan2 block native floating point single HDL generation needs more pipelining
3 views (last 30 days)
Show older comments
Michael Pratt on 2 Aug 2022
Answered: Bharath Venkataraman on 11 Aug 2022
Hi, I'm using the atan2 block with single precision to generate HDL and with the MAX latency of 42 clocks but it only achieves a clock rate of about 330 MHz (need more like 360 MHz) in my FPGA synthesis run. The critical path seems to be a stage of DSP48's chained together in cascade mode but without pipelining in the cascade. Is there a way to increase the pipelining internal to the atan2 block? Why does this block have no MIN or MAX range (MIN = MAX = 42). I think if you could just add more pipelining it would be able to run much faster. Retiming does not seems to be able to place registers where needed in this case.
Bharath Venkataraman on 11 Aug 2022
I am glad that using the Complex to Magnitude Angle block worked out for you. Adding that option as an answer in case others run into this issue.
I will pass on your feedback to the relevant team.
More Answers (0)
Code Generation HDL Coder HDL Code Generation from Simulink Speed and Area Optimization Speed Optimization
Find more on Speed Optimization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!