It looks like you're new here. If you want to get involved, click one of these buttons!
Some design rules defines the specified spacing for "dogbone" shapes, which is different from the normal (rectangular) shapes. Is there any way to check the specified spacing for "dogbone" shapes?
Your dogbone element looks the opposite of
dogbone FET active areas that I have seen.
@akita11 There is no explicit "check for dogbone shapes" rule. You'll have to somehow select the respective part first.
I think there is some rule quantifying what counts as "dogbone part". Like a maximum run length. "projection_limits" will give you control over checking a space only if the projected length is less than a certain maximum length. Maybe this is sufficient to qualify this situation as I suppose the intention is to allow smaller spaces over a limited length but not over a long stretch.
DRC is often questionable in my experience. They phrase a certain physical intention in words that convey pictures. With more complex rules it's often not possible to directly translate the picture into code. But it's often possible to achieve an approximation to the original intent and cover the gaps with a few more specialized checks.
The DRC functionality gives you a toolkit for implementing checks in a certain ways. It's far from complete and I'm extending it continuously. Still there is a lot available already and I can only ask to get creative with the features which are there. I'd start with "projection_limits" first and then try to pre- or post-filter the results of this check to exclude the unwanted cases. While doing so I'd rather risk false positives than false negatives to prevent catastrophic fails.
Hope this helps a little.
Thanks for your advice. Actually, "dogbone" are defined by some physical parameters, and they can described by combination of existing methods. For the these matters, I completely agree with you, I'll try to describe it by combination of existing methods; I think it is possible.
If you are at liberty to change / add layers, or to
use (text*object) logic to drive recognition, you
might add a feature to the dogbone region that
invokes the auxiliary rule.
Don't ask me about syntax, I don't know nuthin'.
Thank you for your advise!