Makefile (18179bb94b8c149c762736130fe066de348c6f60) | Makefile (720dd6218ef4045360a23b552db1137cbb6e6e59) |
---|---|
1#*************************************************************************************** 2# Copyright (c) 2024 Beijing Institute of Open Source Chip (BOSC) 3# Copyright (c) 2020-2024 Institute of Computing Technology, Chinese Academy of Sciences 4# Copyright (c) 2020-2021 Peng Cheng Laboratory 5# 6# XiangShan is licensed under Mulan PSL v2. 7# You can use this software according to the terms and conditions of the Mulan PSL v2. 8# You may obtain a copy of Mulan PSL v2 at: --- 20 unchanged lines hidden (view full) --- 29SIM_TOP_V = $(RTL_DIR)/$(SIM_TOP).$(RTL_SUFFIX) 30 31SCALA_FILE = $(shell find ./src/main/scala -name '*.scala') 32TEST_FILE = $(shell find ./src/test/scala -name '*.scala') 33 34MEM_GEN = ./scripts/vlsi_mem_gen 35MEM_GEN_SEP = ./scripts/gen_sep_mem.sh 36 | 1#*************************************************************************************** 2# Copyright (c) 2024 Beijing Institute of Open Source Chip (BOSC) 3# Copyright (c) 2020-2024 Institute of Computing Technology, Chinese Academy of Sciences 4# Copyright (c) 2020-2021 Peng Cheng Laboratory 5# 6# XiangShan is licensed under Mulan PSL v2. 7# You can use this software according to the terms and conditions of the Mulan PSL v2. 8# You may obtain a copy of Mulan PSL v2 at: --- 20 unchanged lines hidden (view full) --- 29SIM_TOP_V = $(RTL_DIR)/$(SIM_TOP).$(RTL_SUFFIX) 30 31SCALA_FILE = $(shell find ./src/main/scala -name '*.scala') 32TEST_FILE = $(shell find ./src/test/scala -name '*.scala') 33 34MEM_GEN = ./scripts/vlsi_mem_gen 35MEM_GEN_SEP = ./scripts/gen_sep_mem.sh 36 |
37IMAGE ?= temp | |
38CONFIG ?= DefaultConfig 39NUM_CORES ?= 1 40MFC ?= 1 41 | 37CONFIG ?= DefaultConfig 38NUM_CORES ?= 1 39MFC ?= 1 40 |
41ifneq ($(shell echo "$(MAKECMDGOALS)" | grep ' '),) 42$(error At most one target can be specified) 43endif |
|
42 43ifeq ($(MAKECMDGOALS),) 44GOALS = verilog 45else 46GOALS = $(MAKECMDGOALS) 47endif 48 49# common chisel args --- 13 unchanged lines hidden (view full) --- 63endif 64 65ifneq ($(XSTOP_PREFIX),) 66RELEASE_ARGS += --xstop-prefix $(XSTOP_PREFIX) 67DEBUG_ARGS += --xstop-prefix $(XSTOP_PREFIX) 68PLDM_ARGS += --xstop-prefix $(XSTOP_PREFIX) 69endif 70 | 44 45ifeq ($(MAKECMDGOALS),) 46GOALS = verilog 47else 48GOALS = $(MAKECMDGOALS) 49endif 50 51# common chisel args --- 13 unchanged lines hidden (view full) --- 65endif 66 67ifneq ($(XSTOP_PREFIX),) 68RELEASE_ARGS += --xstop-prefix $(XSTOP_PREFIX) 69DEBUG_ARGS += --xstop-prefix $(XSTOP_PREFIX) 70PLDM_ARGS += --xstop-prefix $(XSTOP_PREFIX) 71endif 72 |
73ifeq ($(IMSIC_USE_TL),1) 74RELEASE_ARGS += --imsic-use-tl 75DEBUG_ARGS += --imsic-use-tl 76PLDM_ARGS += --imsic-use-tl 77endif 78 |
|
71# co-simulation with DRAMsim3 72ifeq ($(WITH_DRAMSIM3),1) 73ifndef DRAMSIM3_HOME 74$(error DRAMSIM3_HOME is not set) 75endif 76override SIM_ARGS += --with-dramsim3 77endif 78 --- 56 unchanged lines hidden (view full) --- 135 mill -i xiangshan[$(CHISEL_VERSION)].runMain $(FPGATOP) --help 136 137$(TOP_V): $(SCALA_FILE) 138 mkdir -p $(@D) 139 $(TIME_CMD) mill -i xiangshan[$(CHISEL_VERSION)].runMain $(FPGATOP) \ 140 --target-dir $(@D) --config $(CONFIG) $(FPGA_MEM_ARGS) \ 141 --num-cores $(NUM_CORES) $(RELEASE_ARGS) 142ifeq ($(MFC),1) | 79# co-simulation with DRAMsim3 80ifeq ($(WITH_DRAMSIM3),1) 81ifndef DRAMSIM3_HOME 82$(error DRAMSIM3_HOME is not set) 83endif 84override SIM_ARGS += --with-dramsim3 85endif 86 --- 56 unchanged lines hidden (view full) --- 143 mill -i xiangshan[$(CHISEL_VERSION)].runMain $(FPGATOP) --help 144 145$(TOP_V): $(SCALA_FILE) 146 mkdir -p $(@D) 147 $(TIME_CMD) mill -i xiangshan[$(CHISEL_VERSION)].runMain $(FPGATOP) \ 148 --target-dir $(@D) --config $(CONFIG) $(FPGA_MEM_ARGS) \ 149 --num-cores $(NUM_CORES) $(RELEASE_ARGS) 150ifeq ($(MFC),1) |
143 $(MEM_GEN_SEP) "$(MEM_GEN)" "$(TOP_V).conf" "$(RTL_DIR)" | 151 $(MEM_GEN_SEP) "$(MEM_GEN)" "$@.conf" "$(@D)" |
144endif 145 @git log -n 1 >> .__head__ 146 @git diff >> .__diff__ 147 @sed -i 's/^/\/\// ' .__head__ 148 @sed -i 's/^/\/\//' .__diff__ 149 @cat .__head__ .__diff__ $@ > .__out__ 150 @mv .__out__ $@ 151 @rm .__head__ .__diff__ 152 153verilog: $(TOP_V) 154 155$(SIM_TOP_V): $(SCALA_FILE) $(TEST_FILE) 156 mkdir -p $(@D) 157 @echo -e "\n[mill] Generating Verilog files..." > $(TIMELOG) 158 @date -R | tee -a $(TIMELOG) 159 $(TIME_CMD) mill -i xiangshan[$(CHISEL_VERSION)].test.runMain $(SIMTOP) \ 160 --target-dir $(@D) --config $(CONFIG) $(SIM_MEM_ARGS) \ 161 --num-cores $(NUM_CORES) $(SIM_ARGS) --full-stacktrace 162ifeq ($(MFC),1) | 152endif 153 @git log -n 1 >> .__head__ 154 @git diff >> .__diff__ 155 @sed -i 's/^/\/\// ' .__head__ 156 @sed -i 's/^/\/\//' .__diff__ 157 @cat .__head__ .__diff__ $@ > .__out__ 158 @mv .__out__ $@ 159 @rm .__head__ .__diff__ 160 161verilog: $(TOP_V) 162 163$(SIM_TOP_V): $(SCALA_FILE) $(TEST_FILE) 164 mkdir -p $(@D) 165 @echo -e "\n[mill] Generating Verilog files..." > $(TIMELOG) 166 @date -R | tee -a $(TIMELOG) 167 $(TIME_CMD) mill -i xiangshan[$(CHISEL_VERSION)].test.runMain $(SIMTOP) \ 168 --target-dir $(@D) --config $(CONFIG) $(SIM_MEM_ARGS) \ 169 --num-cores $(NUM_CORES) $(SIM_ARGS) --full-stacktrace 170ifeq ($(MFC),1) |
163 $(MEM_GEN_SEP) "$(MEM_GEN)" "$(SIM_TOP_V).conf" "$(RTL_DIR)" | 171 $(MEM_GEN_SEP) "$(MEM_GEN)" "$@.conf" "$(@D)" |
164endif 165 @git log -n 1 >> .__head__ 166 @git diff >> .__diff__ 167 @sed -i 's/^/\/\// ' .__head__ 168 @sed -i 's/^/\/\//' .__diff__ 169 @cat .__head__ .__diff__ $@ > .__out__ 170 @mv .__out__ $@ 171 @rm .__head__ .__diff__ --- 51 unchanged lines hidden (view full) --- 223pldm-run: 224 $(MAKE) -C ./difftest pldm-run SIM_TOP=SimTop DESIGN_DIR=$(NOOP_HOME) NUM_CORES=$(NUM_CORES) RTL_SUFFIX=$(RTL_SUFFIX) 225 226pldm-debug: 227 $(MAKE) -C ./difftest pldm-debug SIM_TOP=SimTop DESIGN_DIR=$(NOOP_HOME) NUM_CORES=$(NUM_CORES) RTL_SUFFIX=$(RTL_SUFFIX) 228 229include Makefile.test 230 | 172endif 173 @git log -n 1 >> .__head__ 174 @git diff >> .__diff__ 175 @sed -i 's/^/\/\// ' .__head__ 176 @sed -i 's/^/\/\//' .__diff__ 177 @cat .__head__ .__diff__ $@ > .__out__ 178 @mv .__out__ $@ 179 @rm .__head__ .__diff__ --- 51 unchanged lines hidden (view full) --- 231pldm-run: 232 $(MAKE) -C ./difftest pldm-run SIM_TOP=SimTop DESIGN_DIR=$(NOOP_HOME) NUM_CORES=$(NUM_CORES) RTL_SUFFIX=$(RTL_SUFFIX) 233 234pldm-debug: 235 $(MAKE) -C ./difftest pldm-debug SIM_TOP=SimTop DESIGN_DIR=$(NOOP_HOME) NUM_CORES=$(NUM_CORES) RTL_SUFFIX=$(RTL_SUFFIX) 236 237include Makefile.test 238 |
239include src/main/scala/device/standalone/standalone_device.mk 240 |
|
231.PHONY: verilog sim-verilog emu clean help init bump bsp $(REF_SO) | 241.PHONY: verilog sim-verilog emu clean help init bump bsp $(REF_SO) |