CN108897576A - A method of the quick start BOOT based on ARM chip - Google Patents
A method of the quick start BOOT based on ARM chip Download PDFInfo
- Publication number
- CN108897576A CN108897576A CN201810629476.XA CN201810629476A CN108897576A CN 108897576 A CN108897576 A CN 108897576A CN 201810629476 A CN201810629476 A CN 201810629476A CN 108897576 A CN108897576 A CN 108897576A
- Authority
- CN
- China
- Prior art keywords
- program
- boot
- ram
- block0
- bootstrap
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses the method for quick start BOOT based on ARM chip a kind of, the embedded system including chip and NAND FLASH composition based on ARM kernel, and realize the program of the BLOCK0 of its quick start NAND.The method of quick start BOOT, after mainly BLOCK0 being loaded in bootstrap a part to RAM operation, the segment program that BOOT is first carried out can be loaded into BOOT program in RAM automatically, guarantee the integrality of BOOT program, to realize the starting of BOOT.Since BOOT program is less than a BLOCK of NAND, entire start-up course has only taken up BLOCK0, and a BOOT is only needed to copy and start realizing self, to realize the quick start BOOT of ARM chip.
Description
Technical field
The present invention relates to field of computer technology, the method for specifically a kind of quick start BOOT based on ARM chip.
Background technique
Embedded OS (Embedded Operating System, referred to as:EOS) refer to for embedded system
Operating system.When embedded OS is run, bootstrap in the ROM of usually first bootrom is loaded from NAND
And start BOOT program, then by BOOT programming jump to Kernel, run main program.
And BOOT program is often deposited in front of in NAND FLASH in several pieces of BLOCK.Different BOOT programs account for
It is in different size.And in the technique of NAND, general only first piece of technique is best and is most difficult to bad.If BOOT is accounted for
With two pieces or muti-piece BLOCK, as long as there is a BLOCK to be broken, entire BOOT program, which will load unsuccessfully, leads to BOOT program not
It can starting.And in order to ensure that BOOT program can load, it usually can also make burning backup, BOOT program copy to different
In BLOCK.
And often BOOT program can be more than the specified program size that RAM is loaded into from NAND of bootstrap, the common practice
It is to do a lesser BOOT program (BOOT stage1), the program of stage1 is for loading and starting BOOT stage2 journey
Sequence, that is, main BOOT program, to go load kernel activation system.Such method can not only occupy more
BLOCK needs to safeguard the stage program of multiple BOOT.Starting speed and stability have to be hoisted.
Therefore, for this status, there is an urgent need to develop the method for quick start BOOT based on ARM chip a kind of, with
Overcome the shortcomings of in currently practical application.
Summary of the invention
The purpose of the present invention is to provide the methods of quick start BOOT based on ARM chip a kind of, to solve above-mentioned back
The problem of being proposed in scape technology.
To achieve the above object, the present invention provides the following technical solutions:
The present invention is directed to design the method for the quick start BOOT of basic ARM chip in embedded system a kind of, and should
Method also has certain reliability, feasibility.
The technical scheme is that:A kind of embedded hardware system of basic ARM chip, it includes basic ARM kernel
CPU, NAND FLASH and the method for realizing quick start BOOT in fact.
And the normal Booting sequence of system is:
Step 1, system electrification first carries out the bootstrap in the ROM of CPU;
Step 2, bootstrap holds the RAM that the program segment of the specified size of BLOCK0 in NAND FLASH copies CPU to
Row;
Step 3, the BOOT program copied out is then run in RAM, is removed load Kernel, is started main program;
Often BOOT program can be more than the size of the specified copy of bootstrap in ROM, and general BOOT, such as u-
Boot, the size of firmware can be more than BLOCK0, it may be desirable to which multiple sides BLOCK can store BOOT program.Therefore it just needs BOOT
Program is divided into stage1 program and stage2 program.General stage1 and stage2 is two different program files.It will
BOOT burning program process is:
Step 1, the BLOCK0 of stage1 firmware burning to NAND, such as Fig. 1;
Step 2, stage2 is burnt in BLOCK1 and BLOCK required later, such as Fig. 1;
Step 3, stage2 is burnt in spare BLOCK, such as Fig. 1;
Since in the technique of NAND, BLOCK0 is that guarantee is best, and is least easy bad.So needing stage1 burning
It to BLOCK0, is then booted up by the bootstrap in the ROM of CPU, stage1 program is copied in RAM and is run.So
Afterwards after stage1 operation, then available stage2 is found in NAND, copy stage2 to RAM operation.Stage2 is exactly to lead
The BOOT program wanted loads kernel, operating system.
Way general in this way will not only occupy the BLOCK memory space of more NAND, but also when starting,
Stage1 is started by bootstrap, then by stage1 deactivation stage2.The specific steps are:
Step 1, system electrification starts the bootstrap in the ROM of CPU;
Step 2, bootstrap runs the BLOCK0 of NAND by specifying big wisp stage1 program to copy in RAM, such as
Fig. 1;
Step 3, stage1 program copies stage2 program available in NAND in RAM to, such as Fig. 3;
Step 4, stage1 programming jump runs stage2 program, such as Fig. 4 to stage2 program entry;
Step 5, stage2 program normal load Kernel runs main program.
In order to improve starting speed, and the characteristic of BLOCK0 is made full use of, stage1 and stage2 can be merged into
One program.Thus BOOT program can be only burnt to BLOCK0.Due to only being loaded when boot program loads BOOT program
BLOCK0 specifies size, cannot load BOOT program completely, therefore the part of the pre-loaded BOOT program of necessary guarantee
It can execute, and can guarantee integrality of the BOOT program in RAM remaining BOOT program self-replacation into RAM.
The specific steps are:
Step 1, system electrification starts the bootstrap in the ROM of CPU;
Step 2, bootstrap is from a part before BLOCK0 copy BOOT program into RAM;
Step 3, the part BOOT program starting operation in RAM is first copied to, and remaining BOOT program from BLOCK0
It copies in RAM.
Existing complete BOOT program, can execute activation system in order in RAM.It in this way, can be with
BOOT program is only needed to be stored in BLOCK0, so that it may make full use of the advantage of BLOCK0.And BOOT program copies
To after SRAM, remaining BOOT program can be loaded from BLOCK0, to complete the work of BOOT.Compared to general BOOT program,
Can speed and stability improve.
Compared with prior art, the beneficial effects of the invention are as follows:The method of the quick start BOOT based on ARM chip,
And the method for this quick start BOOT, after mainly BLOCK0 being loaded in bootstrap a part to RAM operation, BOOT is first
The segment program of execution can be loaded into BOOT program in RAM automatically, guarantee the integrality of BOOT program, to realize BOOT's
Starting.Since BOOT program is less than a BLOCK of NAND, entire start-up course has only taken up BLOCK0, and only needs
It wants a BOOT and copies and start realizing self, to realize the quick start BOOT of ARM chip.
Detailed description of the invention
Fig. 1 is the position block diagram of the common BOOT burning program NAND FLASH of the present invention.
Fig. 2 is the Stage1 and ram location block diagram of the common BOOT program of the present invention.
Fig. 3 is the Stage2 and ram location block diagram of the common BOOT program of the present invention.
Fig. 4 is that the Stage1 of the common BOOT program of the present invention jumps Stage2 functional block diagram.
Fig. 5 is position block diagram of the BOOT burning program of the present invention to NAND FLASH.
Fig. 6 is the position block diagram that BOOT program of the present invention copies RAM to.
Fig. 7 is position block diagram of the BOOT burning program of the present invention to NAND FLASH.
Specific embodiment
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete
Site preparation description, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on
Embodiment in the present invention, it is obtained by those of ordinary skill in the art without making creative efforts every other
Embodiment shall fall within the protection scope of the present invention.
Please refer to Fig. 1~7, in the embodiment of the present invention, a method of the quick start BOOT based on ARM chip, with CPU
It uses S3C2416 (ARM926EJ is kernel), NAND FLASH is set using K9F1G08U0B as an embedded system hardware
For standby frame is implemented, wherein there are SRAM and ROM inside S3C2416.K9F1G08U0B is with 1024BLOCK, each
The size of BLOCK is 128K.
Then according to the starting configuration of CPU and parameter, BOOT program is write.BOOT program is by multiple .c files and compilation
Program composition.It is specified to be responsible for being put into before BOOT program from the program of BLOCK0 copy data when compiling, to draw
This section of program first can be copied to SRAM operation by lead sequence.Furthermore, it is possible to which BOOT process control is arrived 60K or so.
When system electrification, CPU the Bootloader from ROM, bootstrap can first can be copied in BLOCK0
It is executed in the data to SRAM of 4K.Therefore when configuring and compiling BOOT program, it is ensured that 4K program segment first copied can be with
It is normally executed in SRAM.After normal execution, most important function is exactly that remaining BOOT program is copied to from BLOCK0
In SRAM.
Realize this function the specific steps are:
Step 1, as in Fig. 5, in the BLOCK0 BOOT burning program to NAND FLASH;
Step 2, system re-powers, and runs the bootstrap in ROM;
Step 3, as in Fig. 6, bootstrap is run from copy 4K program segment in BLOCK0 into SRAM;
Step 4, as the BOOT program segment completion in Fig. 7, executed in sram copies remaining 56K in SRAM to;
Step 5, copied the BOOT program of completion SRAM can normal activation system.
Using such Starting mode, it is adapted to more NAND, process control of BOOT to 60K or so or more
It is small, in this way to BLOCK size be that 64K is also adapted to, as long as that is, BLOCK size is more than 64K's, so that it may be adapted to
This method is come.If it is common BOOT program is used, selection also to be gone to close according to stage1 the and stage2 size of BOOT
Suitable NAND, and different NAND, BLOCK size is also different, and the BLOCK that BOOT program occupies is not known yet, compatible
It cannot just be ensured well in property.And the technology of the present invention is used, BOOT program is divided into two parts successively to copy in SRAM and transport
Row, accomplishes seamless connection, does not need the operation as stage1 jumps to stage2, and program is also smaller, only take up
BLOCK0, copying speed are also faster than common BOOT program, it is important that take full advantage of the advantage of BLOCK0, BLOCK0 is
It is most difficult in entire NAND bad.If it is common BOOT program is used, BLOCK1 and subsequent BLOCK is occupied, as long as
There is a BLOCK to be broken, BOOT program cannot be executed normally, need again to be burnt in NAND BOOT, and also want
Bad BLOCK is handled, this just has certain requirement to the processing of BOOT, while the also complexity and increase of increased BOOT program
Starting time.
It is obvious to a person skilled in the art that invention is not limited to the details of the above exemplary embodiments, Er Qie
In the case where without departing substantially from spirit or essential attributes of the invention, the present invention can be realized in other specific forms.Therefore, no matter
From the point of view of which point, the present embodiments are to be considered as illustrative and not restrictive, and the scope of the present invention is by appended power
Benefit requires rather than above description limits, it is intended that all by what is fallen within the meaning and scope of the equivalent elements of the claims
Variation is included within the present invention.Any reference signs in the claims should not be construed as limiting the involved claims.
The above are merely the preferred embodiment of the present invention, it is noted that for those skilled in the art, not
Under the premise of being detached from present inventive concept, several modifications and improvements can also be made, these also should be considered as protection model of the invention
It encloses, these all will not influence the effect and patent practicability that the present invention is implemented.
Claims (4)
1. a kind of method of the quick start BOOT based on ARM chip, which is characterized in that method burning and starting step are as follows:
Step 1, BOOT program is compiled, is compiled into program file having from the program segment configuration of BLOCK0 copy BOOT program
Foremost;
Step 2, in the BLOCK0 BOOT burning program to NAND;
Step 3, system re-powers, and runs the bootstrap in the ROM of CPU;
Step 4, bootstrap copies the program segment of the specified size of BLOCK0 in RAM to and runs;
Step 5, the program segment of the BOOT first carried out in RAM copies remaining BOOT program in RAM to, it is ensured that BOOT program
Integrality in RAM;
Step 6, after the BOOT program complete copy of BLOCK0 is into RAM, system can be operated normally.
2. the method for quick start BOOT based on ARM chip according to claim 1 a kind of, which is characterized in that in step
In rapid 2, it is by the burning step in the BLOCK0 of BOOT burning program to NAND:
Step 1, the BLOCK0 of stage1 firmware burning to NAND;
Step 2, stage2 is burnt in BLOCK1 and BLOCK required later;
Step 3, stage2 is burnt in spare BLOCK.
3. the method for quick start BOOT based on ARM chip according to claim 1 a kind of, which is characterized in that in step
In rapid 4, bootstrap the program segment of the specified size of BLOCK0 is copied to run in RAM the specific steps are:
Step 1, system electrification starts the bootstrap in the ROM of CPU;
Step 2, bootstrap runs the BLOCK0 of NAND by specifying big wisp stage1 program to copy in RAM;
Step 3, stage1 program copies stage2 program available in NAND in RAM to;
Step 4, stage1 programming jump runs stage2 program to stage2 program entry;
Step 5, stage2 program normal load Kernel runs main program.
4. the method for quick start BOOT based on ARM chip according to claim 1 a kind of, which is characterized in that in step
In rapid 5, the program segment of the BOOT first carried out in RAM remaining BOOT program copy in RAM the specific steps are:
Step 1, system electrification starts the bootstrap in the ROM of CPU;
Step 2, bootstrap is from a part before BLOCK0 copy BOOT program into RAM;
Step 3, it first copies the part BOOT program starting operation in RAM to, and remaining BOOT program is copied from BLOCK0
Into RAM.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810629476.XA CN108897576B (en) | 2018-06-19 | 2018-06-19 | Method for rapidly starting BOOT based on ARM chip |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810629476.XA CN108897576B (en) | 2018-06-19 | 2018-06-19 | Method for rapidly starting BOOT based on ARM chip |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108897576A true CN108897576A (en) | 2018-11-27 |
CN108897576B CN108897576B (en) | 2021-06-22 |
Family
ID=64345554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810629476.XA Active CN108897576B (en) | 2018-06-19 | 2018-06-19 | Method for rapidly starting BOOT based on ARM chip |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108897576B (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109976815A (en) * | 2019-03-20 | 2019-07-05 | 深圳忆联信息系统有限公司 | A kind of method and its system accelerating Nandboot |
CN110531997A (en) * | 2019-08-30 | 2019-12-03 | 四川爱联科技有限公司 | The method of multiple production test firmware switchings is realized in Internet of Things mould group production procedure |
CN111190648A (en) * | 2019-12-26 | 2020-05-22 | 湖南工程学院 | NAND FLASH-based real-time embedded system and starting method thereof |
CN114661368A (en) * | 2022-05-19 | 2022-06-24 | 中昊芯英(杭州)科技有限公司 | Chip and starting method thereof |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103902461A (en) * | 2012-12-27 | 2014-07-02 | 中兴通讯股份有限公司 | Method and device for compatibility of different Nand flash memories |
CN104077167A (en) * | 2014-07-11 | 2014-10-01 | 杭州华三通信技术有限公司 | Boot loading method and device based on NAND FLASH |
US20150074461A1 (en) * | 2013-09-10 | 2015-03-12 | Huawei Technologies Co., Ltd. | Method and relevant apparatus for starting boot program |
CN106155752A (en) * | 2016-08-03 | 2016-11-23 | 北京蛙视通信技术股份有限公司 | A kind of method and device of starting of embedded operation system |
-
2018
- 2018-06-19 CN CN201810629476.XA patent/CN108897576B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103902461A (en) * | 2012-12-27 | 2014-07-02 | 中兴通讯股份有限公司 | Method and device for compatibility of different Nand flash memories |
US20150074461A1 (en) * | 2013-09-10 | 2015-03-12 | Huawei Technologies Co., Ltd. | Method and relevant apparatus for starting boot program |
CN104077167A (en) * | 2014-07-11 | 2014-10-01 | 杭州华三通信技术有限公司 | Boot loading method and device based on NAND FLASH |
CN106155752A (en) * | 2016-08-03 | 2016-11-23 | 北京蛙视通信技术股份有限公司 | A kind of method and device of starting of embedded operation system |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109976815A (en) * | 2019-03-20 | 2019-07-05 | 深圳忆联信息系统有限公司 | A kind of method and its system accelerating Nandboot |
CN109976815B (en) * | 2019-03-20 | 2022-03-29 | 深圳忆联信息系统有限公司 | Method and system for accelerating Nandboot |
CN110531997A (en) * | 2019-08-30 | 2019-12-03 | 四川爱联科技有限公司 | The method of multiple production test firmware switchings is realized in Internet of Things mould group production procedure |
CN110531997B (en) * | 2019-08-30 | 2022-11-29 | 四川爱联科技股份有限公司 | Method for switching multiple production test firmware in Internet of things module production process |
CN111190648A (en) * | 2019-12-26 | 2020-05-22 | 湖南工程学院 | NAND FLASH-based real-time embedded system and starting method thereof |
CN114661368A (en) * | 2022-05-19 | 2022-06-24 | 中昊芯英(杭州)科技有限公司 | Chip and starting method thereof |
Also Published As
Publication number | Publication date |
---|---|
CN108897576B (en) | 2021-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10761860B2 (en) | Dynamically loaded plugin architecture | |
US10452404B2 (en) | Optimized UEFI reboot process | |
CN108897576A (en) | A method of the quick start BOOT based on ARM chip | |
US10055218B2 (en) | System and method for adding and storing groups of firmware default settings | |
US9471435B2 (en) | Information processing device, information processing method, and computer program | |
CN102033790B (en) | Method and device for upgrading embedded-type system BOOTROM | |
CN103970557B (en) | The method and storage device of storage device activation system | |
US20110302572A1 (en) | Embedded network device and firmware upgrading method | |
JP2013520744A (en) | Method and apparatus for generating minimum boot image | |
US20140304497A1 (en) | Electronic device having function of booting operating system by bootloader, method of performing the same function, and storage medium | |
CN110515641A (en) | The update method of server firmware, apparatus and system | |
CN110874237A (en) | Software upgrading method, device, terminal and readable storage medium | |
WO2017000567A1 (en) | Bootrom upgrading method and device | |
CN101872306B (en) | Embedded system for realizing software updating and software backup and implementation method thereof | |
WO2022188690A1 (en) | Method and apparatus for upgrading electronic device | |
CN106371863A (en) | Embedded multi-operation system boot program upgrading method | |
CN102262555B (en) | Method and device for loading different versions of JAVA three-party library | |
CN116009921A (en) | Method, device and medium for upgrading embedded operating system | |
US7640421B1 (en) | Method and system for determining context switch state | |
US9223697B2 (en) | Computer reprogramming method, data storage medium and motor vehicle computer | |
CN109426511B (en) | Soft core updating method and system | |
EP3540598A1 (en) | Method, device and server for checking a defective function | |
CN116841629A (en) | Network card function configuration method, device and medium thereof | |
JP2009015428A (en) | Program update method, information processor, program, and recording medium | |
US9442831B1 (en) | Automated testing of program code for processing a simple boot flag data structure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Room 706-3, Lane 2, 2005, Huangxing Road, Yangpu District, Shanghai Applicant after: SHANGHAI FLEXEM TECHNOLOGY Co.,Ltd. Address before: Room 706-3, Lane 2, 2005, Huangxing Road, Yangpu District, Shanghai Applicant before: SHANGHAI FLEXEM TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |