Update: We have rectified the SPDX Compliance Chec...
# sky130
d
Update: We have rectified the SPDX Compliance Check errors, but still the script stops after Check 7. Please consider this error to be urgently clarified at the earliest.
m
@Marwan Abbas Looks like it may be failing at the magic DRC step. @Daniel Giftson This is a local precheck, correct? Not on the platform, right? It looks like you’re using a pdk with commit
7198cf6
. I don’t see this pdk in
volare ls-remote
. Did you custom build it?
d
Yes. This is a local precheck. And I am following the exact steps as mentioned here - https://github.com/efabless/caravel_user_project/blob/main/docs/source/index.rst#section-quickstart
So what do we need to exactly change here - do we need to enable the version of Open PDK mentioned above for Sky130A?
By the way, we didn't custom-build it. And we installed pdk through "make setup"
m
@Daniel Giftson ok. Looks like you’re doing everything right. Does
volare ls
return
7198cf6
as the highlighted commit? What is the date?
What does this return when run in the project directory?
Copy code
grep OPEN_PDKS_COMMIT Makefile
d
Just a minute
20230923_065906.jpg
This is what I am getting
m
what about
volare ls
?
d
20230923_070403.jpg
m
Thanks. I have to go out for most of the day, but hopefully this is enough information for @Marwan Abbas to look into it.
d
OK. It would be good if someone could solve this issue as early as possible, as we have got a precheck deadline for UNIC-CASS within next 10 hours.
Anyways. Thanks @Mitch Bailey
m
Ok. I was looking at the sky130 commit. Open_pdks commit matches. Sorry for the confusion. Can you share
precheck_results/22_SEP_2023___22_50_19/logs/precheck.log
and any other files in the same directory with similar mod times?
d
Yes. Just a min
The following is the precheck log contents. 2023-09-23 012028 - [INFO] - {{EXTRACTING FILES}} Extracting compressed files in: /home/ucass/Work/DNN_ACC_IITGN 2023-09-23 012028 - [INFO] - {{Project Type Info}} digital 2023-09-23 012028 - [INFO] - {{Project GDS Info}} user_project_wrapper: 9bd279596180ef4f93d1c095054f239386abe017 2023-09-23 012028 - [INFO] - {{Tools Info}} KLayout: v0.28.5 | Magic: v8.3.420 2023-09-23 012028 - [INFO] - {{PDKs Info}} SKY130A: 7198cf647113f56041e02abf3eb623692820c5e1 | Open PDKs: 78b7bc32ddb4b6f14f76883c2e2dc5b5de9d1cbc 2023-09-23 012028 - [INFO] - {{START}} Precheck Started, the full log 'precheck.log' will be located in '/home/ucass/Work/DNN_ACC_IITGN/precheck_results/23_SEP_2023___01_20_28/logs' 2023-09-23 012028 - [INFO] - {{PRECHECK SEQUENCE}} Precheck will run the following checks: [License, Makefile, Default, Documentation, Consistency, GPIO-Defines, XOR, Magic DRC, Klayout FEOL, Klayout BEOL, Klayout Offgrid, Klayout Metal Minimum Clear Area Density, Klayout Pin Label Purposes Overlapping Drawing, Klayout ZeroArea, OEB, LVS] 2023-09-23 012028 - [INFO] - {{STEP UPDATE}} Executing Check 1 of 16: License 2023-09-23 012029 - [INFO] - An approved LICENSE (Apache-2.0) was found in /home/ucass/Work/DNN_ACC_IITGN. 2023-09-23 012029 - [INFO] - {{MAIN LICENSE CHECK PASSED}} An approved LICENSE was found in project root. 2023-09-23 012031 - [INFO] - An approved LICENSE (Apache-2.0) was found in /home/ucass/Work/DNN_ACC_IITGN. 2023-09-23 012032 - [INFO] - An approved LICENSE (Apache-2.0) was found in /home/ucass/Work/DNN_ACC_IITGN. 2023-09-23 012033 - [INFO] - An approved LICENSE (Apache-2.0) was found in /home/ucass/Work/DNN_ACC_IITGN. 2023-09-23 012034 - [INFO] - An approved LICENSE (Apache-2.0) was found in /home/ucass/Work/DNN_ACC_IITGN. 2023-09-23 012035 - [INFO] - An approved LICENSE (Apache-2.0) was found in /home/ucass/Work/DNN_ACC_IITGN. 2023-09-23 012036 - [INFO] - An approved LICENSE (Apache-2.0) was found in /home/ucass/Work/DNN_ACC_IITGN. 2023-09-23 012036 - [INFO] - {{SUBMODULES LICENSE CHECK PASSED}} No prohibited LICENSE file(s) was found in project submodules 2023-09-23 012038 - [INFO] - {{SPDX COMPLIANCE CHECK PASSED}} Project is compliant with the SPDX Standard 2023-09-23 012038 - [INFO] - {{STEP UPDATE}} Executing Check 2 of 16: Makefile 2023-09-23 012038 - [INFO] - {{MAKEFILE CHECK PASSED}} Makefile valid. 2023-09-23 012038 - [INFO] - {{STEP UPDATE}} Executing Check 3 of 16: Default 2023-09-23 012038 - [INFO] - {{README DEFAULT CHECK PASSED}} Project 'README.md' was modified and is not identical to the default 'README.md' 2023-09-23 012039 - [INFO] - {{CONTENT DEFAULT CHECK PASSED}} Project 'gds' was modified and is not identical to the default 'gds' 2023-09-23 012039 - [INFO] - {{STEP UPDATE}} Executing Check 4 of 16: Documentation 2023-09-23 012040 - [INFO] - {{DOCUMENTATION CHECK PASSED}} Project documentation is appropriate. 2023-09-23 012040 - [INFO] - {{STEP UPDATE}} Executing Check 5 of 16: Consistency 2023-09-23 012047 - [INFO] - PORTS CHECK PASSED: Netlist user_project_wrapper ports match the golden wrapper ports 2023-09-23 012047 - [INFO] - COMPLEXITY CHECK PASSED: Netlist user_project_wrapper contains at least 1 instances (1 instances). 2023-09-23 012047 - [INFO] - MODELING CHECK PASSED: Netlist user_project_wrapper is structural. 2023-09-23 012047 - [INFO] - LAYOUT CHECK PASSED: The GDS layout for user_project_wrapper matches the provided structural netlist. 2023-09-23 012047 - [INFO] - POWER CONNECTIONS CHECK PASSED: All instances in user_project_wrapper are connected to power 2023-09-23 012047 - [INFO] - PORT TYPES CHECK PASSED: Netlist user_project_wrapper port types match the golden wrapper port types. 2023-09-23 012047 - [INFO] - {{NETLIST CONSISTENCY CHECK PASSED}} user_project_wrapper netlist passed all consistency checks. 2023-09-23 012047 - [INFO] - {{CONSISTENCY CHECK PASSED}} The user netlist and the top netlist are valid. 2023-09-23 012047 - [INFO] - {{STEP UPDATE}} Executing Check 6 of 16: GPIO-Defines 2023-09-23 012047 - [INFO] - GPIO-DEFINES: Checking verilog/rtl/user_defines.v, parsing files: ['/home/ucass/mpw_precheck/checks/gpio_defines_check/verilog_assets/gpio_modes_base.v', '/home/ucass/Work/DNN_ACC_IITGN/verilog/rtl/user_defines.v', '/home/ucass/mpw_precheck/checks/gpio_defines_check/verilog_assets/gpio_modes_observe.v'] 2023-09-23 012049 - [INFO] - GPIO-DEFINES report path: /home/ucass/Work/DNN_ACC_IITGN/precheck_results/23_SEP_2023___01_20_28/outputs/reports/gpio_defines.report 2023-09-23 012049 - [INFO] - {{GPIO-DEFINES CHECK PASSED}} The user verilog/rtl/user_defines.v is valid. 2023-09-23 012049 - [INFO] - {{STEP UPDATE}} Executing Check 7 of 16: XOR 2023-09-23 012116 - [INFO] - {{XOR CHECK UPDATE}} Total XOR differences: 0, for more details view /home/ucass/Work/DNN_ACC_IITGN/precheck_results/23_SEP_2023___01_20_28/outputs/user_project_wrapper.xor.gds 2023-09-23 012116 - [INFO] - {{XOR CHECK PASSED}} The GDS file has no XOR violations.
precheck.log.txt
m
Thanks. It may take some debugging to get to the route cause. Are you able to share your updated repo so we can try to replicate the problem?
d
So you want me to share the updated repo link with you. Is it?
Can you confirm this?
@Mitch Bailey I have shared the updated repo with you through dm.
m
When I run the local precheck, I get 2 errors - OEB and LVS.
LVS is easy to fix. In
lvs/user_project_wrapper/lvs_config.json
, change
user_proj_example.v
to
user_proj_mac.v
. OEB might be a true error. All your gpio’s have a default configuration of
GPIO_MODE_MGMT_STD_BIDIRECTIONAL
. In this configuration,
gpio[37:5]
are controlled by the mgmt_core by default. Fortunately in this mode, the user area
io_in[37:5]
will be a copy of the input to the mgmt_core. On the other hand, the user area
io_out[*]
, which are connected to non_fixed signals, will never be available on
gpio[*]
. In order to output the user area
io_out[*]
, the io must be (re-)configured in one of the
GPIO_MODE_USER_STD
output modes and the corresponding
io_oeb[*]
must be low. If
io_oeb[*]
are low, user area output
io_out[*]
will be driving
io_in[*]
, so you might want to programmatically set each
io_oeb
to high for input and low for output. In the current design, it appears that
io_oeb
is unconnected.
d
Ok. Thanks for the assistance. Got the errors rectified and successfully ran the precheck. 👍
👍 2