Nand Flash 笔记(五) W25N01G手册解读

Nand Flash 笔记

第一章 Nand概述
第二章 硬件接口规范
第三章 软件功能规范
第四章 接口规范
第五章 W25N01G手册解读
第六章 HC32F460_QSPI驱动
第七章 FatFs移植
第八章 lvgl文件系统移植
第九章 lvgl之tiny ttf engine



一、概述

1.1 产品简介

W25Nxx是中国台湾Winbond(华邦)公司推出的一系列Nand Flash产品,包括从512Mb-4Gb各容量的芯片。下图是从手册中摘出的命名规范:
命名规范
该芯片具有以下特性:

  • 兼容标准SPI 串行flash命令
  • 代码影射,XIP功能
  • 常规的缓冲读取模式(BUF=1)及特有的连续读模式(BUF=0)
  • 用户可配置的内置硬件ECC功能,采用海明码,支持1位纠错及2位检错能力
  • 支持部分编程,NoP=4(可1/4页写入)
  • 内置坏块管理功能
  • 支持JEDEC标准的厂商及设备ID,附加 UniqueID页,参数页及10个2K大小的OTP页

1.2 引脚

该芯片工作电压为2.7~3.6V,支持Standart/Dual/Quad Spi读写接口,常见多为WSON-8封装,引脚图如下
引脚图

\模式
\
引脚\
标准SPI Dual SPI Qual SPI 备注
/CS 片选 片选 片选 低电平有效,上下电时必须跟随电源(可以加上拉电阻)
CLK 时钟 时钟 时钟 最大104MHz,SPI MODE 0 空闲时低电平,SPI MODE 3 空闲时高电平
DI MOSI IO0 IO0 -
DO MISO IO1 IO1 -
/WP 写保护 写保护 IO2 低电平有效,由SR-1寄存器的WP-E位控制,WP-E=0时,硬件写保护仅可作用于SR-1,由SRP[1:0]和BP[3:0]控制软件写保护的范围。WP-E=1时,四线SPI读操作不可用,硬件写保护作用于整个芯片
/HOLD 状态保持 状态保持 IO3 低电平有效,四线模式时不可用,CLK下降沿/HOLD 引脚电平变化 共同满足之后保持功能打开/关闭

ps: 数据输入输出口均为时钟上升沿写入,下降沿读取。

1.3 空间

W25N01G 共1024个块,每块64页,每页2048Byte数据空间,即:

1Gbit = 128MByte = (1024 Block per Chip) × (64 page per Block) × ( 2048 Byte per page)

为了满足ECC校验及坏块管理的功能,每页还有额外64Byte的Spare Area(空闲空间),空闲空间还提供了2+4字节的用户数据区用来存放自定义数据,有些文件系统(如jffs2)就用到了自定义数据来存放文件系统信息。
W25N01G支持部分编程,最小的编程单位是sector(扇区),每页分为4个512字节的扇区,空闲空间也对应分为16字节×4,部分编程时,每扇区的数据和它对应的空闲空间数据要一并写入。一个page的内部划分如下图所示
页内部空间
寻址采用 页地址(PA) + 列地址(CA) 方式:页地址长16位,由10bit块地址 + 6bit页地址 组成;列地址12位,寻址空间为0-4095,但只有前(2048 + 64)字节空间可以读写。32位地址的位域定义如下图
地址定义
主存储空间外,W25N01G还具有单独的1个UniqueID页,1个参数页及10个OTP页,地址如下:
附加页描述


二、寄存器

2.1 SR-1(写保护寄存器)

SR-1定义

  • WP-E = 0,SRP1 = 1: /WP引脚无写保护功能
    • SRP0 = 0:上下电时SRP0、SRP1复位为0
    • SRP0 = 1:寄存器SR-1上下电不丢失
  • WP-E = 0,SRP1 = 0:
    • SRP0 = 0:/WP引脚无写保护功能
    • SRP0 
### W25N01G 技术规格与数据手册 W25N01G 是一款由华邦电子(Winbond)制造的大容量串行 NAND Flash 存储器,具有高可靠性和低功耗的特点[^1]。该器件支持 SPI 接口通信协议,适用于多种嵌入式系统应用环境。 #### 主要技术参数 - 容量:1 Gb (128 MB) - 工作电压范围:2.7V 至 3.6V 或者 1.7V 至 1.95V (取决于具体型号) - 支持标准SPI, Dual-SPI 和 Quad-SPI 模式 - 高达每秒 104 MHz 的读取速度,在 QIO 模式下可达 80 Mbps 吞吐率 - 内置 ECC 错误校正功能,可自动纠正单比特错误并检测双比特错误 - 提供高达 10万次擦写周期寿命以及长达十年的数据保存时间 对于更详细的电气特性、命令集定义以及其他重要信息,请参阅官方发布的《C907680_NAND FLASH_W25N01GVZEIG_规格书》文档[^2]。 ### 应用场景 此款闪存设备非常适合用于需要较大存储空间而成本敏感的应用场合,比如: - 物联网(IoT) 设备中的固件储存 - 移动电话和平板电脑内的多媒体文件缓存 - 数字电视接收机里的操作系统映像备份 - 可穿戴电子产品里应用程序代码驻留区域 ```python # 示例 Python 代码展示如何初始化 W25N01G 并执行简单的读/写操作 import spidev spi = spidev.SpiDev() spi.open(0, 0) def write_enable(): spi.xfer([0x06]) # Write Enable Command def page_program(address, data): cmd = [0x02] + list((address >> i & 0xFF) for i in (16, 8, 0)) + data[:256] write_enable() spi.xfer(cmd) def read_data(address, length=256): cmd = [0x03] + list((address >> i & 0xFF) for i in (16, 8, 0)) return bytes(spi.xfer(cmd + [0]*length)[4:]) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值