求助,三段式状态机ISim的仿真问题
时间:10-02
整理:3721RD
点击:
always @ ( posedge ui_clk ) begin
if( rst )
ddr_ctrl_cs <=0;
else
ddr_ctrl_cs <=ddr_ctrl_ns;
end
always @(rst or ddr_ctrl_cs or ddr_idle) begin
case(ddr_ctrl_cs)
0: if(ddr_idle) ddr_ctrl_ns = 1;
1: ddr_ctrl_ns = 5;
5: if(ddr_idle) ddr_ctrl_ns = 2;
else ddr_ctrl_ns = 5; //*****加此句ISIM仿真结果为1,不加为2
endcase
end
(1)

(2)

有没有else语句的区别是什么?对于没有else分支的组合逻辑,会产生什么结果
ddr_idle与ddr_ctrl_cs的关系为:
ddr_idle在ddr_ctrl_cs=1 的时候跳为0
用modelsim仿真,加不加else分支,结果都一样。但是如果ISE的ISim仿真 ,结果就会如上述2图
