小编mil*_*man的帖子

如果未设置某个宏,则阻止systemverilog编译

我正在编写systemverilog模块,我需要确保设置某个宏以允许继续编译.

我已经尝试了下面的内容,但它只是给出语法错误"意外的SYSTEM_IDENTIFIER"$致命.

我知道技术上会停止编译,但有人知道更优雅的解决方案吗?

*更正,如果`else分支中的语法不正确,则没有一个分支将成功编译.

`ifdef MACRO_0
// Some code
`elsif MACRO_1
// Some other code
`else
$fatal("MACRO_0 or MACRO_1 must be set for compilation");
`endif
Run Code Online (Sandbox Code Playgroud)

根据建议,将以下信息添加到问题中:

代码位于模块中,但不在initial或always语句中.我希望找到一个解决方案,允许我终止编译,即详细说明hdl.我正在为FPGA实现进行设计,我需要确保没有设置其中一个宏,此代码的其他用户无法进入设计流程的综合阶段.

macros verilog compilation hdl system-verilog

5
推荐指数
1
解决办法
2918
查看次数

标签 统计

compilation ×1

hdl ×1

macros ×1

system-verilog ×1

verilog ×1