Pre-tapeout version
diff --git a/Makefile b/Makefile index 188e997..db0ce22 100644 --- a/Makefile +++ b/Makefile
@@ -21,13 +21,13 @@ # Install lite version of caravel, (1): caravel-lite, (0): caravel CARAVEL_LITE?=1 -ifeq ($(CARAVEL_LITE),1) +ifeq ($(CARAVEL_LITE),1) CARAVEL_NAME := caravel-lite - CARAVEL_REPO := https://github.com/efabless/caravel-lite + CARAVEL_REPO := https://github.com/efabless/caravel-lite CARAVEL_BRANCH := main else CARAVEL_NAME := caravel - CARAVEL_REPO := https://github.com/efabless/caravel + CARAVEL_REPO := https://github.com/efabless/caravel CARAVEL_BRANCH := master endif @@ -36,7 +36,7 @@ # Include Caravel Makefile Targets .PHONY: % : check-caravel -%: +%: export CARAVEL_ROOT=$(CARAVEL_ROOT) && $(MAKE) -f $(CARAVEL_ROOT)/Makefile $@ # Verify Target for running simulations @@ -55,14 +55,27 @@ DV_PATTERNS = $(foreach dv, $(PATTERNS), verify-$(dv)) TARGET_PATH=$(shell pwd) VERIFY_COMMAND="cd ${TARGET_PATH}/verilog/dv/$* && export SIM=${SIM} && make" -$(DV_PATTERNS): verify-% : ./verilog/dv/% +$(DV_PATTERNS): verify-% : ./verilog/dv/% docker run -v ${TARGET_PATH}:${TARGET_PATH} -v ${PDK_ROOT}:${PDK_ROOT} \ -v ${CARAVEL_ROOT}:${CARAVEL_ROOT} \ -e TARGET_PATH=${TARGET_PATH} -e PDK_ROOT=${PDK_ROOT} \ -e CARAVEL_ROOT=${CARAVEL_ROOT} \ -u $(id -u $$USER):$(id -g $$USER) efabless/dv_setup:latest \ sh -c $(VERIFY_COMMAND) - + +OPENLANE_TAG ?= mpw-3a +OPENLANE_IMAGE_NAME ?= efabless/openlane:$(OPENLANE_TAG) +.PHONY: mount +mount: + docker run -it -v $(OPENLANE_ROOT):/openlane \ + -v $(PDK_ROOT):$(PDK_ROOT) \ + -v $(PWD):/project \ + -v $(CARAVEL_ROOT):$(CARAVEL_ROOT) \ + -e PDK_ROOT=$(PDK_ROOT) \ + -e CARAVEL_ROOT=$(CARAVEL_ROOT) \ + -u $(shell id -u $(USER)):$(shell id -g $(USER)) \ + $(OPENLANE_IMAGE_NAME) /bin/bash + # Openlane Makefile Targets BLOCKS = $(shell cd openlane && find * -maxdepth 0 -type d) .PHONY: $(BLOCKS) @@ -89,7 +102,7 @@ # Create symbolic links to caravel's main files .PHONY: simlink simlink: check-caravel -### Symbolic links relative path to $CARAVEL_ROOT +### Symbolic links relative path to $CARAVEL_ROOT $(eval MAKEFILE_PATH := $(shell realpath --relative-to=openlane $(CARAVEL_ROOT)/openlane/Makefile)) $(eval PIN_CFG_PATH := $(shell realpath --relative-to=openlane/user_project_wrapper $(CARAVEL_ROOT)/openlane/user_project_wrapper_empty/pin_order.cfg)) mkdir -p openlane @@ -115,7 +128,7 @@ # Uninstall Caravel .PHONY: uninstall -uninstall: +uninstall: ifeq ($(SUBMODULE),1) git config -f .gitmodules --remove-section "submodule.$(CARAVEL_NAME)" git add .gitmodules @@ -129,7 +142,7 @@ # Install Openlane .PHONY: openlane -openlane: +openlane: cd openlane && $(MAKE) openlane # Install Pre-check @@ -151,7 +164,7 @@ pdk-nonnative: skywater-pdk skywater-library skywater-timing open_pdks docker run --rm -v $(PDK_ROOT):$(PDK_ROOT) -v $(CARAVEL_ROOT):$(CARAVEL_ROOT) -e CARAVEL_ROOT=$(CARAVEL_ROOT) -e PDK_ROOT=$(PDK_ROOT) -u $(shell id -u $(USER)):$(shell id -g $(USER)) efabless/openlane:current sh -c "cd $(CARAVEL_ROOT); make build-pdk; make gen-sources" -# Clean +# Clean .PHONY: clean clean: cd ./verilog/dv/ && \ @@ -177,5 +190,5 @@ .PHONY: help help: - cd $(CARAVEL_ROOT) && $(MAKE) help + cd $(CARAVEL_ROOT) && $(MAKE) help @$(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' | sort | egrep -v -e '^[^[:alnum:]]' -e '^$@$$'
diff --git a/gds/sky130_sram_1kbyte_1rw1r_32x256_8.gds.gz b/gds/sky130_sram_1kbyte_1rw1r_32x256_8.gds.gz index 818d229..8e34a20 100644 --- a/gds/sky130_sram_1kbyte_1rw1r_32x256_8.gds.gz +++ b/gds/sky130_sram_1kbyte_1rw1r_32x256_8.gds.gz Binary files differ
diff --git a/gds/sky130_sram_1kbyte_1rw1r_8x1024_8.gds.gz b/gds/sky130_sram_1kbyte_1rw1r_8x1024_8.gds.gz index 003b41b..7fafac5 100644 --- a/gds/sky130_sram_1kbyte_1rw1r_8x1024_8.gds.gz +++ b/gds/sky130_sram_1kbyte_1rw1r_8x1024_8.gds.gz Binary files differ
diff --git a/gds/sky130_sram_1kbyte_1rw_32x256_8.gds.gz b/gds/sky130_sram_1kbyte_1rw_32x256_8.gds.gz index 8d7fb2b..68be125 100644 --- a/gds/sky130_sram_1kbyte_1rw_32x256_8.gds.gz +++ b/gds/sky130_sram_1kbyte_1rw_32x256_8.gds.gz Binary files differ
diff --git a/gds/sky130_sram_2kbyte_1rw1r_32x512_8.gds.gz b/gds/sky130_sram_2kbyte_1rw1r_32x512_8.gds.gz index 0df24bc..ad31ddd 100644 --- a/gds/sky130_sram_2kbyte_1rw1r_32x512_8.gds.gz +++ b/gds/sky130_sram_2kbyte_1rw1r_32x512_8.gds.gz Binary files differ
diff --git a/gds/sky130_sram_2kbyte_1rw_32x512_8.gds.gz b/gds/sky130_sram_2kbyte_1rw_32x512_8.gds.gz index e6f426f..480569b 100644 --- a/gds/sky130_sram_2kbyte_1rw_32x512_8.gds.gz +++ b/gds/sky130_sram_2kbyte_1rw_32x512_8.gds.gz Binary files differ
diff --git a/gds/sky130_sram_4kbyte_1rw1r_32x1024_8.gds.gz b/gds/sky130_sram_4kbyte_1rw1r_32x1024_8.gds.gz index 79c2771..37bfbb8 100644 --- a/gds/sky130_sram_4kbyte_1rw1r_32x1024_8.gds.gz +++ b/gds/sky130_sram_4kbyte_1rw1r_32x1024_8.gds.gz Binary files differ
diff --git a/gds/sky130_sram_4kbyte_1rw_32x1024_8.gds.gz b/gds/sky130_sram_4kbyte_1rw_32x1024_8.gds.gz index af6967b..4922b7c 100644 --- a/gds/sky130_sram_4kbyte_1rw_32x1024_8.gds.gz +++ b/gds/sky130_sram_4kbyte_1rw_32x1024_8.gds.gz Binary files differ
diff --git a/gds/sky130_sram_4kbyte_1rw_64x512_8.gds.gz b/gds/sky130_sram_4kbyte_1rw_64x512_8.gds.gz index e0662ac..d6dd67a 100644 --- a/gds/sky130_sram_4kbyte_1rw_64x512_8.gds.gz +++ b/gds/sky130_sram_4kbyte_1rw_64x512_8.gds.gz Binary files differ
diff --git a/gds/sky130_sram_8kbyte_1rw1r_32x2048_8.gds.gz b/gds/sky130_sram_8kbyte_1rw1r_32x2048_8.gds.gz index 98845d1..5002267 100644 --- a/gds/sky130_sram_8kbyte_1rw1r_32x2048_8.gds.gz +++ b/gds/sky130_sram_8kbyte_1rw1r_32x2048_8.gds.gz Binary files differ
diff --git a/gds/sky130_sram_8kbyte_1rw_64x1024_8.gds.gz b/gds/sky130_sram_8kbyte_1rw_64x1024_8.gds.gz index a9b59c3..60f54b6 100644 --- a/gds/sky130_sram_8kbyte_1rw_64x1024_8.gds.gz +++ b/gds/sky130_sram_8kbyte_1rw_64x1024_8.gds.gz Binary files differ