how to check layer maximum width in DRC

Hi All,
In DRC we can use layer.width() to check layer width < minimum design rule value, then how to check layer width > maximum allowed value?
And how we can return the real value when it fail DRC, for example if layer width is 0.1 fail design rule 0.2, then how can we get the real width value 0.1, then output("layer width", "layer widht " + realValue.to_s + " fail minimum layer width 0.2um")?

Thanks

Comments

  • Hi,

    there is no measurement function yet to give you the "real value" in the context of DRC. It's basically possible to analyse the markers produced (this is an edge pair and the minimum distance of the edges could be taken as "real value"). But in order to print it into the report, the DRC framework needs to be modified to produce individualized marker labels. You could request such a feature on GitHub if you think it's useful for others too.

    For the maximum dimension check there are a couple of solutions, but none of it is applicable in general.

    For simple (Manhattan) layout, a simple solution is to use under/oversize and a boolean NOT:

    # provides markers where polygons on "original" are bigger than "w"
    bigger_than_w = original - original.sized(-0.5 * w).sized(0.5 * w)
    

    A general solution awaits implementation: https://github.com/KLayout/klayout/issues/374

    Matthias

Sign In or Register to comment.