CN100465909C - 产品中闪存初始化过程遍历数据进行查错的方法 - Google Patents

产品中闪存初始化过程遍历数据进行查错的方法 Download PDF

Info

Publication number
CN100465909C
CN100465909C CNB2006100272603A CN200610027260A CN100465909C CN 100465909 C CN100465909 C CN 100465909C CN B2006100272603 A CNB2006100272603 A CN B2006100272603A CN 200610027260 A CN200610027260 A CN 200610027260A CN 100465909 C CN100465909 C CN 100465909C
Authority
CN
China
Prior art keywords
record
data
executing
flash memory
last
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2006100272603A
Other languages
English (en)
Other versions
CN101082871A (zh
Inventor
刘珺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Simcom Wireless Solutions Co Ltd
Original Assignee
SHANGHAI SPEED COMMUNICATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHANGHAI SPEED COMMUNICATION TECHNOLOGY Co Ltd filed Critical SHANGHAI SPEED COMMUNICATION TECHNOLOGY Co Ltd
Priority to CNB2006100272603A priority Critical patent/CN100465909C/zh
Publication of CN101082871A publication Critical patent/CN101082871A/zh
Application granted granted Critical
Publication of CN100465909C publication Critical patent/CN100465909C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

一种模拟FLASH初始化过程遍历数据进行查错的方法,其步骤包括S0.启动查错程序;S1.选择需要查错的文件;S2.确定所选择查错文件的数据起始地址;S3.判断记录的状态位是否是11111111,若是,执行S6,否则,执行S4;S4.判断记录的状态位是否是全“0”,若不是全“0”,执行S5,如果是全“0”,执行S6;S5.手动将该值改正确,再跳回执行S2;S6.判断“上一记录的地址”是否是实际数据中的上一记录的地址,若不是,执行S5,否则执行S7;S7.根据该记录的“数据记录长度LEN”的值查找下一条记录;S8.判断该下一条记录是否是最后一条记录,若不是,便返回执行S3,否则执行S9;S9.将结果输出到EXCEL中;以及S10.改错程序运行结束。本发明提高了验证FLASH数据出错与否的准确性与效率。

Description

产品中闪存初始化过程遍历数据进行查错的方法
技术领域
本发明涉及一种对产品中闪存数据进行查错的方法。
背景技术
在工业级产品的运行过程中,产品中闪存(FLASH)所保存的数据常常由于外界环境的影响而出错(也就是常见的“跑飞”现象)。这些外界环境包括:电磁辐射、温度变化、电压冲击以及频繁的通电、断电等因素,导致Memory中的某些“位(bit)”由“1”变成“0”,从而引起产品不能正常运行。严重的还会导致产品不能开机,形成“废品”。
应用于GSM通讯模块(GSM Wireless Module),该系列产品的工作环境:
a.硬件方案采用美国ADI公司的芯片组,其中数字器件采用AD6525+ARM7TDMI,模拟器件采用AD6533,存储器件采用Intel MCP(Intel3208);
b.软件方案采用英国TTPCOM公司提供的基于KADAK嵌入式操作系统的平台;
在上述的产品软件解决方案中,数据的存储是按照“记录”来进行的。每一笔“数据记录”有固定的结构,如图1-1所示。
其中,每条“数据记录”需要满足下述四点:
1、“记录的状态位”可以取两种有效值:11111111(标记该数据记录是有效的)、00000000(标记该数据记录是有效的);
2、“上一记录的地址”的取值必须介于程序规定的最小地址和最大地址之间,如:0x01370000≤上一记录的地址≤0x01390000;
3、“记录的数据长度”等于“记录的数据部分”的字节数;
4、“记录的数据校验数据和”等于“记录的数据部分”所有数据的算术和;
闪存(FLASH)中的数据就是由上述的“数据记录”通过首尾相接的方式连结的。保存在FLASH中的部分数据如图1-2所示,该数据是通过下载工具从产品的FLASH器件中读取出来的。
在遍历整个数据段的过程中,需要检查一个重要的变量的值:“上一记录的地址”。通过该变量的值,可以根据一条“数据记录”迅速查找另一条相关的“数据记录”。
英国TTPCOM公司提供的软件系统解决方案中,往FLASH写入“数据记录”的流程如图1-3所示,包括步骤S300-S306,S300,对闪存开始写数据记录,S301-S306依次链接,且首尾(S301,S306)闭合,S301,初始化状态,S302,写入记录头信息,S303,写入记录状态位,S304,写入记录数据,S305,写入记录结束标记,S306,标记原有的记录失效,并执行S301
发明内容
综上所述,如何克服工业级产品中闪存(FLASH)所保存的数据在运行过程中,由于外界环境的影响而出错,即发生数据“跑飞”现象,乃是本发明所要解决的技术问题,为此,本发明的目的在于提供一种模拟产品中闪存初始化过程遍历数据进行查错的方法。
本发明的技术方案如下:
根据本发明的一种产品中闪存初始化过程遍历数据进行查错的方法,包括步骤:
S0.启动查错程序;S1.操作闪存查错软件界面,选择需要查错的文件;S2.确定所选择查错文件的数据的起始地址;S3.判断记录的状态位是否是11111111,若是,便执行S6,否则,则执行S4;S4.判断记录的状态位是否为全“0”,若不是全“0”,便执行S5,如果是全“0”,则执行S6;S5.手动将该值改正确,之后,跳回执行S2;S判断“上一记录的地址”是否是实际数据中的上一记录的地址,若不是,便执行S5,否则执行S7;S根据该记录的“数据记录长度LEN”的值查找下一条记录;S判断该下一条记录是否是最后一条记录,若不是最后一条记录,便返回执行S3,否则执行S9;S将结果输出到EXCEL中;以及S10·改错程序运行结束。
本发明方法的优点是,其改错的正确率达到100%。
附图说明
图1-1是现有产品方案中的闪存数据记录的结构示意图;
图1-2是现产品方案中在闪存部分数据示意图;
图1-3是现有产品中“数据记录”写入闪存的流程示意图;
图2-1是本发明通过模拟方法实现闪存查错的流程图;
图2-2是本发明中闪存查错工具的U1界面图;以及
图2-3是本发明中输出到EXCEL中的部分最终结果例图。
具体实施方式
下面根据图2-1-图2-3,结合现有产品解决方案中对“数据记录”结构的定义以及读写FLASH的操作流程给出本发明对现有产品中FLASH中保存的数据进行查错的较好实施例,并予以详细描述,以使本技术领域的技术人员更易于了解本发明的方法特征和功能特色,而不是用来限定本发明的范围。
本实施例中,所使用计算机环境为:CPU:奔腾处理器II以上;操作系统:Windows 2000/Windows XP;编程环境:MicrosoftVisual C++6.0,Microsoft Excel3.0。
请参阅图2-1,它是本发明通过模拟的方法实现闪存数据查错的程序100的流程图。其流程如下:步骤1000,操作如图2-2所示界面2,启动查错程序100,步骤1001,通过界面2选择所需要查错的文件,步骤1002,确定数据的起始地址,步骤1003,判断记录的状态位是11111111?如果是11111111,执行步骤1006;如果不是11111111,则执行步骤1004,判断记录的状态位是00000000吗?如果不是00000000,便执行步骤1005,手动将改值改正确,再跳回执行步骤1002;如果是00000000,则执行步骤1006,判断“上一地址”是实际数据中的上一记录的地址吗?如果不是,便执行步骤1005,再跳回执行步骤1002;如果是实际数据中的上一记录的地址,则执行步骤1007,根据该记录的“数据记录长度LEN”的值查找下一条记录,之后,执行步骤1008,判断该记录是最后一条记录吗?如果不是最后一条记录,便跳回,执行步骤1003;如果是最后一条记录,则执行步骤1009,将结果输出到EXCEL中,最后,执行步骤1010,查错程序100运行结束。
按上述流程,正确遍历完闪存中所有数据的结果如图2-3所示。按照本发明的查错方案,其正确查错率为100%。

Claims (2)

1、一种产品中闪存初始化过程遍历数据进行查错的方法,包括步骤:
S0.启动查错程序;
S1.操作闪存查错软件界面,选择需要查错的文件;
S2.确定所选择查错文件的数据的起始地址;
S3.判断记录的状态位是否为11111111,若是,便执行S6,否则,执行S4
S4.判断记录的状态位是否为全“0”,若不是全“0”,便执行S5,如果是全“0”,则执行S6
S5.手动将该值改正确,之后,跳回执行S2
S6.判断“上一记录的地址”是否是实际数据中的上一记录的地址,若不是,便执行S5,否则执行S7
S7.根据该记录的“数据记录长度LEN”的值查找下一条记录;
S8.判断该下一条记录是否是最后一条记录,若不是最后一条记录,便返回执行S3,否则执行S9
S9.将结果输出到EXCEL中;以及
S10.改错程序运行结束。
2、根据权利要求1所述的产品闪存初始化过程遍历数据进行查错的方法,其特征在于,实现查错的计算机环境为:
CPU:奔腾处理器II以上;
操作系统:Windows2000/Windows XP;
编程环境:Microsoft Visual C++6.0,Microsoft Excel3.0。
CNB2006100272603A 2006-06-02 2006-06-02 产品中闪存初始化过程遍历数据进行查错的方法 Expired - Fee Related CN100465909C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100272603A CN100465909C (zh) 2006-06-02 2006-06-02 产品中闪存初始化过程遍历数据进行查错的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100272603A CN100465909C (zh) 2006-06-02 2006-06-02 产品中闪存初始化过程遍历数据进行查错的方法

Publications (2)

Publication Number Publication Date
CN101082871A CN101082871A (zh) 2007-12-05
CN100465909C true CN100465909C (zh) 2009-03-04

Family

ID=38912455

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100272603A Expired - Fee Related CN100465909C (zh) 2006-06-02 2006-06-02 产品中闪存初始化过程遍历数据进行查错的方法

Country Status (1)

Country Link
CN (1) CN100465909C (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748537A (en) * 1997-02-13 1998-05-05 Garbers; Jeffrey Paul Method and apparatus for storing items in flash memory
US20020188886A1 (en) * 2000-01-07 2002-12-12 Xiaodong Liu Method and apparatus for backing up application code upon power failure during a code update
CN1534685A (zh) * 2002-12-02 2004-10-06 三星电子株式会社 包括引导程序副本的闪存和保护闪存系统的设备和方法
CN1554069A (zh) * 2001-09-13 2004-12-08 ��ʽ���������Ƽ� 存储卡及其初始化设置方法
US20040264254A1 (en) * 2003-06-24 2004-12-30 Micron Technology, Inc. Erase block data splitting
CN1617262A (zh) * 2003-11-13 2005-05-18 华为技术有限公司 一种对flash内部单元进行测试的方法
CN1725382A (zh) * 2004-07-20 2006-01-25 中兴通讯股份有限公司 一种闪存存储器的检测方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748537A (en) * 1997-02-13 1998-05-05 Garbers; Jeffrey Paul Method and apparatus for storing items in flash memory
US20020188886A1 (en) * 2000-01-07 2002-12-12 Xiaodong Liu Method and apparatus for backing up application code upon power failure during a code update
CN1554069A (zh) * 2001-09-13 2004-12-08 ��ʽ���������Ƽ� 存储卡及其初始化设置方法
CN1534685A (zh) * 2002-12-02 2004-10-06 三星电子株式会社 包括引导程序副本的闪存和保护闪存系统的设备和方法
US20040264254A1 (en) * 2003-06-24 2004-12-30 Micron Technology, Inc. Erase block data splitting
CN1617262A (zh) * 2003-11-13 2005-05-18 华为技术有限公司 一种对flash内部单元进行测试的方法
CN1725382A (zh) * 2004-07-20 2006-01-25 中兴通讯股份有限公司 一种闪存存储器的检测方法

Also Published As

Publication number Publication date
CN101082871A (zh) 2007-12-05

Similar Documents

Publication Publication Date Title
CN101558452B (zh) 用于在闪速eeprom存储页中重构可靠性数据的方法和装置
CN108133732B (zh) 闪存芯片的性能测试方法、装置、设备及存储介质
CN103186461B (zh) 一种现场数据的保存方法和恢复方法以及相关装置
US9507688B2 (en) Execution history tracing method
CN104246708A (zh) 针对nand闪存上数据的存储的架构
CN111538676B (zh) 数据储存装置及其数据存取方法
WO2019174205A1 (zh) 一种垃圾回收的方法、装置及存储设备
CN107450852B (zh) 一种存储空间处理方法、装置和设备
US9437327B2 (en) Combined rank and linear address incrementing utility for computer memory test operations
CN101419844B (zh) 一种闪存器件仿真设备以及闪存主控模块评测方法
CN104765695A (zh) 一种nand flash坏块管理系统及方法
CN102486938B (zh) 一种快速检测存储器的方法及装置
US20180285228A1 (en) Memory test system and an operating method thereof
CN105589928A (zh) 用于分布式数据处理系统的模拟测试方法
TW201913380A (zh) 資料儲存裝置以及其操作方法
US20130013283A1 (en) Distributed multi-pass microarchitecture simulation
CN103793032A (zh) 用于确定上电复位的方法和装置
US6820047B1 (en) Method and system for simulating an operation of a memory
CN104049947A (zh) 基于动态重命名的矢量寄存器堆的寄存器重新配置
CN110727399B (zh) 存储阵列管理方法及装置
US11947819B2 (en) Method and system for testing conversion relationship between block reading and page reading in flash memory chip
CN103824600B (zh) 存储器测试方法及装置
CN111324414A (zh) Nvm存储介质模拟器
CN100465909C (zh) 产品中闪存初始化过程遍历数据进行查错的方法
CN105867833B (zh) 数据存储装置及数据存储方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: SIMCOM INFORMATION TECHNOLOGY (SHANGHAI) CO., LTD.

Free format text: FORMER OWNER: SHANGHAI SPEED COMMUNICATION TECHNOLOGY CO., LTD.

Effective date: 20101122

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 200233 NO. 700, YISHAN ROAD, XUHUI DISTRICT, SHANGHAI TO: 200335 NO. 633, JINZHONG ROAD, CHANGNING DISTRICT, SHANGHAI

TR01 Transfer of patent right

Effective date of registration: 20101122

Address after: 200335 Shanghai city Changning District Admiralty Road No. 633

Patentee after: SHANGHAI SIMCOM Ltd.

Address before: 200233 No. 700, Xuhui District, Shanghai, Yishan Road

Patentee before: SHANGHAI SPEED COMMUNICATION TECHNOLOGY Co.,Ltd.

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160908

Address after: 200335 Shanghai city Changning District Admiralty Road No. 633 Building 1 layer 6

Patentee after: SIMCOM WIRELESS SOLUTIONS Ltd.

Address before: 200335 Shanghai city Changning District Admiralty Road No. 633

Patentee before: Shanghai SIMCom Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200206

Address after: 201201 room 606-a, building a, 3000 Longdong Avenue, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai

Patentee after: LONGSUNG TECHNOLOGY (SHANGHAI) CO.,LTD.

Address before: 200335 Shanghai city Changning District Admiralty Road No. 633 Building 1 layer 6

Patentee before: SIMCOM WIRELESS SOLUTIONS Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220406

Address after: 200335 8th floor, building 3, No. 289, Linhong Road, Changning District, Shanghai

Patentee after: SIMCOM WIRELESS SOLUTIONS Ltd.

Address before: Room 606-a, building a, 3000 Longdong Avenue, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai 201201

Patentee before: LONGSUNG TECHNOLOGY (SHANGHAI) CO.,LTD.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090304