• 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 PCB Editor
  3. Extract all symbols/nets from a design

Stats

  • Replies 16
  • Subscribers 160
  • Views 9519
  • Members are here 0
More Content

Extract all symbols/nets from a design

serpens
serpens over 12 years ago

Hi, I'm new with SKILL, I try to do some code and it works, but as I trying to go deeper I found some issues. I start to work with the database and as a exercise I want to extract all reference designators (or net names) from a board.

However, I was looking trough Allegro® User Guide: SKILL Reference but can not find nothing. I don't want from you to give me the code, I just need some advice in some methodology how to extract such things from database.

I found only this axlExtractMap (there is an example how to extract all net names) but if I understand it correctly it use already existing report files and I looking fore something without external files.\

Regards,

Miro

  • Sign in to reply
  • Cancel
  • serpens
    serpens over 12 years ago
    Thank, but maybe I don't write it good. I need to go through all nets and check which of them have the component. It will be something like testpoint report. This is why I want to start from top (design), get the list of all nets, in here check for all pins connected to each net and decide if the pin is or isn't from a testpoint.
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • D912349
    D912349 over 12 years ago

    If that is your goal, you can start with nets and use net parameters to check if it is from a testpoint. net object covers or contains objects such as vias, clines and shapes. Using the net parameters, you can get almost all of the informations from this objects connected to the net.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • serpens
    serpens over 12 years ago

    I must say, the symbol what I'm looking for is not a regular TP. In our company we use TP in schematic, and as I was informed from Casdence Support, there is no way how to have TP in scm and auto place them in PCB, or vice versa. So because we use TP as symbols in scm (represented in pcb like a single SMT pad) I want to check all nets if they are connected to partst with TPxxx refdes and make some kind of report.

    If somebody knows some skill routine where I can look for something similar I will be glad to look at it.

    Regards,
    Miro

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • D912349
    D912349 over 12 years ago

    If all TP that is used as symbol names starts with "TP" then you can use string manipulations to filter and check if it is connected to the net.. try to follow this routine.

    lets say you store the symbol names to variable symbolName and symbolIsTP determines if it is a TP component(given that all TP components in your design starts with TP)

    symbolIsTP = substring(symbolName 1 2) == "TP"

    If symbolIsTP = t then it is a TP symbol

    If symbolIsTP = nil then it is not..

     Hope this helps.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • serpens
    serpens over 12 years ago

    Did you mean something like this?

    moRef = axlDBGetDesign()->symbols~>refdes

    foreach( moVar moRef
    moX = substring( moVar 1 2)
    if( moX == "TP"
    printf("%s - TP \n" moVar)
    printf("%s - not TP \n" moVar)
    );end if
    );end foreach

     

    But this just filter out TPs from a list of reference designators. What I want to achieve is:

    - obtain a list_1 of nets used in current design (done)
    - list_2 of redfdes of symbols for each net which are connected to this net (strugling)
    - check in list_2 if some of the refdes are TP, if yes net have a TP, if no net dont have a TP (done)

    • Cancel
    • Vote Up 0 Vote Down
    • 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.

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

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