• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Logic Design
  3. Problem with un-mapped elements

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 62
  • Views 17109
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Problem with un-mapped elements

archive
archive over 18 years ago

Hi,
I am trying to run Conformal on RTL vs gate-level netlist. I have noticed that synthesis removed a FF in netlist due to that fact that its D input has been tied to 0. Howver while flattening the netlist the FF is not removed and is reported as unmapped element. As a result some comapre points fail due to the fact that this FF is in the logic cone.
By looking at schematic of golden netlist and tracing back the D input of the FF it looks like this pin is connected to other elementes named DC which shows as connection due to constraint. How can I identify which is the offendign constraitn that originated the problem. report_pin_constraint and report_dynamic_constraint command do no report any constraint.

Thanks
Maurizio Spadari  
Principal Design Engineer
NemeriX SA


Originally posted in cdnusers.org by maurizios
  • Cancel
  • archive
    archive over 18 years ago

    Hi Maurizio

    Are you using the following flow?

    set flatten model -seq_constant
    set flatten model -seq_constant_x_to 0
    set flatten model -gated_clock

    set system mode lec

    remodel -seq_constant -seq_constant_feedback -repeat
    map key points

    That should take care of removing the constant flop.

    A couple more notes:

    1) the runtime of the 'remodel' command was dramatically improved in 7.1 compared to 6.2 or earlier versions

    2) I have run into a couple cases lately where DC leaves a constant flop in the netlist but optimizes the fanout from that flop based on the constant value (that makes no sense to me but it's functionally correct). The solution is to use "set flatten model -nobalanced_modeling" or to add -nomap to 'set system mode lec' if the number of flops in the design is reasonable (under 50K or so).

    Chrystian


    Originally posted in cdnusers.org by croy
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • archive
    archive over 18 years ago

    Hi Chrystian,
    thanks your suggestion worked. Unfortunately now I hit with another problem related to clock gating. I will list it in a separate post.
    Maurizio


    Originally posted in cdnusers.org by maurizios
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • archive
    archive over 18 years ago

    Becareful using sequential propagation. Unless it has been fixed it doesn't always behave as youwould expect. The end result is too much propagation that could mask real bolean non-equilancies. Becareful if you have tied clocks and constant signals like you might have in your test logic.

    Given the issues my philosophy has been to not allow sequential optimization in synthesis and thus I won't need in when doing boolean equivalency checking.


    Originally posted in cdnusers.org by bryan
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • malexgreen
    malexgreen over 16 years ago

    I am having a similar problem. In the RTL I have an 8 bit counter, but the logic never counts up beyond 16, so bits 5, 6, and 7 are removed during synthesis. For some reason, conformal will not remove bits 5, 6, and 7 when it reads in the RTL.

    I've tried 'set flatten model -all_seq_merge', but still when I run 'unmapped points -notmapped' it still reports these as unmapped. I've used '-nokeep_unreach' when reading the design, but it still keeps bits 6, and 7 around. How do I get conformal to do the same optimization that the synthesis tool performed?

    I've tried what is suggested above, but I get a ton of mismatches (don't know why yet). Is there something I can do?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • grasshopper
    grasshopper over 16 years ago

     Hi Malexgreen,

    is it possible for you to share the RTL that has the counter. I may be able to share a similar experience but not sure from your description.

     gh-

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • malexgreen
    malexgreen over 16 years ago
    Is there a way to do this securely?
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information