CN103279399A - 一种嵌入式CPU在NAND Flash上启动的方法 - Google Patents
一种嵌入式CPU在NAND Flash上启动的方法 Download PDFInfo
- Publication number
- CN103279399A CN103279399A CN2013102609433A CN201310260943A CN103279399A CN 103279399 A CN103279399 A CN 103279399A CN 2013102609433 A CN2013102609433 A CN 2013102609433A CN 201310260943 A CN201310260943 A CN 201310260943A CN 103279399 A CN103279399 A CN 103279399A
- Authority
- CN
- China
- Prior art keywords
- nand flash
- embedded type
- type cpu
- data
- module
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种安全可靠的嵌入式CPU在NAND Flash上启动的方法,本方法将嵌入式CPU的引导固件Boot ROM中设置嵌入式CPU引导模块和数据完整性校验模块;嵌入式CPU引导模块完成初始化CPU、内存、NAND Flash后去指定的NAND Flash块的起始页找特定的描述符;数据完整性校验模块在搬运的过程中进行数据校验来保证全功能的Boot ROM的数据有效性。
Description
技术领域
本发明涉及计算机的技术领域,更具体地涉及一种嵌入式CPU在NAND Flash上启动的方法。
背景技术
随着NAND Flash普及,越来越多的嵌入式CPU支持NAND Flash启动,在拥有诸多优点的同时,NAND Flash由于生产工艺的问题,其在出厂时可能存在一定的坏块。这些固有坏块不能用于存储数据,已被产家标识好。另外,使用过程中由于读写次数增多,好块也会变得不稳定或失效,成为坏块,这就是出厂后产生的坏块。
NAND Flash生产厂家出厂时保证第一块是好块,通常生产厂家会把Boot ROM放到NAND Flash第一块以保证可靠启动,但由于现在需要Boot ROM的功能越来越多,通常NAND Flash的第一块已不够放置全部的Boot ROM,而通常NAND Flash生产厂家出厂时只保证第一块是好块,这就带来嵌入式CPU启动的不可靠性的问题。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种安全可靠的嵌入式CPU在NAND Flash上启动的方法。
本发明的技术解决方案是:这种嵌入式CPU在NAND Flash上启动的方法,本方法将嵌入式CPU的引导固件Boot ROM设置嵌入式CPU引导模块和数据完整性校验模块;嵌入式CPU引导模块完成初始化CPU、内存、NAND Flash后去指定的NAND Flash块的起始页找特定的描述符;数据完整性校验模块在搬运的过程中进行数据校验来保证全功能的Boot ROM的数据有效性。
本方法设置嵌入式CPU引导模块和数据完整性校验模块,也就是采用定制Boot ROM的方法,定制Boot ROM由于功能相对单一,生成二进制文件体积通常小于NAND Flash的一个块的大小,因此放到NAND Flash的第一块没有问题,而NAND Flash生产厂家出厂时保证第一块是好块,这样也保证了嵌入式CPU启动的安全可靠。
附图说明
图1是根据本发明的一个优选实施例的流程图。
具体实施方式
这种嵌入式CPU在NAND Flash(资料储存型闪存,即NAND bit line Flash Memory)上启动的方法,本方法将嵌入式CPU的引导固件Boot ROM中设置嵌入式CPU引导模块和数据完整性校验模块;嵌入式CPU引导模块完成初始化CPU、内存、NAND Flash后去指定的NAND Flash块的起始页找特定的描述符;数据完整性校验模块在搬运的过程中进行数据校验来保证全功能的Boot ROM的数据有效性。
本方法设置嵌入式CPU引导模块和数据完整性校验模块,也就是采用定制Boot ROM的方法,定制Boot ROM由于功能相对单一,生成二进制文件体积通常小于NAND Flash的一个块的大小,因此放到NAND Flash的第一块没有问题,而NAND Flash生产厂家出厂时保证第一块是好块,这样也保证了嵌入式CPU启动的安全可靠。
优选地,在数据校验失败后嵌入式CPU引导模块继续在特定区域查找定义的描述符。
优选地,数据完整性校验模块在数据搬运完成后进行数据完整校验,在数据完整性校验失败后交由嵌入式CPU引导模块继续查找定义的描述符。
如图1所示,优选地,该方法包括以下步骤:
(1)定制仅具有引导启动功能的嵌入式CPU的Boot ROM;
(2)查找描述符,如果找到执行步骤(3),否则继续查找描述符;
(3)搬运完全功能的Boot ROM;
(4)判断校验是否正确,是则执行步骤(5),否则执行步骤(2);
(5)运行完全功能的Boot ROM。
优选地,步骤(1)包括以下步骤:
(1.1)初始化嵌入式CPU;
(1.2)初始化内存;
(1.3)初始化NAND Flash。
以上所述,仅是本发明的较佳实施例,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属本发明技术方案的保护范围。
Claims (5)
1.一种嵌入式CPU在NAND Flash上启动的方法,其特征在于:本方法将嵌入式CPU的引导固件Boot ROM中设置嵌入式CPU引导模块和数据完整性校验模块;嵌入式CPU引导模块完成初始化CPU、内存、NANDFlash后去指定的NAND Flash块的起始页找特定的描述符;数据完整性校验模块在搬运的过程中进行数据校验来保证全功能的Boot ROM的数据有效性。
2.根据权利要求1所述的嵌入式CPU在NAND Flash上启动的方法,其特征在于:在数据校验失败后嵌入式CPU引导模块继续在特定区域查找定义的描述符。
3.根据权利要求2所述的嵌入式CPU在NAND Flash上启动的方法,其特征在于:数据完整性校验模块在数据搬运完成后进行数据完整校验,在数据完整性校验失败后交由嵌入式CPU引导模块继续查找定义的描述符。
4.根据权利要求1所述的嵌入式CPU在NAND Flash上启动的方法,其特征在于:包括以下步骤:
(1)定制仅具有引导启动功能的嵌入式CPU的Boot ROM;
(2)查找描述符,如果找到执行步骤(3),否则继续查找描述符;
(3)搬运完全功能的Boot ROM;
(4)判断校验是否正确,是则执行步骤(5),否则执行步骤(2);
(5)运行完全功能的Boot ROM。
5.根据权利要求4所述的嵌入式CPU在NAND Flash上启动的方法,其特征在于:步骤(1)包括以下步骤:
(1.1)初始化嵌入式CPU;
(1.2)初始化内存;
(1.3)初始化NAND Flash。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013102609433A CN103279399A (zh) | 2013-06-27 | 2013-06-27 | 一种嵌入式CPU在NAND Flash上启动的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013102609433A CN103279399A (zh) | 2013-06-27 | 2013-06-27 | 一种嵌入式CPU在NAND Flash上启动的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103279399A true CN103279399A (zh) | 2013-09-04 |
Family
ID=49061929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013102609433A Pending CN103279399A (zh) | 2013-06-27 | 2013-06-27 | 一种嵌入式CPU在NAND Flash上启动的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103279399A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109976815A (zh) * | 2019-03-20 | 2019-07-05 | 深圳忆联信息系统有限公司 | 一种加速Nandboot的方法及其系统 |
CN111045739A (zh) * | 2019-12-03 | 2020-04-21 | 福州瑞芯微电子股份有限公司 | 基于启动程序的固件引导方法、介质及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1914598A (zh) * | 2004-01-28 | 2007-02-14 | 索尼株式会社 | 半导体装置和用于启动该半导体装置的处理方法 |
US20090271603A1 (en) * | 2008-04-28 | 2009-10-29 | Hon Hai Precision Industry Co., Ltd. | Embedded system and startup method thereof |
CN102135927A (zh) * | 2011-04-29 | 2011-07-27 | 杭州华三通信技术有限公司 | 一种基于nand flash的系统引导方法和装置 |
-
2013
- 2013-06-27 CN CN2013102609433A patent/CN103279399A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1914598A (zh) * | 2004-01-28 | 2007-02-14 | 索尼株式会社 | 半导体装置和用于启动该半导体装置的处理方法 |
US20090271603A1 (en) * | 2008-04-28 | 2009-10-29 | Hon Hai Precision Industry Co., Ltd. | Embedded system and startup method thereof |
CN102135927A (zh) * | 2011-04-29 | 2011-07-27 | 杭州华三通信技术有限公司 | 一种基于nand flash的系统引导方法和装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109976815A (zh) * | 2019-03-20 | 2019-07-05 | 深圳忆联信息系统有限公司 | 一种加速Nandboot的方法及其系统 |
CN109976815B (zh) * | 2019-03-20 | 2022-03-29 | 深圳忆联信息系统有限公司 | 一种加速Nandboot的方法及其系统 |
CN111045739A (zh) * | 2019-12-03 | 2020-04-21 | 福州瑞芯微电子股份有限公司 | 基于启动程序的固件引导方法、介质及设备 |
CN111045739B (zh) * | 2019-12-03 | 2022-06-07 | 福州瑞芯微电子股份有限公司 | 基于启动程序的固件引导方法、介质及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104063477B (zh) | 嵌入式系统启动异常的处理方法及装置 | |
CN104123167B (zh) | 具有配置字自检功能的mcu上电启动方法及其自检方法 | |
US20120198133A1 (en) | Electronic device with expandable memory capacity and an expansion method thereof | |
CN103544080B (zh) | 一种数据保护方法、装置及系统 | |
CN103473098A (zh) | 一种boot程序的启动方法和相关装置 | |
US20170168747A1 (en) | Intelligent memory support for platform reset operation | |
WO2015103917A1 (zh) | 无线路由设备管理方法和装置 | |
CN102662715A (zh) | 一种嵌入式操作系统启动方法 | |
CN104679622A (zh) | 基本输入输出系统维护方法 | |
CN105677409B (zh) | 一种系统升级方法及装置 | |
CN102169463A (zh) | 一种基于iic总线的制造信息的获取方法和设备 | |
CN103226505A (zh) | 一种校验基本输入输出系统bios的方法及设备 | |
CN103279399A (zh) | 一种嵌入式CPU在NAND Flash上启动的方法 | |
CN102572591B (zh) | 一种高级安全数字电视机顶盒生产方法及装置 | |
CN103455750B (zh) | 一种嵌入式设备的高安验证方法及装置 | |
US10915909B2 (en) | Terminal verification method, terminal device, and computer readable storage medium | |
CN101788916B (zh) | 配置芯片的方法和装置 | |
WO2014201885A1 (en) | Method and system for invoking plug-in function | |
CN102799496A (zh) | 一种与非型闪存操作系统内核和文件系统校验方法及装置 | |
US9946590B2 (en) | Transmission of command strings and status strings via memory bus | |
CN104035776A (zh) | 一种操作系统的启动方法 | |
CN104484211A (zh) | 共享镜像文件的方法及装置 | |
CN106920576A (zh) | 一种检验Nand Flash质量的方法及系统 | |
US9981184B2 (en) | Method and system for invoking plug-in function | |
US10698695B2 (en) | Method for intel platform detection of parameters in Flash Rom |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130904 |