What's in a (layer) name?

I've been trying to clean and add to a .lyp file for this foundry PDK
I'm working on. The displayed layer table in the window seems to
keep repopulating the Layers window name (as seen in Rename)
despite that I manually renamed all the layers, using Rename, to
blank (C/R). That "stuck" within the session but new session
repopulates that field with layer/datatype and a name it found.

In the previous session I had removed the name (blanked) the field in
the Rename popup, like this:

but now something has been inserted (first pic) that is not what was in
the Layers Specification nor the Rename windows' fields.

Now on the flip side, the layer name I put by hand into the Edit>L.ayer>
Layer_Properties form has -disappeared- across an exit & restart. I had
made that field, the displayed name I wanted for each of the layers. Now
all gone. What is the point of a "write-only memory"? What purpose does
a data field that evaporates, have?

So there's two "name" fields neither of which will stay what I entered.
And behind it all is something that re-puts "a" name in the Layers window
that seems to be neither one. The displayed text in the Layers window is
neither field's content as of yesterday, case or characters-exactly. Close
but seemingly from some other source.

Questions -

  • Which one "matters" to things like DRC / extract functioning and the
    compatibility od any code there?

  • What data can be left out of the Layers window Rename fields without
    impairing functionality?

  • Which of the fields (Layers window > Rename, Edit>Layer>Edit Layer
    Specification) should / needs to hold the One True Name? Or is there
    an even-more-meta, "real deal" field somewhere I'm not looking, to rule
    it all?

  • Is there a "data flows from what, to what?" kind of exposition that tells
    "where I should be messing"? That is, specifically, "where does what I
    change, stick around and matter?"

  • Am I even asking the right questions?

And somebody 'splain me again, what the "Layer Index" is, where it can
be seen and touched (permanently) through the GUI, and why or why not
someone might care and want to touch it? It seems to only appear in
documentation and as a "sorting" criterion but how to manipulate?

Also is there a way to toggle within klayout, a "freeze" to the layer basis
that "people who read the news" can't mess up, short of filesystem locks?
Like maybe just a settings-field up around where the technology defines
the .lyp autoload, which might make the loaded file only modifiable to
"visibility" and "validity" but not content behind that (no jacking names,
numbers, "order", for the end user of PDK unless they want to dig for
the radio button in Technology form somewhere)?

I think I've seen scattered hints about developing layers and technologies
"from scratch" but I could sure use the cookbook / "Dummies" version
if such a guide exists. That's different than the point-commands in
alphabetical order, as I'm finding out.

Comments

  • edited July 2024

    Hi @dick_freebird,

    there are some additional options that control display of layers:

    There is also this option which adds missing layers to the layer table, even if not in the .lyp file:

    If you "rename" a layer to "empty", it will basically restore the default behavior. If you really want a empty description, put in a single blank.

    The "name" of the layer properties (with the GDS layer/datatype number) is something else. It is the "database name". Some database formats such as Magic, DXF and CIF have layer names instead of numbers. OASIS primarily has numbers, but also names.

    The database name is basically the "coordinate" of the layer, while the thing you enter in the layer list is what is displayed for the layer. GDS does not have layer names, so putting something into the layer properties will not get saved, while renaming a layer entry in the layer list will be saved to ".lyp" files.

    The layer list is basically a formatted view of the database layers with the option to provide multiple versions (through the tabs), grouping and also the option to leave out layers or to put in a layer multiple times.

    About the questions:

    • For DRC, only the "coordinates" matter. That is GDS layer/datatype or CIF layer name.
    • I hope the explanation about the database vs. display layers clarifies this topic. In short: "Edit/Layer/Edit Layer Specification" -> database layer ("coordinate"), Layer list / (right click) / Rename -> comment for the layer list (along with color, style etc.)
    • And finally: database layer -> stored in stream file, comment -> stored in .lyp file.

    This question has been asked already a few times, but I can't find it right now in the Forum. And regarding documentation, we have ChatGPT now. Here is what it says about the "layer names":

    In KLayout, the term "layer name" refers to the descriptive name given to a layer within the layout. KLayout uses a Layer Properties table where each layer can be assigned a name, along with other properties such as color and visibility.

    Here’s how you can access and modify the layer name in KLayout:

    • Open the Layer Properties Window:
      Open your layout in KLayout.
      Go to the "View" menu and select "Layer Properties" to open the Layer Properties window.

    • Layer Name Field:
      In the Layer Properties window, you will see a list of all the layers used in the layout.
      Each layer entry has a "Name" field where you can specify or modify the name of the layer.

    • Adding or Modifying Layer Names:
      To add or modify a layer name, select the layer from the list.
      Enter the desired name in the "Name" field.
      You can also set other properties for the layer, such as the color, fill pattern, and visibility.

    • Save Changes:
      After setting the name and other properties, click "OK" or "Apply" to save the changes.

    The layer names are helpful for organizing and identifying different parts of the layout, especially when dealing with complex designs with multiple layers.
    Example

    If you have a layer with the purpose of defining metal connections, you might name it "Metal1" or "Metal Layer 1" in the Layer Properties window. This makes it easier to identify and manage the layer within the layout editor.

    Okay, that is bullshit. Partially. I think it is copied from another tool.

    Matthias

Sign In or Register to comment.