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





没有回复内容