8.NandFlash原理分析

发布者:rho27最新更新时间:2024-11-04 来源: cnblogs关键字:NandFlash  硬盘 手机看文章 扫描二维码
随时随地手机看文章

该节里主要是将NandFlash有关的知识,首先是NandFlash的角色、分类和访问方式。

  1. 角色分析:在个人的pc机中,使用硬盘来存储操作系统、数据等信息。在嵌入式领域,拥有硬盘功能的叫NandFlash。所以NandFlash就是存储信息的。

  2. NandFlash分类:

SLC原理略图:

MLC原理略图:

从上面可以看到MLC的存储密度比SLC的存储密度大两倍,他们两者的信息比较:

接下来是访问方式:

  1. 编址方式。

  2. 地址结构。

  3. 信号引脚。

1.编址方式:

首先看内存的编址方式图(ARM9):

上面就是内存的原理图,有地址线和数据线,两者都是连接到CPU的。

可以看到NandFlash的原理图里没有像内存的数据线和地址线。这里内存采用的是统一编址的,就是内存包括在地址空间以内的。而NandFlash是在地址空间以外,采用独立编址的。NandFlash的工作简图:

2.地址结构:

K9F2G08U0A-Nand Flash的基本构成:

 

上面可以看到一个NandFlash的device被划分为多个块,每个块又被划分为多个页,每个页里又被划分为(2K+64)Bytes。其中2K是存数据的主数据区,64Bytes是存校验码等信息的空闲数据区。

行地址就是Page的编号,要访问存储单元,需要先知道Page的编号(列地址),列地址就是在Page里的偏移,就能够定位到要访问的单元了。

3.引脚信号:

剩下引脚的信号信息。


关键字:NandFlash  硬盘 引用地址:8.NandFlash原理分析

上一篇:10.NandFlash的驱动_写操作
下一篇:6.6410和210的按键中断编程

推荐阅读最新更新时间:2026-03-25 10:57

