UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Adventurer
Adventurer
5,024 Views
Registered: ‎01-16-2015

Decrease latency of custom HLS IPCore

Jump to solution

I have a Video Processing project which contains a custom IP Core generated by Vivado HLS. This project is successfully running on hardware, and I am able to see the correct output video on monitor.

 

The HLS project (containing floating point operations) broadly contains 2 functions, lets call it funcA() and funcB(). In the custom IP core: 

 # if I call only funcB(), the output video is good in real time; there is no perceivable latency in output video on monitor.

 # if I call funcA() and funcB(), then the video output has a latency of about 1.5 seconds.

 # if I call only funcA(), the output video has a latency of about 1.5 seconds.

 

Xilinx Forum.png

 

Naturally, I am trying to optimize funcA() by adding HLS directives. However, on Vivado HLS Synthesis report, I noticed under timing summary, estimated (ns) < target (ns). I have set target as 37ns because the HLS IP core will operate at 27 MHz. Is this right?

 

Anyway, I wanted to know if I am proceeding in the right direction to decrease the latency....by adding HLS directives. Or does the problem lie somewhere else (since estimated (ns) < target (ns) in the Vivado HLS design...so funcA() and funcB() together are supposed to be completed within 37ns). Is my understanding right?

 

 

Tags (3)
0 Kudos
1 Solution

Accepted Solutions
Moderator
Moderator
9,616 Views
Registered: ‎04-17-2011

Re: Decrease latency of custom HLS IPCore

Jump to solution
We expect Estimated to be less than Target so that it meets Timing and it can easily operate at 27 MHz. You need to add directives for the latency. It is showing a ? probably because you might have loops with variable loop bound. You can use LOOP_TRIPCOUNT to estimate the latency and then take the required action.
Regards,
Debraj
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos
1 Reply
Moderator
Moderator
9,617 Views
Registered: ‎04-17-2011

Re: Decrease latency of custom HLS IPCore

Jump to solution
We expect Estimated to be less than Target so that it meets Timing and it can easily operate at 27 MHz. You need to add directives for the latency. It is showing a ? probably because you might have loops with variable loop bound. You can use LOOP_TRIPCOUNT to estimate the latency and then take the required action.
Regards,
Debraj
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos