Quantcast
Channel: Mentor Graphics Communities: Message List
Viewing all 4541 articles
Browse latest View live

Re: Cell creation question

$
0
0

a simple solution may be to disable the DRC and place the holes directly on the soldering pads.

 

Regards

Cattura1.PNG


The hardware key number in your license file does not match the number of the key attached to the computer

$
0
0

I am trying to install PADS2005 spac1 on a Win7 64-bit computer.  I get the following error when trying to install the license file "The hardware key number in your license file does not match the number of the key attached to the computer."  Using lmutil hostid -flexid, I get the correct 9- number associated with my hardware key, so I think I have the correct drivers for the hardware key installed.  I verified the license.txt file matches the same 9- number.  Using lmtools 8.2a, the FLEXID under System settings is blank.  I downloaded the Mentor License Utility 3.0.1 and using the Tools -> Get HostIDs shows the 9- number of the hardware key.  Using the Tools-> Run lmtools, which runs lmtools 11.11.1.1, the FLEXID under system settings is the correct 9- number. 

 

Does anyone have any ideas to get the license working?  It seems like the Install License tool is unable to communicate with the hardware key.

Efficient method to update Capital Library connector wire fits cavity attributes

$
0
0

We want to update a large amount of Capital Library connector objects. Currently our wire fits cavity attributes are empty and we want to update that information.

Is there an efficient method to update the connector attributes at once rather than a user manually updating each connector object?

 

Thanks

Re: Is it possible to add sheets or hierarchical blocks by automation?

$
0
0

Here is a function which adds new sheets.,  It also adds the default sheet border, which in your case you may want to take out (the blok.insertborder() command):

 

Sub add_sheet()

        

         Dim tmp1, tmp2 AsString

         Dim blok As ViewDraw.Block

         Dim sheets As ViewDraw.IStringList

 

         view = app.ActiveView

         tmp2 = view.document.fullname

         tmp1 = tmp2.Substring(0, instr(tmp2, ".") - 1)

        

         app.SchematicSheetDocuments.close()

        

         sheets = app.SchematicSheetDocuments.GetAvailableSheets(tmp1)

         If sheets IsNothingThen

             msgbox("sheets not set to an object")

              Exit Sub

         EndIf

        

         app.SchematicSheetDocuments.InsertSheet(tmp1, sheets.GetCount + 1)

         app.SchematicSheetDocuments.close()

         sheets = app.SchematicSheetDocuments.GetAvailableSheets(tmp1)

         app.SchematicSheetDocuments.open(tmp1, sheets.GetItem(sheets.GetCount))

         view = app.ActiveView

        

         blok = app.ActiveView.Block

         blok.insertborder()

        

         view = app.ActiveView

End Sub

 

The function assumes you already have a schematic open with an existing sheet, and that you have acquired a reference to the viewdraw application (app) prior to executing the function.

 

Or you could just do it all on one sheet.  Nothing says the parts have to be within a certain area of the sheet.  There may be some maximum size, but it's large enough that for practical use you don't need to worry about it.

 

You can also add parts to the schematic sheet, with this command:

 

comp = blok.AddPartInstance(partition, device, symbol, x, y)

 

comp = the new component

blok  = the schematic sheet block

partition = the library partition of the component symbol block

device = part number

symbol = symbol name

x,y  = location to place the part on the sheet

 

Of course there is a lot more code needed to surround that command.  I have done it by having the components in a text file, reading the file and handling each component one at a time, and doing the math to location the components so that they are not on top of each other.

 

And then you can add nets to the pins of the components if you want.  This way you get both components and nets and an accurate netlist in your PCB design. In essence build a design from an existing spreadsheet or text files with the relevant data.  Unorthodox, not pretty, but can get the job done.

Re: Grow/Shrink Rectangle

$
0
0

I always include the optional arguments when adding the shape by pointsarray:

 

shps.AddByPointsArray(pts, ptary, True, 0)

 

It doesn't seem like that should matter, but I've had success using it like that.

 

I also specify the oversize values with integers, as in:

 

mskout.Oversize(1, 0)

 

