Atan2 block native floating point single HDL generation needs more pipelining
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Michael Pratt
am 2 Aug. 2022
Bearbeitet: Kiran Kintali
am 29 Mai 2024
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.
2 Kommentare
Bharath Venkataraman
am 10 Aug. 2022
Do you need single precision support or do you think fixed-point would work as well? If fixed-point is an option, you can try the Complex to Magnitude Angle block.
Akzeptierte Antwort
Kiran Kintali
am 29 Mai 2024
Bearbeitet: Kiran Kintali
am 29 Mai 2024
Improved performance for Atan2 block in the R2024a release.
HDL Coder has enhanced the design implementation of the Atan2 block. The generated code for Atan2 blocks now has more pipelined stages and can be operated at higher frequency. This graph in the release note compares maximum frequency and maximum latency of an Atan2 block that has a single-precision floating-point input between R2024a and R2023b.
You can further use custom latency options to control latency on the block.
0 Kommentare
Weitere Antworten (1)
Bharath Venkataraman
am 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.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Optimization finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!