mirror of
https://github.com/openhwgroup/cvw
synced 2025-02-03 02:05:21 +00:00
added frequency configs for makefile
This commit is contained in:
parent
fd3920b217
commit
c806c4c68a
@ -24,9 +24,11 @@ export SAIFPOWER ?= 0
|
|||||||
CONFIGDIR ?= ${WALLY}/pipelined/config
|
CONFIGDIR ?= ${WALLY}/pipelined/config
|
||||||
CONFIGFILES ?= $(shell find $(CONFIGDIR) -name rv*_*)
|
CONFIGFILES ?= $(shell find $(CONFIGDIR) -name rv*_*)
|
||||||
CONFIGFILESTRIM = $(notdir $(CONFIGFILES))
|
CONFIGFILESTRIM = $(notdir $(CONFIGFILES))
|
||||||
|
FREQS = 25 50 100 150 200 250 300 350 400
|
||||||
|
k = 3 6
|
||||||
print:
|
print:
|
||||||
|
echo $(k)
|
||||||
echo $(CONFIGFILESTRIM)
|
echo $(CONFIGFILESTRIM)
|
||||||
echo $(DIRS)
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@echo "Basic synthesis procedure for Wally:"
|
@echo "Basic synthesis procedure for Wally:"
|
||||||
@ -39,24 +41,25 @@ rv%.log: rv%
|
|||||||
echo $<
|
echo $<
|
||||||
|
|
||||||
|
|
||||||
DIRS = rv32e #rv32gc rv64ic rv64gc rv32ic
|
DIRS = rv32e rv32gc rv64ic rv32ic rv64gc
|
||||||
# DELDIRS = rv32e rv32gc rv64ic rv64gc rv32ic
|
# DELDIRS = rv32e rv32gc rv64ic rv64gc rv32ic
|
||||||
# CONFIGSUBDIRS = _FPUoff _noMulDiv _noVirtMem _PMP0 _PMP16 _orig
|
# CONFIGSUBDIRS = _FPUoff _noMulDiv _noVirtMem _PMP0 _PMP16 _orig
|
||||||
|
bpred:
|
||||||
|
@$(foreach kval, $(k), rm -rf $(CONFIGDIR)/rv64gc_bpred_$(kval);)
|
||||||
|
@$(foreach kval, $(k), cp -r $(CONFIGDIR)/rv64gc $(CONFIGDIR)/rv64gc_bpred_$(kval);)
|
||||||
|
@$(foreach kval, $(k), sed -i 's/BPRED_SIZE.*/BPRED_SIZE $(kval)/g' $(CONFIGDIR)/rv64gc_bpred_$(kval)/wally-config.vh;)
|
||||||
|
@$(foreach kval, $(k), make synth DESIGN=wallypipelinedcore CONFIG=rv64gc_bpred_$(kval) TECH=sky90 FREQ=500 MAXCORES=4 --jobs;)
|
||||||
copy:
|
copy:
|
||||||
@$(foreach dir, $(DIRS), rm -rf $(CONFIGDIR)/$(dir)_orig;)
|
@$(foreach dir, $(DIRS), rm -rf $(CONFIGDIR)/$(dir)_orig;)
|
||||||
@$(foreach dir, $(DIRS), cp -r $(CONFIGDIR)/$(dir) $(CONFIGDIR)/$(dir)_orig;)
|
@$(foreach dir, $(DIRS), cp -r $(CONFIGDIR)/$(dir) $(CONFIGDIR)/$(dir)_orig;)
|
||||||
@$(foreach dir, $(DIRS), sed -i 's/WAYSIZEINBYTES.*/WAYSIZEINBYTES 512/g' $(CONFIGDIR)/$(dir)_orig/wally-config.vh;)
|
@$(foreach dir, $(DIRS), sed -i 's/WAYSIZEINBYTES.*/WAYSIZEINBYTES 512/g' $(CONFIGDIR)/$(dir)_orig/wally-config.vh;)
|
||||||
@$(foreach dir, $(DIRS), sed -i 's/NUMWAYS.*/NUMWAYS 1/g' $(CONFIGDIR)/$(dir)_orig/wally-config.vh;)
|
@$(foreach dir, $(DIRS), sed -i 's/NUMWAYS.*/NUMWAYS 1/g' $(CONFIGDIR)/$(dir)_orig/wally-config.vh;)
|
||||||
@$(foreach dir, $(DIRS), sed -i "s/RAM_RANGE.*/RAM_RANGE 34\'h01FF/g" $(CONFIGDIR)/$(dir)_orig/wally-config.vh ;)
|
@$(foreach dir, $(DIRS), sed -i "s/RAM_RANGE.*/RAM_RANGE 34\'h01FF/g" $(CONFIGDIR)/$(dir)_orig/wally-config.vh ;)
|
||||||
|
@$(foreach dir, $(DIRS), sed -i 's/BPRED_SIZE.*/BPRED_SIZE 5/g' $(CONFIGDIR)/$(dir)_orig/wally-config.vh;)
|
||||||
|
|
||||||
|
|
||||||
del:
|
del:
|
||||||
@$(foreach dir, $(DIRS), rm -rf $(CONFIGDIR)/$(dir)_orig;)
|
@$(foreach dir, $(DIRS), rm -rf $(CONFIGDIR)/$(dir)_*;)
|
||||||
@$(foreach dir, $(DIRS), rm -rf $(CONFIGDIR)/$(dir)_FPUoff;)
|
|
||||||
@$(foreach dir, $(DIRS), rm -rf $(CONFIGDIR)/$(dir)_PMP16;)
|
|
||||||
@$(foreach dir, $(DIRS), rm -rf $(CONFIGDIR)/$(dir)_PMP0;)
|
|
||||||
@$(foreach dir, $(DIRS), rm -rf $(CONFIGDIR)/$(dir)_noVirtMem;)
|
|
||||||
@$(foreach dir, $(DIRS), rm -rf $(CONFIGDIR)/$(dir)_noMulDiv;)
|
|
||||||
|
|
||||||
configs: $(DIRS)
|
configs: $(DIRS)
|
||||||
$(DIRS):
|
$(DIRS):
|
||||||
@ -76,21 +79,23 @@ $(DIRS):
|
|||||||
cp -r $(CONFIGDIR)/$@_FPUoff $(CONFIGDIR)/$@_PMP0
|
cp -r $(CONFIGDIR)/$@_FPUoff $(CONFIGDIR)/$@_PMP0
|
||||||
sed -i 's/PMP_ENTRIES \(64\|16\|0\)/PMP_ENTRIES 0/' $(CONFIGDIR)/$@_PMP0/wally-config.vh
|
sed -i 's/PMP_ENTRIES \(64\|16\|0\)/PMP_ENTRIES 0/' $(CONFIGDIR)/$@_PMP0/wally-config.vh
|
||||||
|
|
||||||
# No Virtual Memory
|
|
||||||
rm -rf $(CONFIGDIR)/$@_noVirtMem
|
|
||||||
cp -r $(CONFIGDIR)/$@_PMP0 $(CONFIGDIR)/$@_noVirtMem
|
|
||||||
sed -i 's/VIRTMEM_SUPPORTED 1/VIRTMEM_SUPPORTED 0/' $(CONFIGDIR)/$@_noVirtMem/wally-config.vh
|
|
||||||
|
|
||||||
#no muldiv
|
#no muldiv
|
||||||
rm -rf $(CONFIGDIR)/$@_noMulDiv
|
rm -rf $(CONFIGDIR)/$@_noMulDiv
|
||||||
cp -r $(CONFIGDIR)/$@_noVirtMem $(CONFIGDIR)/$@_noMulDiv
|
cp -r $(CONFIGDIR)/$@_PMP0 $(CONFIGDIR)/$@_noMulDiv
|
||||||
sed -i 's/1 *<< *12/0 << 12/' $(CONFIGDIR)/$@_noMulDiv/wally-config.vh
|
sed -i 's/1 *<< *12/0 << 12/' $(CONFIGDIR)/$@_noMulDiv/wally-config.vh
|
||||||
|
|
||||||
|
#no priv
|
||||||
|
rm -rf $(CONFIGDIR)/$@_noPriv
|
||||||
|
cp -r $(CONFIGDIR)/$@_noMulDiv $(CONFIGDIR)/$@_noPriv
|
||||||
|
sed -i 's/ZICSR_SUPPORTED *1/ZICSR_SUPPORTED 0/' $(CONFIGDIR)/$@_noPriv/wally-config.vh
|
||||||
|
|
||||||
|
freqs:
|
||||||
|
@$(foreach freq, $(FREQS), make synth DESIGN=wallypipelinedcore CONFIG=rv32e TECH=sky130 FREQ=$(freq) MAXCORES=1;)
|
||||||
|
|
||||||
allsynth: $(CONFIGFILESTRIM)
|
allsynth: $(CONFIGFILESTRIM)
|
||||||
|
|
||||||
$(CONFIGFILESTRIM):
|
$(CONFIGFILESTRIM):
|
||||||
make synth DESIGN=wallypipelinedcore CONFIG=$@ TECH=sky90 FREQ=500 MAXCORES=1
|
make synth DESIGN=wallypipelinedcore CONFIG=$@ TECH=sky130 FREQ=1000 MAXCORES=1
|
||||||
|
|
||||||
|
|
||||||
synth:
|
synth:
|
||||||
|
Loading…
Reference in New Issue
Block a user