Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20704 Discussions

Question about Combinational Loop Warning

Altera_Forum
Honored Contributor II
2,301 Views

Hi guys, I got a Fit warning like below: Warning (335093): TimeQuest Timing Analyzer is analyzing 45 combinational loops as latches. This warning is not very self-explanatory. There's no farther detail, even doesn't tell me which part of code caused this problem. How can I locate the root cause. Thanks in advance.

0 Kudos
4 Replies
Altera_Forum
Honored Contributor II
1,171 Views

The warning is quite clear: you have designed combinatorial logic which somehow feeds itself with its own outputs. 

This usually leads to a latch-like behavior. If you are not fully aware of the involved timings, you could have unpredictable results, race conditions, unstable outputs. That's why TQ warns you.
0 Kudos
Altera_Forum
Honored Contributor II
1,171 Views

Thanks, Cris. 

I already knew the risk, so I must find them. 

The situation I got is that the RTL is not designed by myself, so it is not easy for me to review the RTL line by line to find the latch-like coding style.  

I am wondering if TQ can tell me more info besides just give out the number of combinatorial loop, such as: 

1. which part of RTL code is causing the combinatorial loops. 

2. if it can't locate the loops in RTL, maybe it can locate it in Net List or in Technology Map View. 

3. some other ways help me to find the loops quickly. 

Theoretically, TQ knows there are 45 combinatorial loops in the design, it must know where they are, right? 

Thanks a lot.
0 Kudos
Altera_Forum
Honored Contributor II
1,171 Views

Try reporting combinatorial loops information with: 

check_timing -include loops
0 Kudos
Altera_Forum
Honored Contributor II
1,171 Views

Good call... 

 

check_timing -include latches  

 

...gave the me the information I needed when I came across this warning.
0 Kudos
Reply