[DRC]-Why do identical structures only partially report width errors?

edited May 22 in KLayout Support

As a newcomer to using the KLayout Design Rule Checker , I have observed that during width checks, the DRC reports errors for only instances of identical structures, while other identical structures are not flagged. I am unsure whether this behavior is an inherent characteristic of the DRC tool or if there is an underlying issue in my design setup. Could you please explain why this occurs and whether it reflects a standard behavior of the DRC? As you can see in the image below, I'm not sure if you can see it.Thank you very much for your assistance!

Comments

  • @Matthias
    Hello!I'm sorry to disturb you, but I noticed that no one has responded to me. May I kindly ask if you could help address my inquiry? Thank you so much!

  • Off the cuff, I wonder whether there is a "please,
    no more!" error-display-limit hard coded, or if you
    are lucky some setting (I see such things in
    simulators' options, "maxwarn", "maxerr" like.
    Maybe there is a built in control variable where
    you could assert higher in your "deck".

    I have zero DRC skills with klayout but that is
    what pops to my forebrain.

  • @dbsdyhxx Some more details are helpful. Are you using "deep" mode? In that case, the errors will be reported once inside the cell if possible.

    I will not be able to debug the problem without a test case. Rushing me won't change anything about that.

    Matthias

  • @dick_freebird
    Thank you for your reply. I noticed that the program didn't throw any errors during execution, but there's a message saying "Not all entries are shown!" in the Marker Database Browser window after it finishes. I wonder if this might be related to the problem?

  • @Matthias
    Thank you for your reply. I apologize for bothering you again. Below is my test case:

    negative_angles = FE_Core.corners(-180..-100)
    positive_angles = FE_Core.corners(100..180)
    FE_Core_angle = negative_angles + positive_angles
    FE_Core_angle.output("WG.01","Forbidden, WG.01: NITWG Angle < 80°")

  • @dbsdyhxx I am sorry. This is not a test case. This is just four lines - no layout file or the rest of the code.
    A proper test case is a complete, executable script and a layout file.

    At least, maybe you can answer my question above: are you using deep mode?

    I can't give any advice with so little information.

    Matthias

  • edited May 29

    Here is my test case:

    (see attached file)

    Script:

    report("Discussion 2727")
    FE_Core = input(1, 0)
    
    negative_angles = FE_Core.corners(-180..-100)
    positive_angles = FE_Core.corners(100..180)
    FE_Core_angle = negative_angles + positive_angles
    FE_Core_angle.output("WG.01","Forbidden, WG.01: NITWG Angle < 80°")
    

    All errors are shown (Linux, Ubuntu 24.04). Version is 0.30.1.

    Matthias

  • Is there or is not, an upper limit default to
    number of errors displayed? And was the
    test case of sufficient size, to expose that?

  • Hi @dick_freebird,

    you're right! ... I forgot to mention that.

    You can set the limit to a high value, but if there are may violations (>10M), it's better to write the markers to a layout layer. You will not browse single markers in that case.

    Matthias

Sign In or Register to comment.