CN110520839A - Storage medium space application method, apparatus and unmanned plane in System on Chip/SoC - Google Patents

Storage medium space application method, apparatus and unmanned plane in System on Chip/SoC Download PDF

Info

Publication number
CN110520839A
CN110520839A CN201880012034.9A CN201880012034A CN110520839A CN 110520839 A CN110520839 A CN 110520839A CN 201880012034 A CN201880012034 A CN 201880012034A CN 110520839 A CN110520839 A CN 110520839A
Authority
CN
China
Prior art keywords
address space
designated
storage medium
boot program
instruction
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
Application number
CN201880012034.9A
Other languages
Chinese (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.)
SZ DJI Technology Co Ltd
SZ DJI Innovations Technology Co Ltd
Original Assignee
SZ DJI 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 SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Publication of CN110520839A publication Critical patent/CN110520839A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

Storage medium space application method, apparatus and unmanned plane in a kind of System on Chip/SoC, the method is adjusted the layout of initialization information, bootstrap stack and bootstrap file in storage medium, the stack and bootstrap for applying bootstrap execute required bootstrap file, required storage medium space size can be adjusted dynamically, improve the utilization rate in storage medium space.

Description

System-on-chip storage medium space application method and device and unmanned aerial vehicle Technical Field
The embodiment of the invention relates to an electronic circuit integration technology, in particular to a method and a device for applying a storage medium space in a system chip and an unmanned aerial vehicle.
Background
With the rapid development of electronic technology, the manufacture of electronic product chips gradually adopts SoC technology (System on Chip) which can integrate all processing components on a single Chip, such as an ARM-based System Chip. Generally, a solidified bootstrap program exists in a system chip, and a storage space occupied by the bootstrap program can only be read and cannot be written. In the process of developing the bootstrap program, a stack is needed, and the developed bootstrap program contains initialization information, wherein the initialization information is data to be processed by the bootstrap program. Since the stack needs to perform a write operation, the initialization information needs to be written during the process of running the bootstrap, and the bootstrap file needs to be loaded from the peripheral during the execution of the bootstrap, a special storage medium needs to be provided for the running of the bootstrap when the SoC design is performed. Such a storage medium for use in operating a boot program generally includes: initialization information for the bootstrap, a stack of the bootstrap application, and a bootstrap file.
Currently, in the process of using the storage medium, the initialization information of the boot program is stored in the middle address space of the storage medium, the high address space of the storage medium is set as the stack of the boot program application, and the boot program file is loaded to the low address space of the storage medium. Because the size of the storage medium space required by the initialization information of the bootstrap program is fixed, and the size of the storage medium space required by the stack of the bootstrap program application and the loaded bootstrap program file is dynamically changed, the initialization information of the bootstrap program is stored in the middle address space of the storage medium, so that the size of the storage medium space occupied by the stack of the bootstrap program application and the bootstrap program file is fixed, and accordingly, the size of the storage medium space required by the stack of the bootstrap program application and the bootstrap program file cannot be dynamically adjusted, and the utilization rate of the storage medium space is reduced.
Disclosure of Invention
The embodiment of the invention provides a method and a device for applying a storage medium space in a system chip and an unmanned aerial vehicle, which are used for realizing a stack of a bootstrap application and a bootstrap file required by the execution of a bootstrap, wherein the size of the required storage medium space can be dynamically adjusted, and the utilization rate of the storage medium space is improved.
One aspect of the embodiments of the present invention is to provide a method for applying a storage medium space in a system chip, including: loading initialization information in the boot program to a first specified address space of the storage medium, setting a second specified address space of the storage medium as a boot program stack in the boot program, and loading a boot program file required by executing the boot program to a third specified address space which is continuous with the second specified address space in the storage medium, wherein the first specified address space, the second specified address space and the third specified address space are three different address spaces of the storage medium.
Another aspect of the embodiments of the present invention is to provide an apparatus for applying storage medium space in a system chip, including: the initialization information loading module is used for loading initialization information in a boot program into a first specified address space of the storage medium; a stack setting module, configured to set a second specified address space of the storage medium as a boot program stack in the boot program; a file loading module, configured to load a boot program file required for executing the boot program into a third specified address space that is consecutive to the second specified address space in the storage medium; the first designated address space, the second designated address space and the third designated address space are three different address spaces of the storage medium.
Another aspect of the embodiments of the present invention is to provide an unmanned aerial vehicle, including: a body; the power system is arranged on the airframe and used for providing flight power for the unmanned aerial vehicle; the system chip is used for loading initialization information in a boot program into a first specified address space of the storage medium when the boot program in the system chip is operated, setting a second specified address space of the storage medium as a boot program stack in the boot program, and loading a boot program file required by executing the boot program into a third specified address space which is continuous with the second specified address space in the storage medium, wherein the first specified address space, the second specified address space and the third specified address space are three different address spaces of the storage medium.
According to the method and the device for applying the storage medium space in the system chip and the unmanned aerial vehicle, provided by the embodiment of the invention, in the process of applying the storage medium space, the boot program stack and the boot program file can share a continuous part of the storage medium space by adjusting the layout of the initialization information, the boot program stack and the boot program file in the storage medium space, the storage medium space required by the boot program stack and the boot program file can be dynamically adjusted, and the utilization rate of the storage medium space is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive labor.
Fig. 1 is a flowchart of a method for applying a storage medium space in a system on chip according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of a storage medium space partition according to an embodiment of the present invention;
fig. 3 is a schematic distribution diagram of initialization information, a bootstrap stack, and a bootstrap file in a storage medium according to an embodiment of the present invention;
fig. 4 is a schematic diagram illustrating distribution of initialization information, a bootstrap stack, and a bootstrap file in a storage medium according to an embodiment of the present invention
Fig. 5 is a schematic distribution diagram of initialization information, a bootstrap stack, and a bootstrap file in a storage medium according to an embodiment of the present invention;
FIG. 6 is a schematic diagram of a storage medium space division according to another embodiment of the present invention;
FIG. 7 is a flowchart illustrating a method for applying storage medium space in a system-on-chip according to another embodiment of the present invention;
FIG. 8 is a diagram illustrating an example of a send address select instruction according to the present invention;
FIG. 9 is a block diagram of an apparatus for applying storage medium space in a system on a chip according to an embodiment of the present invention;
FIG. 10 is a block diagram of an apparatus for applying storage medium space in a system-on-chip according to another embodiment of the present invention;
fig. 11 is a structural diagram of an unmanned aerial vehicle according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be described clearly below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
It will be understood that when an element is referred to as being "secured to" another element, it can be directly on the other element or intervening elements may also be present. When a component is referred to as being "connected" to another component, it can be directly connected to the other component or intervening components may also be present.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. The terminology used in the description of the invention herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the term "and/or" includes any and all combinations of one or more of the associated listed items.
Some embodiments of the invention are described in detail below with reference to the accompanying drawings. The embodiments described below and the features of the embodiments can be combined with each other without conflict.
The embodiment of the invention provides a method for applying a storage medium space in a system chip. Fig. 1 shows a flowchart of a method for applying storage medium space in a system on chip according to an embodiment of the present invention. As shown in fig. 1, the method in the embodiment of the present invention may include:
s101, loading initialization information in a boot program into a first designated address space of the storage medium;
in the embodiment of the invention, a solidified bootstrap program is arranged in the system chip, and the bootstrap program comprises initialization information. The initialization information in the boot program is loaded into the first designated address space of the storage medium, where the initialization information in the boot program needs to be obtained first, and there are various implementation manners, and two implementation manners are described below by way of example.
One implementation manner for acquiring initialization information in the boot program is as follows: by connecting the peripheral device, the initialization information in the boot program is copied from the peripheral device. In one example, the system on chip establishes a connection with a peripheral device, such as through a USB, copies initialization information in a boot program from the peripheral device, and loads the copied initialization information in the boot program into a first designated address space of the storage medium.
Another implementation manner for acquiring initialization information in the boot program is as follows: the initialization information in the boot program is copied directly from the system chip interior. In one example, the system chip is an SoC, a solidified boot program is provided inside the SoC, initialization information is copied from the solidified boot program inside the SoC, and the initialization information in the copied boot program is loaded into the first designated address space of the storage medium.
It should be noted that the above two implementation manners for acquiring the initialization information in the boot program are only examples, and are not limited to how to acquire the initialization information in the boot program.
In the embodiment of the present invention, the initialization information in step S101 at least includes a data segment and a bss segment. In one example, a general program is essentially composed of a data segment, a bss segment and a text segment, wherein the data segment and the bss segment are fixed in size, and the required storage medium space is fixed in size.
In step S101, the storage medium is a static random access memory in the system chip.
S102, setting a second designated address space of the storage medium as a bootstrap stack in the bootstrap;
in the embodiment of the present invention, a stack is needed in the process of developing the bootstrap program, and since the storage space occupied by the bootstrap program can only be read and cannot be written, the second specified space in the storage medium needs to be set as the bootstrap stack in the bootstrap program. As an example, the boot stack may be retrieved from a storage space occupied by the boot program, and the second specified address space of the storage medium may be set as the retrieved boot stack.
S103, loading a bootstrap program file required by the execution of the bootstrap program into a third specified address space which is continuous with the second specified address space in the storage medium.
In the embodiment of the present invention, a bootstrap file is required for executing the bootstrap, and as an example, the bootstrap file is placed in an external device in advance, the external device establishes a connection with a system chip, and the external device may be a usb disk, a Flash, an Emmc, or the like. And acquiring the bootstrap program file from the peripheral connected with the system chip, and loading the bootstrap program file to a third specified address space which is continuous with the second specified address space in the storage medium.
In this embodiment of the present invention, the boot program file in step S103 may be a boot program image, the boot program image has different versions, and the size of the boot program image of each version may not be fixed, and the boot program image of a required version is placed in the peripheral device as needed, so that when the boot program in the system chip is run, the boot program image in the peripheral device is loaded into a third specified address space that is consecutive to the second specified address space in the storage medium.
In an embodiment of the present invention, the second specified address space contains higher addresses than the third specified address space. As an example, the second designated address space includes an address range of 1000H-2000H, and the third designated address space includes an address range of 0000H-0999H.
It can be seen that, in the embodiment of the present invention, in the process of applying the storage medium space, the layout of the initialization information, the bootstrap stack, and the bootstrap file in the storage medium space is adjusted, so that the bootstrap stack and the bootstrap file can share a continuous part of the storage medium space, and thus the second specified address space occupied by the bootstrap stack can implement dynamic extension according to the size of the bootstrap file, and similarly, the third specified address space occupied by the bootstrap file can also implement dynamic extension according to the size of the bootstrap stack.
The storage medium space required by the bootstrap stack and the bootstrap file can be dynamically adjusted, and the utilization rate of the storage medium space is improved.
In another embodiment of the present invention, the first designated address space in step S101 may be a designated high address space.
S101a, loading the initialization information in the boot program into the designated high address space of the storage medium.
When designing a system chip, a starting address and an address range of a storage medium in the system chip are obtained in advance, and the storage medium space is divided into three parts, namely a high address space, a medium address space and a low address space, as shown in fig. 2, which is a schematic diagram of the storage medium space division.
In order to improve the space utilization rate of the storage medium, in the embodiment of the present invention, the manner of obtaining the initialization information in the boot program is similar to that in step S101, and is not repeated, the obtained initialization information in the boot program is loaded into the specified high address space of the storage medium, where the size of the high address space is specified according to the size of the initialization information, for example, the size of the initialization information is 8 bytes, and the size of the high address space is also 8 bytes.
The second designated address space in step S102 may be one of a designated middle address space and a designated low address space.
S102a, setting one of the specified middle address space and the specified low address space of the storage medium as a boot stack in the boot.
After loading initialization information in a boot program into a designated high address space of the storage medium, the storage medium remaining space is a medium address space and a low address space, respectively. Setting one of a designated middle address space or a designated low address space of the storage medium as a boot stack in the boot program.
Wherein as a preferred embodiment, the specified middle address space of the storage medium is set as a boot stack in the boot program.
The third designated address space in step S103 may be the other of the medium address space and the low address space.
S103a, loading a boot program file required for executing the boot program to the other of the medium address space and the low address space in the storage medium.
If the designated middle address space of the storage medium is set as a boot program stack in the boot program, loading a boot program file required by the boot program to be executed into the designated low address space of the storage medium; and if the designated low address space of the storage medium is set as a bootstrap stack in the bootstrap, loading a bootstrap file required by the execution of the bootstrap into the designated medium address space in the storage medium.
As a preferred embodiment, after setting the specified middle address space of the storage medium as the boot program stack in the boot program, loading the boot program file required for executing the boot program into the specified lower address space of the storage medium, and the layout of the initialization information, the boot program stack and the boot program file in the storage medium space is as shown in fig. 3.
In another embodiment of the present invention, the first designated address space in step S101 may be a designated low address space.
S101b, loading the initialization information in the boot program into the designated low address space of the storage medium.
As shown in fig. 2, the storage medium space in the system chip is divided into three parts, and since the size of the initialization information is fixed, in addition to the embodiment shown in fig. 3, the initialization information in the boot program can be loaded into the designated low address space of the storage medium, and the boot program stack and the boot program file can share the remaining storage medium space.
The second designated address space in step S102 may be one of a designated middle address space and a designated high address space.
S102b, setting one of the specified middle address space and the specified high address space of the storage medium as a boot stack in the boot.
After loading the initialization information in the boot program into the designated low address space of the storage medium, as a preferred embodiment, the designated high address space of the storage medium is set as a boot program stack in the boot program.
The third designated address space in step S103 may be the other of the medium address space and the high address space.
S103b, loading a boot program file required for executing the boot program to the other of the medium address space and the high address space in the storage medium.
As a preferred embodiment, a boot program file required for executing the boot program is loaded into the middle address space in the storage medium, and the layout of the initialization information, the boot program stack, and the boot program file in the storage medium space is shown in fig. 4.
In another embodiment of the present invention, the first designated address space in step S101 includes: a fourth address space in the designated high address space, and a fifth address space in the designated low address space.
The initialization information includes a data segment and a bss segment, wherein the data segment and the bss segment may be placed in a high address space or a low address space as in the above-mentioned embodiments at the same time, or the data segment and the bss segment may be placed separately and placed in different spaces.
S101c, the data segment is loaded to one of the fourth address space and the fifth address space, and the bss segment is loaded to the other of the fourth address space and the fifth address space.
Specifically, as an example, the data segment size is 5 bytes, the bss segment size is 3 bytes, assuming that the high address space size is 8 bytes and the low address space size is 8 bytes, the fourth address space size may be 5 bytes, the fifth address space size may be 3 bytes, the data segment is loaded into the fourth address space, and the bss segment is loaded into the fifth address space, and the distribution diagram of the data segment and the bss segment in the storage medium space is shown in fig. 5. With the fourth address space at the top of the high address space and the fifth address space at the bottom of the low address space, as shown in fig. 5.
The second designated address space and the third designated address space in steps S102 and S103 are located between the fourth address space and the fifth address space.
The storage medium space between the fourth address space and the fifth address space may be divided into the second designated address space and the third designated address space as needed. Here, a division manner is briefly described, and it should be noted that the division manner recited in the embodiments of the present application is only an example, and is not limited to how to divide the storage medium space between the fourth address space and the fifth address space into the second designated address space and the third designated address space.
The dividing method comprises the following steps: a part of the storage medium space between the fourth address space and the fifth address space is divided into a third address-specifying address space and the remaining part of the storage medium space between the fourth address space and the fifth address space is divided into a second address-specifying address space in advance according to a boot file size. As an example, each time the boot program in the system chip is executed, the boot program file required each time is fixed, assuming that the boot program file size is 10kb, the storage medium space between the fourth address space and the fifth address space is 40kb, from the storage medium space between the fourth address space and the fifth address space, a space of 10kb is divided to be owned by a third specified address space, and the remaining space of 30kb is owned by a second specified address space, wherein the 10kb space divided for the third specified address space is adjacent to the fifth address space, and the distribution diagram is shown in fig. 6.
The embodiment of the invention provides a system chip storage medium space application method. FIG. 7 is a flowchart illustrating a method for applying an on-chip storage medium space according to another embodiment of the present invention. As shown in fig. 7, on the basis of the embodiment shown in fig. 1, the method in this embodiment may further include:
s701, receiving an address selection instruction;
the address selection instruction carries a first sub-instruction, and the first sub-instruction is used for loading initialization information to a first specified address space of the storage medium;
the address selection instruction further carries a second sub-instruction, and the second sub-instruction is used for indicating that a second specified address space of the storage medium is set as a bootstrap stack;
the address selection instruction further carries a third sub-instruction, where the third sub-instruction is used to load a boot program file into a third specified address space that is continuous with the second specified address space in the storage medium.
The system chip serves as an instruction receiving side to receive the address selection instruction, and there are a plurality of implementation manners for sending the address selection instruction on the instruction sending side.
One implementation manner is as follows: and arranging a button outside the system chip, and triggering the button by a user to send an address selection instruction, wherein the address selection instruction can be stored in an external storage space in advance. As an example, as shown in fig. 8, a trigger button is provided outside the system chip, and the user sends an address selection command stored in the external memory space to the system chip through the trigger button.
The received address selection instruction carries a first sub-instruction, a second sub-instruction and a third sub-instruction, wherein the first sub-instruction, the second sub-instruction and the third sub-instruction specify the operation to be executed by a system chip when the system chip runs a bootstrap program, and the operation to be executed is as follows:
s702, loading the initialization information in the boot program to a first specified address space of the storage medium according to the first sub-instruction;
s703, setting a second specified address space of the storage medium as a boot program stack in the boot program according to the second sub-instruction;
s704, loading the boot program file required by the boot program to a third specified address space continuous with the second specified address space in the storage medium according to the third sub-instruction.
In the embodiment of the invention, in the process of applying the storage medium space in the system chip, the initialization information can be placed in a high address space or a low address space by adjusting the layout of the initialization information, the bootstrap stack and the bootstrap file in the storage medium, and the initialization information can also be split into a fourth address space placed in the high address space and a fifth address space placed in the low address space, so that the bootstrap stack and the bootstrap file can share a continuous part of the storage medium space. As another embodiment, an address selection instruction may be received, the initialization information is loaded to the first specified address space according to the first sub-instruction, the second sub-instruction, and the third sub-instruction carried by the received address selection instruction, the boot program file is loaded to the third specified address space, and the second specified address space is set as the boot program stack. The second designated address space occupied by the bootstrap stack can be dynamically expanded according to the size of the bootstrap file, and similarly, the third designated address space occupied by the bootstrap file can also be dynamically expanded according to the size of the bootstrap stack.
The storage medium space required by the bootstrap stack and the bootstrap file can be dynamically adjusted, and the utilization rate of the storage medium space is improved.
The following describes the device for applying the storage medium space in the system on chip according to the embodiment of the present invention:
the embodiment of the invention provides a device for applying a storage medium space in a system chip. As an embodiment, the storage medium space application apparatus in a system chip provided in the embodiment of the present invention may be a dedicated chip.
Optionally, the application specific chip is an application specific integrated circuit chip.
Fig. 9 shows a structural diagram of an apparatus for applying storage medium space in a system chip according to an embodiment of the present invention. As shown in fig. 9, the apparatus 900 for applying storage medium space in a system on chip in this embodiment may include: an initialization information loading module 901, a stack setting module 902 and a file loading module 903.
In this embodiment of the present invention, the initialization information loading module 901 is configured to load initialization information in a boot program into a first specified address space of the storage medium.
In this embodiment of the present invention, the stack setting module 902 is configured to set the second specified address space of the storage medium as a boot program stack in the boot program.
In this embodiment of the present invention, the file loading module 903 is configured to load a boot program file required for executing the boot program into a third specified address space that is consecutive to the second specified address space in the storage medium.
The specific principle and implementation of the device for applying the storage medium space in the system chip according to the embodiment of the present invention are similar to those of the embodiment shown in fig. 1, and are not described herein again.
In the embodiment of the invention, in the process of the storage medium space application, the layout of the initialization information, the bootstrap stack and the bootstrap file in the storage medium space is adjusted, so that the bootstrap stack and the bootstrap file can share a continuous part of the storage medium space, the second specified address space occupied by the bootstrap stack can realize dynamic expansion according to the size of the bootstrap file, and similarly, the third specified address space occupied by the bootstrap file can also realize dynamic expansion according to the size of the bootstrap stack.
The storage medium space required by the bootstrap stack and the bootstrap file can be dynamically adjusted, and the utilization rate of the storage medium space is improved.
The embodiment of the invention provides a device for applying a storage medium space in a system chip. On the basis of the technical solution provided by the embodiment shown in fig. 9, the initialization information loading module 901 in the in-chip storage medium space application apparatus 900 may be 901a, where the first specified address space is a specified high address space; the stack setup module 902 may be 902a, wherein the second specified address space is one of a specified medium address space and a specified low address space; the file load module 903 may be 903a, where the third specified address space is the other of the medium address space and the low address space.
In this embodiment of the present invention, the initialization information loading module 901a is configured to load initialization information in the boot program into a specified high address space of the storage medium;
in this embodiment of the present invention, the stack setting module 902a is configured to set one of a specified middle address space and a specified low address space of the storage medium as a boot program stack in the boot program;
in this embodiment of the present invention, the file loading module 903a is configured to load a boot program file required for executing the boot program into the other one of the middle address space and the low address space in the storage medium.
The specific principle and implementation of the device for applying the storage medium space in the system chip according to the embodiment of the present invention are similar to those of the embodiment shown in fig. 3, and are not described herein again.
The embodiment of the invention provides a device for applying a storage medium space in a system chip. On the basis of the technical solution provided by the embodiment shown in fig. 9, the initialization information loading module 901 in the system on-chip storage medium space application apparatus 900 may be 901b, where the first specified address space is a specified low address space; the stack setup module 902 may be 902b, wherein the second specified address space is one of a specified medium address space and a specified high address space; the file load module 903 may be 903b, where the third specified address space is the other of the medium address space and the high address space.
In this embodiment of the present invention, the initialization information loading module 901b is configured to load initialization information in the boot program into a low address space of the storage medium;
in this embodiment of the present invention, the stack setting module 902b is configured to set one of a specified middle address space and a specified high address space of the storage medium as a boot program stack in the boot program;
in this embodiment of the present invention, the file loading module 903b is configured to load a boot program file required for executing the boot program into the other one of the middle address space and the high address space in the storage medium.
The specific principle and implementation of the device for applying the storage medium space in the system chip according to the embodiment of the present invention are similar to those of the embodiment shown in fig. 4, and are not described herein again.
The embodiment of the invention provides a device for applying a storage medium space in a system chip. On the basis of the technical solution provided by the embodiment shown in fig. 9, the initialization information loading module 901 in the system on-chip storage medium space application apparatus 900 may be 901c, where the first specified address space includes: a fourth address space in the designated high address space and a fifth address space in the designated low address space; the stack setting module 902 may be 902c, and the file loading module 903 may be 903c, where the second specified address space and the third specified address space are located between the fourth address space and the fifth address space.
In this embodiment of the present invention, the initialization information loading module 901c is configured to load the data segment into one of the fourth address space and the fifth address space, and load the bss segment into the other of the fourth address space and the fifth address space.
In this embodiment of the present invention, the stack setting module 902c and the file loading module 903c are configured to load a boot program file required for executing the boot program into a storage medium space between the fourth address space and the fifth address space, and set a remaining space in the storage medium space between the fourth address space and the fifth address space as a boot program stack in the boot program.
The specific principle and implementation of the device for applying the storage medium space in the system chip according to the embodiment of the present invention are similar to those of the embodiment shown in fig. 5, and are not described herein again.
The embodiment of the invention provides a device for applying a storage medium space in a system chip. On the basis of the technical solution provided by the embodiment shown in fig. 9, the apparatus 900 for applying an in-chip storage medium space further includes: an instruction receiving module 904, as shown in fig. 10.
In this embodiment of the present invention, the instruction receiving module 904 is configured to receive an address selection instruction, where the address selection instruction carries a first sub instruction, the first sub instruction is configured to load initialization information into a first specified address space of the storage medium, the address selection instruction further carries a second sub instruction, the second sub instruction is configured to instruct that a second specified address space of the storage medium is set as a bootstrap stack, and the address selection instruction further carries a third sub instruction, and the third sub instruction is configured to load a bootstrap file into a third specified address space, which is consecutive to the second specified address space, in the storage medium.
In this embodiment of the present invention, the initialization information loading module 901 is specifically configured to load the initialization information in the boot program into a first specified address space of the storage medium according to the first sub-instruction;
in this embodiment of the present invention, the stack setting module 902 is specifically configured to set a second specified address space of the storage medium as a boot program stack in the boot program according to the second sub-instruction;
in this embodiment of the present invention, the file loading module 903 is specifically configured to load, according to the third sub-instruction, a boot program file required for executing the boot program into a third specified address space that is consecutive to the second specified address space in the storage medium.
The specific principle and implementation of the device for applying the storage medium space in the system chip according to the embodiment of the present invention are similar to those of the embodiment shown in fig. 7, and are not described herein again.
In the embodiment of the invention, in the process of storing the medium space application in the system chip, the stack of the bootstrap application and the bootstrap file required by the bootstrap execution can be dynamically adjusted by adjusting the layout of the initialization information, the bootstrap stack and the bootstrap file in the storage medium, so that the utilization rate of the storage medium space is improved.
The embodiment of the invention provides an unmanned aerial vehicle. Fig. 11 is a structural diagram of the unmanned aerial vehicle according to the embodiment of the present invention, and as shown in fig. 11, the unmanned aerial vehicle 1000 includes: a body 1001, a power system 1002, and a system-on-chip storage media space application 900 as described above.
The specific principle and implementation of the device for applying the storage medium space in the system chip are similar to those of the above embodiments, and are not described herein again.
A power system 1002 is mounted to the fuselage for providing flight power. The power system 1002 includes at least one of: motor 1003, propeller 1004, and electronic demodulator 1005.
As shown in fig. 11, the drone 1000 further includes: support device 1006, shooting device 1007. The supporting device 1006 may be a pan/tilt head, the shooting device 1007 may be a camera, and the camera may include an image sensor therein.
In the embodiments provided in the present invention, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, or in a form of hardware plus a software functional unit.
The integrated unit implemented in the form of a software functional unit may be stored in a computer readable storage medium. The software functional unit is stored in a storage medium and includes several instructions to enable a computer device (which may be a personal computer, a server, or a network device) or a processor (processor) to execute some steps of the methods according to the embodiments of the present invention. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
It is obvious to those skilled in the art that, for convenience and simplicity of description, the foregoing division of the functional modules is merely used as an example, and in practical applications, the above function distribution may be performed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to perform all or part of the above described functions. For the specific working process of the device described above, reference may be made to the corresponding process in the foregoing method embodiment, which is not described herein again.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.

