Hi everyone! I'm looking some help regarding using...
# general
x
Hi everyone! I'm looking some help regarding using the efabless market place and the EF_SRAM_1024x32. I'm trying to use it within one module, I'm currently testing every module with cocotb before hardening, so under the module directory (testLinear), i have `linear.v`: My Linear module Verilog code.; `test_linear.py`: My cocotb testbench Python script.; `EF_SRAM_1024x32_wrapper.v`: The wrapper module for the SRAM IP from the Efabless marketplace.;
weights_init_0.mem
:The memory initialization file containing the data to be loaded into the SRAM. ; makefile; and a input data called fromcmvn.json. I have included EF_SRAM_1024x32_stub.v, ram_controller.v, SRAM_1024x32.v in the same directory. When i run the make file it produces an error as such: error: Unknown module type: EF_SRAM_1024x32 2 error(s) during elaboration. * These modules were missing: EF_SRAM_1024x32 referenced 1 times. Just want to know what's the correct way to use this SRAM module? I have attached screenshot for the error, my linear.v file instatiating the SRAM, and the makefile. My second question is, when I'm done testing each single module, and putting everything in the openlane template provided, what's the procedure of using SRAM module? Is there any link or example I can read?
m
@Xiaoyu Wen I may be wrong, but I don’t think the
EF_SRAM_1024x32_stub.v
file is explicitly included in the
EF_SRAM_1024x32_wrapper.v
file. I think you need to explicitly add it to
VERILOG_SOURCES
in your makefile. The same for other verilog modules not explicitly included in the verilog files.
x
@Mitch Bailey Thank you! I'll try it now
@Mitch Bailey that worked! Thank you
👍 1