- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NAND Flash控制器
S3C2410板的Nand Flash支持由两部分组成:Nand Flash控制器(集成在S3C2410 CPU)和Nand Flash存储芯片(K9F1208U0B)两部分组成。当要访问Nand Flash中的数据时,必须通过Nand Flash控制器发送命令才能完成。所以Nand Flash相当于S3C2410的一个外设,而不位于它的内存地址区.
为了支持NAND Flash的启动装载,S3C2410A配置了一个叫Steppingstone的内部SRAM缓冲器。当系统启动时,NAND Flash存储器的前4KB将被自动加载到Steppingstone中,然后系统自动执行这些载入的启动代码。
一般情况下,这4KB的启动代码需要将NAND Flash中的内容复制到SDRAM中。使用S3C2410A内部硬件ECC功能可以对NAND Flash的数据进行有效性的检查。复制完成后,将在SDRAM中执行主程序。
NAND Flash控制其具有以下特性:
* NAND Flash模式:支持读/擦除/编程NAND Flash存储器。
* 自动启动模式:复位后,启动代码被传送到Steppingstone中。传送完毕后,启动代码在Steppingstone中执行。
* 具备硬件ECC(校验码:Error Correction Code)生成模块(硬件生成校验码,通过软件校验)
* NAND Flash启动以后,4KB的内部SRAM缓冲器Steppingstone可以作为其他用途使用。
* NAND Flash控制器不能通过DMA访问,可以使用LDM/STM指令来代替DMA操作。
自启动模式的执行步骤如下:
(1)完成复位
(2)如果自动启动模式使能,NAND Flash存储器的前4KB自动复制到Steppingstone内部缓冲器;
(3)Steppingstone映射到nGCS0;
(4)CPU在Steppingstone的4KB内部缓冲器中开始执行启动代码。
注意:在自动启动模式下,不进行ECC检测。因此,应确保NAND Flash的前4KB不能有位错误(一般NAND Flash厂家都能确保)。
NAND Flash模式需要进行以下配置:
(1)通过NFCONF寄存器设置NAND Flash配置;
(2)将NAND Flash命令写入NFCONF寄存器;
(3)将NAND Flash地址写入NFADDR寄存器;
(4)通过NFSTAT寄存器检查NAND Flash状态,并读/写数据。在读操作之前或者编程操作之后应该检查R/nB信号。
引脚配置
D[7:0] 数据/命令/地址的输入/输出口(与数据总线共享)
CLE 命令锁存使能(输出)
ALE 地址锁存使能(输出)
nFCE NAND Flash片选使能(输出)
nFRE NAND Flash读使能(输出)
nFWE NAND Flash写使能(输出)
R/nB NAND Flash就绪/忙(输入)
系统启动和NAND Flash所需的配置如下:
(1)OM[1:0]=00b:使能NAND Flash控制器为自动启动模式;
(2)NAND Flash存储器的页面大小应该为512字节;
(3)NCON:NAND Flash存储器寻址步数选择。0为3步;1为4步寻址。
相关寄存器
NAND Flash配置寄存器
NFCONF 地址0x4E000000
NAND Flash命令设置寄存器
NFCMD 地址0x4E000004
NAND Flash地址设置寄存器
NFADDR 地址0x4E000008
NAND Flash数据寄存器
NFDATA 地址0x4E00000C
NAND Flash操作状态寄存器
NFSTAT 地址0x4E000010
NAND Flash ECC寄存器
NFECC 地址0x4E000014
下面针对三星的K9F1208U0M为例说明nand flash的读写。
NAND Flash物理组成
正如硬盘的盘片被分为磁道,每个磁道又分为若干扇区,一块nand flash也分为若干block,每个block分为如干page。一般而言,block、page之间的关系随着芯片的不同而不同,典型的分配是这样的:
1block = 32page
1page = 512bytes(datafield) + 16bytes(oob)
需要注意的是,对于flash的读写都是以一个page开始的,但是在读写之前必须进行flash的擦写,而擦写则是以一个block为单位的。按照这种组织方式形成三类地址
您可能关注的文档
最近下载
- 2025年安徽皖江高速公路有限公司高速公路收费人员招聘笔试模拟试题及答案解析.docx VIP
- T GXTC 0014—2024 新式(现制)茶饮 茉莉花茶基底茶.pdf VIP
- 急性视网膜坏死综合征.pptx VIP
- 正常人体解剖学资料.pdf
- 《相遇问题》(说课稿)-2024-2025学年四年级上册数学青岛版[001].docx VIP
- 外伤性感染性眼内炎防治专家共识(2023年版)PPT.pptx VIP
- 第1节 功(教学课件)物理沪粤版2024九年级上册.pptx VIP
- 违规接受吃请检讨书(推荐).docx VIP
- 2024新人教版一年级数学上册认识立体图形第三单元教材整体分析.pdf VIP
- 密码技术应用员理论知识题及答案.doc VIP
文档评论(0)