使用jlink直接烧norflash或者nandflash不借助uboot的猜想
由于喜欢折腾,我是在linux下使用jlink的,既然JLinkExe可以进行内存读写操作,loadbin等操作,并且通过指定命令文件支持批量指令输入,那么首先jlink是可以直接访问内部存储器的,包括它的RAM和各种Soc上外设如存储控制器,串口配置寄存器等,但是不能直接访问外部存储器,如Norflash。这样一来,先关狗,设好时钟,然后通过wmem32一系列命令,操作存储控制器,这样就可以访问SRAM,然后loadbin到内存,再写回到norflash,或者nandflash,其中nandflash应该略复杂,需要设置好flash控制器,然后还要额外写一个操作nandflash的bin,并将它也loadbin至内存,setpc
[单片机]
u-boot中nandflash初始化流程分析
下面对nand flash的初始化代码nand_init()进行分析: 1.如果定义(CONFIG_COMMANDS & CFG_CMD_NAND)没定义(CFG_NAND_LEGACY) 则start_armboot()调用driver/nand/nand.c中的nand_init(),否则如果定义(CONFIG_COMMANDS & CFG_CMD_NAND)并且有定义了CFG_NAND_LEGACY,则调用自己定义的nand_init()。在我当前的情景中是使用driver/nand/nand.c中的nand_init()。 2.nand_init()调用本文件中的nand_init_chip()对nand进行初始化。
[单片机]
boot移植(十一)---代码修改---支持nandflash
一、移植前的修改 1.1 include/configs/jz2440修改 原来的定义: 可以看出,要先定义CONFIG_CMD_NAND才能使能NANDFlash。 这个在我们文件中的82行有定义,所以不需要定义了。    将里面的S3C2410全部改为S3C2440: 1.2 drivers/mtd/nand/修改 拷贝s3c2410_nand.c 成 s3c2440_nand.c 在此目录的makefile中添加 s3c2440_nand.c    修改s3c2440_nand.c 文件,从board_nand_init 逐行检测修改,代码如下: 1 #include common.h 2 3 #i
[单片机]
boot移植(十一)---代码修改---支持<font color='red'>nandflash</font>
s3c2440裸机-nandflash编程-1-nandflash原理及结构简介
1.nandflash的原理图如下: 引脚属性见下表: 引脚名称 引脚功能 IO0~IO7 数据输入输出(命令、地址、数据共用数据总线) CLE 命令使能 ALE 地址使能 /CE 芯片使能(片选) /RE 读使能 /WE 写使能 R/B 就绪/忙输出信号(低电平表示操作还在进行中,高电平表示操作完成) ##2.nandflash内部存储结构 nandflash内部存储结构如下: 我们常见的Nand Flash,内部只有一个chip,每个chip只有一个plane。但也有些复杂的,容量更大的Nand Flash,内部有多个chip,每个chip有多个plane,这类的Nan
[单片机]
s3c2440裸机-nandflash编程-2-nand控制器和访问时序
多简单,无非就是读写擦,像我们这款nand数据位宽8bit,一个周期绰绰有余。但地址就不一样了,比如此款nandflash容量256M = 2^28,那么需要28根数据线来传输才能一个周期传输完,但这款nandflash的数据总线位宽只有8bit, 只有8根数据线,所以需要把地址拆分成多次发送,先发送col地址,再发送row地址,此款nandflash是用了5个周期发送地址。 2.数据锁存时序(写数据) 从前面的命令地址锁存时序图中我们得知,CLE信号拉高,ALE信号拉低时,表示发送的命令;当CLE信号拉低,ALE信号拉高时,表示发送的地址;那么当CLE、ALE都拉低时,表示发送的数据,如下图,nCE, CLE, ALE都拉低了,
[单片机]
s3c2440裸机-nandflash编程-3-初始化及识别
nandFlash命令表 对NAND FLASH的操作需要发出命令,下面有个NAND FLASH的命令表格,那么我们可以此表格上的命令来访问我们的nandflash. 1)时序分析 上面命令表中的读id还不太直观,下图是从nand芯片手册中截取出的读id时序图: ①第一条竖线位置,发送了nCE,CLE,nWE信号,所以90命令被锁存(readID命令); ②第二条竖线位置,发送了nCE,ALE,nWE信号,所以地址00被锁存; 继续往后,命令、地址都发完了,要read数据了,所以释放nWE,ALE,这里tAR表示ALE释放多久后才可以发送nRE信号,tREA表示nRE信号的建立时间; ③第三条竖线位置,发送了nCE,n
[单片机]
u-boot-2011.06在基于s3c2440开发板的移植之支持NandFlash读写
由于s3c2410与s3c2440的NandFlash控制器不一样,因此s3c2440_nand.c文件并不能直接应用,需要进行适当的修改,而主要修改的内容就是s3c2440的相关寄存器。 首先重新定义要用到的寄存器,把原文中第27行至第37行之间的宏定义去掉,改为下面的形式: #define S3C2440_NFCONT_SECCL (1 6) #define S3C2440_NFCONT_MECCL (1 5) #define S3C2440_NFCONT_INITECC (1 4) #define S3C2440_NFCONT_nCE (1 1) #define S3C2440_NFCONT_MODE
[单片机]
s3c2440裸机-nandflash编程(一. nandflash原理及结构简介)
1.nandflash的原理图如下: 引脚属性见下表: 引脚名称 引脚功能 IO0~IO7 数据输入输出(命令、地址、数据共用数据总线) CLE 命令使能 ALE 地址使能 /CE 芯片使能(片选) /RE 读使能 /WE 写使能 R/B 就绪/忙输出信号(低电平表示操作还在进行中,高电平表示操作完成) 2.nandflash内部存储结构 nandflash内部存储结构如下: 我们常见的Nand Flash,内部只有一个chip,每个chip只有一个plane。但也有些复杂的,容量更大的Nand Flash,内部有多个chip,每个chip有多个plane,这类的Nand Flash,其实就是多了一
[单片机]
s3c2440裸机-<font color='red'>nandflash</font>编程(一. <font color='red'>nandflash</font>原理及结构简介)
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved