mirror of
https://github.com/VLSIDA/OpenRAM.git
synced 2026-09-04 08:44:12 +02:00
Debug initial docker run scripts
This commit is contained in:
@@ -3,68 +3,76 @@ include $(TOP_DIR)/openram.mk
|
||||
|
||||
.DEFAULT_GOAL := install
|
||||
|
||||
# Keep it locally if they didn't specify
|
||||
PDK_ROOT ?= $(TOP_DIR)
|
||||
|
||||
# Skywater PDK SRAM library
|
||||
SRAM_GIT_REPO ?= https://github.com/google/skywater-pdk-libs-sky130_fd_bd_sram.git
|
||||
SRAM_GIT_COMMIT ?= 9fa642baaf01110b59ac2783beba9a4fda03aeaf
|
||||
SRAM_LIBRARY ?= $(TOP_DIR)/sky130_fd_bd_sram
|
||||
SRAM_LIB_DIR ?= $(PDK_ROOT)/sky130_fd_bd_sram
|
||||
SRAM_LIB_GIT_REPO ?= https://github.com/google/skywater-pdk-libs-sky130_fd_bd_sram.git
|
||||
SRAM_LIB_GIT_COMMIT ?= main
|
||||
|
||||
# Open PDKs
|
||||
PDK_ROOT ?= $(TOP_DIR)/open_pdks
|
||||
OPEN_PDKS_REPO ?= https://github.com/RTimothyEdwards/open_pdks.git
|
||||
OPEN_PDKS ?= $(PDK_ROOT)/sky130/sky130A
|
||||
|
||||
OPEN_PDKS_DIR ?= $(PDK_ROOT)/open_pdks
|
||||
OPEN_PDKS_GIT_REPO ?= https://github.com/RTimothyEdwards/open_pdks.git
|
||||
OPEN_PDKS_GIT_COMMIT ?= 1.0.156
|
||||
SKY130_PDK ?= $(PDK_ROOT)/share/pdk/sky130A
|
||||
|
||||
# Create lists of all the files to copy/link
|
||||
GDS_FILES := $(sort $(wildcard $(SRAM_LIBRARY)/cells/*/*.gds))
|
||||
MAG_FILES := $(sort $(wildcard $(SRAM_LIBRARY)/cells/*/*.mag))
|
||||
GDS_FILES := $(sort $(wildcard $(SRAM_LIB_DIR)/cells/*/*.gds))
|
||||
MAG_FILES := $(sort $(wildcard $(SRAM_LIB_DIR)/cells/*/*.mag))
|
||||
|
||||
SPICE_SUFFIX := spice
|
||||
SPICE_LVS_SUFFIX := lvs.$(SPICE_SUFFIX)
|
||||
SPICE_CALIBRE_SUFFIX := lvs.calibre.$(SPICE_SUFFIX)
|
||||
SPICE_BASE_SUFFIX := base.$(SPICE_SUFFIX)
|
||||
ALL_SPICE_FILES := $(sort $(wildcard $(SRAM_LIBRARY)/cells/*/*.$(SPICE_SUFFIX)))
|
||||
ALL_SPICE_FILES := $(sort $(wildcard $(SRAM_LIB_DIR)/cells/*/*.$(SPICE_SUFFIX)))
|
||||
|
||||
MAGLEF_SUFFIX := maglef
|
||||
MAGLEF_FILES := $(sort $(wildcard $(SRAM_LIBRARY)/cells/*/*.$(MAGLEF_SUFFIX)))
|
||||
MAGLEF_FILES := $(sort $(wildcard $(SRAM_LIB_DIR)/cells/*/*.$(MAGLEF_SUFFIX)))
|
||||
|
||||
MAGICRC_FILE := $(OPEN_PDKS)/libs.tech/magic/sky130A.magicrc
|
||||
MAGICRC_FILE := $(SKY130_PDK)/libs.tech/magic/sky130A.magicrc
|
||||
|
||||
ALL_FILES := $(ALL_SPICE_FILES) $(GDS_FILES) $(MAG_FILES) $(MAGLEF_FILES)
|
||||
|
||||
|
||||
INSTALL_BASE_DIRS := gds_lib mag_lib sp_lib lvs_lib calibre_lvs_lib lef_lib maglef_lib
|
||||
INSTALL_BASE_DIRS := gds_lib mag_lib sp_lib lvs_lib calibre_lvs_lib maglef_lib
|
||||
INSTALL_BASE := $(OPENRAM_HOME)/../technology/sky130
|
||||
INSTALL_DIRS := $(addprefix $(INSTALL_BASE)/,$(INSTALL_BASE_DIRS))
|
||||
|
||||
$(OPEN_PDKS_DIR):
|
||||
@echo "Cloning open_pdks..."
|
||||
git clone $(OPEN_PDKS_GIT_REPO) $(OPEN_PDKS_DIR)
|
||||
cd $(OPEN_PDKS_DIR) && git checkout $(OPEN_PDKS_GIT_COMMIT)
|
||||
|
||||
$(OPEN_PDKS):
|
||||
git clone $(OPEN_PDKS_REPO) $(PDK_ROOT)
|
||||
cd $(PDK_ROOT) &&\
|
||||
$(PDK_ROOT)/configure --enable-sky130-pdk
|
||||
make -C $(PDK_ROOT)
|
||||
$(SKY130_PDK): $(OPEN_PDKS_DIR)
|
||||
@echo "Installing open_pdks..."
|
||||
cd $(OPEN_PDKS_DIR) &&\
|
||||
./configure --prefix=$(PDK_ROOT) --enable-sky130-pdk \
|
||||
--disable-openlane --disable-irsim --disable-xschem --disable-qflow
|
||||
@sleep 5
|
||||
make -C $(OPEN_PDKS_DIR) install
|
||||
|
||||
.PHONY: $(SRAM_LIBRARY) $(OPEN_PDKS) $(INSTALL_DIRS) install
|
||||
|
||||
install: $(SRAM_LIBRARY) $(INSTALL_DIRS) $(OPEN_PDKS)
|
||||
install: $(SRAM_LIB_DIR) $(SKY130_PDK) $(INSTALL_DIRS)
|
||||
@echo "Installing sky130 SRAM PDK..."
|
||||
@echo "PDK_ROOT='$(PDK_ROOT)'"
|
||||
@echo "SRAM_LIBRARY='$(SRAM_LIBRARY)'"
|
||||
@echo "OPEN_PDKS='$(OPEN_PDKS)'"
|
||||
make install
|
||||
@echo "SRAM_LIB_DIR='$(SRAM_LIB_DIR)'"
|
||||
@echo "SKY130_PDK='$(SKY130_PDK)'"
|
||||
@true
|
||||
.PHONY: install
|
||||
|
||||
$(SRAM_LIBRARY):
|
||||
git clone $(SRAM_GIT_REPO) $(SRAM_LIBRARY)
|
||||
|
||||
.PHONY: $(SRAM_LIBRARY) $(INSTALL_DIRS) install
|
||||
$(SRAM_LIB_DIR):
|
||||
@echo "Cloning SRAM library..."
|
||||
git clone $(SRAM_LIB_GIT_REPO) $(SRAM_LIB_DIR)
|
||||
cd $(SRAM_LIB_DIR) && git checkout $(SRAM_LIB_GIT_COMMIT)
|
||||
|
||||
.PHONY: $(INSTALL_DIRS)
|
||||
|
||||
$(INSTALL_BASE)/gds_lib: $(GDS_FILES)
|
||||
@echo
|
||||
@echo "Setting up GDS cell library for OpenRAM."
|
||||
@echo "=================================================================="
|
||||
mkdir -p $@
|
||||
@cp -va $? $@
|
||||
cp -va $? $@
|
||||
@echo "=================================================================="
|
||||
@echo
|
||||
|
||||
@@ -146,20 +154,16 @@ tests:
|
||||
.PHONY: tests
|
||||
|
||||
|
||||
mount:
|
||||
docker run -it -v $(TOP_DIR):/openram \
|
||||
-e OPENRAM_HOME=/openram/compiler \
|
||||
-e OPENRAM_TECH=/openram/technology \
|
||||
vlsida/openram-ubuntu:latest
|
||||
.PHONY: macros
|
||||
|
||||
|
||||
uninstall:
|
||||
rm -rf $(SRAM_LIBRARY)
|
||||
rm -rf $(PDK_ROOT)
|
||||
clean:
|
||||
rm -rf $(SKY130_PDK)
|
||||
rm -f $(INSTALL_BASE)/tech/.magicrc
|
||||
rm -f $(INSTALL_BASE)/mag_lib/.magicrc
|
||||
rm -f $(INSTALL_BASE)/lef_lib/.magicrc
|
||||
rm -f $(INSTALL_BASE)/maglef_lib/.magicrc
|
||||
rm -rf $(INSTALL_DIRS)
|
||||
.PHONY: clean
|
||||
|
||||
uninstall: clean
|
||||
rm -rf $(SRAM_LIB_DIR)
|
||||
rm -rf $(OPEN_PDKS_DIR)
|
||||
.PHONY: uninstall
|
||||
|
||||
Reference in New Issue
Block a user