|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
我之前遇到一个问题vivado 不能正确识别条件编译指令
verilog文件中设置了如图所示的条件编译。但是vivado 似乎没有正确识别。HD65_LH_AND2X5这个模块,没有定义。但是按照条件编译本来也不会编译它,vivado综合的时候提示不能找到HD65_LH_AND2X5。 我可以删除条件编译的选择部分,但是还有其他文件也有相同的问题,不能一个一个的修改。
- // synopsys translate_off
- `define mux_2_1_RTL_model
- assign clk_in1_gated = clk_1_enable & clk_in1;
- assign clk_in2_gated = clk_2_enable & clk_in2;
- assign clk_out = clk_in1_gated | clk_in2_gated ;
- // synopsys translate_on
- `ifdef mux_2_1_RTL_model
- `else
- HD65_LH_AND2X5 z_cell_mux_2_1_and_1 ( .A(clk_1_enable), .B(clk_in1), .Z(clk_in1_gated) );
- HD65_LH_AND2X5 z_cell_mux_2_1_and_2 ( .A(clk_2_enable), .B(clk_in2), .Z(clk_in2_gated) );
- HD65_LH_OR2X10 z_cell_mux_2_1_or ( .A(clk_in1_gated), .B(clk_in2_gated), .Z(clk_out) );
- `endif
复制代码
后来发现,当我删除
- synopsys translate_off
- synopsys translate_on
复制代码
这两句后。条件编译功能正常了。这两句是综合引导语句。我疑惑的是,针对synopsys的综合引导语句为什么对vivado也有用?有没有懂行的说一下
|
|