• 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. Functional Verification
  3. Bidirectional has() and count() List Pseudo-Methods

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 65
  • Views 13806
  • 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

Bidirectional has() and count() List Pseudo-Methods

IonutC
IonutC over 12 years ago

Hi.

As of the 11.1 release, the list.has() and list.count() list pseudo-methods can be treated as bidirectional constraint operators.

In 11.1, list.has() and list.count() are solved unidirectionally by default. To ensure that these pseudo-methods are solved as bidirectional expressions, set the config gen -bidir_list_pseudo_methods configuration flag.

This works but in the manual it says that this can be also done from the Specman e code by extending setup() of sys to contain:

set_config(gen, bidir_list_pseudo_method, ALL);

But this latter option does not work.

Can anyone offer some help on how to do this from the Specman e code?

I also tried using specman("config gen -bidir_list_pseudo_methods=ALL") and it did not set this config option.

Thanks in advance!

  • Cancel
Parents
  • hannes
    hannes over 12 years ago

    Hello IonutC,

    this configuration setting affects code at load time. This is why the setup phase is too late.
    Some (most) configuration settings can be set in setup(), but not this one (and some others
    which affect loading of code). So unfortunately you will have to pass this as a command
    or a pre_command to Specman before you load any code with such list constraints.

    The commands you list work by themselves. I've just tried both options (set_config and config -gen)
    and they seem to work:

    Welcome to Specman Elite (11.10.057-s Build 444)  -  Linked on Sun Feb 10 16:18:19 2013

    Protected by U.S. Patents 6,141,630 ;6,182,258; 6,219,809; 6,347,388;6,487,704; 6,499,132; 6,502,232; 6,519,727; 6,530,054; 6,675,138; 6,684,359; 6,687,662; 6,907,599; 6,918,076; 6,920,583; Other Patents Pending.

    Checking license ... OK
    Specman> set_config(gen,bidir_list_pseudo_methods,ALL)
    Specman> show config gen

    configuration options for: IntelliGen

            -seed                           =       1
            -improve_correlated_random      =       TRUE
            -default_max_list_size          =       50
            -absolute_max_list_size         =       524288
            -default_min_list_size          =       1
            -default_list_size_policy       =       ALWAYS
            -automatic_tc_util              =       FALSE
            -tc_util_test_name              =       ""
            -compile_gen_actions            =       FALSE
            -check_constraints_under_point* =       FALSE
            -bidir_list_pseudo_methods      =       ALL
            -solvability_mode               =       DEFAULT
            -collect                        =       OFF


     

    Best regards,
    -hannes 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • hannes
    hannes over 12 years ago

    Hello IonutC,

    this configuration setting affects code at load time. This is why the setup phase is too late.
    Some (most) configuration settings can be set in setup(), but not this one (and some others
    which affect loading of code). So unfortunately you will have to pass this as a command
    or a pre_command to Specman before you load any code with such list constraints.

    The commands you list work by themselves. I've just tried both options (set_config and config -gen)
    and they seem to work:

    Welcome to Specman Elite (11.10.057-s Build 444)  -  Linked on Sun Feb 10 16:18:19 2013

    Protected by U.S. Patents 6,141,630 ;6,182,258; 6,219,809; 6,347,388;6,487,704; 6,499,132; 6,502,232; 6,519,727; 6,530,054; 6,675,138; 6,684,359; 6,687,662; 6,907,599; 6,918,076; 6,920,583; Other Patents Pending.

    Checking license ... OK
    Specman> set_config(gen,bidir_list_pseudo_methods,ALL)
    Specman> show config gen

    configuration options for: IntelliGen

            -seed                           =       1
            -improve_correlated_random      =       TRUE
            -default_max_list_size          =       50
            -absolute_max_list_size         =       524288
            -default_min_list_size          =       1
            -default_list_size_policy       =       ALWAYS
            -automatic_tc_util              =       FALSE
            -tc_util_test_name              =       ""
            -compile_gen_actions            =       FALSE
            -check_constraints_under_point* =       FALSE
            -bidir_list_pseudo_methods      =       ALL
            -solvability_mode               =       DEFAULT
            -collect                        =       OFF


     

    Best regards,
    -hannes 

    • 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