In your case it would be

 

mskout.Oversize(1, 1)

 

for square oversize type.

 

Other things:

 

- Do you have a reference to the MASKENGINEAUTOMATIONCONTROLLERLib?  If not, you need to add one to your project references.

- I declare the mask engine like this (vb):

Public mskeng As MASKENGINEAUTOMATIONCONTROLLERLib.MaskEngine

but I see you are declaring it as type var. Not sure if it matters but worth a try to set it to the right data type.

 

I have used methods like this many times and had good luck with them.  Once you get it right the mask engine is reliable and very powerful.

Re: Grow/Shrink Rectangle

$
0
0

Patrick thanks very much for the response.  Adding the optional arguments for pointsarray is what fixed it for me.  Its strange because the arguments added are the default values.  I will keep this in mind going forward.  Thanks again!

Re: Efficient method to update Capital Library connector wire fits cavity attributes

$
0
0

Hello Robert

 

Capital Library - Copy Component Details within the Components section of the Components Main Menu may be what you are after.

 

First set the Wire Fits Cavity Attribute on one connector, then select that connector within this menu and what you would like to copy from it.

Then seelct your target connectors in the Copy To section and that should bring your data across.

 

This assumes that all target connectors require the same information as your source connector part. You may need to make a few sources or change them. However, if every connector has completely different information then manual is the method to use.

 

Regards,

Pat

Why is my current layer "not routeable"?

$
0
0

Using PADS VX.0

 

 

I receive the following when attempting to route any net on my bottom layer: "Interactive Route: Current Layer (A) Bottom (4) is not routeable;". Any particular net that I can't route on the bottom layer can be routed on the top layer. I can't find the difference between layer definitions or a rule I shouldn't have set.

 

Regarding the attachments:

* "Layout-Layers Setup.png" shows that my top and bottom layers have a similar split/mixed definition.

* "Layout-Default Rules.png" shows that my bottom layer is in the layer biasing list, same as the top layer.

* "Layout-AN1 Rules.png" shows the AN1 net rules match the default settings. This net can be routed on the top layer but not the bottom.

* "Rule Values Report.txt" seems to show the same as above. [LAYER BIASING] includes the bottom layer.

 

Thoughts?


Re: Why is my current layer "not routeable"?

$
0
0

PADS Router > Layers > Electrical Layers > Right Click > Properties > Layers Tab > Checkbox

 

Being the first time I have seen this window, I would like to know how this setting could have been toggled in the PADS Logic / PADS Layout / xDxDesigner. Is there a reason behind why this isn't shown, or perhaps there is a button I missed, in the design rules report tool?

Solution.png

Re: DxDatabook: empty field replaced with 0R value

$
0
0

This also generate an unmatch condition when you perform a live verification. Even if the field is filled with 0R both in the dxdatabook table and component when it is annotated, the live verification marks this field in red. If you RMB and click remove condition for this field you can see the right component appear on the left pane of the live verification window

PADS DECAL PREVIEW ZOOM

$
0
0

The PADs decal preview is very useful to check the decal pin number against the electrical symbol. But sometimes the preview appear like this:

The pins are displayed as list and you can't zoom the decal to see the pin number over the pad. Is there a way to customize the preview?

 

Thanks

Using OneDrive for \PADS Projects\ ?

$
0
0

Hi

Has anyone experience with placing the \PADS Projects\ directory on a OneDrive location?

I was wondering if there may be some compatibility issues because OneDrive is constantly synchronizing from the local to the cloud OneDrive directory.

regards Klaus

Re: COVER FREE AREA

$
0
0

  Hi Vernon,

 

thanks for your explanation.

I have tried this line

 

$Lnew create layer 3

$Lnew create polygon cellname 3 (6567500 8367500) (6567500 -8367500) (-6567500 8367500) (-6567500 -8367500) (-2347500 -2847500) (-2347500 -3717500) (-2535500 -4447500) (-2335500 -5317500) (-2699500 -1167500) (-2699500 -5565500) (-6017500 -5565500) (-6557500 -865500) (6557500 8352500) (-6557500 8352500) (-6557500 -865500) (-6557500 -2847500) (-6557500 -3717500) (-6557500 -4447500) (-6557500 -5317500)

 

