CN101051272A - 微处理器启动过程中对所用通用闪存的检测方法 - Google Patents

微处理器启动过程中对所用通用闪存的检测方法 Download PDF

Info

Publication number
CN101051272A
CN101051272A CN 200610060172 CN200610060172A CN101051272A CN 101051272 A CN101051272 A CN 101051272A CN 200610060172 CN200610060172 CN 200610060172 CN 200610060172 A CN200610060172 A CN 200610060172A CN 101051272 A CN101051272 A CN 101051272A
Authority
CN
China
Prior art keywords
password
microprocessor
group
general flash
flash memory
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.)
Granted
Application number
CN 200610060172
Other languages
English (en)
Other versions
CN100458694C (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.)
Guangzhou Ankai Microelectronics Co.,Ltd.
Original Assignee
SHENZHEN ANYKA MICROELECTRONICS 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 SHENZHEN ANYKA MICROELECTRONICS TECHNOLOGY Co Ltd filed Critical SHENZHEN ANYKA MICROELECTRONICS TECHNOLOGY Co Ltd
Priority to CNB2006100601723A priority Critical patent/CN100458694C/zh
Publication of CN101051272A publication Critical patent/CN101051272A/zh
Application granted granted Critical
Publication of CN100458694C publication Critical patent/CN100458694C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Read Only Memory (AREA)

Abstract

一种微处理器启动过程中对所用通用闪存的检测方法,所述方法包括:A.将所有通用闪存的基本页读取命令归纳成预定数量的基本命令序列集,并在通用闪存及微处理器中设置校验密码;B.微处理器通过枚举基本命令序列读取通用闪存第一页,进行密码校验;C.当密码校验通过,证明微处理器成功地提取了通用闪存的参数,微处理器利用提取的参数从该通用闪存中读取并执行启动程序;否则,进入下一种基本命令序列的设置。该方法可以支持不同厂商,不同型号的所有NANDFLASH,并且该方法具有成本低、设计及实现简单的优点。

Description

