晶豪(ESMT)nand flash对内存页的读取、ECC校验 F59L2G81A
nand flash(F59L2G81A)
包含2048block, 1 block = 64 pages; 1 page = 2 KB + 64Bytes. 1 device = (2K+64) Bytes * 64 pages * 2048 blocks = 2112 Mbits
I/0 0 | I/0 1 | I/0 2 | I/0 3 | I/0 4 | I/0 5 | I/0 6 | I/0 7 | Address | |
---|---|---|---|---|---|---|---|---|---|
1st | A0 | A1 | A2 | A3 | A4 | A5 | A6 | A7 | Column Address |
2nd | A8 | A9 | A10 | A11 | 0 | 0 | 0 | 0 | Column Address |
3rd | A12 | A13 | A14 | A15 | A16 | A17 | A18 | A19 | Row Address |
4th | A20 | A21 | A22 | A23 | A24 | A25 | A26 | A27 | Row Address |
5th | A28 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Row Address |
NAND Flash 的地址表示为: Block Address|Page Address in block|Column Address 地址传送顺序是Column Address,Page Address,Block Address。 Column Address : 每页包含2K + 64,需要12bit表示(A[11:0]), Row Address : 每块包含64页,需要6bit表示(A[17:12]);包含2048块,需要10bit表示(A[27:18])
烧写数据:write 80h —— write Address(2个列周期,3个行周期) —— write data —— write 10h
擦除数据:write 60h —— write Block Address —— write D0h
读取数据:write 00h —— write Address —— write 30h —— read data —— ECC 校验
flash特性:1. 块擦除,页读写
2. Nand Flash芯片每一位只能从1变为0,而不能从0变为1,所以在对其进行写入操作之前一定要将相应块擦除(擦除就是将相应块的位全部变为1 )
3. OOB部分的第六字节(即517字节)标志是否坏块,如果不是坏块该值为FF,否则为坏块
ECC校验
对于本flash每页大小为2K,另有64Bytes的oob区。当往该页写入数据时,采用4bit BCH算法进行 ECC校验,每512字节产生一组ECC校验和保存到oob区的相应位置。每512字节数据需要至少7字节oob区来存储产生的ECC值(根据BCH算法计算所得),所以每页需占用28字节存储生成的ECC,一般将计算所得ECC值保存在oob区尾部(即oob区的37至64字节)。读取数据时,分别读出数据并计算ECC值,读取flash中储存的ECC值两者相比较,进行ECC校验与修正。
晶豪(ESMT)nand flash对内存页的读取、ECC校验 F59L2G81A相关推荐
- 学习 ARM 系列 -- FS2410 开发板上 Nand Flash 到内存的代码搬移
一.目的 通过将 Nand Flash 前 4K 代码搬移到 SDRAM 中,了解如何初始化并使用 ARM 的内存, 为编写 ARM bootloader 和搬移内核到内存作准备. 二.代 ...
- fs2410开发板搭建网站服务器,学习 ARM 系列 -- FS2410 开发板上 Nand Flash 到内存的代码搬移...
一.目的 前面做过一个实验,搬移 Nand Flash 里的前 4k 代码到内存指定位置,这其实是把 SRAM 从 0x40000000 开始的 4K 代码复制到 SDRAM 的指定位置,并没有涉及到 ...
- nand flash坏块管理OOB,BBT,ECC
0.NAND的操作管理方式 NAND FLASH的管理方式:以三星FLASH为例,一片Nand flash为一个设备(device),1 (Device) = xxxx (Blocks),1 ...
- u-boot nand flash read/write cmd
支援的命令函數說明 1. nand info/nand device 功能:顯示當前nand flash晶片資訊. 函數調用關係如下(按先後順序): static void nand_print(st ...
- NAND FLASH 内存详解与读写寻址方式
目录: 第一章 绪论 1.1 课题来源 1.2 研究背景与意义 1.2.1 Flash介绍 1.2.2 NAND Flash介绍 1.2.3 NAND Flash与NOR Fl ...
- NAND FLASH
NAND Flash 以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用. 1. 概述 MT29F2G08使用一个高度复用的8-bit总线(I/O[7:0])来数据传输.地址 ...
- Android Nand Flash 分区
一般的嵌入式Linux开发人员是要清晰区分不同器材的作用和名称的.比如系统,内核所有保存在Nand Flash之上,断电后仍然存在,而运行后程序是装入SDRAM或Mobile DDR之类的内存设备运行 ...
- NAND Flash【转】
转自:http://www.cnblogs.com/lifan3a/articles/4958224.html 以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用. 1. 概 ...
- Nand flash驱动的编写与移植
1 Nand flash工作原理 S3C2410板的Nand Flash支持由两部分组成:Nand Flash控制器(集成在S3C2410 CPU)和Nand Flash存储 芯片(K9F12 ...
最新文章
- 科大星云诗社动态20210807
- ASP.NET2.0 验证cookie详解
- 【转载】linux-查询rpm包相关安装、卸载脚本
- 实现当前月记录,下12个月发送提醒。蛋疼的2月.
- winform定义数据源名称_WinForm中使用CrystalReport水晶报表——基础,分组统计,自定义数据源...
- easypr4android,车牌识别系统EasyPR的批量识别功能测试界面
- excel2007加载宏的两种方法
- wordpress基础插件开发3-add_action()案例研究
- 工厂不存在导致的采购订单无法修改报错处理
- ECTouch多语言插件,ECSHOP手机版多语言翻译,ecshop手机端多国语言翻译切换,ECSHOP网站多语言切换
- 班级网页制作 HTML个人网页设计 我的班级网站设计与实现 大学生简单班级静态HTML网页设计作品 DIV布局班级网页模板代码 DW学生校园网站制作成品下载
- 查看android端BKS类型的证书库
- 极飞C2000分析报告
- 数据结构之图(二)——邻接矩阵
- 1072: 青蛙爬井 C语言
- 计算机网络路由器配置实验怎么做,计算机网络路由器配置实验
- [数据结构][Python][经典题目]明星问题
- 【实用】找实习找工作的看过来!法国大大小小招聘网站都在这儿
- url action editor 快速修改swf链接
- Python小技巧:将大音频文件无损切割为小音频文件