Author Topic: Altium blanket generates 'net' scope instead of 'netclass'  (Read 1837 times)

0 Members and 1 Guest are viewing this topic.

Offline kahlenbergTopic starter

  • Newbie
  • Posts: 6
  • Country: at
Altium blanket generates 'net' scope instead of 'netclass'
« on: December 30, 2020, 01:10:05 pm »
Hi,
In Altium 17 schematics, I have USB2 and USB3 connections. I am placing a blanket and a differential pair directive. In the directive, I add some other parameters such as class name and differential routing rules. When I update PCB document, Altium generates a lot of rules in Design->Rules for each net. I am doing exactly same thing for other differential signals such as USB2. In PCB editor the USB2 rules are generated for USB2 netclass, which is correct.
I deleted all the rules in PCB and updated again PCB from schematics, but it is still generating rules for nets, not for netclass USB3.

Here is the blanket and differential pair parameter for USB2 and USB3:



Differential pair parameter for USB2:



Differential pair parameter for USB3:



USB3 signals are added correctly in Netclass in PCB editor:



But there are a lot of rules for USB3, because it generated rules for "net" not for "netclass"
 


How can I generate rules only for netclasses not for nets?
How can I rename differential pair rules in schematics, instead of names such as "Schematic Differential Route_29"?
 

Offline kahlenbergTopic starter

  • Newbie
  • Posts: 6
  • Country: at
Re: Altium blanket generates 'net' scope instead of 'netclass'
« Reply #1 on: December 30, 2020, 01:20:06 pm »
Ok, I found the problem now.
I was struggling since yesterday and I decided to post the problem in this forum. After posting it I checked it again and there was another blanket for USB3 :).  There was no "unique" USB3 rules. I copied one parameter directive in all places where rules apply. Now it generated only one rule for "netclass".

But still, How can I cange the rule name? I don't want to use "Schematic Differential Route_29".
 

Offline ajb

  • Super Contributor
  • ***
  • Posts: 2721
  • Country: us
Re: Altium blanket generates 'net' scope instead of 'netclass'
« Reply #2 on: January 01, 2021, 06:38:04 pm »
You can use the directive to assign the net class only and then define the impedance control rules (or whatever rules you want in the generic case) in the PCB based on the net class.  This is arguably preferable because widths and spacings required for a given impedance depend on PCB construction and are thus part of PCB design not schematic entry. So it's better to define the electrical requirements only (the required impedance) in the schematic, and keep the geometry in the PCB.  Plus you only need to define as many classes/rules as you have impedances to control (and you can name them whatever) which makes the whole thing easier to manage, especially if you need to go back and tweak your rules to hit your target impedance.

So in this example you could define one "90R_DP" or whatever net class, throw all of the diffpairs in it, and then create one PCB rule targeting that net class that gets you the geometry you need for that impedance. Or you could define "USB2" and "USB3" classes with their own routing rules if you want to be able to tweak them separately, but at least you only have two rules to manage instead of one rule per diffpairs.

I would apply the same approach to any electrical requirements, so for example on high voltage nets, define a net class for the voltage range, and then use that net class to drive clearance/creepage rules on the PCB. 
« Last Edit: January 01, 2021, 06:41:31 pm by ajb »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf