cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
thomashkim
Visitor
Visitor
5,144 Views
Registered: ‎08-02-2012

Vivado HLS - throughput and latency are ??? in the report

Hello,

 

I inherited Vivado HSL project from my colleague and synthesized the design. I was going through the report file and found that the throughput and latency information were not provided. The report said "???" for both, but it went through the synthesis and showed the resource utilization and other information. 

Does anyone know why I am getting "???" for the throughput and latency of my design?

Thanks,

 

Thomas

 

0 Kudos
2 Replies
thomashkim
Visitor
Visitor
5,137 Views
Registered: ‎08-02-2012

Let me add more information to the problem...

There is a function which includes multiple for-loops. The interations of the loops are determined by input argument of the function, but that input arguement is defined as a constant outside of the function. THus, it looks like below:

 

void function1 (...)

{

    const int n = 256;

    function2(n, ... )

}

 

void function2(n, ...)

{

...

   for (i=0;i<n;i++)

   {

        ....

    }

}

 

 

In this case, can't the tool figure out how many interations it would have in the loop?

THanks,

 

Thomas

 

0 Kudos
peichen
Xilinx Employee
Xilinx Employee
5,121 Views
Registered: ‎09-24-2012

Assuming

 

1) 'function1' is part of the design (i.e., not just used in TB), and

2) 'function2' is not call multiple times with different 'n',

 

Vivado HLS should propagate the constant into 'function2'. If it doesn't happen in your design, please share a test case. We will look into it. Thanks.

0 Kudos