irun, ncverilog 不判断头文件

irun, ncverilog does not determine header file

irun 无法确定 define.h 文件。当我这样使用 irun 时

irun -f xxx.f

我收到了这样的错误消息。

irun: E.FMUK the type of the file m_def.h could not be determined.

以上文件由所有'define xxxx组成。我该如何解决这个问题?

m_def.h 重命名为 m_def.vh(或 m_def.v)。

.h 文件扩展名用于 C/C++ 头文件。 Verilog 头文件更多地使用 .vh 扩展名;如果不是,则 .v。 SystemVerilog 头文件应使用 .svh 扩展名。

许多 Verilog/SystemVerilog 模拟器允许 overriding/extending 接受的文件扩展名类型。参考具体模拟器的手册。请注意,一些模拟器除了 C/C++、Verilog、SystemVerilog、VHDL 和其他。建议不要将文件扩展名添加到一种已被另一种语言使用的语言。

在这种情况下,.h 已经与 C/C++ 一起使用,所以不要将 .h 添加到允许的 Verilog/SystemVerilog 文件扩展名中。如果默认不支持 .vh,您可以将其添加到允许的 Verilog 文件扩展名列表中。

您可以使用 irun 命令行选项 - vlog_ext 向 irun 添加新的文件扩展名。 通过在要添加的扩展列表前使用加号 (+),将扩展添加到内置预定义扩展列表。例如,以下选项添加 .rtl 和 .vh。

-vlog_ext +.rtl,.vh