s3c6410 NAND 控制器tacls, twrph0, twrph1参数确定

来源:互联网 发布:梗的网络意思 编辑:程序博客网 时间:2024/06/05 03:38

【转】原文地址:http://blog.csdn.net/it_114/article/details/6259649

本文是我在原文的基础上对与6410的平台进行了少量的修改,一下红色粗体部分是我自己修改的,其余全部为转载原作者编写。


这三个参数对于NandFlash的读写操作来说是比较重要的,没搞清楚这三个参数,后面的事就不用提了,那这三个参数到底是干什么的呢,我们怎么样去配置他们呢,今天我花了点时间研究了一下这三个参数。在datasheet中对他们的时序有下面两种图示,一种是写命令或者地址的情况,一种是读写数据的情况:

  

由上图可知,这三个参数控制的是Nand Flash 信号线CLE/ALE与写控制信号nWE的时序关系。

TACLS:表示CLT/ALE的建立时间(setup time)。

TWRPH0:表示nWE/nRE持续的时间。

TWRPH1:表示写进去的数据起作用的时间(hold time)。

结合上面的图,就可以看出TACLS就相当于tCLS和tALS参数,TWRPH0就相当于tWP,而TWRPH1就相当于tCLH和TALH

 

     

 

上图中有两种电压,1.8和3.3,我们的K9F2G08U0A工作时的电压时3.3V,所以应该选用3.3V对应的时序要求,NandFlash的工作电压在哪里看呢,还是datasheet,如下图所示:

从上图我们可以很容易得看出K9F2G08U0A工作时的电压是3.3V。

那这三个参数在哪里确定呢,它们的值又是怎么算呢?在NFCON这个寄存器中,还是datasheet:

由于我们的HCLK是133MHz,周期也就是7.5ns,可以设

TACLS=2,即2*7.5ns=15ns > 12ns;TWRPH0=1,及2*7.5ns=15ns > 12ns;TWRPH1=0,即1*7.5ns=7.5ns > 5ns

符合时序要求 ,不过目前很多人在设置这个值时都设为最大值


0 0