微处理器启动过程中对所用通用闪存的检测方法
技术领域
本发明涉及通信技术领域,尤其涉及一种微处理器启动过程中对所用通用闪存(NAND FLASH)的检测方法。
背景技术
现代信息系统将运行软件存储在NAND FLASH内以备永久使用。微处理器启动时读取执行NAND FLASH起始段的一小部分指令,这一小部分指令通常将NAND FLASH的全部运行程序复制到系统主存储器中,然后微处理器跳到系统主存储器中读取运行,进入正常工作。NAND FLASH有统一的硬件接口,但是不同的厂商,同一厂商不同的产品型号,至少有三种以上的指令接口,如何确定所使用的NAND FLASH的类型及所使用的指令接口,是微处理器启动过程中必须解决的问题。
目前有两种识别NAND FLASH的方法:方法一如图1所示,是将NANDFLASH的类型、指令集、和时间参数存储在一个小容量的PROM(可编程只读型存储器)内,启动程序如图2所示,微处理器先从PROM读取这些参数,然后再从NAND FLASH中读取执行启动程序。这种方法的缺点是增加了PROM及接口成本。方法二如图3示,是在芯片内部设置ROM(只可读存储器)纪录各种型号NAND FLASH ID(芯片识别码)及其对应的指令及时间参数。启动程序如图4所示,微处理器先读取NAND FLASH的型号ID,并从ROM中提取对应的指令及参数,然后再从NAND FLASH中读取执行启动程序。这种方法的缺点是随着NAND FLASH型号的不断增加ROM变得极其复杂,同时设好的ROM也不能支持新的NAND FLASH型号。
发明内容
本发明所要解决的技术问题是:提供一种微处理器启动过程中,在不增加接口成本的条件下,支持所有NAND FLASH的方法。
本发明为解决上述技术问题所采用的技术方案为:
一种微处理器启动过程中对所用通用闪存的检测方法,所述方法包括:
A、将所有通用闪存的基本页读取命令归纳成预定数量的基本命令序列集,并在通用闪存及微处理器中设置校验密码;
B、微处理器通过枚举所述基本命令序列读取所述通用闪存第一页,进行密码校验;
C、当密码校验通过,证明微处理器成功地提取了通用闪存的参数,微处理器利用提取的参数从该通用闪存中读取并执行启动程序;否则,进入下一种基本命令序列的设置。
所述的方法,其中:所述密码分设成两组,第一组密码设置在通用闪存第一页中,第二组密码保存在微处理器引导程序中。
所述的方法,其中:所述步骤B所述的密码校验包括如下具体步骤:
B1、当系统启动时,微处理器读取所述通用闪存第一页,将第一组密码从读回的内容中提取出来,并进行密码转换处理;
B2、将处理后的第一组密码与所述第二组密码进行比较;若二者匹配,则密码校验通过,否则密码校验失败。
所述的方法,其中:将所述第一组密码与第二组密码设置为相同的二进制位流。
所述的方法,其中:将所述第一组密码设置为一个二进制位流,所述第二组密码设置为第一组密码经过加密运算后的结果。
所述的方法,其中:所述的基本命令序列集包括12种基本命令序列;所述基本命令序列的格式为:第一个命令是命令字节;第二个命令为列地址;第三个命令为行地址;第四个命令是命令字节;第五个命令为等待足够长时间;第六个命令为读取通用闪存的内容。
所述的方法,其中:所述的基本命令序列集依据基本命令序列的使用频度排列设置,将最常使用的命令序列设置在基本命令序列集的最前面。
所述的方法,其中:所述步骤C包括如下具体处理:微处理器成功地提取了通用闪存的参数后,采用与该与非型通用闪存适配的指令及时间参数启动所述与非型通用闪存。
本发明的有益效果为:提供了一种微处理器启动过程中对NANDFLASH通用的检测方法,该方法可以支持不同厂商,不同型号的所有NANDFLASH,由于不增加接口,降低了成本,并且该方法设计及实现简单,尤其适用手持设备和家电设备。
附图说明
图1为现有技术1方案示意图;
图2为现有技术1启动程序的流程图;
图3为现有技术2方案示意图;
图4为现有技术2启动程序的流程图;
图5为归纳所有NAND FLASH第一页读取的12种基本命令集;
图6为本发明启动程序的流程图。
具体实施方式
下面根据附图和实施例对本发明作进一步详细说明:
新方案使用枚举和密码相结合的方法从NAND FLASH第一个512字节存储中直接提取指令和时间参数。我们发现所有的NAND FLASH的页容量都是512+16字节的倍数,目前用到的页容量是512+16字节和2048+64字节,而且第一页是高度可靠的(不需进行纠错)。同时,我们根据所有的NAND FLASH的操作说明,将基本页读取命令都可以归纳描述为:
00H-CADDR(列地址)-RADDR(行地址)-[30H]-WAIT-READ
其中:基本页读取的第一个命令都是命令字节“00”;读取的第二个命令都是列地址,分为小列“CADDR[7:0]”和大列“CADDR[7:0]-CADDR[15:8]”;基本页读取的第三个命令都是行地址,分为小行“RADDR[7:0]”,中行“RADDR[7:0],RADDR[15:8]”,大行“RADDR[7:0]-RADDR[15:8]-RADDR[23:16]”;基本页读取的第四个命令是命令字节,可有可无,有才为命令字节“30”;基本页读取的第五步是等待足够长,为毫秒级;基本页读取的第六步是用足够慢的速度读取每一字节。因此NAND FLASH第一页读取的12种基本命令集归纳如图5所示。
校验密码由用户设置,密码分设成两组。由于NAND FLASH第一页是高度可靠的,第一组校验密码设置在NAND FLASH的第一页内,第二组校验密码设置在微处理器芯片的引导程序内。密码是微处理设计过程中定义好的一个数字序列。
对NAND FLASH的检测流程如图6所示,微处理器进行每一种指令设置的密码读取及检验,即:微处理器选择一个命令序列并设置为保守的时间参数,去读取NAND FLASH第一页;微处理器将从NAND FLASH读出的密码同密码规则进行比较,判断检验成功或失败。密码设置和检验过程如下:用户设置密码,并将第一组密码写入NAND FLASH第一页中确定的位置,同时将第二组密码的内容保存在引导程序中。当系统启动时,读取NAND FLASH的第一页,并将第一组密码从读回的内容中提取出来,按照用户定义的转换方法进行密码转换处理后与保存在引导程序中的第二组密码进行比较。如果两者匹配,则校验通过,否则校验失败。用户可以根据自己的要求设置复杂程度不同的密码以及校验,简单的密码可以将第一组密码与第二组密码设置为相同的二进制位流;复杂的密码可以将第一组密码设置为一个二进制位流,而将第二组密码设置为第一组密码经过加密运算后的的结果。具体的密码转换方法既可固化在引导程序中,也可存在NAND FLASH的第一页中,在提取第一组密码的同时,提取具体的针对第一组密码的密码转换方法。设置的密码越复杂,则密码检验成功的可信度就越大。
如果密码检验成功,说明利用该命令序列可以从NAND FLASH读取到正确的内容,则认为微处理器成功地提取了NAND FLASH的参数;成功提取参数后,微处理器利用最优的指令及时间参数从该NAND FLASH中读取并执行启动程序。如果密码检验不成功,则复位NAND FLASH并进入下一种指令设置,直至一种指令设置可以从NAND FLASH读取到正确的参数为止。为了减少启动时间,基本命令序列集依据基本命令序列的使用频度排列设置,从最常用的指令设置开始,将最常使用的命令序列设置在基本命令序列集的最前面。并且由于微处理器仅是在读取NANDFLASH第一页时使用保守时间参数的基本方法读取,而微处理器成功地提取了通用闪存的参数后,其它页则是用与该NAND FLASH适配的指令时间参数的最优方法读取,因此启动时间基本保持不变。
可以理解的是,本发明所述的微处理器启动过程中对所用通用闪存的检测方法,上述针对较佳实施例的描述过于具体,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。

