https://open-source-silicon.dev logo
#openlane
Title
# openlane
w

Wajeh ul hasan

10/14/2020, 1:13 PM
Hello, I have been running OPENLANE, but when I tried to run the OPENLANE with more than 1 verilog files [top module, sub modules]. The process was terminated at the hierarchy step in synthesis. It could not read the sub modules in the
src
directory The error says:
Top module:  \memory_core
`ERROR: Module `\sram_2_16_1_scn4m_subm' referenced in module `\memory_core' in cell
\dmem' is not part of the design.
a

Amr Gouhar

10/14/2020, 1:17 PM
in the config.tcl file you need to have VERILOG_FILES set correctly, so it can either be:
Copy code
set ::env(VERILOG_FILES) [glob $::env(DESIGN_DIR)/src/*.v]
or just
Copy code
set ::env(VERILOG_FILES) "$::env(DESIGN_DIR)/src/*.v"
you may need to change this based on the hierarchy of files you have.
w

Wajeh ul hasan

10/14/2020, 1:39 PM
Yes, I have,
set ::env(VERILOG_FILES) [glob $::env(DESIGN_DIR)/src/*.v]
and it reads the top module successfully. The problem arises with the modules instantiated in it, the Verilog files of these sub modules are separate but in the same directory as that of the top module.
a

Amr Gouhar

10/14/2020, 1:47 PM
could you share this directory or how it's structured?
w

Wajeh ul hasan

10/14/2020, 3:53 PM
openlane /design_name/src
src
>
topmodule.v
,
submodule1.v
,
submodule2.v
...
a

Amr Gouhar

10/14/2020, 4:06 PM
Well, this is strange. Is there a way you could share the files with me; for me to take a look at my end?
a

Ahmed Ghazy

10/14/2020, 8:25 PM
@Wajeh ul hasan: Could you try explicitly listing them in order so as to read the dependencies first? e.g.,
"module1.v module2.v"
etc.
w

Wajeh ul hasan

10/16/2020, 3:29 PM
@Ahmed Ghazy Umm.. I do not understand your point. I would have different names of the modules for example ALU, Counter, etc Nomenclature should not have any effect ?