MAX + PLUS II软件版本9.4修复了此问题。
MAX + PLUS II软件可能在需要比较的Verilog HDL设计中错误地综合无符号比较运算符( <
, <=
, >
, >=
, ==
, !=
)。
请考虑以下示例代码:
模块sm(同步,clk); 输入clk; 输出同步; reg同步; reg [9:0] sCnt; 永远@(posedge clk) 如果(sCnt <65) Sync = 0; 其他 Sync = 1; endmodule
在此示例中,编译器将在应使用无符号比较时实现签名比较。使用以下编码样式正确综合UNSIGNED比较的实现:
模块sm(同步,clk); 输入clk; 输出同步; reg同步; reg [9:0] sCnt; 永远@(posedge clk) if(sCnt <10'd65) Sync = 0; 其他 Sync = 1; endmodule
没有回复内容