Quantcast
Channel: Cadence Technology Forums
Viewing all 62965 articles
Browse latest View live

Forum Post: Align Figure groups together

$
0
0
I'm trying to organise my schematic into various groups based on their function. I can align the instances in each group but can't align different groups together, is this possible using the align tool? Seeing as each group has a bBox property, I assume it can be done.

Forum Post: RE: Display name of a cell child on schematic

$
0
0
Not sure how good it will work for you, but you could create a property to the instance and have a textDisplay dislay the value. Kinda like how fets values are displayed. If the instance changes, either you will have to implement the update manually or create a trigger to update the value. Paul

Forum Post: Guide to Allegro Macro Language changes

$
0
0
Prior Allegro releases used a much different macro language that (for the most part) still functions. I have many such macros I use constantly. The macro language changed at some point (V16 onwards?) and recording a macro results in a .scr file recorded in this newer language (tcl?). The newer syntax is very cryptic (reference manual?). Worse, when changing the color visibility of something in the color dialog box, as far as I can tell this newer syntax does not select the visibility state as 'ON' or 'OFF', it only toggles its status. So for example, a script that adds the top_bounds to the current view is no longer possible. I can only toggle it. I've tried extending old scripts by using the older syntax, but this seems to be hitting some limitations, in that newer classes (like 'Embedded Geometry') are not recognized. So, is there a way to make an objects color visibility deterministic in the new language? Is there a way to reference newer objects in the old syntax? e.g., I want this script (including he newer lines in bold ) to work: Version 14.2 scriptmode +invisible setwindow pcb trapsize 97 color setwindow form.cvf_main FORM cvf_main class_list Geometry FORM cvf_main package_geometry/place_bound_bottom/visible NO FORM cvf_main package_geometry/place_bound_top/visible YES FORM cvf_main embedded_geometry/place_bound_L4-flex/visible NO FORM cvf_main embedded_geometry/place_bound_L3-flex/visible YES FORM cvf_main apply FORM cvf_main ok For reference, toggling the visibility of the boundaries on L4-Flex looks like this in the newer syntax: version 17.2 setwindow pcb trapsize 2136 # Macro file: coordinates are relative to pick on replay. color192 QtSignal CVDLayerSplitter CVDLayersTree itemSelectionChanged Geometry "Embedded geometry" QtSignal CVDLayerTable CVDLayerTableDelegate clickedBox 9 0 QtSignal CVDLayerSplitter CVDLayerTable dataChanged Place_Bound_L4-flex EmbGeo QtSignal CVDLayerSplitter CVDLayerTable dataChanged Assembly_L4-flex EmbGeo QtSignal CVDLayerSplitter CVDLayerTable selectionChanged QtSignal ColorVisibilityDialog CVDApplyButton clicked QtSignal ColorVisibilityDialog CVDOkButton clicked Not being able to set absolutes is a killer. Before, I could turn on the top bounds, the bottom bounds, both top and bottom or neither by running one macro for each of these four options. This is not possible with only a toggle command. Maybe I am missing something obvious here. If so, I apologize in advance :-) -Colin

Forum Post: RE: Guide to Allegro Macro Language changes

Forum Post: Layout to schematic connectivity

$
0
0
What is command to define layout to schematic connectivity reference? Paul

Forum Post: RE: Guide to Allegro Macro Language changes

$
0
0
Probably because I'm too lazy (or too old) to learn skill :-) Seriously though, the ability to record macros on the fly is nice and I'm not even slightly proficient in skill's syntax. I have over 200 Allegro macros that I use regularly and I really don't want to convert them to skill if they still do what I need them to do. [Add in Orcad Captures change to tcl and there is yet another new-to-me scripting language I need to learn!]

Forum Post: RE: How to gett Pin Logical path

Forum Post: RE: Display name of a cell child on schematic

$
0
0
Hi, Thank you for your answer. I managed to solve my problem using triggers. I created a trigger on every schematic opening that updates a Label on my top cells. The label is chosen by the name of the instances inside the top cell. alg

Forum Post: RE: Layout to schematic connectivity

$
0
0
lxSetConnRef( t_layLib t_layCell t_layView t_sourceType { CELLVIEW | NONE } [ ?schLib t_schLib ] [ ?schCell t_schCell ] [ ?schView t_schView ] ) => t / nil Sets or unsets the connectivity reference for a specified layout cellview without opening the layout view graphically. You must specify the layout view and whether the source type is NONE or CELLVIEW. If the source type is CELLVIEW, you can specify the schematic cellview to use (by default it is set to the schematic view in the same library and cell). The function also saves the layout cellview, but only if had not been modified prior to lxSetConnRef being called.

Forum Post: RE: Align Figure groups together

$
0
0
There's no support for figGroups in schematic, as far as I know. How are you creating them? If I create a fig group in the schematic using SKILL, it's displayed with a box around it, and isn't selectable - so it's not surprising the align functionality doesn't work with it... Maybe I'm missing something? Now, having figGroup support in VSE seems a reasonable idea, but it probably needs some work to make everything hang together - you might want to contact customer support to request this be supported. Regards, Andrew.

Forum Post: RE: Align Figure groups together

$
0
0
Sorry Andrew, meant to say that it's in my layout.

Forum Post: RE: scs file calls a verilogA

