Jon Sanders
Guest
|
Vivek, whenever you see an internal error it implies a bug. It might be you are trying to do something not support, or not officially supported yet but in any case internal errors mean Cadence did not account for the condition you gave it (whether it meant to or not).
So first please file a PCR if you have yet to do so. Outside of that you need to provide a bit more data for debugging. Some of the things that help are knowing where in Elab this failed which the log file often gives you clues to (especially if you have specified -mess). Did this fail before, during, or after discipline resolution? Depending on where it fails there are specific things to try.
If it failed prior to discipline resolution then something did not "hook" up correctly and try modifying your config where possible to see if you can find the block causing the problem. If you don't specify a default digital discipline you will see if it got to DR or not.
If it failed during discipline resolution try things like switching to detail resolution, forcing disciplines, checking for unique items in your design for proper hookup (iterated inst, wreal, digital net expressions, UDP, VHDL, ...).
It seldom failed after DR but when it does it likely issues with CM or Driver Receiver Segmentation. Here try different CM's just to see if that makes it work.
Of course similfying the design is also a helpful debugging tool since it allows you to find the problem area and easier to generate a testcase to be created that is free from your IP. But without data these are just guesses.
-jons
|