This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6748 EMIF的extended wait模式疑问

最近在看EMIFA访问NandFlash的程序,发现有个Extended Wait Mode,但是看手册的时候,有几个地方感觉看的不是太明白,想请教下。

首先,手册中说到,在Extended Wait模式下,当EMA_WAIT引脚asserted的时候,会开始插入额外的选通周期(extra strobe cycles),直到EMA_WAIT脚被deactivate。然后EMIFA会返回所设定的选通期(strobe period)的last cycle ,这里这个last cycle我不太理解,是不是指上一个周期的意思?即假如我的选通期(strobe)时间长度设定为10个EMA_CLK,从进入选通状态(strobe)开始到EMA_WAIT脚被assert一共经过了4个EMA_CLK,当EMA_WAIT脚被deactivate的时候,重新回到strobe的第4个EMA_CLK?还是说原来数到的周期数的下一个周期,即第5个EMA_CLK?

(reference manual P783)

第二个问题,我在看数据手册Extended WAIT模式时序图的时候,感觉标注的好像有点问题,比如下面这图,11+2应该是13啊,怎么就算到14个cycles了?

(Datasheet P118)

  • yuke yang 说:
    首先,手册中说到,在Extended Wait模式下,当EMA_WAIT引脚asserted的时候,会开始插入额外的选通周期(extra strobe cycles),直到EMA_WAIT脚被deactivate。然后EMIFA会返回所设定的选通期(strobe period)的last cycle ,这里这个last cycle我不太理解,是不是指上一个周期的意思?即假如我的选通期(strobe)时间长度设定为10个EMA_CLK,从进入选通状态(strobe)开始到EMA_WAIT脚被assert一共经过了4个EMA_CLK,当EMA_WAIT脚被deactivate的时候,重新回到strobe的第4个EMA_CLK?还是说原来数到的周期数的下一个周期,即第5个EMA_CLK?

    是最后一个周期,即第10个周期 ,也许前面并没有9个周期。因为异步通讯不是按严格的周期数来采样的,是按控制信号的边沿来采样的,即然你释放了WAIT,说明你已经准备好了,那在下一个周期将控制信号拉高结束strobe即可。

    yuke yang 说:
    第二个问题,我在看数据手册Extended WAIT模式时序图的时候,感觉标注的好像有点问题,比如下面这图,11+2应该是13啊,怎么就算到14个cycles了?

    这里的数据代表前面参数表的第几个参数,不是周期数。你可以看到,在wai之后,结束strobe的周期数是由11号参数决定的,典型值是4个cycle.