Claims (8)

1、一种微处理器启动过程中对所用通用闪存的检测方法,所述方法包括:
A、将所有通用闪存的基本页读取命令归纳成预定数量的基本命令序列集,并在通用闪存及微处理器中设置校验密码;
B、微处理器通过枚举所述基本命令序列读取所述通用闪存第一页,进行密码校验;
C、当密码校验通过,证明微处理器成功地提取了通用闪存的参数,微处理器利用提取的参数从该通用闪存中读取并执行启动程序;否则,进入下一种基本命令序列的设置。
2、根据权利要求1所述的方法,其特征在于:所述密码分设成两组,第一组密码设置在通用闪存第一页中,第二组密码保存在微处理器引导程序中。
3、根据权利要求2所述的方法,其特征在于:所述步骤B所述的密码校验包括如下具体步骤:
B1、当系统启动时,微处理器读取所述通用闪存第一页,将第一组密码从读回的内容中提取出来,并进行密码转换处理;
B2、将处理后的第一组密码与所述第二组密码进行比较;若二者匹配,则密码校验通过,否则密码校验失败。
4、根据权利要求3所述的方法,其特征在于:将所述第一组密码与第二组密码设置为相同的二进制位流。
5、根据权利要求3所述的方法,其特征在于:将所述第一组密码设置为一个二进制位流,所述第二组密码设置为第一组密码经过加密运算后的结果。
6、根据权利要求1-5任一权项所述的方法,其特征在于:所述的基本命令序列集包括12种基本命令序列;所述基本命令序列的格式为:第一个命令是命令字节;第二个命令为列地址;第三个命令为行地址;第四个命令是命令字节;第五个命令为等待足够长时间;第六个命令为读取通用闪存的内容。
7、根据权利要求6所述的方法,其特征在于:所述的基本命令序列集依据基本命令序列的使用频度排列设置,将最常使用的命令序列设置在基本命令序列集的最前面。
8、根据权利要求7所述的方法,其特征在于:所述步骤C包括如下具体处理:微处理器成功地提取了通用闪存的参数后,采用与该通用闪存适配的指令及时间参数启动所述通用闪存。
CNB2006100601723A 2006-04-04 2006-04-04 微处理器启动过程中对所用通用闪存的检测方法 Active CN100458694C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100601723A CN100458694C (zh) 2006-04-04 2006-04-04 微处理器启动过程中对所用通用闪存的检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100601723A CN100458694C (zh) 2006-04-04 2006-04-04 微处理器启动过程中对所用通用闪存的检测方法

Publications (2)

Publication Number Publication Date
CN101051272A true CN101051272A (zh) 2007-10-10
CN100458694C CN100458694C (zh) 2009-02-04

Family

ID=38782698

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100601723A Active CN100458694C (zh) 2006-04-04 2006-04-04 微处理器启动过程中对所用通用闪存的检测方法

Country Status (1)

