CN114090498B - Method for realizing multi-core starting and service mutual decoupling of embedded SOC (system on chip) system - Google Patents

Method for realizing multi-core starting and service mutual decoupling of embedded SOC (system on chip) system Download PDF

Info

Publication number
CN114090498B
CN114090498B CN202111395811.2A CN202111395811A CN114090498B CN 114090498 B CN114090498 B CN 114090498B CN 202111395811 A CN202111395811 A CN 202111395811A CN 114090498 B CN114090498 B CN 114090498B
Authority
CN
China
Prior art keywords
core
execution
service
real
main
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.)
Active
Application number
CN202111395811.2A
Other languages
Chinese (zh)
Other versions
CN114090498A (en
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.)
Electric Power Research Institute of Yunnan Power Grid Co Ltd
Original Assignee
Electric Power Research Institute of Yunnan Power Grid 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 Electric Power Research Institute of Yunnan Power Grid Co Ltd filed Critical Electric Power Research Institute of Yunnan Power Grid Co Ltd
Priority to CN202111395811.2A priority Critical patent/CN114090498B/en
Publication of CN114090498A publication Critical patent/CN114090498A/en
Application granted granted Critical
Publication of CN114090498B publication Critical patent/CN114090498B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • 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/4401Bootstrapping
    • 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/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • 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
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Stored Programmes (AREA)
  • Telephone Function (AREA)
  • Hardware Redundancy (AREA)
  • Microcomputers (AREA)

Abstract

The application discloses a method for realizing the mutual decoupling of multi-core starting and service of an embedded SOC (system on chip) system, which realizes the independent starting among a plurality of cores and the mutual independence of service configuration by adopting a multi-core processor on an intelligent sensing terminal and adopting an AMP (application program) architecture, so that the mutual decoupling among the multi-core systems is realized, and the stability and the reliability of the intelligent sensing terminal are improved; the multi-core is started relatively independently, the real-time core operates on the main core, and when the management core operates abnormally, the service logic of the real-time core is not affected, so that the reliability of the intelligent perception terminal is improved.

Description

