Announcement

Collapse
No announcement yet.

Class to class clearance deifinition

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Class to class clearance deifinition

    How can I define class to class clearance in Altium? For example I have 8 nets differential ("TX_P-TX_N", "RX_P-RX_N", "CTS_P-CTS_N, RTS_P-RTS_N). I added 8 nets in same class (DIFF100), I created differential rule (track size 110um, air gap:200um, track size:110um). When I added clearance 600um from "DIFF100" to all nets, Altium gave an error "TX_P" and "TX_N" close from 600um. As you know, well there is should be 200um between "TX_P" and "TX_N" and "GND" should be away 600um from them. How can I define in Altium? Sorry my enflish is not good..:-)

  • #2
    There are two kind of rules: net class and differential pair class. I didn't try it, but I think, this should be possible to do through net class + clearance rule. Please, could you attach screenshots of your rules? That could help.

    Comment


    • #3
      I tested it, it should work oki:

      Click image for larger version

Name:	class clearance rule.png
Views:	145
Size:	78.8 KB
ID:	4330

      Click image for larger version

Name:	class clearance rule - layout.png
Views:	138
Size:	118.7 KB
ID:	4331

      Comment


      • #4
        I think instead of All for the second object, you should use Not InNetClass('DIFF100'). Otherwise you might have problems because when on of the tracks in a diff pair is checked against the other, the clearance will be less than 0.3 mm. No sure if Altium is smart enough to consider the native gap, but maybe if it works with Robert, it is.

        Comment


        • #5
          Firstly, thank you for your responses. I tried Robert's definiton, but didn't work. You can see in pictures. Meanwhile I tried Mairomaster's rule, didn't work too. Actually I solved my problem with the many rule definition, but I would like know the problem can be solve with other rule deifinition. Thank you again.

          Comment


          • #6
            A little correction - since you are using differential pair class, the second object should be Not InDifferentialPairClass('DIFF100'). What happens if you have it like that, what errors are you getting exactly? If it is appropriate, can you send me a link to the PCB file in PM?

            Comment


            • #7
              Thank you for attention again, unfortunately I can not send my PCB file to you. Really I tried your recommendations but didn't work.

              Comment


              • #8
                Did you try to use InNetClass? It may not work with InDifferentialPairClass.

                PS: mairomaster is right. Once you have the basic working, you will need to tweak the rule, otherwise you will not be able to route it even close to VIAs.

                Comment


                • #9
                  Yes, I tried as you said. didn't work

                  Comment


                  • #10
                    On the screenshots you are using InDifferentialPairClass, so I was not sure if you tried it also with InNetClass. If it didnt work, I am not sure then. You may have some other rules with higher priorities blocking the new rule. Rule priority is also important. Did you try to play with priorities?

                    Comment

                    Working...
                    X