Claims (36)

  1. A method for applying storage medium space in a system chip, wherein when a boot program in the system chip is running, the method comprises:
    loading initialization information in the boot program to a first designated address space of the storage medium;
    setting a second designated address space of the storage medium as a boot stack in the boot;
    loading a boot program file required for executing the boot program into a third specified address space which is continuous with the second specified address space in the storage medium;
    the first designated address space, the second designated address space and the third designated address space are three different address spaces of the storage medium.
  2. The method of claim 1,
    the first designated address space is a designated high address space;
    the second designated address space is one of a designated middle address space and a designated lower address space, and the third designated address space is the other of the middle address space and the lower address space.
  3. The method of claim 1,
    the first designated address space is a designated low address space;
    the second designated address space is one of a designated middle address space and a designated high address space, and the third designated address space is the other of the middle address space and the high address space.
  4. The method according to claim 2 or 3,
    the initialization information includes a data segment and a bss segment.
  5. The method of claim 1,
    the first designated address space includes: a fourth address space in the designated high address space and a fifth address space in the designated low address space;
    the second designated address space and the third designated address space are located between the fourth address space and the fifth address space.
  6. The method of claim 5,
    the initialization information comprises a data section and a bss section;
    the data segment is loaded into one of the fourth address space and the fifth address space, and the bss segment is loaded into the other of the fourth address space and the fifth address space.
  7. The method of claim 1, wherein the method is preceded by:
    receiving an address selection instruction;
    the address selection instruction carries a first sub-instruction;
    the first sub-instruction is used for loading initialization information into a first designated address space of the storage medium;
    the loading initialization information in the boot program into the first designated address space of the storage medium comprises: and loading the initialization information in the boot program into a first designated address space of the storage medium according to the first sub-instruction.
  8. The method of claim 7,
    the address selection instruction further carries a second sub-instruction;
    the second sub-instruction is used for indicating that a second specified address space of the storage medium is set as a bootstrap stack;
    the setting the second designated address space of the storage medium as a boot stack in the boot includes: and setting a second specified address space of the storage medium as a bootstrap stack in the bootstrap according to the second sub-instruction.
  9. The method according to claim 7 or 8,
    the address selection instruction further carries a third sub-instruction;
    the third sub-instruction is used for loading a bootstrap file into a third specified address space which is continuous with the second specified address space in the storage medium;
    the loading, into a third specified address space consecutive to the second specified address space in the storage medium, a boot program file required for executing the boot program includes: and loading a boot program file required by the execution of the boot program into a third specified address space which is continuous with the second specified address space in the storage medium according to the third sub-instruction.
  10. The method of claim 2, 3, or 5,
    the second designated address space contains addresses that are higher than addresses contained in the third designated address space.
  11. The method of claim 2, 3, or 5,
    the storage medium is a static random access memory in the system chip.
  12. The method of claim 2, 3, or 5,
    the bootstrap file is a bootstrap image.
  13. An apparatus for applying storage medium space in a system-on-chip, the apparatus comprising:
    the initialization information loading module is used for loading initialization information in a boot program into a first specified address space of the storage medium;
    a stack setting module, configured to set a second specified address space of the storage medium as a boot program stack in the boot program;
    a file loading module, configured to load a boot program file required for executing the boot program into a third specified address space that is consecutive to the second specified address space in the storage medium;
    the first designated address space, the second designated address space and the third designated address space are three different address spaces of the storage medium.
  14. The apparatus of claim 13,
    the first designated address space is a designated high address space;
    the second designated address space is one of a designated middle address space and a designated lower address space, and the third designated address space is the other of the middle address space and the lower address space.
  15. The apparatus of claim 13,
    the first designated address space is a designated low address space;
    the second designated address space is one of a designated middle address space and a designated high address space, and the third designated address space is the other of the middle address space and the high address space.
  16. The apparatus of claim 14 or 15,
    the initialization information includes a data segment and a bss segment.
  17. The apparatus of claim 13,
    the first designated address space includes: a fourth address space in the designated high address space and a fifth address space in the designated low address space;
    the second designated address space and the third designated address space are located between the fourth address space and the fifth address space.
  18. The apparatus of claim 17,
    the initialization information comprises a data section and a bss section;
    the initialization information loading module is used for loading the data segment into one of the fourth address space and the fifth address space, and the bss segment is loaded into the other of the fourth address space and the fifth address space.
  19. The apparatus of claim 13, further comprising:
    the instruction receiving module is used for receiving an address selection instruction;
    the address selection instruction carries a first sub-instruction;
    the first sub-instruction is used for loading initialization information into a first designated address space of the storage medium;
    the initialization information loading module is used for loading the initialization information in the boot program to a first specified address space of the storage medium according to the first sub-instruction.
  20. The apparatus of claim 19,
    the address selection instruction further carries a second sub-instruction;
    the second sub-instruction is used for indicating that a second specified address space of the storage medium is set as a bootstrap stack;
    the stack setting module is configured to set a second specified address space of the storage medium as a boot program stack in the boot program according to the second sub-instruction.
  21. The apparatus of claim 19 or 20,
    the address selection instruction further carries a third sub-instruction;
    the third sub-instruction is used for loading a bootstrap file into a third specified address space which is continuous with the second specified address space in the storage medium;
    the file loading module is configured to load a boot program file required for executing the boot program into a third specified address space that is continuous with the second specified address space in the storage medium according to the third sub-instruction.
  22. The apparatus of claim 14, 15 or 17,
    the second designated address space contains addresses that are higher than addresses contained in the third designated address space.
  23. The apparatus of claim 14, 15 or 17,
    the storage medium is a static random access memory in the system chip.
  24. The apparatus of claim 14, 15 or 17,
    the bootstrap file is a bootstrap image.
  25. An unmanned aerial vehicle, comprising:
    a body;
    the power system is arranged on the airframe and used for providing flight power for the unmanned aerial vehicle;
    the system chip is used for loading initialization information in a boot program into a first specified address space of the storage medium when the boot program in the system chip is operated, setting a second specified address space of the storage medium as a boot program stack in the boot program, and loading a boot program file required by executing the boot program into a third specified address space which is continuous with the second specified address space in the storage medium, wherein the first specified address space, the second specified address space and the third specified address space are three different address spaces of the storage medium.
  26. A drone according to claim 25,
    the first designated address space is a designated high address space;
    the second designated address space is one of a designated middle address space and a designated lower address space, and the third designated address space is the other of the middle address space and the lower address space.
  27. A drone according to claim 25,
    the first designated address space is a designated low address space;
    the second designated address space is one of a designated middle address space and a designated high address space, and the third designated address space is the other of the middle address space and the high address space.
  28. A drone according to claim 26 or 27,
    the initialization information includes a data segment and a bss segment.
  29. A drone according to claim 25,
    the first designated address space includes: a fourth address space in the designated high address space and a fifth address space in the designated low address space;
    the second designated address space and the third designated address space are located between the fourth address space and the fifth address space.
  30. The drone of claim 29,
    the initialization information comprises a data section and a bss section;
    the data segment is loaded into one of the fourth address space and the fifth address space, and the bss segment is loaded into the other of the fourth address space and the fifth address space.
  31. A drone according to claim 25,
    the system chip is also used for receiving an address selection instruction;
    the address selection instruction carries a first sub-instruction;
    the first sub-instruction is used for loading initialization information into a first designated address space of the storage medium;
    the loading initialization information in the boot program into the first designated address space of the storage medium comprises: and loading the initialization information in the boot program into a first designated address space of the storage medium according to the first sub-instruction.
  32. A drone according to claim 31,
    the address selection instruction further carries a second sub-instruction;
    the second sub-instruction is used for indicating that a second specified address space of the storage medium is set as a bootstrap stack in the bootstrap;
    the setting the second designated address space of the storage medium as a boot stack in the boot includes: and setting a second specified address space of the storage medium as a bootstrap stack in the bootstrap according to the second sub-instruction.
  33. A drone according to claim 31 or 32,
    the address selection instruction further carries a third sub-instruction;
    the third sub-instruction is used for loading a bootstrap file into a third specified address space which is continuous with the second specified address space in the storage medium;
    the loading, into a third specified address space consecutive to the second specified address space in the storage medium, a boot program file required for executing the boot program includes: and loading a boot program file required by the boot program to be executed to a third specified address space which is continuous with the second specified address space in the storage medium according to the third sub-instruction.
  34. A drone according to claim 26, 27 or 29,
    the second designated address space contains addresses that are higher than addresses contained in the third designated address space.
  35. A drone according to claim 26, 27 or 29,
    the storage medium is a static random access memory in the system chip.
  36. A drone according to claim 26, 27 or 29,
    the bootstrap file is a bootstrap image.