where I have put all vertex of the modules inserted into the layout but I received this errors message:

 

Error: layout9 create polygon MPW_SL: found an unknown layer = '3' or invalid polygon specification

    while executing

"$Lnew create polygon ......................................................................

 

I have tried also the same line without open and close parenthesis, but the polygon generated is not what I need

 

Can You help me to understand this point?

Many thanks and regards

  Luciano

Find and Replace with Wildcard or Regular Expression fails for Properties in Symbol Editor

$
0
0

Hi,

 

I'am using X-ENTP VX.2.

 

When I want to replace pin properties in symbol editor with wildcards it is not working for me. It is working for names only. Example:

 

Find what: ABC0*

Replace with: ABC1*

Input: ABC0_acb

 

What I want: ABC1_abc

What I get: ABC1*

 

Is this a bug or do I miss something?

 

Regards, Michael

Re: Efficient method to update Capital Library connector wire fits cavity attributes

$
0
0

We have a large amount of unique connectors. I am not sure if the copy component details capability is efficient enough for what we are looking for.

 

Is it possible to create a plugin using the API to update library parts? If we can find an efficient method to updating a large amount of library parts, it would be useful in populating other empty fields as well.


Re: Find and Replace with Wildcard or Regular Expression fails for Properties in Symbol Editor

$
0
0

It appears to be a bug. Depending on what you are trying to do there may be an alternative way of doing this. Are the property names/values unique?

Re: Find and Replace with Wildcard or Regular Expression fails for Properties in Symbol Editor

$
0
0

Yes, they are unique. I have tons of pins with the same prefix in both, pin name and number, and I want to copy them all and replace the prefix.

 

I can export pins, replace pin number in a spreadsheet editor and import pins again. But than I have to rearrange the pins agian. -> not a good solution

 

I have also considered to work with multiple slots and reuse the same symbol in the part (which would be the most elegant solution). But then the automatic pin mapping is not working and up to know I not found a way to import the pin mapping from a spreadsheed. -> not a good solution

Re: Find and Replace with Wildcard or Regular Expression fails for Properties in Symbol Editor

$
0
0

The simplest solution would be to use Add Properties. Select all the pins you want to change and reset the values with Add Properties configured to do so, in your example you'd set the Type to Pin and select whichever pin property you are changing, then Prefix=ABC Value=1 Delta=0 Suffix=_abc and click Apply.

Re: Efficient method to update Capital Library connector wire fits cavity attributes

$
0
0

Robert - we make this easier using wire groups which allow you to specify a collection of wire specifications that will be similar for the 'wire fits' relationship.  However, you still need to apply this to all of the connectors.

 

If wire groups and Pat's suggestion of using copy component don't work for you then I have one more suggestion.  We are trialling a new Excel import / export facility.  If this sounds interesting for your problem then please contact your customer support person and we'll see if this might help.

Re: COVER FREE AREA

$
0
0

Hi Luciano,

 

It sounds like you want a layer that occupies all the space in your design not occupied by the current layers/cells in the design. I would do a NOT operation in this case ($L NOT). Here's an example script.

 

#create new layout

set ll [layout create]

 

#create new topcell

$ll create cell newCell

#create layers in cell

$ll create layer 3

$ll create layer 4

$ll create layer 50

 

#create some random shapes on 1 layer (3)

$ll create polygon newCell 3 10 10 100 100

$ll create polygon newCell 3 120 200 200 100

$ll create polygon newCell 3 140 50 300 10

 

#get the bounding box of the entire cell

set cellCoords [$ll bbox newCell]

 

#create a new layer the same size as the bounding box

eval $ll create polygon newCell 4 $cellCoords

 

#Perform a NOT between the random shapes and the blanket layer to get the difference layer on 50

$ll NOT 4 3 50

 

#create the GDS

$ll gdsout output.gds

 

orig.png

not.png

 

matt

Viewing all 4541 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>