<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://www.cadence.com/Community/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>PCB SKILL</title><link>http://www.cadence.com/Community/forums/28.aspx</link><description>Upload your SKILL files here. Give a brief summary of how to best use the SKILL code.</description><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 20917.1142)</generator><item><title>Re: how to assign cset to netclass using skill</title><link>http://www.cadence.com/Community/forums/thread/20048.aspx</link><pubDate>Tue, 11 Aug 2009 19:56:31 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:20048</guid><dc:creator>Jmus</dc:creator><slash:comments>0</slash:comments><comments>http://www.cadence.com/Community/forums/thread/20048.aspx</comments><wfw:commentRss>http://www.cadence.com/Community/forums/commentrss.aspx?SectionID=28&amp;PostID=20048</wfw:commentRss><description>&lt;p&gt;This looks very similar to the scripts I started generating from my .jrl file yesterday after I made my post. Your code has several of the extra allegro commands removed from it which is good because my script will run with higher efficiency.&amp;nbsp; &lt;/p&gt;&lt;p&gt;Thanks for posting a reply quickly.&amp;nbsp; I wish there were a way to do this with pure skill code, but I guess we will need to wait for that to come out in a later version!&lt;/p&gt;&lt;p&gt;&amp;nbsp;JM&lt;/p&gt;</description></item><item><title>Re: how to assign cset to netclass using skill</title><link>http://www.cadence.com/Community/forums/thread/20044.aspx</link><pubDate>Tue, 11 Aug 2009 17:01:11 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:20044</guid><dc:creator>Ejlersen</dc:creator><slash:comments>0</slash:comments><comments>http://www.cadence.com/Community/forums/thread/20044.aspx</comments><wfw:commentRss>http://www.cadence.com/Community/forums/commentrss.aspx?SectionID=28&amp;PostID=20044</wfw:commentRss><description>&lt;p&gt;Forgot to mention that whenever the code is completely finished and we&amp;#39;ve held the first seminars around it I&amp;#39;ll be able to publish it on our homepage for general download and use.&lt;/p&gt;&lt;p&gt;You&amp;#39;ll perhaps not be able to wait, but just to let you know.&amp;nbsp;&lt;/p&gt;&lt;p&gt;Ole&lt;/p&gt;</description></item><item><title>Re: how to assign cset to netclass using skill</title><link>http://www.cadence.com/Community/forums/thread/20043.aspx</link><pubDate>Tue, 11 Aug 2009 16:58:10 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:20043</guid><dc:creator>Ejlersen</dc:creator><slash:comments>0</slash:comments><comments>http://www.cadence.com/Community/forums/thread/20043.aspx</comments><wfw:commentRss>http://www.cadence.com/Community/forums/commentrss.aspx?SectionID=28&amp;PostID=20043</wfw:commentRss><description>&lt;p&gt;Hi&lt;/p&gt;&lt;p&gt;I&amp;#39;m using this to parse a number of text files extracted from Excel, I cannot give the code away yet since it is part of a constraint initiative my company is working on for the benefit of Danish electronics developement companies. &lt;/p&gt;&lt;p&gt;Basically I&amp;#39;ve got 2 procedures, one to assign spacing and physical cset to a netclass and another procedure to create netclass 2 netclass constraints. The 2 procedures are below. You just need a header and a footer for the script file.&lt;/p&gt;&lt;p&gt;use file, script to record a script where you do what you want and then you just need to save data to a script and then replay it, example below&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; tmp_file = axlDMOpenFile(&amp;quot;ALLEGRO_SCRIPT&amp;quot;, &amp;quot;tmp&amp;quot;, &amp;quot;w&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;scriptmode +i +n +w +c\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;setwindow pcb\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;done\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;cmgr\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;setwindow cmgr\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;cm newView ( worksheet 55:Physical \&amp;quot;56:Physical Constraint Set\&amp;quot; \&amp;quot;57:All Layers\&amp;quot; \&amp;quot;58:All Layers\&amp;quot; )\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;cm newView ( worksheet 55:Physical 61:Net \&amp;quot;62:All Layers\&amp;quot; \&amp;quot;63:All Layers\&amp;quot; )\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;cm newView ( worksheet 78:Spacing \&amp;quot;79:Spacing Constraint Set\&amp;quot; \&amp;quot;80:All Layers\&amp;quot; 81:Line )\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;cm newView ( worksheet 78:Spacing 94:Net \&amp;quot;95:All Layers\&amp;quot; 96:Line )\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;cm scope Design \&amp;quot;%s\&amp;quot;\n&amp;quot; axlCurrentDesign())&lt;br /&gt;&amp;nbsp;&amp;nbsp; ns_map_cset2netclass(spacingCset recordid physicalCset)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;cm exit\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; fprintf(tmp_file &amp;quot;setwindow pcb\n&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; axlDMClose(tmp_file)&lt;br /&gt;&amp;nbsp;&amp;nbsp; axlShell(&amp;quot;replay tmp&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; if( isFile( &amp;quot;tmp.scr&amp;quot;) then deleteFile(&amp;quot;tmp.scr&amp;quot;)) &lt;/p&gt;&lt;p&gt;&lt;br /&gt;; --------&amp;nbsp; arg1 = spacing Cset name, arg2 = Netclassname, arg3 = Physical Cset name&lt;br /&gt;procedure( ns_map_cset2netclass( arg1 arg2 arg3)&lt;br /&gt;let((nc_domains)&lt;br /&gt;&amp;nbsp; nc_domains = &amp;#39;(spacing physical)&lt;br /&gt;&amp;nbsp; axlNetClassCreate(arg2 nc_domains)&lt;/p&gt;&lt;p&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm startTransaction ( Design \&amp;quot;%s\&amp;quot; ) ( \&amp;quot;Net Class\&amp;quot; \&amp;quot;%s\&amp;quot; ) TS_DEFER\n&amp;quot; axlCurrentDesign() arg2)&lt;br /&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm add ( \&amp;quot;Net Class\&amp;quot; \&amp;quot;%s\&amp;quot; ) to ( \&amp;quot;Spacing CSet\&amp;quot; \&amp;quot;%s\&amp;quot; )\n&amp;quot; arg2 arg1)&lt;br /&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm commitTransaction ( Design \&amp;quot;%s\&amp;quot; ) ( \&amp;quot;Net Class\&amp;quot; \&amp;quot;%s\&amp;quot; ) TS_DEFER\n&amp;quot; axlCurrentDesign() arg2)&lt;/p&gt;&lt;p&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm startTransaction ( Design \&amp;quot;%s\&amp;quot; ) ( \&amp;quot;Net Class\&amp;quot; \&amp;quot;%s\&amp;quot; ) TS_DEFER\n&amp;quot; axlCurrentDesign() arg2)&lt;br /&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm add ( \&amp;quot;Net Class\&amp;quot; \&amp;quot;%s\&amp;quot; ) to ( \&amp;quot;Physical CSet\&amp;quot; \&amp;quot;%s\&amp;quot; )\n&amp;quot; arg2 arg3)&lt;br /&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm commitTransaction ( Design \&amp;quot;%s\&amp;quot; ) ( \&amp;quot;Net Class\&amp;quot; \&amp;quot;%s\&amp;quot; ) TS_DEFER\n&amp;quot; axlCurrentDesign() arg2)&lt;/p&gt;&lt;p&gt;&amp;nbsp;)&lt;br /&gt;); end procedure&lt;/p&gt;&lt;p&gt;;&amp;nbsp; --------&amp;nbsp; arg1 = col_name, arg2 = row_name, arg3 = Spacing Cset name&lt;br /&gt;procedure( ns_netclass2netclass( arg1 arg2 arg3)&lt;br /&gt;let((nc_domains)&lt;br /&gt;&amp;nbsp; nc_domains = &amp;#39;(spacing physical)&lt;br /&gt;&amp;nbsp; axlNetClassCreate(arg2 nc_domains)&lt;br /&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm create \&amp;quot;Net Class-Class\&amp;quot; ( Design \&amp;quot;%s\&amp;quot; ) \&amp;quot;%s:%s\&amp;quot; \&amp;quot;%s\&amp;quot; \&amp;quot;%s\&amp;quot;\n&amp;quot; axlCurrentDesign() arg1 arg2 arg2 arg1)&lt;br /&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm startTransaction ( Design \&amp;quot;%s\&amp;quot; ) ( \&amp;quot;Net Class-Class\&amp;quot; \&amp;quot;%s:%s\&amp;quot; ) TS_DEFER\n&amp;quot; axlCurrentDesign() arg1 arg2)&lt;br /&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm add ( \&amp;quot;Net Class-Class\&amp;quot; \&amp;quot;%s:%s\&amp;quot; ) to ( \&amp;quot;Spacing CSet\&amp;quot; \&amp;quot;%s\&amp;quot; )\n&amp;quot; arg1 arg2 arg3)&lt;br /&gt;&amp;nbsp; fprintf(tmp_file &amp;quot;cm commitTransaction ( Design \&amp;quot;%s\&amp;quot; ) ( \&amp;quot;Net Class-Class\&amp;quot; \&amp;quot;%s:%s\&amp;quot; ) TS_DEFER\n&amp;quot; axlCurrentDesign() arg1 arg2)&lt;br /&gt;&amp;nbsp;)&lt;br /&gt;); end procedure&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Best regards&lt;/p&gt;&lt;p&gt;Ole&lt;/p&gt;</description></item><item><title>Re: how to assign cset to netclass using skill</title><link>http://www.cadence.com/Community/forums/thread/20002.aspx</link><pubDate>Mon, 10 Aug 2009 15:52:10 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:20002</guid><dc:creator>Jmus</dc:creator><slash:comments>0</slash:comments><comments>http://www.cadence.com/Community/forums/thread/20002.aspx</comments><wfw:commentRss>http://www.cadence.com/Community/forums/commentrss.aspx?SectionID=28&amp;PostID=20002</wfw:commentRss><description>&lt;p&gt;Hi&lt;/p&gt;&lt;p&gt;What kind of script did you use to assign the cset to a netclass?&amp;nbsp; I have a external list of net class spacing requirements in the form of a .txt file&amp;nbsp;that I plan to import&amp;nbsp;with skill code.&amp;nbsp;Acorrding to previous posts it appears there is no way to assign the csets to netclasses in skill.&amp;nbsp;How do you pass the cset and netclasses you want to alter&amp;nbsp;with your script? &lt;/p&gt;&lt;p&gt;I&amp;#39;m not sure what I&amp;#39;m trying to do is the same as what you were doing so I will clarify.&amp;nbsp; I have netclasses set up in the PCB constraints manager already which have been imported from an OrCAD/Capture schematic. I need to establish&amp;nbsp;spacing rules between netclasses for a high voltage design process where&amp;nbsp;for example one netclass may be a DC bus and another Chassis and I have a precalculated number which I need to enter as a clearance.&lt;/p&gt;&lt;p&gt;&amp;nbsp;JM&lt;/p&gt;</description></item><item><title>Re: how to assign cset to netclass using skill</title><link>http://www.cadence.com/Community/forums/thread/19712.aspx</link><pubDate>Fri, 31 Jul 2009 11:17:05 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:19712</guid><dc:creator>Ejlersen</dc:creator><slash:comments>0</slash:comments><comments>http://www.cadence.com/Community/forums/thread/19712.aspx</comments><wfw:commentRss>http://www.cadence.com/Community/forums/commentrss.aspx?SectionID=28&amp;PostID=19712</wfw:commentRss><description>&lt;p&gt;Hi&lt;/p&gt;&lt;p&gt;Yes I had luck, I recorded a script and in my skill code I&amp;#39;m writing scripts and replaying them.&lt;/p&gt;&lt;p&gt;Although I would prefer&amp;nbsp;to use skill this is acceptable and works very well.&lt;/p&gt;&lt;p&gt;Best regards&lt;/p&gt;&lt;p&gt;Ole&lt;/p&gt;</description></item><item><title>Re: how to assign cset to netclass using skill</title><link>http://www.cadence.com/Community/forums/thread/19557.aspx</link><pubDate>Fri, 24 Jul 2009 20:55:16 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:19557</guid><dc:creator>fxffxf</dc:creator><slash:comments>0</slash:comments><comments>http://www.cadence.com/Community/forums/thread/19557.aspx</comments><wfw:commentRss>http://www.cadence.com/Community/forums/commentrss.aspx?SectionID=28&amp;PostID=19557</wfw:commentRss><description>&lt;p&gt;&amp;nbsp;this cannot be done using pure skill code.&lt;/p&gt;</description></item><item><title>Re: how to assign cset to netclass using skill</title><link>http://www.cadence.com/Community/forums/thread/19551.aspx</link><pubDate>Fri, 24 Jul 2009 20:06:01 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:19551</guid><dc:creator>asedehi99</dc:creator><slash:comments>0</slash:comments><comments>http://www.cadence.com/Community/forums/thread/19551.aspx</comments><wfw:commentRss>http://www.cadence.com/Community/forums/commentrss.aspx?SectionID=28&amp;PostID=19551</wfw:commentRss><description>&lt;p&gt;any luck?&lt;/p&gt;</description></item><item><title>how to assign cset to netclass using skill</title><link>http://www.cadence.com/Community/forums/thread/18777.aspx</link><pubDate>Thu, 25 Jun 2009 20:31:42 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:18777</guid><dc:creator>Ejlersen</dc:creator><slash:comments>0</slash:comments><comments>http://www.cadence.com/Community/forums/thread/18777.aspx</comments><wfw:commentRss>http://www.cadence.com/Community/forums/commentrss.aspx?SectionID=28&amp;PostID=18777</wfw:commentRss><description>&lt;p&gt;Hi&lt;/p&gt;&lt;p&gt;Anyone knows if there is an axl function to assign a named constraint set to a specific netclass?&lt;/p&gt;&lt;p&gt;Added 26th of June: I&amp;#39;ve figured out how to do this using script, but would prefer not to do it using scripts.&lt;/p&gt;&lt;p&gt;Best regards&lt;/p&gt;&lt;p&gt;Ole&lt;/p&gt;</description></item></channel></rss>