当前位置:文档之家› nandflash用法

nandflash用法

6 NAND FLASH CONTORLLER
OVERVIEW
In recent times, NOR flash memory gets high in price while an SDRAM and a NAND flash memory is comparatively economical , motivating some users to execute the boot code on a NAND flash and execute the main code on an SDRAM.
S3C2440A boot code can be executed on an external NAND flash memory. In order to support NAND flash boot loader, the S3C2440A is equipped with an internal SRAM buffer called ‘Steppingstone’.
When booting, the first 4K Bytes of the NAND flash memory will be loaded into Steppingstone and the boot code loaded into Steppingstone will be executed.
Generally, the boot code will copy NAND flash content to SDRAM. Using hardware ECC, the NAND flash data validity will be checked. Upon the completion of the copy, the main program will be executed on the SDRAM.
comparatively 比较地、相当地
motivating v. 激励;刺激;调动…的积极性(motivate的ing形式)
execute vt. 实行;执行;处死
internal n. 内脏;本质adj. 内部的;里面的;体内的;(机构)内部的
Steppingstone n. 踏脚石;进身之阶;达到目的的手段
validity n. [计] 有效性;正确;正确性
content n. 内容,目录;满足;容量adj. 满意的;vt. 使满足
FEATURES
1. Auto boot: The boot code is transferred into 4-kbytes Steppingstone during reset.
After the transfer, the boot
code will be executed on the Steppingstone.
2. NAND Flash memory I/F: Support 256Words, 512Bytes, 1KWords and 2KBytes Page.
3. Software mode: User can directly access NAND flash memory, for example this
feature can be used in read/erase/program NAND flash memory.
4. Interface: 8 / 16-bit NAND flash memory interface bus.
5. Hardware ECC generation, detection and indication (Software correction).
6. SFR I/F: Support Little Endian Mode, Byte/half word/word access to Data and ECC
Data register, and Word
access to other registers
7. SteppingStone I/F: Support Little/Big Endian, Byte/half word/word access.
8. The Steppingstone 4-KB internal SRAM buffer can be used for another purpose after
NAND flash booting.
特性
1。

自动引导:在复位时,引导代码写入4-k字节的中转区,在转移后启动
代码将在中转区上执行。

2。

NAND闪存接口:支持256字,512字节,1k字和2KB字节页。

3。

软件模式:用户可以直接访问NAND闪存,例如这个特性可以用于
读/写/擦除NAND闪存。

4。

接口:8/16位NAND闪存接口总线。

5。

硬件ECC的生成、检测和指示(软件校正)。

6。

SFR/f : 支持小端模式、按照字节/半字/字访问数据和ECC数据寄存器,以及按字访问其他寄存器
7.中转区接口:支持大小端模式下字节/半字/字的访问。

8。

在NAND闪存引导启动后,中转区的4 kb内部SRAM缓冲区可以用于另一个用途
systembus:系统总线
AHB Slave I/F:AHB系统总线,系统从属接口
SFR:
bootloader功能:
在重置期间,Nand闪存控制器将通过Pin状态获取相关的Nand闪存的信息。

ping状态:(NCON(flash),GPG13(页面大小),GPG14(地址循环),GPG15(总线宽度)-指针配置).
在发生电源或系统复位后,NAND闪存控制器自动加载4-KBytes引导加载程序代码并在中转区执行。

请注意
在自动引导期间,ECC不会去检测。

因此,第一个4 kb的NAND闪存应该没有错误.
pin-NCON引脚配置:
OM[1:0]=00:使能闪存引导
NCON:NAND闪存的模式选择(常规/超前先进)
0: NAND闪存常规模式(256word/512字节页面大小,3/4地址循环)
1: NAND闪存先进模式(1kword/2kbytes页面大小,4/5地址循环)
GPG13:NAND闪存页面容量选择
0:页面=256字(NCON=0)或页面=1k字(NCON=1)
1:页面=512字节(NCON=0)或页面=2KBytes(NCON=1)
GPG14:NAND闪存地址循环选择
0:3个地址循环(NCON=0)或4个地址循环(NCON=1)
1:4个地址循环(NCON=0)或5个地址循环(NCON=1)
GPG15:NAND闪存总线宽度选择
0:8位总线宽度
1:16位总线宽度
请注意
配置pin-NCON,GPG 15:13-将在重置时获取。

在正常状态下,这些引脚必须被设置为输入,以便在输入时不改变pin状态。

这是为了防止在睡眠模式下这些引脚的状态被改变,这种改变都是由软件或意想不到不可预知的的原因造成。

在4位以上的情况下,可能的总组合是16,但并不是所有的值都可以使用。

中转区(4K 字节 SRAM )
NAND Flash 控制器在引导启动时将 Steppingstone 作为缓冲器,你也可以使用此区域为其它用途
上表是28位校验码,奇偶校验码
EEC (错误纠正码)
NAND Flash 控制器由 4 个 ECC(错误纠正码)模块组成。

其中两个 ECC 模块:
一个模块可以被用于2048 字节的 ECC 奇偶校验码的生成。

另一个模块可以被用于16 字节的 ECC 奇偶校验码的生成。

28 位 ECC 奇偶校验码= 22位行奇偶校验+6位列校验码。

14 位 ECC 奇偶校验码= 8 位行奇偶校验+6位列校验码。

相关主题