$
0
0
You didn't really provide the whole details, but this is telling you that you have a recursive definition. Something like this: subckt blob (p n) parameters r=1k blob (p n) blob r=r ends blob Unsurprisingly it thinks you have a circular reference. If you really need the subckt name to be the same as the thing being instantiated inside (the Verilog-A module) then you have to add the ahdl_include for the Verilog-A inside the subckt: // recurse.scs subckt blob (p n) parameters r=1k // if re-instantiating the veriloga module with the same // name, that must be defined within this scope - hence the ahdl_include blob (p n) blob r=r ahdl_include "recurse.va" ends blob R1 (n1 0) blob r=2k V1 (n1 0) vsource dc=1 dc dc The verilog-A module I used in this example: // recurse.va `include "disciplines.vams" module blob (p,n); inout p,n; electrical p,n; parameter real r=1k; analog V(p,n) <+ r*I(p,n); endmodule This works fine. Andrew.

Forum Post: RE: Align Figure groups together

Forum Post: RE: schViewToView

$
0
0
In order to do this, you'd need to change the TSG (Text to Symbol Generator) template. I did it by copying the /tools/dfII/samples/symbolGen/artist.tsg (pick whichever template you normally use on the Create->CellView from Cellview route) to a local file, myArtist.tsg. I then edited this file and changed the wireLength to 0.0 (in the symbolParams section). More details can be found in the Text to Symbol Generator appendix (Appendix C in the version I'm using) of the Virtuoso Schematic Editor L User Guide . Then: tsgTemplateMasters=cons(list("myArtist" strcat(getWorkingDir() "/myArtist.tsg")) tsgTemplateMasters) envSetVal("schematic" "tsgTemplateType" 'string "myArtist") The first adds the path to your modified template into the master list, and then the second specifies the template you want to use. This will be consumed by the schPinListToView function above, and you'll end up with pins directly on the box of the symbol without any pin legs. Regards, Andrew.

Forum Post: TCL to change user properties

$
0
0
Hi All! I have a problem writing a TCL script to change the display format of a user property dependent on its value. Each symbol in my Capture symbol library has two attached properties called "BOM_IGNORE" and "DNP". The final aim is to set the display format of the DNP property dependent on the BOM_IGNORE property. But I already fail to access/display the property. It got it to work in a non-hierarchical design but not in a hierarchical one. Here is my TCL code: proc putsProps {} { set lStatus [DboState] set lNullObj NULL set lDesign [GetActivePMDesign] if {$lDesign != $lNullObj} { set occurenceIter [$lDesign NewOccurrencesIter $lStatus] set lOcc [$occurenceIter NextOccurrence $lStatus] # iterate over occurrences while {$lOcc != $lNullObj} { # get corresponding instance to occurrence set lPartInst [$lOcc GetPartInst $lStatus] if {$lPartInst != $lNullObj} { set lPropsIter [$lPartInst NewDisplayPropsIter $lStatus] set lDProp [$lPropsIter NextProp $lStatus] # iterate over display properties of instance while {$lDProp != $lNullObj } { # get and output the name of display property set lName [DboTclHelper_sMakeCString] $lDProp GetName $lName set lNameString [DboTclHelper_sGetConstCharPtr $lName] puts "Name of PartInst Property = $lNameString" set lDProp [$lPropsIter NextProp $lStatus] } delete_DboDisplayPropsIter $lPropsIter } set lOcc [$occurenceIter NextOccurrence $lStatus] } delete_DboDesignOccurrencesIter $occurenceIter } } As a result I get the following output: Name of PartInst Property = Part Reference Name of PartInst Property = Value Name of PartInst Property = Part Reference Name of PartInst Property = Value Name of PartInst Property = Part Reference Name of PartInst Property = Value ... So I can access the Part Reference and the Value but neither the BOM_IGNORE nor the DNP property. What am I doing wrong? Can someone point me into the right direction? Thanks in advance, Martin

Forum Post: RE: Align Figure groups together

$
0
0
Matthew, I assume in that case you are talking about quick align? That allows you to align the edge of an object within each of the two figGroups and then the whole figGroups are aligned based on that. It doesn't give you the choice of aligning the figGroup bbox itself because that's not really a physical object. If you use Edit->Advanced->Align, you can pick object and set the object to "group" - in which case you can then align the top/left/bottom/right of the figGroup to something else (e.g. another group). So in essence I think you can do what you want via one of these two means? Regards, Andrew.

Forum Post: RE: scs file calls a verilogA

$
0
0
Thank you so much Andrew. that fixed my problem.

Forum Post: RE: Align Figure groups together

$
0
0
Hi Andrew, I was using the Advanced->Align mode. Changing the object in "Align Using" to group fixed it. Thanks a bunch.

Forum Post: RE: How to find and replace missing vias in layout using Skill function

$
0
0
HI viaList = leSearchHierarchy(cv cv~>bBox 32 "via" list(list("via definition" "==" "VM2_MQ"))) The above statement will returns db ID's. How can i find missing vias on metal overlap of having same connectivity.Please let me know u have any feedback to find missing vias -Hassan

Forum Post: How to find if Padstack is used or not?

$
0
0
How to find if the padstack in a design is used or not using Allegro Skill? Thanks, Kirti
Viewing all 62965 articles
Browse latest View live


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