This isn't a bug, it's how it has to work. You can not have multiple different instances of the same Part Type on one schematic. That would violate the library architecture. So when you update a Part Type from the library, it MUST update the basic information for all instance of that Part Type.
Attributes can be set differently for each instance of a Part Type. To address your issue, you need to clear the checkbox in the attributes group that says "Update Attributes common...." and check "Preserve attributes..."
Thank you Pete for taking the effort to respond.
To clarify, on the “Change Part Type” Dialogue box, there is are checkboxes on the right to apply the “Apply Update to” …“This Part” and “All Parts This Type”.
I checked “Apply Update to” “This Part” but the program acts as if I checked “All Parts This Type”.
Other instances of the part get their attributes changed back to the library value, so the software ignores the checkboxes.
The checkboxes to the left that you mention are only relevant to the part that I selected.
This bug has been registered by Mentor Support Personnel as a defect and brought to the attention of the software team, so it is in fact a bug/defect.
Lead Electronic Engineer
It is acting as it should. You can not update a single instance of a Part Type with the same Part Type from the library. So no matter what you pick, it updates all parts of this type.
The boxes on the left should affect all parts. If there is a bug, it should be that the boxes on the right could be disabled when trying to replace the Part Type with an updated version of the same Part Type. The way the PADS Flow is designed, all Part Types on a design MUST have the same basic information - pin numbers, names, CAE and PCB Decals. So if you update any single instance of a Part Type from the library, you by default MUST update them all. Default attributes are added to Part Types in the library, but can be modified for each instance.
So, the "Apply update to" by default MUST be "All Parts this Type" if you are updating a Part Type with itself. If you are changing it to a different Part Type, you can select which parts or gate to apply it to.
"Attributes" on the left applies to whatever is selected on the right, so going by the requirement that Part Type updates apply to all instances, it would affect All Parts This Type, if that's what you're doing.
Try updating the part with "Attributes: Update Attributes common....." unchecked. If you are trying to update a part to update attributes, you will not get the new attributes from the library on the part you are updating - or any others. You are better off just updating the attributes in the design, if you only want to change one instance.
I'm working in VX now, but I never remembered it being any different in 9.x versions.
· Let me state that my problem is only with Attributes on other instances of same type changing, that they should not be affected if the “This Part Only” box is checked.
· One of your points seems to be that the bug is that the “Apply Update to” …. “This Part Only” checkbox should not appear there. Sure, that is one way to solve it, but the checkbox is in fact there.
· I have reason to believe that multiple instances of the same part with different attribute values can in fact exist on the schematic because when I change the are not affected.
Therefore I conclude that the software does in fact intend to follow the checkbox and update “This Part Only” without affecting attribute values of other part instances of the same part type. This is the workaround I use to overcome the defect.
Thanks again for your advice, I am sure you are very busy as am I, so we will both be understanding if future replies take a while….. and rest assured that the Mentor team is in fact working on this defect.
Lead Electronic Engineer
I'll try another way to explain it
I have reason to believe that multiple instances of the same part with different attribute values can in fact exist on the schematic because when I change the are not affected.
This is correct. I do this a lot. Attributes CAN be different for the same Part Type on a schematic. They can even be different from one gate to another on the same part. You can build a Part Type with no attributes in the library if you want to, and add them on the schematic. Attributes are not required by the Part Type, they are information only, and thus can be variable from one instance to another.
What IS critical information in the Part Type are CAE and PCB decal assignments, and pin numbering. These can NOT be changed on the schematic (other than selecting alternate decals defined in the library). This is the strength of the PADS Flow library architecture - when a part is checked and stored in the library, you will never have a footprint or pinout error.
So, Part Types (decals & pins) are controlled by the library, attributes are not. Each instance of a Part Type must use the same Part Type information, i.e., you can not have 2 instances with different pinouts on the same schematic. But every instance of a Part Type can have different attributes.
Because of this, when you are updating a Part Type from the library (not changing an instance to another Part Type), you really do NOT have the choice of which instance to which you "Apply Changes To". You MUST apply changes to ALL Parts of this type. So whatever you selected to do to the attributes applies to ALL Parts of this type. The bug would be that when updating a part, "All Parts" should autoselect and the group should be grayed out and not accessible. currently, you could select "This Gate", but PADS will ignore that and do what it needs to do.
So, suppose you have a bunch of 74AC04 Part Types on your schematic. One of them needs to be changed to a 74AC32. Select U1, "Change Type", select "74AC32". Because you only want to change U1, pick "This Part". Only U1 will be changed, U2 and U3 will stay 74AC04. You are done making Part Type changes. Step 2 in this process is deciding what to do with the Attributes. Because only U1 is changed, whatever you decide to with Attributes affects only U1. (I think the left-right of these boxes is backwards)
But now you have found an error in the pinout of the 74AC04 part, so you need to correct your library Part Type and update you schematic. Select U2, "Change Type", select "74AC04". Because you are now updating the Part Type with itself, from the library, and PADS requires that ALL instances of a Part Type are identical, you don't actually have a choice, even though "This Gate" and "This Part" are available to be selected (this is the "bug"). So you will update ALL 74AC04 parts on the schematic. Step 2 in this process is deciding what to do with the Attributes. Because all 74AC04s will be changed, whatever you decide to with Attributes affects ALL 74AC04s.
This is why, after setting what you need to "Change Type", you then are given control of your Attributes. PADS knows you may have made different attribute changes to different instances of that Part Type.
I suspect what is causing your confusion is that you are trying to change the attributes of a single instance by changing the attribute in the library, then updating the Part Type on a schematic. This really isn't the way you should handle it. Just change it in the instance on the schematic. "Change Type" is not the correct command to use when you need to change attributes. The "Attributes" option in "Change Type" is only to allow you to control what happens to Attributes when you have to make Part Type (decal or pinout) changes. If you need to change Attributes only, select one of the parts. Then, in "Properties", go to "Attributes", not "Change Type". Make the modification you need, and Apply Updates To "All Parts This Type". That will change ONLY the attribute you have modified, and only on instances where that attribute name AND value are the same as the one you changed, and leave all the rest as is.
If the problem is that you have found an attribute that is wrong in the library, you need to correct the library part, but do not update the schematic with that part.
Sorry for the long winded reply, maybe it's because I'm actually not all that busy right now. ;-) I have a lot of experience with PADS Software, I might as well use it to help others.
OK! I think we have mostly mutual agreement on the bug is.
From my experimentations, it is this:
When you “Change Type” on a part to the same part in the library, it will ignore the “This Part” checkbox and change attributes on ALL parts of that type in the schematic.
However, when you “Change Type” on a part to a different part in the library, it pays attention to the “This Part” checkbox.
So I will continue to use my workaround of changing to a different type and then changing it back, to achieve my goal of not changing the attributes on other parts of the same type in the schematic, but to change the attributes of that one part (“This Part”) to match the library.
By the way, it is fine with me in these instances if all parts of that type are updated to match the library with the new non-attribute characteristics.
Lead Electronic Engineer