Forum Discussion
Altera_Forum
Honored Contributor
7 years agoI am genuinely surprised to the that the second kernel is actually pipelineable. Other than the difference in read and write that you mentioned, I don't see any other difference between the two kernels that could cause the difference. However, I would say the strange case here is the second kernel, not the first one. I checked with newer versions of the compiler. 16.1.2 and 17.0 fully pipeline the second kernel, but 17.1 and 18.0 say:
--- Quote Start --- II >=1 II is an approximation due to variable inner loop trip count. --- Quote End --- I guess the compiler is doing some corner case optimization that allows pipelining in the second kernel. Other than that, I have no idea. P.S. You can put your code segments in a CODE tag to preserve indentation.