版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、US281A 项目2017- 4-101 目录123目录1前言2NOR FlashID背景知识33.1Sus Register(2 个)33.2.13.2.23.2.3掉电丢失4Sus Register(3 个)4Configuration Register53.2写保护63.2.13.2.2ATMEL6MACRONIX84增加NOR FlashID流程说明8Flash ID数据结构8NOR Flash ID增加示例104.14.24.2.14.2.24.2.34.2.44.2.54.2.64.2.74.2.84.2.94.2.104.2.11获取chi10获取容量11block_erase信
2、息获取:11Write cmd 编程命令、Dma_write获取:12Erase cmd 擦除命令获取:13Erase mode 擦除模式获取:13uniform_blk_infoBlock Size获取:13feature_mask 获取14block_protect5获取15dual_read_mode 获取16fast_read_clk 获取1656版本历史17 18第 1 页2 前言本文档主要介绍如何实现 ATS281X 系列方案增加 NOR Flash ID。第 2 页3 NOR FlashID 背景知识3.1 Sus Register(2 个)NOR均有 8bit 或 16bit
3、sus register,指示 NOR 当前的一些状态,和设置 NOR 的保护区域;一般情况下 sus register 均是非易失性的,即写入到此寄存器中的值,在断电后,再上电启动后,sus register 中的值仍保持与写入值一致。以 BQ25Q80A 为例,其 sus register 为 16bit,Sus Register-1,Sus Register-2 定义如下图,其中 SEC、TB、BP2、BP1、BP0、SRP1、SRP0、CMP 均是 non-volatile Read/Write bits。图 3-1 BQ25Q80A SR1图 3-2 BQ25Q80A SR2第 3
4、页一般情况下对于 16bit sus register,写操作一个命令就可以完成,但读操作需要两个命令才能完成。图 3-3 GD25Q32B但有部分老旧的 NOR 产品,sus 寄存器比较特殊。d3.2.1 掉电丢失部门旧 NOR 产品,sus register 中的值在断电后会丢失,如 SST25VF032B,其定义如下图;此款 NOR 在断电重上电后,sus 寄存器会恢复成默认值,开启 NOR 上全部区域的写保护。图 3-4 SST25VF032B s us register目前只看到几款 NOR 产品存在此问题,产品列表如下: SST25VF016SST25VF032BSST25VF06
5、4C F25L08PA-100 F25L16PA-50ATMEL 的全部 NOR 产品(除)3.1.2 Sus Register(3 个)部分 NOR 包含 3 个状态寄存器,如下图所示。第 4 页图 3-5 GD25Q32C s us register状态寄存器的写入命令与其他 NOR 产品也不大相同,针对每个 sus register 的写入均有不同令来完成,如下图。图 3-6 GD25Q32Cds产品列表如下: GD25Q32C GD25Q64CGD25Q128C3.1.3 Configuration Register部分 NOR 产品除 sus register 外,仍有 config
6、uration register,和 s的属性us register 一起设置 NOR图 3-7 MX25L3235E configuration register操作 configuration register 的d 如下图所示。第 5 页图 3-8 MX25L3235Ed产品列表如下:MX25L3275E/MX25L3235E MX25R1635F3.2 写保护通过 write sus(0 x01)命令,更新的 sus register 来修改保护范围,一般情况下此寄存器是 non-volatile 的,即断电后并不会丢失;断电后下次上电启动后,仍然是上次写入的值。根据这个特性,对写保护
7、设置作如下操作:1、 在更新待保护数据前,关闭这些区域写保护;2、 更新数据;3、 开启待保护区域写保护;后续除非主动关掉了写保护功能,待保护区域的数据均不会被更新。但目前看到有两个厂家的 SPI NOR 写保护会有特殊:3.2.1 ATMELATMEL 的绝大部分部 SPI NOR(目前只看到 AT25FS040 例外)支持两种写保护设置:1、 通过 sector protect/unprotect 命令来开关单个 sector(64KB,AT26DF161 为 128KB sector)的写保护功能;2、 通过写 sus register 来开关 NOR 上全部区域的写保护;第法,需要通过
8、专门令:Protect Sector(0 x36),Unprotect Sector(0 x39),后面跟上需要开启或关闭写保护区域的地址,最小保护为 sector(低位地址不 care),设置比较灵活;第二种方法与其他 NOR 一致,直接通过 write sus(0 x01)命令来设置,但保护区域只能是全部 NOR 容量。另需要注意:1、 write sus 中各 bit 定义与 read sus 读回的不同,如下图第 6 页图 3-9 write sus register definition图 3-10 read sus register definition2、 write s us
9、时,通过 bit2bit5 4bit 来修改 NOR 的保护属性,注意除 b0000 和 b1111 外的其他配置值均不会更改 NOR 的保护属性,即如原来为全保护,写 b0010 之后,NOR 仍然是全保护状态;3、 当前 SDK 上,可以先将 NOR 全部区域设置为写保护,然后通过 Unprotect Sector 命令来关闭 vram 区的写保护;4、 断电后再重上电时,s us 寄存器会被恢复成默认值,即 NOR 区域处于全保护状态;第 7 页3.2.2 MACRONIXMACRONIX 的部分 SPI NOR4 增加 NORFlashID 流程说明4.1 Flash ID 数据结构t
10、ypedef structu16 size;/* Eraseblock size, sector u u16 count; /* Eraseblock count */block_erase_t;*/#define MAX_PROTECT_REGIONS5typedef structu16 wp_val;u16 wp_size;block_protect_t;/总共 128 字节,前面 64byte 为有效数据typedef structu8 chi4;第 8 页/*预定义了以下几种容量#define NOR_CAP_512K(1*512*1024/512)#define NOR_CAP_1M
11、(1*1024*1024/512)#define NOR_CAP_2M(2*1024*1024/512)#define NOR_CAP_4M(4*1024*1024/512)#define NOR_CAP_8M(8*1024*1024/512)#define NOR_CAP_16M(16*1024*1024/512)*/u32 capacity;block_erase_t block_erase5;u uu8 dma_write;8 write_cmd;8 erase_cmd;u8 erase_mode;u uu8 uniform_blk_info;8 feature_mask;16 wp_c
12、lr_mask;block_protect_t block_protect5;u8 dual_read_mode;u8 fast_read_clk;第 9 页/*支持的最大读频率,Mhz*/*2 线读模式;1: Dual output fast read(CMD:0 x3B, 地址以 1 线模式发出,数据以 2 线模式读回); 2: Dual Input Output fast read(CMD:0 xBB, 地址和数据均以 2 线模式操作);3:两种模式均支持*/*support uniform block size:0: support only all 64KB block; 1: su
13、pport only all 32KB block; 2: support only all 4KB block;3: support all 64KB and 32KB block; 4: support all 64KB and 4KB block;5: support 3 kind of uniform block: all 64KB, all 32KB, all 4KB;*/*erase mode:0: normal erase mode(every 64KB); 1: bottom boot;2:toot;3: 32KB erase mode;*/u8_154;u8 name16;n
14、or_chipinfo_t;/16bytes4.2 NOR Flash ID 增加示例下文会以 GD25Q16(B/C)为例,来说明如何获取、增加该型号NORID信息,下图4-1为GD25Q16 的完整 ID信息。图 4-1 GD25Q16 flash id table4.2.1 获取 chi通过 Read Identification (RDID) (9Fh)命令,读出 3byte 有效 ID,来区分不同厂家不同型号的NOR flash。部分 NOR spec 会注明该的 ID,如下 GD25Q16 spec 所示:如果能从spec 中获取则直接将前三个有效Byte 写入上面数据结构中的ch
15、i中并将第四个 byte 赋值为 0 xff;若没有在 spec 中找到对应 ID 则需要通过命令读出 ID 填入对应位置。第 10 页可以借助 Actions 多产品量产工具获得 ID,具体见下面的截图:点开文本显示如下:将上面的数据 C81540C8 按照如下格式填写:注:不关注最后一个字节,所以填写 0 xff4.2.2 获取容量容量可以通过 spec 中直接找到,如下所示,可以确定容量为 2M。4.2.3 block_erase 信息获取:由以下信息可确定支持的擦除模式:GD25Q16 支持 4KB、32KB、64KB 为GD25Q16spec 对应信息:擦除,count 则为 cap
16、 / Eraseblock size;下图为第 11 页部分 NOR spec 信息会对该信息作如下表述(SST NOR 信息):可知该 NOR 支持 4KB、32K 为擦除;所有的 NOR 都可通过 spec 中找到相关信息4.2.4 Write cmd 编程命令、Dma_write 获取:由 GD25Q16 spec 可知该命令为 0 x02,对应上述配置中的 SPI_NOR_PAGE_PROGRAM,即支持 page program(每次 256Bytes 写),则 Write cmd = SPI_NOR_PAGE_PROGRAMDma_write = TRUE;而部分 NOR 不支持
17、page program,仅支持字节编程(如下所示的 0 x02 和 0 xaf 这两个命第 12 页令 仅 支 持 字 节 编 程 ) 则 Write SPI_NOR_SEQUENTIAL_PROGRAM_2Dma_write = FALSE;cmd=SPI_NOR_AAI_PROGRAM或者4.2.5 Erase cmd 擦除命令获取:由 spec 可知该 NOR 支持 32K、64K、128K、擦除命令,一般选择 64K 对应的擦除命令:0 xD8;如果不支持 64K 则选择 32K 对应的擦除命令:0 x524.2.6 Erase mode 擦除模式获取:erase mode 对应以下
18、四种:0: normal erase mode(every 64KB); 1: bottom boot;2:toot;3: 32KB erase mode;4.2.7 uniform_blk_infoBlock Size 获取:/*第 13 页表示 NOR Block 的大小配置,表示 NOR 中是否支持 64KB、32KB、4KB 大小的 BLOCK;有些 NOR 仅支持其中的一种或者两种,部分 NOR 则三者都支持。如下 EN25Q64 支持 64K 和 4K;uniform_blk_info = ALL_BLOCK_64KB_4KB如下 GD25Q16 支持 64K 、32K、4K;un
19、iform_blk_info = ALL_BLOCK_64KB_32KB_4KB4.2.8 feature_mask 获取GD25Q16 spec 可以看:1)出有写保护功能;2)写保护寄存器的定义如下所示,为 16 位寄存器,且寄存器为 non-volatile Read/Writebits;第 14 页#define ALL_BLOCK_64KB(0)#define ALL_BLOCK_32KB(1)#define ALL_BLOCK_4KB(2)#define ALL_BLOCK_64KB_32KB(3)#define ALL_BLOCK_64KB_4KB(4)#define ALL_B
20、LOCK_64KB_32KB_4KB(5)#define ALL_BLOCK_32KB_4KB(6)*/那么 feature_mask = (REG_ATTR_WP | REG_ATTR_SR_16bit);其中 REG_ATTR_WP REG_ATTR_SR_16bit 请见 spi_nor_flashid.h 中的定义。如果某些 NOR 不支持写保护 feature_mask = 0;和4.2.9 block_protect5获取具体参考 spec 中不同 sus register 寄存器位的配置来确定不同的写保护区域和范围:第 15 页4.2.10 dual_read_mode 获取两种
21、方式都支持,spec 内容如下截图所示,4.2.11 fast_read_clk 获取SPI 读写的最大时钟 spec 中定义如下所示第 16 页5 版本历史第 17 页日期版本号注释作者2017-04-101.0建立初始版本US281A 项目组6DierInformation givenhisis provided just as a reference or exle for the pure of usingActions products, and cannot be treated as a part of any quoion or contract for sale.Action
22、s products may contain design defects or errors known as anomas or errata whiay cause theproducts functions to deviate from published specifications. Designers must not rely on the instructionsof Actions products marked “” or “undefined”. Actions reserves these for future definition andshall have no
23、 responsibility whatsoever forthem.s orpatibilities arising from future changes toACTIONS DIS AND EXCLUDES ANY AND ALL WARRANTIES, INCLUDING WITHOUTLIMIION ANY AND ALL EXPRESS OR IMPD WARRANTIES OF MERCHANTABILITY,ACCURACY, SECURITY, FITNESS FOR A PARTICULAR PURE, TITLE, AND AGAINSTINFRINGEMENT OF E
24、LLECTUAL PROPERTY AND THE LIKE TO THE INFORMATON OFTHIS AND ACTIONS PRODUCTS.IN NO EVENT SHALL ACTIONS BE LIABLE FOR ANY DIRECT, INCIDENTAL, INDIRECT,SPEL,PUNITIVE,ORCONSEQUENTIAL DAMAGESWHATSOEVER,INCLUDING,WITHOUT LIMIION FOR LOST OF DATA, PROFITS, SAVINGS OR REVENUES OF ANYKIND ARISING FROM USING
25、 THE INFORMATON OF THIS AND ACTIONSPRODUCTS. REGARDLESS OF THE FORM OF ACTION, WHETHER BASED ON CONTRACT; TORT; NEGLIGENCE OF ACTIONS OR OTHERS; STRICT LIABILITY; OR OTHERWISE;WHETHER OR NOT ANY REMEDY OF BUYER IS HELD TO HAVE FAILED OF ITS ESSENTIALPURE, AND WHETHER ACTIONS HAS BEEN ADVISED OF THE
26、SIBILITY OF SUCHDAMAGES OR NOT. Actions products are not designed,ended, authorized or warranted for use in any life support or otherapplication where product failure could cause or contribute toal injury or severe property damage.Any and all such uses without prior written approval of an Officer of
27、 Actions and further testing and/ormodification will be fully at the risk of the customer.第 18 页Ways of obtaining informationCopies of thisand/or other Actions product literature, as well as the Terms and Conditions ofSale Agreement, may be obtained by visiting Actions website at:an authorized Actio
28、ns represenive. or fromTrademarksThe word “Actions” and the logo are the trademarks of Actions Semiconductor Co., and Actions(Zhuhai) Technology Co., Limited is authorized to use them. Word “炬芯” is the trademark of Actions(Zhuhai) Technology Co., Limited. Names and brands of other companies and their productst mayfrom time to time descriptively appearhisare the trademarks of their respective holders, nos are claimed or impd except as may beaffiliation, authorization, or endorsement by suchexpressly sed t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 轧光(轧花)机挡车工风险评估水平考核试卷含答案
- 苯乙烯-丙烯腈树脂(SAN)装置操作工岗前责任心考核试卷含答案
- 拉链制作工岗位持续改进考核试卷含答案
- 变配电运行值班员岗前技术管理考核试卷含答案
- (2026版)心理健康教育工作制度
- 2026年传染病防治知识培训试题及答案
- 新生儿粟粒疹护理查房
- 乡村小型农桥简易钢筋笼制作安装
- 2026年9月小学一年级新生收心教育课件:开学收心主题班会
- 围手术期抗菌药物的合理应用
- 初级通信专业技术人员职业水平考试题库(1000题含答案和解析)
- 活动一 走近人工智能教学设计初中信息技术上海科教版八年级第二学期-上海科教版
- 拉森钢板桩施工变形监测方案
- 危重患者循证护理实践
- 【中考真题】云南省2026年初中学业水平考试语文真题试卷(含答案)
- T-COSHA71-2026危险化学品火灾爆炸定量风险评估方法选用指南
- 内镜室手术查对流程与制度规范
- 埋地给水排水玻璃纤维 增强热固性树脂夹砂管 管道工程施工及验收规程
- 《传感器与检测技术》课件 第十四章 误差理论与数据处理
- 消防监控室值班服务方案
- (正式版)JJD 008-2026 房屋建筑和市政基础设施工程安全管理资料导则(试行)
评论
0/150
提交评论