Method for realizing multi-core starting and service mutual decoupling of embedded SOC (system on chip) system
Technical Field
The application relates to the field of embedded technology, in particular to a method for realizing the mutual decoupling of multi-core starting and services by an embedded System On Chip (SOC).
Background
With the continuous development of modern embedded technology, the intelligent perception terminal based on the multi-core processor can realize high-speed processing and data calculation by one or more real-time cores, and one management core is responsible for managing data and files. The main architecture of the multi-core CPU at present comprises three operation modes of SMP, AMP and BMP, wherein the symmetrical multi-processing SMP architecture is used for managing each core equally through an operating system; whereas a hybrid multiprocessing BMP architecture is similar to an SMP architecture, a developer may specify that a certain task be executed only on a certain specified kernel; the asymmetric multiprocessing AMP architecture runs different tasks through a plurality of cores relatively independently, each core can be respectively loaded with and run different operating systems or bare core programs, but one core is needed to be used as a main core to control the whole system and other cores, and the cores are orderly started and are not interfered with each other, so that the asymmetric multiprocessing AMP architecture has higher energy efficiency.
However, the starting modes of the processors adopted by the multi-core architecture are all modes of guiding the slave cores by the master core, the slave cores can be awakened to be started after the master core is started, so that the coupling between the multi-core processors is higher, meanwhile, due to the fact that certain coupling relation exists between service data of the intelligent sensing terminal, the service data are required to be kept consistent, once the management cores are halted, abnormally reset and the like, the real-time cores cannot be loaded or abnormally restarted, normal protection logic is greatly influenced, and the problems of refusal of operation and misoperation and the like are caused.
Disclosure of Invention
The application provides a method for realizing the mutual decoupling of multi-core starting and business by an embedded SOC system, which aims to solve the problem of unreasonable distribution caused by personnel selection depending on subjective intention of people in the prior art.
The application provides a method for realizing the mutual decoupling of multi-core starting and service of an embedded SOC (system on a chip) system, which is applied to an AMP (analog-to-digital) framework formed by a service module, a real-time core module, a management core module and a shared memory module, wherein the real-time core module comprises a plurality of real-time cores and comprises the following steps:
building a multi-core system corresponding to an AMP architecture;
in a multi-core system, dividing a shared memory into ARM cores corresponding to each real-time core according to a plurality of real-time cores; the ARM core comprises a main core ARM core0 and slave cores ARM cores 1-N;
dividing a main partition of a system external memory into core 0-N programs for each ARM core to execute;
loading an FSBL program to an internal RAM area of the ARM core0 of the main core according to Bootrom, and jumping to an FSBL execution address;
initializing a main core, reading a main partition of an external memory, and sequentially loading execution programs of core 0-N to corresponding operation starting addresses;
writing the initial address of the core0 execution program of the main core into the CPU execution address, and executing the SEV instruction to start and load the execution program of the core0 after the execution is completed by standby;
the main core executes starting operation according to the SEV instruction;
writing initial addresses of the core 1-N execution programs into CPU execution addresses in sequence, and executing the SEV instruction to start and record the execution programs of the core 1-N after the execution is completed by standby;
the slave core executes a starting operation according to the SEV instruction;
the management core starts to boot and load the operating system, initializes the operating system kernel, executes task scheduling and related service parameter initialization, and manages service data and files of each real-time core.
In some embodiments, the step of the master core performing a boot operation according to an SEV instruction includes:
jumping to the written address execution program;
initializing resources;
setting a stack pointer;
main ()'s running core 0;
initializing a platform;
initializing service parameters;
core0 service logic is entered.
In some embodiments, the step of the slave core performing a boot operation according to an SEV instruction includes:
detecting whether the fixed address value is 0;
if not, jumping to the written address execution program;
initializing resources;
setting a stack pointer;
run core1, 2..n-1 or main of N ();
initializing a platform;
initializing service parameters;
core1, 2,..n-1 or N business logic.
In some embodiments, if the fixed address value is 0, the step of detecting whether the fixed address value is 0 is performed again.
In some embodiments, after building the multi-core system corresponding to the AMP architecture, the method further includes:
and designating a stack memory corresponding to each real-time core.
In some embodiments, the method further comprises:
and the service modules complete data interaction through corresponding ARM cores in the shared memory.
In some embodiments, when the management core performs data updates according to the update configuration information, the self configuration updates are synchronized to the respective real-time cores.
In some embodiments, the multi-core system includes a master verification time system, a slave core embedded real-time system, and a bare core system; wherein the master verification time system is configured to perform the steps of:
initializing a main core, reading a main partition of an external memory, and sequentially loading execution programs of core 0-N to corresponding operation starting addresses;
writing the initial address of the core0 execution program of the main core into the CPU execution address, and executing the SEV instruction to start and load the execution program of the core0 after the execution is completed by standby;
the main core executes starting operation according to the SEV instruction;
the slave core embedded real-time system is configured to perform the steps of:
writing initial addresses of the core 1-N execution programs into CPU execution addresses in sequence, and executing the SEV instruction to start and record the execution programs of the core 1-N after the execution is completed by standby;
the slave core executes a starting operation according to the SEV instruction;
the bare core system is configured to run a boot operating step without an operating system program directly on the ARM.
In some embodiments, the step of building the multi-core system corresponding to the AMP architecture further includes device-driven migration and resource allocation.
The invention provides a method for realizing the mutual decoupling of multi-core starting and business by an embedded SOC system, which comprises the following steps: building a multi-core system corresponding to an AMP architecture; in a multi-core system, dividing a shared memory into ARM cores corresponding to each real-time core according to a plurality of real-time cores; dividing a main partition of a system external memory into core 0-N programs for each ARM core to execute; loading an FSBL program to an internal RAM area of the ARM core0 of the main core according to Bootrom, and jumping to an FSBL execution address; initializing a main core, reading a main partition of an external memory, and sequentially loading execution programs of core 0-N to corresponding operation starting addresses; writing the initial address of the core0 execution program of the main core into the CPU execution address, and executing the SEV instruction to start and load the execution program of the core0 after the execution is completed by standby; the main core executes starting operation according to the SEV instruction; writing initial addresses of the core 1-N execution programs into CPU execution addresses in sequence, and executing the SEV instruction to start and record the execution programs of the core 1-N after the execution is completed by standby; the slave core executes a starting operation according to the SEV instruction; the management core starts to boot and load the operating system, initializes the operating system kernel, executes task scheduling and related service parameter initialization, and manages service data and files of each real-time core. According to the intelligent perception terminal, the multi-core processor is adopted, the AMP architecture is adopted to realize independent starting among a plurality of cores and mutual independence of service configuration, so that the multi-core systems are mutually decoupled, and the stability and reliability of the intelligent perception terminal are improved; the multi-core is started relatively independently, the real-time core operates on the main core, and when the management core operates abnormally, the service logic of the real-time core is not affected, so that the reliability of the intelligent perception terminal is improved.
Drawings
In order to more clearly illustrate the technical solutions of the present application, the drawings that are needed in the embodiments will be briefly described below, and it will be obvious to those skilled in the art that other drawings can be obtained from these drawings without inventive effort.
FIG. 1 is a schematic diagram of an AMP architecture on which the present application is based;
FIG. 2 is a flow chart of a method for implementing the mutual decoupling of multi-core startup and service in an embedded SOC system;
fig. 3 is a schematic diagram illustrating the operation of the method provided in the present application.
Detailed Description
As shown in fig. 1, the method of the present application is applied to an AMP architecture formed by a service module, a real-time core module, a management core module and a shared memory module, unlike in the prior art, in this embodiment, the real-time core module includes a plurality of real-time cores, and a new execution method based on the AMP architecture is designed in the present application.
Referring to fig. 2, a flowchart of a method for implementing mutual decoupling between multi-core startup and service in an embedded SOC system of the present application is shown; referring to FIG. 3, a schematic diagram of the operation of the method is provided herein;
the method of the present application is described below in conjunction with fig. 2 and 3, the method comprising:
s100: firstly, building a multi-core system corresponding to an AMP architecture; the AMP architecture is illustrated from a hardware perspective, where the architecture representing the hardware, such as a business module, may be generally considered a peripheral interface, a shared memory module, may be generally considered a memory storage, etc., while a real-time core module and a management core module may be generally considered multiple cores of a system that assume different functions; the multi-core system realizes specific functions from the software perspective, and can be specifically expressed as software parts including a bootstrap program, a kernel mirror image, a service program and the like.
In step S100, the meaning of the establishment of the multi-core system includes the migration of the device driver, that is, the preparation and the raising of the various device drivers, and the allocation of system resources.
Depending on the functionality, in some embodiments, the multi-core system may be further divided into a master verification-time system, a slave-core embedded real-time system, and a bare-core system. The function of these three systems will be described in the following description.
S200: in a multi-core system, dividing a shared memory into ARM cores corresponding to each real-time core according to a plurality of real-time cores; the ARM cores comprise a master ARM core0 and slave ARM cores 1-N, each ARM core can independently execute a certain task and does not have harmful influence on each other, and the arrangement accords with the theme thought of an AMP architecture. After being divided into a plurality of ARM cores, the ARM cores need to initialize the required resources respectively at the time of starting, so that the system is ensured to be restored to the original state.
The process may occur in synchronization with step S200, S300: dividing a main partition of a system external memory into core 0-N programs for each ARM core to execute; the step is to allocate the divided shared memory to each core, so that each real-time core can independently execute a corresponding program in one ARM core, and for different core programs, the execution of each core program is not affected, and the next program is not required to be executed after one program is completely started, so that the steps S200 and S300 are fundamental technical features for solving the technical problems of the application.
S400: when the multi-core is electrified, executing Bootrom to boot and load the FSBL program to an internal RAM area of the ARM core0 of the main core, and jumping to an FSBL execution address;
BootROM function: after power-on reset, the PS end starts configuration. Without the use of JTAG, ARM would begin executing code in BootROM on-chip. The code in BootROM initializes the basic peripheral controllers for NAND, NOR, quad-SPI, SD and PCAP so that the ARM core can access and use these peripherals.
While other peripherals such as DDR will initialize at stage 1 or later. The code in BootROM is also responsible for loading the boot image of phase 1. The start-up source of PS is selected by the high and low levels of the external mode pins, that is to say BootROM will load the start-up image of phase 1 from different external memories according to the setting of the external configuration pins, which of course also supports direct operation on linear Flash. It should be noted that the configuration of the PL is not done in BootROM, which is only ready for configuring the PL.
FSBL (first stage boot loader) is a boot program that starts after BootROM. Loaded to the OCM by BootROM or run directly on linear Flash. FSBL mainly completes the following work:
1) And according to the configuration in XPS, finishing the initialization of the PS end.
2) The PL is configured using a bitstream file.
3) A second stage boot program (SSBL) or a bare running program (running no operating system program directly on ARM) is loaded into the memory space.
4) Jumps execute SSBL or nude running program (based on nude system). Note that: FSBL does not enable MMU before jumping to SSBL or nude running program. This is because many operating systems, such as linux, assume that the MMU is disabled at boot-up.
S500: the main core is initialized (clock, reset, interrupt and the like), the main partition of the external memory is read, and the execution programs of core 0-N are loaded to the corresponding running starting addresses in sequence;
in this step, only the execution program of core0 to N is loaded to the corresponding operation start address, instead of directly running the execution program as in the prior art, so that other slave cores do not need to wait for starting after the master core is started, so that the overall starting efficiency can be greatly increased, and since each of the steps S200 and S300 implements that each of the ARM cores executes a starting program, the starting programs of the cores are not affected by each other, thereby embodying the decoupling performance of the method of the present application.
S600: writing the initial address of the core0 execution program of the main core into the CPU execution address, and executing the SEV instruction to start and load the execution program of the core0 after the execution is completed by standby;
s700: the main core executes starting operation according to the SEV instruction;
s800: writing initial addresses of the core 1-N execution programs into CPU execution addresses in sequence, and executing the SEV instruction to start and record the execution programs of the core 1-N after the execution is completed by standby;
s900: the slave core executes a starting operation according to the SEV instruction;
steps S600-S900 describe the execution procedure of all cores, and it should be noted that, when other real-time cores are powered on, the state of waiting for a loop should be entered, waiting for wakeup, and when the distributed loading execution writes the starting address, the other real-time cores jump to the execution address, and start each real-time core in turn, and finally complete the related operation.
S1000: when the execution is carried out to the management core, the management core starts to boot and load the operating system, initializes the operating system core, starts to execute task scheduling and the initialization of related service parameters, and uniformly manages the service data and files of each real-time core.
Further, in the above steps S700 and S800, the step of performing the start operation specifically includes:
the master core (through the master verification time system) performs:
jumping to the written address execution program;
initializing resources;
setting a stack pointer;
main ()'s running core 0;
initializing a platform;
initializing service parameters;
core0 service logic is entered.
The slave core (via the slave core embedded real-time system) performs:
detecting whether the fixed address value is 0;
if not, jumping to the written address execution program;
initializing resources;
setting a stack pointer;
run core1, 2..n-1 or main of N ();
initializing a platform;
initializing service parameters;
core1, 2,..n-1 or N business logic.
In the above two execution methods, if the fixed address value is 0, the step of detecting whether the fixed address value is 0 is executed again until the fixed address value is not 0, and then the subsequent steps are executed again.
Further, after building the multi-core system corresponding to the AMP architecture, the method further includes:
and designating a stack memory corresponding to each real-time core.
Further, after step S1000, the method further includes:
the plurality of service modules complete data interaction through corresponding ARM cores in the shared memory, and the shared memory is divided, so that the data interaction among different services is easy to process, and the plurality of data interactions can be processed by different ARM cores without influence and can be synchronously performed.
Further, when the management core performs data update according to the update configuration information, the management core synchronizes the self-configuration update to each real-time core, thereby maintaining the consistency of the data.
As can be seen from the above technical solution, the method for implementing mutual decoupling between multi-core start and service in an embedded SOC system provided by the present invention includes: building a multi-core system corresponding to an AMP architecture; in a multi-core system, dividing a shared memory into ARM cores corresponding to each real-time core according to a plurality of real-time cores; the ARM core comprises a main core ARM core0 and slave cores ARM cores 1-N; dividing a main partition of a system external memory into core 0-N programs for each ARM core to execute; loading an FSBL program to an internal RAM area of the ARM core0 of the main core according to Bootrom, and jumping to an FSBL execution address; initializing a main core, reading a main partition of an external memory, and sequentially loading execution programs of core 0-N to corresponding operation starting addresses; writing the initial address of the core0 execution program of the main core into the CPU execution address, and executing the SEV instruction to start and load the execution program of the core0 after the execution is completed by standby; the main core executes starting operation according to the SEV instruction; writing initial addresses of the core 1-N execution programs into CPU execution addresses in sequence, and executing the SEV instruction to start and record the execution programs of the core 1-N after the execution is completed by standby; the slave core executes a starting operation according to the SEV instruction; the management core starts to boot and load the operating system, initializes the operating system kernel, executes task scheduling and related service parameter initialization, and manages service data and files of each real-time core. According to the intelligent perception terminal, the multi-core processor is adopted, the AMP architecture is adopted to realize independent starting among a plurality of cores and mutual independence of service configuration, so that the multi-core systems are mutually decoupled, and the stability and reliability of the intelligent perception terminal are improved; the multi-core is started relatively independently, the real-time core operates on the main core, and when the management core operates abnormally, the service logic of the real-time core is not affected, so that the reliability of the intelligent perception terminal is improved.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the invention and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.
It is to be understood that the invention is not limited to the precise arrangements and instrumentalities shown in the drawings, which have been described above, and that various modifications and changes may be effected without departing from the scope thereof. The scope of the invention is limited only by the appended claims.

