好的,谢谢您 ,那我可以不用管这个non-unate路径了,但我还是想弄明白怎样分频才能不出现这个non-unate呢(被这个困扰好多天了 )?我看了一下网表,我的时钟寄存器的D端输入有一个XOR门,并没有使用mux,所以在这种情况下,好像无法使用set_case_analsis,然后我发现好像使用计数器的方法进行分频,不管怎样D端都会有一个XOR门或者OAI2BB2X1之类的门,导致出现non-unate.
就比如如下实现128分频的的RTL代码:
always @(posedge rf_clk or negedge rst_n)
if(!rst_n)
counter <= 6'd0;
else
counter <= counter + 1'b1;
always @(posedge rf_clk or negedge rst_n) if(!rst_n) clk <= 0; else if(counter == 6'd63) clk <= ~clk;
综合出来也会出现一个XOR门,会报non-unate的路径
对此,您有什么好的方法吗?
|