码迷,mamicode.com
首页 > 其他好文 > 详细

TQ210裸机编程(13)——NAND FLASH读写

时间:2014-06-08 05:39:55      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:linux   嵌入式   s5pv210   tq210   arm   

参考《韦东山毕业班视频》第1课第1.1节_自己写bootloader之编写第1阶段

参考《韦东山6410裸板视频》第7章nand flash实验

K9K8G08U0B : (1G + 32M) x 8bit

Data Register : (2K + 64) x 8bit

Page Program : (2K + 64)Byte
Block Erase : (128K + 4K)Byte

Page Read: (2K + 64)Byte

bubuko.com,布布扣

The K9K8G08U0B has a 8,448Mbit(8,858,370,048 bit) memory organized as 524,288 rows(pages) by 2,112x8 columns

The K9K8G08U0B is arranged in four 2Gb memory planes. Eachplane contains 2,048 blocks and 2,112 byte page registers.This allows it to perform simultaneous page program and block erase by selecting one page or block from each plane

很多理论知识在韦东山老师的视频里有详细讲解,我这里只列出关键部分。

下面列出关键点:

1、对NFDATA寄存器的定义(参考S5PV210芯片手册4.3.1.1  8-bit NAND Flash Memory Interface)

#define    NFDATA  (*(volatile unsigned char *)0xB0E00010)


2、NFCONF寄存器中3个时间参数稍微比计算的值大些(大1就可以),否则会出现读写不稳定


3、下面几种操作流程中对于发送地址的周期数:有的是5个周期,有的是3个周期,有的是1个周期


擦除流程

(1)、片选

(2)、发命令0x60

(3)、发页地址(3个周期

(4)、发命令0xD0

(5)、等待NAND空闲

(6)、取消片选


编程(写数据)流程

(1)、片选

(2)、发命令0x80

(3)、发地址(页对齐,5个周期

(4)、连续发送一页数据

(5)、发命令0x10

(6)、等待NAND空闲

(7)、取消片选


读数据流程

(1)、片选

(2)、发命令0x00

(3)、发地址(页对齐,5个周期

(4)、发命令0x30

(5)、等待NAND空闲

(6)、连续读一页数据

(7)、取消片选


读ID流程

(1)、片选

(2)、发命令0x90

(3)、发0地址(1个周期

(4)、连续读5个字节的ID

(6)、取消片选


所有裸机程序下载地址在我的QQ群共享里面:153530783

转载请注明来源:http://blog.csdn.net/zjhsucceed_329/

QQ:809205580

技术交流群:153530783


接下来就可以使用前面学到的知识移植u-boot了。

TQ210裸机编程(13)——NAND FLASH读写,布布扣,bubuko.com

TQ210裸机编程(13)——NAND FLASH读写

标签:linux   嵌入式   s5pv210   tq210   arm   

原文地址:http://blog.csdn.net/zjhsucceed_329/article/details/27078833

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!