Country Link
CN (1) CN100458694C (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101799793A (zh) * 2010-03-23 2010-08-11 深圳市硅格半导体有限公司 闪存控制方法及装置
CN101556560B (zh) * 2008-04-09 2011-05-04 群联电子股份有限公司 储存装置、控制器及其数据存取方法
CN108121624A (zh) * 2016-11-29 2018-06-05 致伸科技股份有限公司 电子装置测试系统及其方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6601167B1 (en) * 2000-01-14 2003-07-29 Advanced Micro Devices, Inc. Computer system initialization with boot program stored in sequential access memory, controlled by a boot loader to control and execute the boot program
KR100493884B1 (ko) * 2003-01-09 2005-06-10 삼성전자주식회사 시리얼 플래시 메모리에서의 현지 실행을 위한 제어 장치및 그 방법, 이를 이용한 플래시 메모리 칩
CN1722866A (zh) * 2004-07-15 2006-01-18 仁宝电脑工业股份有限公司 藉由发送短讯息以控制接收装置的方法与系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101556560B (zh) * 2008-04-09 2011-05-04 群联电子股份有限公司 储存装置、控制器及其数据存取方法
CN101799793A (zh) * 2010-03-23 2010-08-11 深圳市硅格半导体有限公司 闪存控制方法及装置
CN101799793B (zh) * 2010-03-23 2012-06-13 深圳市硅格半导体有限公司 闪存控制方法及装置
CN108121624A (zh) * 2016-11-29 2018-06-05 致伸科技股份有限公司 电子装置测试系统及其方法

Also Published As

Publication number Publication date
CN100458694C (zh) 2009-02-04

Similar Documents

Publication Publication Date Title
CN102270162B (zh) 一种应用于sparcv8结构计算机的容错引导方法
CN1139036C (zh) 防止对先前的故障设备完成加载或存储操作的方法及装置
CN100456246C (zh) 一种固件程序升级的方法与装置
CN102135927B (zh) 一种基于nand flash的系统引导方法和装置
EP2026209A2 (en) System and method for using a memory mapping function to map memory defects
US8245195B2 (en) System and method for debugging a computer program
AU2007221429A1 (en) Multi-protocol removable storage device
EP1959345A1 (en) Bios file switching method and controller device thereof
CN101681281A (zh) 检测出现的坏块
CN103268277A (zh) 一种输出日志信息的方法及系统
US8990549B2 (en) Method and system for booting electronic device from NAND flash memory
CN1249463A (zh) 配有闪烁存储器的微型计算机及其程序存入方法
CN101042652A (zh) 一种保护软件启动参数区的方法
CN101807152A (zh) 自我验证选择只读存储器的基本输出入系统及其验证方法
CN101051272A (zh) 微处理器启动过程中对所用通用闪存的检测方法
CN112015447B (zh) 电子设备的系统更新方法及装置、电子设备及存储介质
CN101034369A (zh) 一种软件抗干扰方法及装置
CN1776644A (zh) 一种基于有限状态机的对内存变量改写进行监控的方法
CN115794472A (zh) 芯片的错误收集及错误处理方法、装置及存储介质
CN1180346C (zh) 在一计算机系统中的bios存储装置的自动安全恢复方法
CN101174221A (zh) 以闪速存储器存储开机码的电子系统及开机方法
CN1677363A (zh) 一种计算机cpu抗干扰的设计方法
CN103294573B (zh) 一种智能终端及其数据备份方法
CN100524245C (zh) 监控输入/输出端口数据的方法
CN1797360A (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: ANKAI (GUANGZHOU) MICROELECTRONICS TECHNOLOGY CO.,

Free format text: FORMER OWNER: SHENZHEN ANKAI MICROELECTRONICS TECHNOLOGY CO., LTD.

Effective date: 20100122

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

Effective date of registration: 20100122

Address after: 3 floor, C1 District, Chuangxin Road, No. 182, science Avenue, Guangzhou Science City, Guangdong

Patentee after: Anyka (Guangzhou) Microelectronics Technology Co., Ltd.

Address before: Research Institute of Shenzhen Tsinghua University, Shenzhen hi tech Industrial Park, Guangdong, B608

Patentee before: Shenzhen Anyka Microelectronics Technology Co., Ltd.

CP01 Change in the name or title of a patent holder

Address after: 3 / F, C1 area, innovation building, 182 science Avenue, Guangzhou Science City, Guangdong Province, 510663

Patentee after: Guangzhou Ankai Microelectronics Co.,Ltd.

Address before: 3 / F, C1 area, innovation building, 182 science Avenue, Guangzhou Science City, Guangdong Province, 510663

Patentee before: ANYKA (GUANGZHOU) MICROELECTRONICS TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder
CP02 Change in the address of a patent holder

Address after: 510555 No. 107 Bowen Road, Huangpu District, Guangzhou, Guangdong

Patentee after: Guangzhou Ankai Microelectronics Co.,Ltd.

Address before: 3 / F, C1 area, innovation building, 182 science Avenue, Guangzhou Science City, Guangdong Province, 510663

Patentee before: Guangzhou Ankai Microelectronics Co.,Ltd.

CP02 Change in the address of a patent holder