hdl / conda-eda

Conda recipes for FPGA EDA tools for simulation, synthesis, place and route and bitstream generation.
https://anaconda.org/LiteX-Hub
Apache License 2.0
94 stars 27 forks source link

add open_pdks package #160

Closed proppy closed 2 years ago

proppy commented 2 years ago

upstream: http://opencircuitdesign.com/open_pdks/ minimal recipe per http://opencircuitdesign.com/open_pdks/install.html:

./configure --enable-sky130-pdk=/path/to/skywater-pdk
make
make install

depends: skywater-pdk #159 https://anaconda.org/LiteX-Hub/magic

proppy commented 2 years ago

@ajelinski anything else we need to do to get it uploaded?

ajelinski commented 2 years ago

It'll be uploaded automatically by the master-package job once all the other jobs succeed: https://github.com/hdl/conda-eda/actions/runs/1845871121

proppy commented 2 years ago

Looks like the build is failing with another error:

  Extracting sky130_ef_sc_hd__fill_12 into sky130_ef_sc_hd__fill_12.ext:
  Error message output from magic script:
  Error while reading cell "sky130_ef_sc_hd__fill_12" (byte position 372): Cell "sky130_fd_sc_hd__fill_4" is used but not defined in this file.
  Error while reading cell "sky130_ef_sc_hd__fill_12" (byte position 372): Rewinding input.  Cells may have been instanced before they were defined.  Consider using "gds ordering on".
  Error while reading cell "sky130_ef_sc_hd__fill_12" (byte position 372): Cell "sky130_fd_sc_hd__fill_2" is used but not defined in this file.
  Error while reading cell "sky130_ef_sc_hd__fill_12" (byte position 372): Rewinding input.  Cells may have been instanced before they were defined.  Consider using "gds ordering on".
  Error while reading cell "sky130_ef_sc_hd__fill_12" (byte position 372): Cell "sky130_fd_sc_hd__decap_6" is used but not defined in this file.
  Error while reading cell "sky130_ef_sc_hd__fill_12" (byte position 372): Rewinding input.  Cells may have been instanced before they were defined.  Consider using "gds ordering on".
  Error while reading cell "sky130_ef_sc_hd__fill_12" (byte position 372): cell sky130_fd_sc_hd__decap_6 was used but not defined.
  Error while reading cell "sky130_ef_sc_hd__fill_12" (byte position 372): cell sky130_fd_sc_hd__fill_2 was used but not defined.
  make[3]: *** [Makefile:1146: digital-hd-A] Error 1
  make[2]: *** [Makefile:940: digital-hd-build-A] Error 2
  make[1]: *** [Makefile:639: all-A] Error 2
  make: *** [Makefile:116: tech-sky130] Error 2
  Error while reading cell "sky130_ef_sc_hd__fill_12" (byte position 372): cell sky130_fd_sc_hd__fill_4 was used but not defined.
  Please name the cell before extracting.
  freeMagic called with NULL argument.
  Total of 2 warnings.
  "sky130_fd_sc_hd__decap_6" has a zero timestamp; it should be written out
      to establish a correct timestamp.
  "sky130_fd_sc_hd__fill_2" has a zero timestamp; it should be written out
      to establish a correct timestamp.
  "sky130_fd_sc_hd__fill_4" has a zero timestamp; it should be written out
      to establish a correct timestamp.
  Traceback (most recent call last):
    File "../common/foundry_install.py", line 2245, in <module>
      cwd = destlibdir,
    File "../common/foundry_install.py", line 277, in subprocess_run
      raise SystemError("".join(emsg))
  SystemError: Command magic failed with exit code: -11

Maybe @RTimothyEdwards has a clue?

proppy commented 2 years ago

This does seems related to the UNAMED error we saw in #161, see: https://github.com/RTimothyEdwards/magic/blob/bfdf1227a704dbbfb78f42f69965ccc2c81989c1/commands/CmdE.c#L1051 https://github.com/RTimothyEdwards/magic/blob/bfdf1227a704dbbfb78f42f69965ccc2c81989c1/commands/CmdE.c#L1017

ajelinski commented 2 years ago

Also this might be helpful:

2022-02-15T09:30:40.4701151Z Traceback (most recent call last):
2022-02-15T09:30:40.4701428Z   File "../common/foundry_install.py", line 2245, in <module>
2022-02-15T09:30:40.4701686Z     cwd = destlibdir,
2022-02-15T09:30:40.4701970Z   File "../common/foundry_install.py", line 277, in subprocess_run
2022-02-15T09:30:40.4702263Z     raise SystemError("".join(emsg))
2022-02-15T09:30:40.4702895Z SystemError: Command magic failed with exit code: -11
2022-02-15T09:30:40.4703391Z   magic -dnull -noconsole $SRC_DIR/sky130/sky130A/libs.ref/sky130_fd_sc_hd/spice/generate_magic.tcl

BTW There are a lot of these Cell "sky130_fd_sc_hd__fill_4" is used but not defined in this file. errors even in the successful job so they might not be really relevant. I guess this " Rewinding input. Cells may have been instanced before they were defined." must be true but then I'm not sure why this isn't just a warning.

Is this building problem observable outside this repository's CI and Conda?

proppy commented 2 years ago

I suspect the actual fatal error is:

  Please name the cell before extracting.

as it seems to be a fatal error according to the code path I linked in https://github.com/hdl/conda-eda/issues/160#issuecomment-1040144529

ajelinski commented 2 years ago

Oh yeah, it seems you're right. I've restarted the CI to have the package uploaded.

I guess we'll see in the coming days how it works in the nightly CI but I'm afraid I'll have to disable the job if it turns out to be failing too often. Unfortunately a single failing job prohibits other packages from being updated.