Hello - I have a dumb question. How do I open my Command Interpreter Window?
CIW
Segments over void
Hi,
I'm currently developing allegro skill program that will detect the segments over void errors. Can you help me or can you give an idea on how will i do that? what functions or command should i use..
setting up constraints in Schematic Capture CIS L.
I am setting up the constriants in CIS L. This is including the diff pairs and a few set voltages.
The filter is set to Current Properties.
When I create the netlist in CIS and import the logic into Allegro L. It puts everything in ECS and nothing in the Physical constraint set.
Aslo I have the impedences names ethier Diff_100 and Diff_90 for the set diff pairs.
just trying to avoid double work in setting up the constraints in both the schematic and layout. I must have the constriants reflecting the schematic.
Thanks
Phelicia
Getting file name from a port
Is there any function for getting the file name of a port?
Say if I want to get the “test.xls” from the below port.
inPort = infile(“C:\test\test.xls”)
Thanks,
Pawan
Skill Code to change the Colors on the Color Palette
Hi All,
Does anyone have any sample code for changing the colors on the color palette....?
JMWilk
Allegro Design Entry HDL SKILL Copy Schematic Page
Hello everyone.
I'm a new cadence user and i've been using it for almost a week now.
I wanted to jump right into writing SKILL script to do a simple task but after reading a the manual and being overloaded with lots of SKILL commands in the user reference guide, i must admit, i'm a bit discouraged and lost.
I wanted to write a script to:
1. copy everything in a schematic page into a new page within the same project.
2. rename the component designators in the new page
ex. orig designator: R20_0 will be changed to R20_1 in the new page.
I would really appreciate if someone can point me to the right direction and a sample script will be helpful.
Thank you!
Detection of floating or rogue Micro-Vias?
Hello,
I am new to Allegro and have just started to look into Skill. I am working on a board that has gone through many stages of development. The board outline, component placement and routing has been changed multiple times after a large amount of micro-vias have been placed. The potential for "floating or rogue" microvias is huge and its extremely laborous to screen for as they are all stacked. Is there a way to detect floating micro vias with the use of Skill? Any help would be greatly appreciated.
Thanks,
Clint
non-blocking axlRunBatchDBProgram call
Hi
I've created a skill program with a gui that needs to run an external program using axlRunBatchDBProgram.
However when I do this it blocks Allegro and the skill gui.
Is there a way around this?
Best regards
Ole
How to Add a Flight line in cadence (Skill function)
Allegro.exe command line
Hello Experts
I have build a VB program that builds a schematic and board file based on some user inputs. I am seeing a problem during the board build section. I am using the command line interface to open a blank Allegro board file and run a script which runs a SKILL file that builds up a complete board. The problem I am seeing is that the build of the board is sometimes very slow. If I open Allegro seperatly, run the script with the File -> Script command the program runs much faster. I have looked online and there are mentions of memory issues with command lines.
Has anyone else seen this problem or does anyone know of a faster way to open a board file and build it up with a SKILL program.
Regards
Peter
How to know current interactive status?
Hi every one,
Enter point
Skill > axlOKToProceed
t
(3706.29 4580.42)
Enter selection point
Skill > axlOKToProceed()
t
last pick: 2610.72 4079.25
No Element Found.
Enter selection point
last pick: 547.78 4055.94
No Element Found.
Enter selection point
Skill > axlShell("done")
t
nil
Skill >
Regards
Betamelody
How to edit the footprint in PCB board
Hi every one
I have routed PCB board .brd file (no schematic). I want to edit some components footprint like capacitor and diode place on the board have no polarity. Any body have knowledge about the procedure to edit the already placed and routed footprints.
Regards
Aamir
Changing spacing constraints when opening Allegro
Hi All,
I was wondering if anyone can guide me in the right direction.
I'm trying to make it so I can set the bottom SMD pin to TH distance when allegro starts up. This will need to be done to all files being opened.
I'm not familiar with writing skills, but I was wondering if anyone has ran into similar Skill file or at least guide me in the right direction.
I looked through some forum and it looks like I can use axlCmdRegister and axlTriggerSet commands to run the skill automatically once I have the skill file create.
I think this command is where I need to get started from, but I don't think it's that simple.
axlCNSSetSpacing("" TOP 'Thru Pin_SMD Pin .050 INCH)
Any help will be appreciated.
Thanks!
CIW
Hello - I have a dumb question. How do I open my Command Interpreter Window?
Find dangling lines in schematic design
Hi ALL,
Does anybody know how can i check if there is a broken wire in scheme.
Example: I see two pins connected by wire but with full "Zoom In"
Can be seen that the wire is splited.
Thank You in advance
FORM designer for Skill
Hi Guys
I was wondering is there is any gui development tools for SKILL, It is very tedious to type the FORM file in BNF format and try to debug it
I searched in the web to no avail, if anyone knows a tool which will let you design the SKILL forms graphically like the forms designer and output the form file please let me know
mean while I found out some tools that might be of interest
I used to write automated scripts using Autoit it has a free form designer called KODA
http://www.autoitscript.com/fileman/users/lookfar/formdesign.html
this will save the form file as a KXF file and which is a XML file and can output an autoit script which is similar to visual basic
If anyone write a script/tool convet the xml to BNF or autoit to BNF that would be great.
for example The output of the koda will look like
$Form1 = GUICreate("Board Template Editor", 752, 561, -1363, 199)
$Tab1 = GUICtrlCreateTab(16, 24, 713, 521)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
$TabSheet1 = GUICtrlCreateTabItem("Board Details")
$Group1 = GUICtrlCreateGroup("Board Details Input", 32, 64, 681, 449)
$Input1 = GUICtrlCreateInput("Input1", 152, 112, 121, 21)
$Button1 = GUICtrlCreateButton("Button1", 64, 448, 75, 25)
$Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 128, 384, 97, 17)
$Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 280, 384, 97, 17)
$Checkbox3 = GUICtrlCreateCheckbox("Checkbox3", 424, 384, 97, 17)
$Button2 = GUICtrlCreateButton("Button2", 160, 448, 75, 25)
$Label1 = GUICtrlCreateLabel("Label1", 80, 120, 36, 17)
$Label2 = GUICtrlCreateLabel("Label2", 80, 152, 36, 17)
$Input2 = GUICtrlCreateInput("Input2", 152, 144, 121, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
In BNF it should look like
FORM
FIXED
PORT 80 55
HEADER "Board Template Editor"
TILE
TABSET "Board Details"
FLOC 16 24
TSSIZE 713 521
TAB "Pack_Select"
Any help/leads on this regard will be much appreciated
Angle between two segments
Hi all !
My code to check if an angle betwween two segments is 90 degrees or not. here it is :
...................................................
first_seg = car(cline_seg)
second_seg = nthelem(2,cline_seg)
x11=caar(first_seg->startEnd)
y11=cadar(first_seg->startEnd)
x12=car(lastelem(first_seg->startEnd))
y12=lastelem(lastelem(first_seg->startEnd))
x21=caar(second_seg->startEnd)
y21=cadar(second_seg->startEnd)
x22=car(lastelem(second_seg->startEnd))
y22=lastelem(lastelem(second_seg->startEnd))
a = axlDistance(x11:y11, x12:y12)
b = axlDistance(x21:y21, x22:y22)
c = axlDistance(x11:y11, x22:y22)
if(c*c == (a*a + b*b) then
fprintf(writeOutFile, "Location (%L %L)\n", x12,y12)
);end if
...................................
the result are: " E- *Error* range: argument #1 should be a number (type template = "n") - nil ". I think axlDistance command have got error, but only command a = axlDistance(x11:y11, x12:y12) is OK. How can I fix it? Please help me.
PS: x11,y11 --------------------x12,y12 x21,y21--------------------x22,y22
(x11, y11) (x12,y12) = (-19885.0 26245.0) (-19885.0 26400.0)
(x21, y21) (x22,y22) = (-19885.0 26400.0) (-19985.0 26500.0)
How to decrypt the skill file, if I know the password
SKILL function question
I am a beginner at best in SKILL, but I am trying to modify an existing routine. Here is the part of routine I am working on. Previously, I filled in a Radius in a form, but I would like to modify the routine so that Radius is 20% of Height, with a maximum Radius of 0.25 and a minimum of 0.01. The text in bold is what I started, but like I said, I don't really know what I am doing. I am sure this is an easy fix. Can one of you experts show me the correxct way to handle this please.
(defun _ns_spad_outform_run ()
let((Length Height Radius ls1 ls2 ls3 ls4 ls5 ls6 ls7 ls8 ls9 pad_path)
Length = axlFormGetField( _ns_spad_outform "boxx")
Height = axlFormGetField( _ns_spad_outform "boxy")
; Radius = axlFormGetField( _ns_spad_outform "radius")
( if ( (Height > 1.25) then Radius = .25
else
Radius = Height*.2)
)
Thanks.
Chad
axlCustomColorObject arguments
Hi,
What does [g_custom_color] argument means in axlCustomColorObject and how can I find this number for a particular color?
Is there any limit<size> for this argument?
Pawan