CN201880012034.9A 2018-03-28 2018-03-28 Storage medium space application method, apparatus and unmanned plane in System on Chip/SoC Pending CN110520839A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/080859 WO2019183829A1 (en) 2018-03-28 2018-03-28 Method and device for applying system chip internal storage medium space, and unmanned aerial vehicle

Publications (1)

Publication Number Publication Date
CN110520839A true CN110520839A (en) 2019-11-29

Family

ID=68059465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880012034.9A Pending CN110520839A (en) 2018-03-28 2018-03-28 Storage medium space application method, apparatus and unmanned plane in System on Chip/SoC

Country Status (2)

Country Link
CN (1) CN110520839A (en)
WO (1) WO2019183829A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116737602A (en) * 2023-08-11 2023-09-12 深圳市航顺芯片技术研发有限公司 Method, device and storage medium for sharing peripheral RAM as system RAM

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099372A (en) * 1998-09-24 2000-04-07 Yamaha Corp Computer system
US20050050314A1 (en) * 2003-08-27 2005-03-03 Fumio Ohkita Electronic apparatus and method for starting up system of such apparatus
CN103309812A (en) * 2012-03-15 2013-09-18 中国移动通信集团公司 Allocation method and device for memory space of smart card
CN103488514A (en) * 2013-09-30 2014-01-01 华为技术有限公司 Starting method and central processing unit (CPU)
CN103955389A (en) * 2014-05-06 2014-07-30 中国科学院微电子研究所 System startup method based on PCM (Phase Change Random Access Memory)
WO2014143245A1 (en) * 2013-03-15 2014-09-18 Xilinx, Inc. Multi-boot of fallback boot of a system-on-chip using a file-based boot device
CN104156234A (en) * 2014-07-22 2014-11-19 华为技术有限公司 Multi-core processor starting and bootloader big-little endian mode adapting method device
CN104407886A (en) * 2014-11-05 2015-03-11 中国航天科技集团公司第九研究院第七七一研究所 Curing and loading method of embedded software guiding separation from target
US20170031696A1 (en) * 2015-07-27 2017-02-02 Mstar Semiconductor, Inc. Program code loading method of application and computing system using the same

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099372A (en) * 1998-09-24 2000-04-07 Yamaha Corp Computer system
US20050050314A1 (en) * 2003-08-27 2005-03-03 Fumio Ohkita Electronic apparatus and method for starting up system of such apparatus
CN103309812A (en) * 2012-03-15 2013-09-18 中国移动通信集团公司 Allocation method and device for memory space of smart card
WO2014143245A1 (en) * 2013-03-15 2014-09-18 Xilinx, Inc. Multi-boot of fallback boot of a system-on-chip using a file-based boot device
CN103488514A (en) * 2013-09-30 2014-01-01 华为技术有限公司 Starting method and central processing unit (CPU)
CN103955389A (en) * 2014-05-06 2014-07-30 中国科学院微电子研究所 System startup method based on PCM (Phase Change Random Access Memory)
CN104156234A (en) * 2014-07-22 2014-11-19 华为技术有限公司 Multi-core processor starting and bootloader big-little endian mode adapting method device
CN104407886A (en) * 2014-11-05 2015-03-11 中国航天科技集团公司第九研究院第七七一研究所 Curing and loading method of embedded software guiding separation from target
US20170031696A1 (en) * 2015-07-27 2017-02-02 Mstar Semiconductor, Inc. Program code loading method of application and computing system using the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116737602A (en) * 2023-08-11 2023-09-12 深圳市航顺芯片技术研发有限公司 Method, device and storage medium for sharing peripheral RAM as system RAM
CN116737602B (en) * 2023-08-11 2023-11-03 深圳市航顺芯片技术研发有限公司 Method, device and storage medium for sharing peripheral RAM as system RAM

