• 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. Allegro X Scripting - Skill
  3. How to write a simple CMXL code that retrieves or edits...

Stats

  • Replies 0
  • Subscribers 20
  • Views 112
  • Members are here 0
More Content

How to write a simple CMXL code that retrieves or edits data from Constraint Manager

JuanCR
JuanCR 12 days ago

Imagine you want to access some constraint values using SKILL. I know there are AXL functions available; However, what if you want to use CMXL because it dives deeper into the Constraint Manager capabilities. 

Let's show an example. Let's set static phase values of a differential pair configuration. This is how the code would look like: 

axlCMDBInit()
dsn = cmxlFindObject(ACNS_DESIGN);

when(dsn
    cmxlDBSkillInit(dsn);
    cset = cmxlFindObject(ACNS_ECSET, "DIFF", dsn);
   
    when(cset
        println(cmxlPutAttribute(cset "DIFFP_PHASE_TOL" ACNS_STRING list("0.5")))
        println(car(cmxlGetAttribute(cset "DIFFP_PHASE_TOL" ACNS_STRING))); should return 0.5mm
    )
)

cmxlDBSkillExit(dsn);

Here's a brief explanation of what each section is doing: 

If the same logic is used with any other attribute name, you can construct the new code to edit a different constraint. Make sure you use the right Object type with cmxlFindObject. You can find all the object types and definitions at the end of the CMXL Reference Manual. 

Feel free to ask any questions!

  • Sign in to reply
  • Cancel
Cadence Guidelines

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.

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

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