Professional Documents
Culture Documents
北京中科凌创电子
NAND FLASH
驱动程序添加指南
文档版本 K
发布日期 2012-02-15
WWW.HJTAG.COM
NAND FLASH 驱动程序添加指南
1. 基本介绍
FLASH_TYPE=3
FLASH_SIZE=128M
FLASH_ID=0x00A100EC
FLASH_ADDRESS=0x0
FLASH_NAND_DEVICE=(2048+64)x64PAGESx1024BLOCKS
FLASH_WIDTH=8/0/0
FLASH_DRIVER=1003/0/0
FLASH_TYPE=3
用于指定 FLASH 的类型,3 表示 FLASH 为 NAND FLASH。
FLASH_SIZE=128M
用与指定 FLASH 的容量,单位为 BYTE。示例中表示,FLASH 的容量为 128 M BYTE。
FLASH_ID=0x00A100EC
用于指定 FLASH 的 ID。示例中,0xA1 为器件 ID,0xEC 为厂商 ID。
FLASH_ADDRESS=0x0
用于指定 FLASH 的起始地址,对 NAND FLASH 而言,地址需指定为 0x0。
FLASH_NAND_DEVICE=(2048+64)x64PAGESx1024BLOCKS
用于指定 NAND FLASH 的结构。 示例中表示 FLASH 共有 1024 个 BLOCK,每个 BLOCK 有 64 个
PAGE,每个 PAGE 的大小为(2048+64)个 BYTE,其中 MAIN 区域为 2048 个 BYTE,SPARE 区域
为 64 个 BYTE。
FLASH_WIDTH=8/0/0
用来描述 FLASH 的位宽。示例中表示 FLASH 的位宽为 8 位。如果 FLASH 为 16 位的,对应的标识为:
FLASH_WIDTH=0/16/0。如果 FLASH 的位宽为 32 位的,对应的标识为:FLASH_WIDTH=0/0/32。
FLASH_DRIVER=1003/0/0
用来指定 FLASH 的驱动程序。示例中表示 FLASH 的位宽为 8 位,其对应的 FLASH 驱动程序为 1003。
如果 FLASH 的位宽为 8 位的,对应的标识为:驱动程序名字/0/0。如果 FLASH 的位宽为 16 位的,对
应的标识为:0/驱动程序名字/0。如果 FLASH 的位宽为 32 位的,对应的标识为: 0/0/驱动程序名字。
需要注意的是,驱动程序的名字只能以数字指定,并不要和已有的 NAND FLASH 驱动程序重名,以
避免冲突。
void nand_init(void)
这个是一个初始化函数,用户可以根据自己的需要,将一些相关的初始化操作放在这个函数内。
U32 nand_read_id(void)
这个是读取 NAND FLASH 的 ID 的函数。这个函数需要读取 FLASH 的 ID 并将其返回。
U32 nand_info_table(void)
这个函数用来接收坏块表和替换表。该函数只在 RELOCATE 编程模式下有用。在 RELOCATE 编程模
式下,编程完成后,H-FLASHER 会将坏块表和替换表发送给驱动程序。这个函数就是用来接收这些
信息的。在实际应用当中,用户可以根据自己的需求,修改这个函数,对接收到的坏块表和替换表进
行处理,例如建立坏块表和替换表,并按照一定的格式写入到特定的地址中去。
4. 获取更多的信息和帮助
用户如果需要获取更多的信息或帮助,可以通过电子邮件或是电话与我们联系。我们会根据用户的需
求,提供相应的帮助。我们的具体联系方式,可以通过我们的网站 (WWW.HJTAG.COM) 获取。