Also Published As

Publication number Publication date
WO2019183829A1 (en) 2019-10-03

Similar Documents

Publication Publication Date Title
CN110825392B (en) Customization method, batch deployment method and batch deployment system of operating system
CN107341115B (en) Virtual machine memory access method and system and electronic equipment
US8631186B2 (en) Hardware and file system agnostic mechanism for achieving capsule support
CN106462442B (en) System and method for loading virtual machine
US20160275027A1 (en) System and Method to Avoid SMBus Address Conflicts via a Baseboard Management Controller
CN107562483A (en) A kind of method and device of carry guiding file system
US20210158131A1 (en) Hierarchical partitioning of operators
US10282190B2 (en) System and method for updating a UEFI image in an information handling system
CN110753119A (en) Application package deployment system based on K8s cluster
CN114185607B (en) Starting control method, device and equipment for PCI (peripheral component interconnect) equipment in ARM (advanced RISC machines) server
EP3438816B1 (en) Bios starting method and device
CN110520839A (en) Storage medium space application method, apparatus and unmanned plane in System on Chip/SoC
US10970206B2 (en) Flash data compression decompression method and apparatus
CN111857972A (en) Deployment method, deployment device and deployment equipment of virtual network function VNF
CN114528032A (en) Server system and data processing method
CN115454509A (en) Heterogeneous operating system deployment method, system, electronic device and storage medium
CN113064655B (en) BIOS network starting method and device and computer readable storage medium
CN115016862A (en) Kubernetes cluster-based software starting method, device, server and storage medium
CN111325327B (en) Universal convolution neural network operation architecture based on embedded platform and use method
CN109656720B (en) Address space allocation method and device
CN116755843B (en) Virtual resource creation method and device, electronic equipment, chip and storage medium
US11182314B1 (en) Low latency neural network model loading
US10209916B2 (en) Device and method to divide and download content data
US11625453B1 (en) Using shared data bus to support systolic array tiling
CN117742890A (en) Virtual machine creation method, device, equipment and storage medium

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
AD01 Patent right deemed abandoned
AD01 Patent right deemed abandoned

Effective date of abandoning: 20221018