• Home
  • :
  • Community
  • :
  • Blogs
  • :
  • PCB Design
  • :
  • BoardSurfers: Extending Allegro Layout Capabilities with…

PCB Design Blogs

Rachna2018
Rachna2018
27 Aug 2020
Subscriptions

Get email delivery of the Cadence blog featured here

  • All Blog Categories
  • Breakfast Bytes
  • Cadence Academic Network
  • Cadence Support
  • Custom IC Design
  • カスタムIC/ミックスシグナル
  • 定制IC芯片设计
  • Digital Implementation
  • Functional Verification
  • IC Packaging and SiP Design
  • Life at Cadence
  • The India Circuit
  • Mixed-Signal Design
  • PCB Design
  • PCB設計/ICパッケージ設計
  • PCB、IC封装:设计与仿真分析
  • PCB解析/ICパッケージ解析
  • RF Design
  • RF /マイクロ波設計
  • Signal and Power Integrity (PCB/IC Packaging)
  • Silicon Signoff
  • Spotlight Taiwan
  • System Design and Verification
  • Tensilica and Design IP
  • Whiteboard Wednesdays
  • Archive
    • Cadence on the Beat
    • Industry Insights
    • Logic Design
    • Low Power
    • The Design Chronicles

BoardSurfers: Extending Allegro Layout Capabilities with SKILL

BoardSurfers: Cadence BoardSurfers BlogWhy do I need SKILL?

The difference between generic departmental store clothing and premium custom tailoring is what the effective use of SKILL scripts can bring to your PCB Layout design world. 

While our layout applications come loaded with power-packed features to help you accomplish PCB and substrate design tasks and collect design information, you can take the standard, out-of-the-box features to the next level by customizing the default features. With just a few tweaks you can create solutions that are tailor-made for your teams and help you save time and effort.

Let’s look at some custom tasks that might come handy:

  • Find all the out-of-date dynamic shapes
  • Generate a list of all the differential pair nets
  • List the library paths of all symbols
  • Check which two 2D line segments intersect and report where
  • Add assembly reference designators
  • Extract the component heights and save in a file

As you can see, these tasks offer you greater control and you can make specific changes or collect information that is not easily available in standard reports or menus.

SKILL, as you might already know, is the extension language for Cadence applications, using which you can add powerful new capabilities, such as designing custom GUIs, automating design tasks, creating specific reports, and so on. All these help in achieving the greater goal of improving designer productivity and shortening the overall design cycle.  

In this post, let's take a quick look at how SKILL scripts can be implemented and how the Support site has a library full of SKILL Code to help you get started. All you need to do is download code, make changes as needed for your setup, and run the scripts.

Before that a reminder:

 A Cadence ID is required for accessing this and other troubleshooting and product information available at the Support site.

How do I run SKILL scripts in Allegro PCB Editor and APD Plus?

You can run SKILL scripts in any of the following ways.

  1. Run at startup

You can load SKILL files automatically when PCB Editor starts by using the allegro.ilinit file. Place this file in the pcbenv directory. Replace the SKILL path with your SKILL files, just remember to use forward slashes (/) in the path.

Now, when PCB Editor starts, it looks for the allegro.ilinit file in the $HOME/pcbenv directory, and then in the <CDSROOT>\share\local\pcb\skill directory.

 View this Loading SKILL Programs Automatically video on the Support site to learn more.

2.  Running the SKILL script without setting up allegro.ilinit

To load a SKILL file, use the following command at the command line:

     Command > skill load("skill_file_name.il")

If it is successfully loaded, the command line reports a t as the last entry. The SKILL file must be in the SKILL search path. 

3.  Running the SKILL script from the command line

Here is an example of the syntax used to execute the SKILL file within a script:

allegro <boardname.brd> -s <script.scr>

This will look for the script.scr file in the current working directory.

4.  Attaching SKILL scripts to menu options

To add your scripts or SKILL programs to a menu:

a. Copy the allegro.men file from $CDSROOT/share/pcb/text/cuimenus to $CDSROOT/share/local/pcb/menus.

 This is a default location specified by MENUPATH for user menus.

b.  Place your scripts in:

$CDSROOT/share/pcb/text/scripts

This is a default location for user scripts specified by SCRIPTPATH.

c.  Edit a copy of the allegro.men file and add the new menu items.

d.  Place the copy in the menupath as described in step a.

For more details and videos for each implementation, head over to the Support site and read an article on How to load Custom Allegro® PCB SKILL Functionality.

Are there SKILL scripts that I can use as a starting point?

Yes, you can head over to the Support site and check the SKILL Code Library. We keep adding more scripts here, so bookmark this page. Do share your feedback with us once you have tried the scripts!

You can explore the various scripts and download them and use. The scripts are categorized based on the design area they are meant for, such as:

Just remember, these SKILL scripts are samples and you might have to make changes for your setup.

What’s Next?

You can download SKILL scripts, set them up in the designated locations,  and harness the full power of your layout application!  

If you are interested in understanding more of SKILL and even creating your own scripts:

  • See Getting Started in the SKILL Language User Guide

Or

  • Sign up for the SKILL training at the training site.

In the next post, we’ll check out a few samples and get a better idea of the scripts available and how they work.  So, SKILL up and get more done with Cadence applications and custom programming! 

Tags:
  • 17.4 |
  • PCB design and layout |
  • 17.4-2019 |
  • PCB design |
  • Allegro PCB Editor |