• 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. Conformal

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 61
  • Views 14653
  • 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

Conformal

archive
archive over 18 years ago

I have run into an issue: there is an 8-bit
input bus.  The 4 MSBs and the 4 LSBs are related: the LSBs are simply the
inversion of the MSBs.  So sel[7] = ~sel[3], sel[6] = ~sel[2], etc.

The original code used all 8 bits of sel (for reasons that I can only
guess).  There isn't any reason to do this in the behavioral code, and in
fact it makes the code a lot less readable.  The problem is that sel is an
input port, so LEC won't pass unless either:
  1. I use sel the way it was used in the original code
  2. I can tell Conformal the relationship between sel[7:4] and
sel[3:0].

Do anyone know a way to achieve the second option?  I'd guess that conformal
supports this, but I have no idea how.

Thanks,
Prasad


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

    Hi Prasad

    Here's one way to handle it in Conformal:

    add pin constraint one_hot sel[7] sel[3] -golden
    add pin constraint one_hot sel[6] sel[2] -golden
    add pin constraint one_hot sel[5] sel[1] -golden
    add pin constraint one_hot sel[4] sel[0] -golden

    With these set then logic like this would pass:

    golden
    assign out1 = sel[7]&sel[3] | sel[6]&sel[2] | sel[5]&sel[1] | sel[4]&sel[0];

    revised
    assign out1 = 1'b0;

    Chrystian


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

    Hi Prasad

    Here's one way to handle it in Conformal:

    add pin constraint one_hot sel[7] sel[3] -golden
    add pin constraint one_hot sel[6] sel[2] -golden
    add pin constraint one_hot sel[5] sel[1] -golden
    add pin constraint one_hot sel[4] sel[0] -golden

    With these set then logic like this would pass:

    golden
    assign out1 = sel[7]&sel[3] | sel[6]&sel[2] | sel[5]&sel[1] | sel[4]&sel[0];

    revised
    assign out1 = 1'b0;

    Chrystian


    Originally posted in cdnusers.org by croy
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

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