Claims (9)

1. The method for realizing the mutual decoupling of the multi-core starting and the service of the embedded SOC system is applied to an AMP architecture formed by a service module, a real-time core module, a management core module and a shared memory module, wherein the real-time core module comprises a plurality of real-time cores, and is characterized in that the method comprises the following steps:
building a multi-core system corresponding to an AMP architecture;
in a multi-core system, dividing a shared memory into ARM cores corresponding to each real-time core according to a plurality of real-time cores; the ARM core comprises a main core ARM core0 and slave cores ARM cores 1-N;
dividing a main partition of a system external memory into core 0-N programs for each ARM core to execute;
loading an FSBL program to an internal RAM area of the ARM core0 of the main core according to Bootrom, and jumping to an FSBL execution address;
initializing a main core, reading a main partition of an external memory, and sequentially loading execution programs of core 0-N to corresponding operation starting addresses;
writing the initial address of the core0 execution program of the main core into the CPU execution address, and executing the SEV instruction to start and load the execution program of the core0 after the execution is completed by standby;
the main core executes starting operation according to the SEV instruction;
writing initial addresses of the core 1-N execution programs into CPU execution addresses in sequence, and executing the SEV instruction to start and record the execution programs of the core 1-N after the execution is completed by standby;
the slave core executes a starting operation according to the SEV instruction;
the management core starts to boot and load the operating system, initializes the operating system kernel, executes task scheduling and related service parameter initialization, and manages service data and files of each real-time core.
2. The method for implementing mutual decoupling between multi-core startup and service in an embedded SOC system as claimed in claim 1, wherein the step of executing the startup operation by the master core according to the SEV instruction includes:
jumping to the written address execution program;
initializing resources;
setting a stack pointer;
main ()'s running core 0;
initializing a platform;
initializing service parameters;
core0 service logic is entered.
3. The method for implementing mutual decoupling between multi-core initiation and service in an embedded SOC system as claimed in claim 1, wherein the step of executing the initiation operation by the slave core according to the SEV instruction includes:
detecting whether the fixed address value is 0;
if not, jumping to the written address execution program;
initializing resources;
setting a stack pointer;
run core1, 2..n-1 or main of N ();
initializing a platform;
initializing service parameters;
core1, 2,..n-1 or N business logic.
4. The method for implementing mutual decoupling between multi-core initiation and service in an embedded SOC system as claimed in claim 3, wherein the step of detecting whether the fixed address value is 0 is performed again if the fixed address value is 0.
5. The method for implementing mutual decoupling between multi-core initiation and service by an embedded SOC system as claimed in claim 1, wherein after building the multi-core system corresponding to the AMP architecture, the method further comprises:
and designating a stack memory corresponding to each real-time core.
6. The method for implementing mutual decoupling between multi-core initiation and service in an embedded SOC system as claimed in claim 1, further comprising:
and the service modules complete data interaction through corresponding ARM cores in the shared memory.
7. The method for implementing the mutual decoupling of multi-core startup and service by the embedded SOC system according to claim 1, wherein the method comprises the steps of,
when the management core executes data updating according to the updating configuration information, the self-configuration updating is synchronized to each real-time core.
8. The method for implementing the mutual decoupling of the multi-core start and the service by the embedded SOC according to claim 1, wherein the multi-core system comprises a master verification time system, a slave core embedded real-time system and a bare core system; wherein the master verification time system is configured to perform the steps of:
initializing a main core, reading a main partition of an external memory, and sequentially loading execution programs of core 0-N to corresponding operation starting addresses;
writing the initial address of the core0 execution program of the main core into the CPU execution address, and executing the SEV instruction to start and load the execution program of the core0 after the execution is completed by standby;
the main core executes starting operation according to the SEV instruction;
the slave core embedded real-time system is configured to perform the steps of:
writing initial addresses of the core 1-N execution programs into CPU execution addresses in sequence, and executing the SEV instruction to start and record the execution programs of the core 1-N after the execution is completed by standby;
the slave core executes a starting operation according to the SEV instruction;
the bare core system is configured to run a boot operating step without an operating system program directly on the ARM.
9. The method for implementing the mutual decoupling between the multi-core initiation and the service by the embedded SOC system as claimed in claim 1, wherein the step of building the multi-core system corresponding to the AMP architecture further includes device-driven migration and resource allocation.
CN202111395811.2A 2021-11-23 2021-11-23 Method for realizing multi-core starting and service mutual decoupling of embedded SOC (system on chip) system Active CN114090498B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111395811.2A CN114090498B (en) 2021-11-23 2021-11-23 Method for realizing multi-core starting and service mutual decoupling of embedded SOC (system on chip) system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111395811.2A CN114090498B (en) 2021-11-23 2021-11-23 Method for realizing multi-core starting and service mutual decoupling of embedded SOC (system on chip) system

