Kauser Johar
02/04/2022, 12:47 PMmake verify-io_ports
, I get the below error.
/<path>/caravel/verilog/rtl/caravel_netlists.v:90: Include file mgmt_core_wrapper.v not found
Marwan Abbas
02/04/2022, 1:13 PMmake install_mcw
, in order to get the mgmt_core_wrapperKauser Johar
02/04/2022, 1:13 PM/<path>/caravel/verilog/rtl/caravel_netlists.v:47: Include file libs.ref/sky130_sram_macros/verilog/sky130_sram_2kbyte_1rw1r_32x512_8.v not found
Kauser Johar
02/04/2022, 1:14 PMYou need toI did that. I have the, in order to get the mgmt_core_wrappermake install_mcw
mgmt_core_wrapper/
folder at the root after building that command.Kauser Johar
02/04/2022, 1:14 PMiverilog
command in the Makefile
doesn't include mgmt_core_wrapper
in the search path.Marwan Abbas
02/04/2022, 1:15 PMKauser Johar
02/04/2022, 1:15 PM/<path>/caravel/verilog/rtl/caravel_netlists.v:47: Include file libs.ref/sky130_sram_macros/verilog/sky130_sram_2kbyte_1rw1r_32x512_8.v not found
Marwan Abbas
02/04/2022, 1:19 PMMarwan Abbas
02/04/2022, 1:21 PMmake pdk-with-sram
Kauser Johar
02/04/2022, 1:22 PMMarwan Abbas
02/04/2022, 1:24 PMKauser Johar
02/04/2022, 1:29 PMKauser Johar
02/04/2022, 1:30 PMMarwan Abbas
02/04/2022, 1:44 PMKauser Johar
02/04/2022, 3:34 PMexport MCW=pico
. We also run make install_mcw
.
And after cloning the repo that contains the Pico
CPU, we sort of end up with two versions of the mgmt_core_wrapper
.
So the Makefile
for simulation needs to pick up the correct core if you end up with both. Ideally if MCW=pico
is set, then the search path should look for caravel_pico
and not mgmt_core_wrapper
directory. I hope this makes sense.Marwan Abbas
02/04/2022, 3:36 PMKauser Johar
02/04/2022, 3:36 PMMitch Bailey
02/04/2022, 3:52 PMcaravel-lite/Makefile
is missing make full-pdk
and make full-pdk-with-sram
. I couldn't figure out how to install all the libraries with the current Makefile.Marwan Abbas
02/04/2022, 5:08 PMMitch Bailey
02/04/2022, 11:37 PMlocal@ciic-cvc:~/mpw-5/test-mpw5a/caravel_example/caravel$ git diff
diff --git a/Makefile b/Makefile
index 806cfd1..f4055e9 100644
--- a/Makefile
+++ b/Makefile
@@ -1213,6 +1213,11 @@ pdk-with-sram: pdk
.PHONY: pdk
pdk: skywater-pdk skywater-library skywater-timing open_pdks build-pdk gen-sources
+full-pdk-with-sram: INSTALL_SRAM=yes
+full-pdk-with-sram: full-pdk
+.PHONY: full-pdk
+full-pdk: skywater-pdk all-skywater-libraries open_pdks build-pdk gen-sources
+
$(PDK_ROOT)/skywater-pdk:
git clone <https://github.com/google/skywater-pdk.git> $(PDK_ROOT)/skywater-pdk
@@ -1230,6 +1235,18 @@ skywater-library: check-env $(PDK_ROOT)/skywater-pdk
git submodule update --init libraries/$(SPECIAL_VOLTAGE_LIBRARY)/latest && \
git submodule update --init libraries/$(PRIMITIVES_LIBRARY)/latest
+.PHONY: all-skywater-libraries
+all-skywater-libraries: skywater-pdk
+ cd $(PDK_ROOT)/skywater-pdk && \
+ git submodule update --init libraries/sky130_fd_sc_hd/latest && \
+ git submodule update --init libraries/sky130_fd_sc_hs/latest && \
+ git submodule update --init libraries/sky130_fd_sc_hdll/latest && \
+ git submodule update --init libraries/sky130_fd_sc_ms/latest && \
+ git submodule update --init libraries/sky130_fd_sc_ls/latest && \
+ git submodule update --init libraries/sky130_fd_sc_hvl/latest && \
+ git submodule update --init libraries/sky130_fd_io/latest && \
+ $(MAKE) timing
+
gen-sources: $(PDK_ROOT)/sky130A
touch $(PDK_ROOT)/sky130A/SOURCES
echo -ne "skywater-pdk " >> $(PDK_ROOT)/sky130A/SOURCES
Supratim Das
02/05/2022, 11:11 AMError message output from magic script:
Can't write file named '(UNNAMED)'
Annotating files in /home/supratim/caravel_tutorial/pdks/open_pdks/sky130/sky130A/libs.ref/sky130_sram_macros/maglef
No CDL file contains sky130_sram_macros device sky130_sram_1kbyte_1rw1r_32x256_8
No CDL file contains sky130_sram_macros device sky130_sram_1kbyte_1rw1r_8x1024_8
No CDL file contains sky130_sram_macros device sram_1rw1r_32_256_8_sky130
No CDL file contains sky130_sram_macros device sky130_sram_2kbyte_1rw1r_32x512_8
make[4]: Leaving directory '/home/supratim/caravel_tutorial/pdks/open_pdks/sky130'
if test "x" != "x" ; then \
echo "Building OSU 12-track-high standard cell library" ;\
make osu-t12-a ;\
fi
if test "x" != "x" ; then \
echo "Building OSU 15-track-high standard cell library" ;\
make osu-t15-a ;\
fi
if test "x" != "x" ; then \
echo "Building OSU 18-track-high standard cell library" ;\
make osu-t18-a ;\
fi
make[3]: Leaving directory '/home/supratim/caravel_tutorial/pdks/open_pdks/sky130'
echo "Ended sky130A PDK staging on "`date` >> sky130A_make.log
make[2]: Leaving directory '/home/supratim/caravel_tutorial/pdks/open_pdks/sky130'
make[2]: Entering directory '/home/supratim/caravel_tutorial/pdks/open_pdks/sky130'
echo "Starting SKY130 PDK migration on "`date` > sky130A_install.log
../common/staging_install.py -std_format \
-source /home/supratim/caravel_tutorial/pdks/open_pdks/sky130/sky130A \
-finalpath /home/supratim/caravel_tutorial/pdks/sky130A \
-variable PDKPATH \
-link_from none 2>&1 | tee -a sky130A_install.log
Installing in target directory /home/supratim/caravel_tutorial/pdks/sky130A
Removing files from target
Copying staging files to target
Done.
Changing local path references from /home/supratim/caravel_tutorial/pdks/open_pdks/sky130/sky130A to /home/supratim/caravel_tutorial/pdks/sky130A
Part 1: Tools
xschem (1 substitution)
xcircuit (1 substitution)
qflow (16 substitutions)
magic (2 substitutions)
Part 2: Libraries
sky130_fd_pr
mag (1 substitution)
maglef (1 substitution)
sky130_ml_xx_hd
sky130_sram_macros
mag (1 substitution)
maglef (1 substitution)
sky130_fd_sc_hd
mag (1 substitution)
maglef (1 substitution)
sky130_fd_sc_hvl
mag (1 substitution)
maglef (1 substitution)
sky130_fd_io
mag (1 substitution)
maglef (1 substitution)
Removing temporary files from destination.
Done with PDK migration.
echo "Ended SKY130 PDK migration on "`date` >> sky130A_install.log
make[2]: Leaving directory '/home/supratim/caravel_tutorial/pdks/open_pdks/sky130'
make[2]: Entering directory '/home/supratim/caravel_tutorial/pdks/open_pdks/sky130'
set -f ; ../common/foundry_install.py -std_format -target /home/supratim/caravel_tutorial/pdks/open_pdks/sky130/sky130A -clean
Done removing staging area.
make[2]: Leaving directory '/home/supratim/caravel_tutorial/pdks/open_pdks/sky130'
make[1]: Leaving directory '/home/supratim/caravel_tutorial/caravel_example'
make: *** [Makefile:38: pdk-with-sram] Error 2
Supratim Das
02/05/2022, 11:11 AMError message output from magic script:
Can't write file named '(UNNAMED)'
Mitch Bailey
02/05/2022, 11:20 AMUNNAMED
error is a known benign warning. That's not a problem. You're running make pdk-with-sram
from a caravel_user_project
clone, correct? Are you on mpw-5a
?Supratim Das
02/05/2022, 11:21 AMMitch Bailey
02/05/2022, 11:25 AMmagic -dnull -noc < /dev/null
Supratim Das
02/05/2022, 11:26 AMMagic 8.3 revision 265 - Compiled on Saturday 05 February 2022 12:35:23 PM IST.
Starting magic under Tcl interpreter
Using the terminal as the console.
Using NULL graphics device.
Processing system .magicrc file
Using technology "minimum", version 0.0
Mitch Bailey
02/05/2022, 11:26 AMMitch Bailey
02/05/2022, 11:29 AMpdks/open_pdks/sky130/sky130A_make.log
?Mitch Bailey
02/05/2022, 11:49 AMSupratim Das
02/05/2022, 11:50 AMMitch Bailey
02/05/2022, 11:51 AMSupratim Das
02/05/2022, 1:16 PMMatt Venn
02/05/2022, 2:39 PMMarwan Abbas
02/05/2022, 4:27 PMMarwan Abbas
02/05/2022, 4:29 PMTim Edwards
02/05/2022, 6:50 PMTim Edwards
02/07/2022, 1:32 PMmake -jX
.