S3C2440 与 NAND FLASH(K9F1208)的接线分析
来源:互联网 发布:nba总决赛乐福数据 编辑:程序博客网 时间:2024/05/03 06:40
NAND FLASH 的接线方式和 NOR FLASH,SDRAM 都不一样。以 TQ2440 开发板用的 K9F1208 为例,分析 NAND FLASH 的接线方式。
K9F1208 结构如下图:
K9F1208 位宽是8 位。
一页: 512byte + 16byte 最后 16byte 是用于存储校验码和其他信息用的,不能存放实际的数据。 一个块有 32 page:(16k+512)byte K9F1208 有 4096 个块:(64M+2M)byte,总共有64Mbyte 可操作的芯片容量 NAND FLASH以页为单位读写数据,以块为单位擦除数据。
S3C24440 和K9F1208 的接线图如下:
下图是 S3C2440 的 NAND FLASH 引脚配置:
当选定一个 NAND FLASH 的型号后,要根据选定的NAND FLASH 来确定 S3C2440的NCON,GPG13,GPG14,GPG15 的状态。
下图是 S3C2440 中 4 个脚位状态的定义:
K9F1208 的一页是 512byte,所以NCON接低电平,GPG13 接高电平。 K9F1208 需要4 个寻址命令,所以 GPG14 接高电平 K9F1208 的位宽是 8,所以 GPG15 接低电平。 NAND FLASH寻址 对 K9F1208 来说,地址和命令只能在 I/O[7:0]上传递,数据宽度是 8 位。
地址传递分为 4 步,如下图:
第 1 步发送列地址,既选中一页 512BYTE中的一个字节。512byte需要 9bit 来选择,这里只用了 A0-A7,原因是把一页分成了2 部分,每部分 256字节。通过
发送的读命令字来确定是读的前 256 字节还是后 256 字节。 当要读取的起始地址(Column Address)在 0~255内时我们用 00h 命令,当读取的起始地址是在 256~511 时,则使用 01h 命令。 一个块有 32 页,用 A9-A13共5位来选择一个块中的某个页。 总共有 4096 个块,用 A14-A25 共12 位来选择一个块。K9F1208 总共有64Mbyte,需要A0-A25 共 26 个地址位。
例如要读 NAND FLASH的第5000字节开始的内容。 把 5000 分解成列地址和行地址。Column_address = 5000%512 = 392 Page_address = (5000>>9) = 9
因为 column_address>255,所以用01h命令读发送命令和参数的顺序是:
NFCMMD = 0x01; 从后 256 字节开始读 NFADDR = column_address & 0xff; 取 column_address的低 8 位送到数据线
NFADDR = page_address & 0xff;发送A9-A16
NFADDR = (page_address >>8) & 0xff; 发送 A17-A24
NFADDR = (page_address >> 16) & 0xff;发送 A25
上面的 NFCMMD,NFADDR.是 S3C2440的 NAND FLASH 控制寄存器。读取的数据会放在NFDATA 中。
- S3C2440 与 NAND FLASH(K9F1208)的接线分析
- S3C2440与NAND FLASH(K9F1208)的接线分析
- S3C2440核心板原理图设计:与NAND FLASH接线分析
- S3C2440 与 NOR FLASH(AM29LV160DB)的接线分析
- S3C2440与NOR FLASH(AM29LV160DB)的接线分析
- S3c2440 Nand Flash结构分析与编程
- 通过uboot烧写带QT的文件系统到nand flash (K9F1208)
- 关于K9F1208和K9f1G08的nand flash(1)
- S3C2440 NAND Flash的使用
- s3c2440的Nand flash裸机程序
- s3c2440上的nor flash启动与nand flash启动的区别
- Nand Flash与Nor Flash启动的区别——s3c2440
- s3c2440 nand flash controller
- s3c2440 nand flash
- S3C2410/S3C2440 NAND Flash
- S3C2440核心板原理图设计:与SDRAM接线分析
- S3C2440之NAND FLASH移植到S3C2410的驱动分析[一]
- S3C2440 VxWorks移植随笔--SRAM与NAND FLASH
- 课程3
- spring的原理,基本API,开发流程,环境搭建.
- 极限测试之Matlab和Forcal编译含简单计算的长表达式
- windows 7! 真的就是不一样
- flash builder中trace不出结果的方法
- S3C2440 与 NAND FLASH(K9F1208)的接线分析
- MyBatis学习 之 二、SQL语句映射文件(2)增删改查、参数、缓存
- Windows下虚拟串口工具:com0com可做串口调试用
- 王梦恕反对铁路改革
- MyBatis学习 之 三、动态SQL语句
- MyBatis学习 之 四、MyBatis配置文件
- win32下安装postgresql9.0以上版本出错处理
- MapReduce技术的初步了解与学习
- HDOJ题目分类