@@ -52,7 +52,8 @@ export VERILOG_FILES = $(sort $(wildcard $(SRC_HOME)/common/local/util/
5252 $(SRC_HOME ) /core/cache_subsystem/hpdcache/rtl/src/hwpf_stride/hwpf_stride_wrapper.sv \
5353 $(sort $(wildcard $(SRC_HOME ) /core/cache_subsystem/* .sv) ) \
5454 $(sort $(wildcard $(SRC_HOME ) /core/cache_subsystem/hpdcache/rtl/src/common/* .sv) ) \
55- $(sort $(wildcard $(SRC_HOME ) /core/cache_subsystem/hpdcache/rtl/src/common/macros/blackbox/* .sv) ) \
55+ $(SRC_HOME ) /core/cache_subsystem/hpdcache/rtl/src/common/macros/behav/hpdcache_sram_1rw.sv \
56+ $(SRC_HOME ) /core/cache_subsystem/hpdcache/rtl/src/common/macros/behav/hpdcache_sram_wbyteenable_1rw.sv \
5657 $(sort $(wildcard $(SRC_HOME ) /core/cache_subsystem/hpdcache/rtl/src/utils/* .sv) ) \
5758 $(sort $(wildcard $(SRC_HOME ) /core/cva6_mmu/* .sv) ) \
5859 $(SRC_HOME ) /core/cvfpu/src/fpu_div_sqrt_mvp/hdl/defs_div_sqrt_mvp.sv \
@@ -64,27 +65,27 @@ export VERILOG_FILES = $(sort $(wildcard $(SRC_HOME)/common/local/util/
6465 $(SRC_HOME ) /core/cvfpu/src/fpu_div_sqrt_mvp/hdl/preprocess_mvp.sv \
6566 $(SRC_HOME ) /core/cvxif_example/include/cvxif_instr_pkg.sv \
6667 $(sort $(wildcard $(SRC_HOME ) /core/frontend/* .sv) ) \
67- $(SRC_HOME ) /vendor/pulp-platform/tech_cells_generic/src/rtl/tc_sram.sv \
68- $(PLATFORM_DIR ) /verilog/fakeram7_64x256.sv \
69- $(PLATFORM_DIR ) /verilog/fakeram7_128x64.sv \
70- $(PLATFORM_DIR ) /verilog/fakeram7_64x28.sv \
71- $(PLATFORM_DIR ) /verilog/fakeram7_64x25.sv
68+ $(SRC_HOME ) /vendor/pulp-platform/tech_cells_generic/src/rtl/tc_sram.sv
7269
7370export VERILOG_INCLUDE_DIRS = $(DESIGN_HOME ) /src/$(DESIGN_NICKNAME ) /core/include \
7471 $(DESIGN_HOME ) /src/$(DESIGN_NICKNAME ) /core/cvfpu/src/common_cells/include \
7572 $(DESIGN_HOME ) /src/$(DESIGN_NICKNAME ) /core/cache_subsystem/hpdcache/rtl/include
7673
7774export VERILOG_DEFINES += -D HPDCACHE_ASSERT_OFF
7875
79- export ADDITIONAL_LEFS = $(PLATFORM_DIR ) /lef/fakeram7_64x256.lef \
80- $(PLATFORM_DIR ) /lef/fakeram7_128x64.lef \
81- $(PLATFORM_DIR ) /lef/fakeram7_64x28.lef \
82- $(PLATFORM_DIR ) /lef/fakeram7_64x25.lef
76+ # The RAMs are upstream's, the RTL unmodified, and AUTO_MEMORIES makes
77+ # each a macro, cva6.memories naming its pins and byte enables: the
78+ # D-cache data (hpdcache_sram_wbyteenable_1rw) and directory
79+ # (hpdcache_sram_1rw), and the I-cache data and tag, which surgery.py
80+ # puts behind sram_cache's techno cut in place of pulp's tc_sram.
81+ export SYNTH_VERILOG_SURGERY = $(DESIGN_HOME ) /$(PLATFORM ) /cva6/surgery.py
82+ export AUTO_MEMORIES = 1
83+ export ADDITIONAL_MEMORIES = $(DESIGN_HOME ) /$(PLATFORM ) /cva6/cva6.memories
8384
84- export ADDITIONAL_LIBS = $( PLATFORM_DIR ) /lib/NLDM/fakeram7_64x256.lib \
85- $( PLATFORM_DIR ) /lib/NLDM/fakeram7_128x64.lib \
86- $( PLATFORM_DIR ) /lib/NLDM/fakeram7_64x28.lib \
87- $( PLATFORM_DIR ) /lib/NLDM/fakeram7_64x25.lib
85+ # Kepler LEC off for now: kepler-formal stops on the macros AUTO_MEMORIES
86+ # makes ("cva6_icache_data_sram cannot be found"). A new kepler-formal is
87+ # in the works; the Kepler team rewires LEC for cva6 with it.
88+ export LEC_CHECK = 0
8889
8990export SDC_FILE = $(DESIGN_HOME ) /$(PLATFORM ) /$(DESIGN_NAME ) /constraint.sdc
9091
0 commit comments