Publications (2)

Publication Number Publication Date
CN114090498A CN114090498A (en) 2022-02-25
CN114090498B true CN114090498B (en) 2023-07-28

Family

ID=80303251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111395811.2A Active CN114090498B (en) 2021-11-23 2021-11-23 Method for realizing multi-core starting and service mutual decoupling of embedded SOC (system on chip) system

Country Status (1)

Country Link
CN (1) CN114090498B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114741137B (en) * 2022-05-09 2024-02-20 潍柴动力股份有限公司 Software starting method, device, equipment and storage medium based on multi-core microcontroller
CN115081033B (en) * 2022-07-20 2022-11-11 南方电网数字电网研究院有限公司 Service safety isolation method for edge computing device of digital power distribution network
CN115098436B (en) * 2022-08-24 2023-01-24 北京智芯微电子科技有限公司 Multi-core SoC and relay protection system
CN115309463A (en) * 2022-09-29 2022-11-08 成都菁蓉联创科技有限公司 Method for guiding and configuring AMP system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662740A (en) * 2012-03-29 2012-09-12 迈普通信技术股份有限公司 Asymmetric multi-core system and realization method thereof
CN210836089U (en) * 2019-12-09 2020-06-23 云南电网有限责任公司保山供电局 Digital embedded oscillograph mainboard

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015050594A2 (en) * 2013-06-16 2015-04-09 President And Fellows Of Harvard College Methods and apparatus for parallel processing
US9684294B2 (en) * 2015-01-09 2017-06-20 Tyco Safety Products Canada Ltd. Multi-core processor for optimized power consumption in a security and home automation system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662740A (en) * 2012-03-29 2012-09-12 迈普通信技术股份有限公司 Asymmetric multi-core system and realization method thereof
CN210836089U (en) * 2019-12-09 2020-06-23 云南电网有限责任公司保山供电局 Digital embedded oscillograph mainboard

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于ARM平台AMP架构下从核重复加载设计与实现;李鑫志;戈志华;刘向明;;计算机应用与软件(第01期);全文 *

