Skip to content

Magic + GF180mcu_fd_pr Editing (Ctrl+P) placed cells error #310

Description

@ollelogdahl

Describe the bug
When updating nfet PCells, Magic has a tendency to break (update not applied successfully, showing an error message, viewport rendering is broken). The issue is sporadic but deterministic.

To Reproduce
Its not very clear what exactly triggers this bug, and I think there are multiple bugs. I am filing this to Magic as well, but as I have not heard anyone else experience this. If you fail to replicate using the steps below, try more combinations of copying cells and changing one of the older cells' properties. Doing this I can quickly get a crash with arbitrary steps.

Steps to reproduce the behavior:

  1. Run sak-pdk gf180mcuD
  2. Run magic
  3. Click Devices 1 > nMOS in the top menu.
  4. Leave everything default and click Create & Close
  5. While this cell is still selected, press c to copy it anywhere.
  6. With the new copied cell selected, press ctrl+p to open properties. Change width to 1um. Press Okay

You now get a popup saying "Error" with nothing more. Clicking details gives:



    while executing
"instance list exists $newinstname"
    (procedure "magic::gencell_change" line 19)
    invoked from within
"magic::gencell_change nfet_03v3_K2E6BN_1 nfet_03v3 gf180mcu {} "
    invoked from within
".params.buttons.okay invoke"
    ("uplevel" body line 1)
    invoked from within
"uplevel #0 [list $w invoke]"
    (procedure "tk::ButtonUp" line 22)
    invoked from within
"tk::ButtonUp .params.buttons.okay"
    (command bound to event)

Closing this down, something about the rendering is broken: the main viewport is filled with black and can only be restored with a restart.

Expected behavior
We should be able to generate cells and tweak them without crashing the application. Very fragile.

Environment:

  • OS: Linux
  • Operating mode: X11
  • Version tag 2026.06

Additional context
Also been reported on the magic repo (RTimothyEdwards/magic#542)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions