URL
https://opencores.org/ocsvn/yifive/yifive/trunk
Subversion Repositories yifive
[/] [yifive/] [trunk/] [caravel_yifive/] [verilog/] [dv/] [wb_port/] [Makefile] - Rev 18
Go to most recent revision | Compare with Previous | Blame | View Log
# SPDX-FileCopyrightText: 2020 Efabless Corporation## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the License.# You may obtain a copy of the License at## http://www.apache.org/licenses/LICENSE-2.0## Unless required by applicable law or agreed to in writing, software# distributed under the License is distributed on an "AS IS" BASIS,# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.# See the License for the specific language governing permissions and# limitations under the License.## SPDX-License-Identifier: Apache-2.0## Caravel PointersCARAVEL_ROOT ?= ../../../caravelCARAVEL_PATH ?= $(CARAVEL_ROOT)CARAVEL_FIRMWARE_PATH = $(CARAVEL_PATH)/verilog/dv/caravelCARAVEL_VERILOG_PATH = $(CARAVEL_PATH)/verilogCARAVEL_RTL_PATH = $(CARAVEL_VERILOG_PATH)/rtlCARAVEL_BEHAVIOURAL_MODELS = $(CARAVEL_VERILOG_PATH)/dv/caravel## User Project PointersUPRJ_VERILOG_PATH ?= ../../../verilogUPRJ_RTL_PATH = $(UPRJ_VERILOG_PATH)/rtlUPRJ_BEHAVIOURAL_MODELS = ../## RISCV GCCGCC_PATH?=/ef/apps/binGCC_PREFIX?=riscv32-unknown-elfPDK_PATH?=/ef/tech/SW/sky130A## Simulation mode: RTL/GLSIM?=RTL.SUFFIXES:PATTERN = wb_portall: ${PATTERN:=.vcd}hex: ${PATTERN:=.hex}%.vvp: %_tb.v %.hexifeq ($(SIM),RTL)iverilog -DFUNCTIONAL -DSIM -I $(PDK_PATH) \-I $(CARAVEL_BEHAVIOURAL_MODELS) -I $(CARAVEL_RTL_PATH) \-I $(UPRJ_BEHAVIOURAL_MODELS) -I $(UPRJ_RTL_PATH) \$< -o $@elseiverilog -DFUNCTIONAL -DSIM -DGL -I $(PDK_PATH) \-I $(CARAVEL_BEHAVIOURAL_MODELS) -I $(CARAVEL_RTL_PATH) -I $(CARAVEL_VERILOG_PATH) \-I $(UPRJ_BEHAVIOURAL_MODELS) -I$(UPRJ_RTL_PATH) -I $(UPRJ_VERILOG_PATH) \$< -o $@endif%.vcd: %.vvpvvp $<%.elf: %.c $(CARAVEL_FIRMWARE_PATH)/sections.lds $(CARAVEL_FIRMWARE_PATH)/start.s${GCC_PATH}/${GCC_PREFIX}-gcc -I $(CARAVEL_PATH) -march=rv32imc -mabi=ilp32 -Wl,-Bstatic,-T,$(CARAVEL_FIRMWARE_PATH)/sections.lds,--strip-debug -ffreestanding -nostdlib -o $@ $(CARAVEL_FIRMWARE_PATH)/start.s $<%.hex: %.elf${GCC_PATH}/${GCC_PREFIX}-objcopy -O verilog $< $@# to fix flash base addresssed -i 's/@10000000/@00000000/g' $@%.bin: %.elf${GCC_PATH}/${GCC_PREFIX}-objcopy -O binary $< /dev/stdout | tail -c +1048577 > $@# ---- Clean ----clean:rm -f *.elf *.hex *.bin *.vvp *.vcd *.log.PHONY: clean hex all
Go to most recent revision | Compare with Previous | Blame | View Log