Also Published As

Publication number Publication date
CN114090498A (en) 2022-02-25

Similar Documents

Publication Publication Date Title
CN114090498B (en) Method for realizing multi-core starting and service mutual decoupling of embedded SOC (system on chip) system
CN109478135B (en) Computer system and method for rebooting a computer system
JP6089349B2 (en) Method and system for supporting resource separation in a multi-core architecture
Nukada et al. NVCR: A transparent checkpoint-restart library for NVIDIA CUDA
US7568090B2 (en) Speedy boot for computer systems
US5825649A (en) Kernel substitution method in multi-processor system and multi-processor system having kernel substitution function
US11972243B2 (en) Memory device firmware update and activation without memory access quiescence
JP2008186175A (en) Start control method of operating system and information processor
CN108182036B (en) Multi-chip system storage implementation device and method
CN116521209B (en) Upgrading method and device of operating system, storage medium and electronic equipment
US9235426B2 (en) Multicore processor system, computer product, and notification method for updating operating system
CN111913822A (en) Inter-core communication mode based on AMP architecture
CN115357310A (en) System starting method and device, electronic equipment and storage medium
US20020049897A1 (en) Method for adding processor
JP2002288104A (en) Computer system, and method and program for its resource assigning
WO2023125482A1 (en) Cluster management method and device, and computing system
CN111913753A (en) Method and system for changing starting mode in cloud migration of windows system
CN115309463A (en) Method for guiding and configuring AMP system
EP4187374A1 (en) Kernel restarting method
JP7375643B2 (en) In-vehicle information processing device, control method and computer program
CN110069287B (en) Multi-system coexistence method and device and storage equipment
US20230161600A1 (en) Kernel reboot method
CN118860514A (en) Slave core reloading method based on ARM platform AMP architecture
JP2012145995A (en) Computer, computer restart method and restart program
CN117453296A (en) Embedded system with quick start function, start method, computer 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
GR01 Patent grant
GR01 Patent grant