Hi <@U016HSAA3RQ>, <@U017X0NM2E7>, I was seeing th...
# shuttle-precheck
s
Hi @jeffdi, @Mitch Bailey, I was seeing the following error:
SPDX COMPLIANCE FILE UNICODE DECODE EXCEPTION
on doing a precheck locally, for resubmission to mpw-7, which gives me a
{{SPDX COMPLIANCE CHECK FAILED}}
message. I have attached the precheck.log and spdx_compliance_report.log for more details. I was also seeing a warning:
HIERARCHY CHECK FAILED: Module user_analog_project_wrapper isn't instantiated in caravan
. I have a user_analog_project_wrapper.spice file in my GitHub repo, which instantiates the user_analog_project wrapper, in case that could be the issue. I saw these error messages on precheck on the efabless side as well (screenshot attached) for precheck id:
0e178b7f-e795-4431-8a8c-a961effcde9c
. @Abhinav Uppal
m
You have several vi swap files in your repo. I think all you need to do is delete them. These are the ones shown in the log, but it says there are 145
Copy code
/Volumes/export/isn/soumil/efabless/caravan_reram_crossbar/mag/.swp
/Volumes/export/isn/soumil/efabless/caravan_reram_crossbar/precheck_results/22_NOV_2022___01_00_23/logs/.precheck.log.swp
/Volumes/export/isn/soumil/efabless/caravan_reram_crossbar/precheck_results/22_NOV_2022___01_00_23/logs/.spdx_compliance_report.log.swp
/Volumes/export/isn/soumil/efabless/caravan_reram_crossbar/verilog/rtl/.user_defines.v.swo
/Volumes/export/isn/soumil/efabless/caravan_reram_crossbar/verilog/rtl/.user_defines.v.swp
You could try adding
.*swp
to
.gitignore
. As for the hierarchy check, I’ll look into it a bit more, but is your
user_analog_project_wrapper.spice
in the
netgen
directory?
s
thanks! I’ll try that. Yes, the
user_analog_project_wrapper.spice
should be in the
netgen
directory.
j
We are having exactly the same hierarchy issue on the online precheck, even with a gds that passed the precheck before, could it be a platform issue?
s
@Mitch Bailey I tried deleting some files for SPDX compliance check but some seem important like
user_defines.v
,
.spiceinit
,
sky130B_setup.tcl
. I attached screenshots of the latest precheck I ran on the efabless side (precheck id:
070f7fb7-2401-4465-9533-14a080f510b7
).
m
@Soumil Jain The vi swap files are temporary files created when you open a file in vi. If the computer crashes or you close the window with vi open, the files get left behind. You probably don’t want these files in your repo. If you’re sure no one is editing the file, you can delete the .swp files. If you don’t want to add them in the future, add `.swp` (etc) to your
.gitignore
file. Do not delete files that do not begin with
.
, as these may be necessary (
Makefile
,
user_defines.v
).
@Jorge Marin From Soumil’s log file, it looks like the hierarchy check is just a warning. Does this cause precheck to fail?
s
Thanks, I deleted all the .swp files and added `.swp` to the
.gitignore
as well. I think the
[ERROR] - SPDX COMPLIANCE FILE UNICODE DECODE EXCEPTION
is because of the other necessary files (
user_defines.v
,
Makefile
, etc). The documentation for
SPDX Compliance failed
on mpw_precheck github mentions we should add
SPDX header
in the beginning of the files, but I am unsure of how to go about this..
m
The default
Makefile
, etc should have the SPDX header
Copy code
# SPDX-FileCopyrightText: 2020 Efabless Corporation
# 
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      <http://www.apache.org/licenses/LICENSE-2.0>
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
You shouldn’t have UNICODE exceptions in your files - are you using a language other than English?
s
It is English
I see the SPDX header -
x
@Mitch Bailey I've been having the same hierarchy check failing issues and it causes the precheck to fail since it is a part of the Consistency step. I believe it is a problem with the latest precheck tool release
m
Thanks, @Soumil Jain @Xiaochen Ni. I’ll try to duplicate the problem.
x
Thank you
m
Looks like they’re preparing an
mpw-7h
tag that will hopefully solve this problem.
👍 1
Well,
mpw-7h
will probably solve the current consistency check problem, but I think it will cause another. I created a pull-request to
mpw_precheck
that should patch things, but it’s kinda kludgy, so I don’t know it will be accepted. Testing and feedback appreciated. https://github.com/efabless/mpw_precheck/pull/164
This patch has been merged. Try pulling mpw_precheck (
05fbcdaa43583f438826e9be2e2a258647515cea
) and rerunning. Please post if there are any remaining problems.
s
Thanks @Mitch Bailey, I no longer see the warning:
HIERARCHY CHECK FAILED: Module user_analog_project_wrapper isn't instantiated in caravan.
However, I still see
[ERROR] - SPDX COMPLIANCE FILE UNICODE DECODE EXCEPTION
error messages. I am also seeing a
XOR CHECK FAILED
warning and the following error message:
[ERROR] - XOR CHECK FILE NOT FOUND in /Volumes/export/isn/soumil/efabless/caravan_reram_crossbar/precheck_results/23_NOV_2022___19_51_58/logs/xor_check.total
. My gds passed the xor check before.
Attached are precheck log, spdx compliance report and xor check log.
m
Your XOR problem is due to
Copy code
Loading "/Volumes/export/isn/soumil/efabless/mpw_precheck/checks/xor_check/erase_box.tcl" from command line.
"sky130(vendor)" is not one of the CIF input styles Magic knows.
the magic tech file has probably been updated. Can you log an issue to
mpw_precheck
?
@Soumil Jain cloned your repo. There’s a unicode error here.
Copy code
caravan_reram_crossbar/verilog/rtl/.nfs00000000098f8db5000097a0
Why do you have a file system lock file in your repo? I’m seeing the same SPDX compliance issues. Found out why these are being flagged, and it looks like a script error, but don’t know why it’s just for you.
1
@Soumil Jain I found that if you rename your directory to
caravel_reram_crossbar
you won’t get any errors. 😆
🤣 1
s
Thanks @Mitch Bailey, the SPDX compliance fix seems to be working from mpw_precheck commit
05fbcdaa43583f438826e9be2e2a258647515cea
. I logged an issue regarding the xor check on
mpw_precheck
- https://github.com/efabless/mpw_precheck/issues/151#issuecomment-1326921868 Running precheck on the efabless side however still throws the
SPDX compliance check failed
warning and a
SUBMODULE HOOKS CHECK FAILED: The user power port vccd1 is not connected to the correct power domain in the top level netlist. It is connected to mprj/vccd1 but it should be connected to vccd1_core.
warning (precheck id -
48d8f6c0-4b55-4c7a-a844-613bc7dfb6d2
). Screenshots of precheck.log from the efabless side are attached.
precheck_log_efabless_1.png,precheck_log_efabless_2.png
m
Submitted a PR to caravel and caravel-lite. Those repos will need to be updated, the retagged (requires an update to mpw_precheck too), and the precheck docker image recreated.
s
Thanks!
Thanks @Mitch Bailey, I was able to successfully pass a precheck and tapeout job! I had a question regarding the pdk variant though. I was trying to open the final gds after finishing the tapeout job through the
Open Galaxy
platform, using klayout. However, I was unable to locate the
sky130B
tech file. Since my design uses rerams from
sky130B
variant, these would show up as an unnamed
201/20
layer in klayout with the default
sky130A
tech file loaded. I hope this is just a matter of finding the right location of
sky130B
tech file on the
open galaxy
platform, and nothing to do with the final gds having a missing reram layer..