CN117435225A - Non-inductive upgrade method, device, equipment and storage medium - Google Patents

Non-inductive upgrade method, device, equipment and storage medium Download PDF

Info

Publication number
CN117435225A
CN117435225A CN202311494359.4A CN202311494359A CN117435225A CN 117435225 A CN117435225 A CN 117435225A CN 202311494359 A CN202311494359 A CN 202311494359A CN 117435225 A CN117435225 A CN 117435225A
Authority
CN
China
Prior art keywords
mcu
operating system
upgrade
starting
upgrading
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
CN202311494359.4A
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.)
Ecarx Hubei Tech Co Ltd
Original Assignee
Ecarx Hubei Tech 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 Ecarx Hubei Tech Co Ltd filed Critical Ecarx Hubei Tech Co Ltd
Priority to CN202311494359.4A priority Critical patent/CN117435225A/en
Publication of CN117435225A publication Critical patent/CN117435225A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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

Abstract

The application provides a non-inductive upgrading method, a device, equipment and a storage medium, wherein the non-inductive upgrading method is applied to a system-on-chip (SOC) in an Electronic Control Unit (ECU), and the ECU also comprises a Micro Control Unit (MCU). Firstly, switching a starting slot position to an inactive slot position, starting a corresponding operating system from a designated slot position in the inactive slot position to start a user space of the operating system, and then updating firmware of the user space in response to the starting of the user space, wherein the firmware comprises an upgrade package of the MCU. And finally restarting the operating system in response to the restarting instruction, and when the operating system is restarted successfully, finishing the upgrading of the MCU, thereby realizing the overall noninductive upgrading of the ECU with the MCU by taking the MCU as an external device of the SOC, reducing the overall noninductive upgrading cost of the whole ECU, ensuring the uniformity of the MCU and the SOC software version without exposing the MCU externally.

Description

Non-inductive upgrade method, device, equipment and storage medium
Technical Field
The present disclosure relates to the field of electronic control technologies, and in particular, to a method, an apparatus, a device, and a storage medium for non-inductive upgrade.
Background
An electronic control unit (Electronic Control Unit, ECU) in the automotive electronics architecture can support a/B sensorless upgrades.
However, some ECUs, such as some services with high real-time requirements, require a micro control unit (Microcontroller Unit, MCU) to process, so some ECUs are composed of a System On Chip (SOC) and an MCU. It can be seen that, if the ECU composed of the SOC and the MCU is to fully support the a/B noninductive upgrade, the MCU needs to support the noninductive upgrade.
However, the current MCU supports A/B noninductive upgrading, on one hand, high cost is required to purchase corresponding functional modules from suppliers, and on the other hand, the MCU is required to increase the ROM storage capacity, so that the upgrading cost is high, and the realization of noninductive upgrading is not facilitated.
Disclosure of Invention
The application provides a noninductive upgrading method, device, equipment and storage medium, which are used for realizing the noninductive upgrading of the whole A/B of an ECU by taking an MCU in the ECU as an external device of an SOC so as to overcome the defect that the upgrading cost is high and the noninductive upgrading is not facilitated in the prior art.
In a first aspect, the present application provides a method for non-inductive upgrade, applied to a system-on-a-chip SOC in an electronic control unit ECU, where the ECU further includes a micro control unit MCU; the method comprises the following steps:
switching a starting slot to an inactive slot, and starting a corresponding operating system from a designated slot in the inactive slot to start a user space of the operating system;
updating firmware of the user space in response to the starting of the user space, wherein the firmware comprises an updating packet of the MCU;
and restarting the operating system in response to a restarting instruction, and finishing upgrading the MCU when the operating system is restarted successfully.
In one possible design, the upgrade package of the MCU is stored in a folder of the SOC active partition, the folder stores the firmware, and the active partition has a corresponding relationship with an active slot.
In one possible design, the updating the firmware of the user space in response to the start-up of the user space includes:
and in the starting process of the user space, using a UDS protocol to burn the upgrade package of the MCU in the folder of the inactive partition to the MCU.
In one possible design, when the operating system reboots, the method further comprises:
judging whether the number of times of the starting failure of the operating system exceeds the upper limit of the number of times of failure;
if yes, determining whether to switch the starting slot position;
if not, restarting the corresponding operating system from the appointed slot position in the inactive slot positions.
In one possible design, the determining whether to switch the start slot includes:
judging whether the effective inactive slot position exists;
if yes, switching the starting slot to the effective inactive slot;
if not, recovering the operating system to finish upgrading the MCU.
In one possible design, the method further comprises:
and in the starting process of the user space, upgrading the other peripheral chips by using upgrading interfaces of the other peripheral chips according to the upgrading package of the other peripheral chips.
In one possible design, before the booting the user space of the operating system, the method further includes:
and in response to the starting of the operating system, upgrading a kernel driver of the operating system.
In a second aspect, the present application provides a non-inductive upgrade apparatus, applied to a system-on-a-chip SOC in an electronic control unit ECU, where the ECU further includes a micro control unit MCU; the device comprises:
the starting module is used for switching the starting slot position to an inactive slot position, and starting a corresponding operating system from a designated slot position in the inactive slot position so as to start a user space of the operating system;
the upgrading module is used for responding to the starting of the user space to upgrade the firmware of the user space, wherein the firmware comprises an upgrade package of the MCU;
and the restarting module is used for restarting the operating system in response to the restarting instruction, and finishing upgrading of the MCU when the operating system is successfully restarted.
In one possible design, the upgrade package of the MCU is stored in a folder of the SOC active partition, the folder stores the firmware, and the active partition has a corresponding relationship with an active slot.
In one possible design, the upgrade module is specifically configured to:
and in the starting process of the user space, using a UDS protocol to burn the upgrade package of the MCU in the folder of the active partition to the MCU.
In one possible design, the non-inductive upgrade apparatus further includes: a judging module; the judging module is used for:
judging whether the number of times of the starting failure of the operating system exceeds the upper limit of the number of times of failure;
if yes, determining whether to switch the starting slot position;
if not, restarting the corresponding operating system from the appointed slot position in the inactive slot positions.
In one possible design, the determining module is further configured to:
judging whether the effective inactive slot position exists;
if yes, switching the starting slot to the effective inactive slot;
if not, recovering the operating system to finish upgrading the MCU.
In one possible design, the upgrade module is further configured to: and in the starting process of the user space, upgrading the other peripheral chips by using upgrading interfaces of the other peripheral chips according to the upgrading package of the other peripheral chips.
In one possible design, the starting module is further configured to:
and in response to the starting of the operating system, upgrading a kernel driver of the operating system.
In a third aspect, the present application provides an electronic device, comprising: a processor, and a memory communicatively coupled to the processor;
the memory stores computer-executable instructions;
the processor executes computer-executable instructions stored in the memory to implement any one of the possible non-inductive upgrade methods provided in the first aspect.
In a fourth aspect, the present application provides a computer readable storage medium having stored therein computer executable instructions which when executed by a processor are adapted to carry out any one of the possible non-inductive upgrade methods provided in the first aspect.
In a fifth aspect, the present application provides a computer program product comprising computer-executable instructions for implementing any one of the possible non-inductive upgrade methods provided in the first aspect when executed by a processor.
The application provides a non-inductive upgrading method, a device, equipment and a storage medium, wherein the non-inductive upgrading method is applied to a system-on-chip (SOC) in an Electronic Control Unit (ECU), and the ECU also comprises a Micro Control Unit (MCU). Firstly, switching a starting slot position to an inactive slot position, starting a corresponding operating system from a designated slot position in the inactive slot position to start a user space of the operating system, and then updating firmware of the user space in response to the starting of the user space, wherein the firmware comprises an upgrade package of the MCU. And finally restarting the operating system in response to the restarting instruction, and when the operating system is restarted successfully, finishing the upgrading of the MCU, thereby realizing the overall noninductive upgrading of the ECU with the MCU by taking the MCU as an external device of the SOC, reducing the overall noninductive upgrading cost of the whole ECU, ensuring the uniformity of the MCU and the SOC software version without exposing the MCU externally.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, a brief description will be given below of the drawings that are needed in the embodiments or the prior art descriptions, it being obvious that the drawings in the following description are some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort to a person skilled in the art.
Fig. 1 is a schematic diagram of a system architecture according to an embodiment of the present application;
fig. 2 is a schematic flow chart of a non-inductive upgrade method according to an embodiment of the present application;
FIG. 3 is a flow chart of another method for non-inductive upgrade according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a non-inductive upgrade apparatus provided in an embodiment of the present application;
fig. 5 is a schematic structural diagram of another non-inductive upgrade apparatus provided in an embodiment of the present application;
fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples are not representative of all implementations consistent with the present application. Rather, they are merely examples of methods and apparatus consistent with aspects of the present application as detailed in the accompanying claims.
The terms "first," "second," "third," "fourth" and the like in the description and in the claims of this application and in the above-described figures, if any, are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that embodiments of the present application described herein may be capable of operation in sequences other than those illustrated or described herein, for example. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
The following is an explanation of nouns referred to in this application:
a/B noninductive upgrade: the hard disk is provided with an A/B partition, and the A/B partition is a system which can work normally. And programming the partition which does not work when upgrading, and switching to the newly programmed partition after completing programming.
UDS: all Unified Diagnostic Services, unified diagnostic service. In which the flow and protocol of upgrades to the standard plan are defined.
Kernel space and user space: to ensure kernel security, operating systems typically force user processes to not directly operate the kernel. The specific implementation manner is basically that the operating system divides the virtual address space into two parts, wherein one part is kernel space and the other part is user space. Kernel usage, referred to as kernel space, is used by individual application processes, referred to as user space.
The ECU in the automobile electronic and electric architecture can support A/B noninductive upgrading, but some ECUs need MCU processing, for example, some businesses with higher real-time requirements, so that some ECUs are formed by combining an SOC and an MCU. In this case, if the ECU is to fully support the a/B sensorless upgrade, the MCU therein also needs to support the sensorless upgrade. However, in the existing solution of supporting a/B sensorless upgrade by the MCU, on one hand, high cost is required to purchase a corresponding functional module from a provider, and on the other hand, the MCU is required to increase the ROM storage capacity, which results in higher cost of the MCU sensorless upgrade, and is not beneficial to the realization of the ECU overall sensorless upgrade.
Aiming at the problems in the prior art, the application provides a non-inductive upgrading method, a non-inductive upgrading device, non-inductive upgrading equipment and a storage medium. The inventive concept of the non-inductive upgrading method provided by the application is as follows: the MCU is regarded as a peripheral of the SOC to be upgraded, specifically, the upgrade package of the MCU is regarded as firmware of the peripheral to be stored in a folder used for storing the firmware in the SOC, and the SOC is added with one stage in the starting stage of Linux to upgrade the firmware, so that the upgrade of the MCU is realized, and compared with the prior art, a corresponding functional module does not need to be purchased from a supplier and the storage capacity of the ROM does not need to be increased. Therefore, the MCU is regarded as the SOC peripheral, the ECU can realize the A/B noninductive upgrade integrally, and the cost of the integral A/B upgrade of the ECU is reduced. In addition, the upgrade package of the MCU is not exposed to the outside, and the MCU and the SOC can perfectly ensure the uniformity of software versions, thereby being beneficial to popularization and use of an upgrade method.
Fig. 1 is a schematic diagram of a system architecture provided in an embodiment of the present application, as shown in fig. 1, an infotainment system integrated machine (Display Head Unity, DHU) 20 of a vehicle 10 may correspond to a plurality of ECUs, where a part of the ECUs, for example, the ECU 21, needs to execute a service with a high real-time service requirement, and is composed of an MCU 211 and an SOC 212. In The course of an OTA (Over The Air) upgrade, the DHU 20 includes an ECU such as ECU 21 that needs to be upgraded, which may be an A/B non-inductive upgrade. If the ECU 21 is to support the a/B non-inductive upgrade, the MCU 211 is required to support the a/B non-inductive upgrade.
In the non-inductive upgrade provided in this embodiment, the MCU 211 is regarded as a peripheral device of the SOC 212, and during the OTA upgrade, the MCU 211 and the SOC 212 are used as a whole, and the MCU 211 is upgraded through the UDS Client in the SOC 212. Wherein the OTA upgrade is performed by the OTA Master 30 in fig. 1 executing the OTA instrer in the SOC 212. On the side of the SOC 212, the MCU 211 is upgraded by the UDS Client, and the MCU 211 has a standard upgrade function (UDS Server).
Alternatively, other peripheral chips of SOC 212 may also be considered as peripheral firmware of SOC 212 using a custom upgrade interface to enable upgrades of the other chips.
It should be noted that the above application scenarios are merely illustrative, and the method, apparatus, device and storage medium for non-inductive upgrade provided in the embodiments of the present application include, but are not limited to, the above application scenarios.
Fig. 2 is a flow chart of a non-inductive upgrade method according to an embodiment of the present application, where the non-inductive upgrade method is applied to an SOC in an ECU, and the ECU further includes an MCU. As shown in fig. 2, the method for non-inductive upgrade provided in the embodiment of the present application includes:
s101: and switching the starting slot to the inactive slot.
S102: the corresponding operating system is started from a designated slot in the inactive slots to start the user space of the operating system.
The A/B noninductive upgrade refers to that the hard disk is provided with an A/B partition, and the A/B partition are all systems which can work normally. And (3) programming the non-working partition when upgrading, and assuming that the operating system corresponding to the partition A is in an activated use state, namely the partition A is currently a working partition, and the operating system corresponding to the partition B is in a dormant unavailable state, then the partition B is the non-working partition. The slots corresponding to the working partitions are active slots, and the slots corresponding to the non-working partitions are inactive slots. And switching the starting slot position of the operating system of the SOC to the inactive slot position of the A/B partition, starting the corresponding operating system from the appointed slot position in the inactive slot position, wherein the slot position has a corresponding relation with the operating system, and the starting slot position is used for starting the operating system corresponding to the slot position, so that the user space of the operating system corresponding to the starting slot position is started. It can be understood that after the starting slot is switched to the inactive slot and the corresponding operating system is started from the designated slot in the inactive slot, the original inactive slot is switched to the active slot, and the previous inactive partition is switched to the active partition, that is, the active partition.
S103: and updating the firmware of the user space in response to the start of the user space.
The firmware comprises an upgrade package of the MCU.
And enabling the user space to be started in the starting process of the operating system of the SOC, and carrying out firmware upgrading on the step of starting the user space.
The firmware is stored in a folder of the exclusive storage firmware of the active partition of the SOC, and the active partition is opposite to the active partition after the start slot is switched, that is, the active partition refers to the active partition after the start slot is switched. The upgrade package of the MCU is regarded as firmware to be stored in the folder, namely, the firmware comprises the upgrade package of the MCU. Therefore, when the firmware of the user space is upgraded, the MCU can be upgraded, namely, an upgrade package of the MCU is regarded as peripheral firmware of the SOC, the MCU is subjected to A/B noninductive upgrade through firmware upgrade, and the whole A/B noninductive upgrade of the ECU formed by the MCU can be considered to be performed for the outside.
S104: and restarting the operating system in response to the restarting instruction, and judging whether the restarting is successful.
In the step of starting the operating system, the firmware of the user space is upgraded, wherein the firmware comprises an upgrade package of the MCU which is regarded as the peripheral firmware of the SOC, and the upgrade of the firmware is also the upgrade of the MCU. Whether the upgrade is successful or not needs to be verified by restarting the operating system. When the operating system is restarted successfully, it indicates that the upgrade of the MCU is completed, i.e., step S105. Otherwise, if the operating system fails to restart, step S106 is performed.
S105: MCU upgrade is successful.
For example, if the operating system is restarted successfully, the SOC indicates that the MCU is successfully upgraded, the upgrade package of the MCU is completely programmed, the whole ECU is completely upgraded, and the new version of the SOC can be normally operated.
S106: and judging whether the number of times of the starting failure of the operating system exceeds the upper limit of the number of times of failure.
If the operating system is restarted and fails, judging whether the number of times of the starting failure of the operating system exceeds the upper limit of the number of times of failure, wherein the upper limit of the number of times of failure can set a threshold in advance. If yes, further judging whether the starting slot needs to be switched, namely executing step S107; if not, restarting the corresponding operating system from the designated slot in the inactive slots, that is, executing step S102 to restart the operating system for firmware upgrade.
S107: it is determined whether a valid inactive slot exists.
If the number of times of the start failure of the operating system exceeds the upper limit of the failure number, whether to switch the start slot is required to be considered. Specifically, it is determined whether there is an active inactive slot, if so, the starting slot is switched to the active inactive slot, that is, step S108 is executed, and then the operating system is started from the designated slot in the active inactive slot to perform firmware upgrade again, that is, step S102 is executed. Otherwise, if not, the operating system is restored, and the current non-inductive upgrade method is ended, i.e. step S109 is executed.
S108: switching the start slot to an active inactive slot.
The number of operating system boot failures exceeding the upper limit of the failure number may be caused by the boot slot, so when determining a valid inactive slot, the boot slot is switched to the valid inactive slot, and then step S102 is executed to re-upgrade the firmware.
S109: and recovering the operating system to finish the upgrade of the MCU.
If it is determined that no valid inactive slots exist, the operating system is restored, and the current upgrade of the MUC is ended.
As can be seen from the above description, according to the noninductive upgrading method provided by the embodiment of the application, the MCU is regarded as an SOC peripheral, and one stage is added in the Linux starting stage to upgrade the firmware of the MCU, so that the a/B noninductive upgrade of the MCU can be realized, and the overall a/B noninductive upgrade of the ECU composed of the MCUs can be realized.
Fig. 3 is a flow chart of another non-inductive upgrade method provided in an embodiment of the present application, where the non-inductive upgrade method is applied to an SOC in an ECU, and the ECU further includes an MCU. As shown in fig. 3, the method for non-inductive upgrade provided in the embodiment of the present application includes:
s201: and switching the starting slot to the inactive slot.
The possible implementation manner, technical principle and technical effect of step S201 are similar to those of step S101, and the detailed description thereof will be referred to the foregoing description and will not be repeated here.
S202: starting the corresponding operating system from the appointed slot in the inactive slots to upgrade the kernel driver of the operating system and start the user space of the operating system.
And switching the starting slot to an inactive slot of the A/B partition, starting a corresponding operating system from a designated slot in the inactive slot, wherein the starting slot is used for starting the operating system corresponding to the slot, and updating a kernel driver (Kernel Driver Firmware) of the operating system and starting a user space of the operating system in response to the starting of the operating system.
It can be understood that after the starting slot is switched to the inactive slot and the corresponding operating system is started from the designated slot in the inactive slot, the original inactive slot is switched to the active slot, and the previous inactive partition is switched to the active partition, that is, the active partition.
S203: in the starting process of the user space, the upgrade package of the MCU in the folder of the active partition is programmed to the MCU by using the UDS protocol.
In response to the start of the user space, the firmware of the user space is upgraded, and the specific upgrade mode is that in the process of starting the user space, an upgrade package of the MCU in a folder of the active partition is programmed to the MCU by using a UDS protocol so as to upgrade the MCU, wherein the folder is used for storing the firmware of the SOC. Therefore, the method for the non-inductive upgrade provided by the embodiment of the application is to consider the MCU as the peripheral of the SOC, and the upgrade package of the MCU is regarded as the peripheral firmware of the SOC, and upgrade of the MCU is realized by upgrading the firmware. And the presence of the MCU is not exposed to the outside of the ECU.
Before starting slot switching, the upgrade package of the MCU is programmed to the inactive partition of the SOC and stored in a folder. After the slot position switching is started, the original inactive partition becomes an active partition, and the upgrade package of the MCU is stored in the folder of the SOC active partition.
It should be noted that, the MCU itself has a UDS standard upgrading function, and the MCU upgrading can be realized by using a UDS protocol to burn an MCU upgrading packet into the MCU, and technical support can be provided for the functions of diagnosing the whole ECU, etc.
Optionally, S204: in the starting process of the user space, other peripheral chips are upgraded by using upgrade interfaces of other peripheral chips according to upgrade packages of other peripheral chips.
The SOC may also be Chip by other peripherals. Similarly, in the starting process of the user space, the upgrade interfaces of other peripheral chips can be used to upgrade the other peripheral chips according to the upgrade package of the other peripheral chips. The upgrade interfaces of other peripheral chips can be customized by a specific Chip. Other peripheral chips' upgrade packages may also be stored in folders as firmware for the peripheral.
In some embodiments, other peripheral chips may be, for example, field programmable gate array (Field-Programmable Gate Array, FPGA) peripherals, or the like.
S205: and restarting the operating system in response to the restarting instruction, and finishing upgrading the MCU when the operating system is restarted successfully.
The restart operating system verifies the new version of the entire SOC to determine if the upgrade was successful. And when the operating system is restarted successfully, the upgrade package of the MCU is successfully programmed, the whole ECU is successfully upgraded, and the new version of the upgraded SOC operates normally.
It should be noted that, if the operating system fails to restart, step S106 in the embodiment shown in fig. 2 may be performed to determine whether the number of times of the operating system startup failure exceeds the upper limit of the failure number, and the subsequent steps are performed according to the determination result, and the specific content may refer to step S106 in the embodiment shown in fig. 2 and the subsequent steps thereof, which are not described herein.
According to the noninductive upgrading method provided by the embodiment of the application, the MCU is regarded as the SOC peripheral, and the upgrading package of the MCU is regarded as the firmware of the SOC peripheral and can be stored in the file folder for storing the firmware of the active partition of the SOC. Firmware is upgraded in the process of starting the user space of the SOC operating system, the firmware comprises an upgrade package of the MCU, and the firmware upgrade process can realize A/B noninductive upgrade of the MCU. And the MCU is an ECU component, and the MCU realizes the A/B noninductive upgrade, so that the ECU is considered to realize the A/B noninductive upgrade. Compared with the prior art, the MCU does not need to purchase corresponding functional modules for upgrading and increase the ROM storage capacity, thereby reducing the upgrading cost. And the MCU is not exposed to the outside of the ECU, and the MCU and other Chip peripherals capable of realizing upgrading can perfectly ensure the uniformity of the SOC software version. Furthermore, the upgrade of the MCU is performed by using the UDS protocol, so that technical support can be provided for the functions of diagnosing and the like of the whole ECU, and the non-inductive upgrade method provided by the embodiment of the application is beneficial to the wide application of the non-inductive upgrade of the ECU formed by combining the MCU and the SOC.
Fig. 4 is a schematic structural diagram of a non-inductive upgrade apparatus provided in an embodiment of the present application, which is applied to a system-on-chip SOC in an electronic control unit ECU, where the ECU further includes a micro control unit MCU. As shown in fig. 4, a non-inductive upgrade apparatus 400 provided in an embodiment of the present application includes:
the starting module 401 is configured to switch a starting slot to an inactive slot, and start a corresponding operating system from a designated slot in the inactive slot to start a user space of the operating system;
an upgrade module 402, configured to upgrade firmware of the user space in response to the start of the user space, where the firmware includes an upgrade package of the MCU;
and a restarting module 403, configured to restart the operating system in response to the restarting instruction, and complete the upgrade of the MCU when the operating system is restarted successfully.
In one possible design, the upgrade package of the MCU is stored in a folder of the SOC active partition, the folder stores firmware, and the active partition has a corresponding relationship with the active slot.
In one possible design, upgrade module 402 is specifically configured to:
in the starting process of the user space, the upgrade package of the MCU in the folder of the active partition is programmed to the MCU by using the UDS protocol.
Fig. 5 is a schematic structural diagram of another sensorless upgrade apparatus provided in an embodiment of the present application, and as shown in fig. 5, a sensorless upgrade apparatus 400 provided in an embodiment of the present application further includes: a judging module 405, where the judging module 405 is configured to:
judging whether the number of times of starting failure of the operating system exceeds the upper limit of the number of times of failure;
if yes, determining whether to switch the starting slot;
if not, restarting the corresponding operating system from the appointed slot in the inactive slots.
In one possible design, the determining module 405 is further configured to:
judging whether a valid inactive slot exists;
if yes, switching the starting slot to an effective inactive slot;
if not, recovering the operating system to finish the upgrade of the MCU.
In one possible design, upgrade module 402 is further configured to:
in the starting process of the user space, other peripheral chips are upgraded by using upgrade interfaces of other peripheral chips according to upgrade packages of other peripheral chips.
In one possible design, the start module 401 is further configured to:
and in response to the starting of the operating system, upgrading the kernel driver of the operating system.
The sensorless upgrade apparatus provided in the embodiment of the present application may perform corresponding steps of the sensorless upgrade method in the above method embodiment, and its implementation principle and technical effects are similar, and are not described herein again.
Fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application, as shown in fig. 6, the electronic device 500 may include: a processor 501, and a memory 502 communicatively coupled to the processor 501.
A memory 502 for storing a program. In particular, the program may include program code including computer-executable instructions.
The memory 502 may comprise high-speed RAM memory or may further comprise non-volatile memory (NoN-volatile memory), such as at least one disk memory.
The processor 501 is configured to execute computer-executable instructions stored in the memory 502 to implement the method for sensorless upgrade provided in the foregoing embodiments.
The processor 501 may be a central processing unit (Central Processing Unit, abbreviated as CPU), or an application specific integrated circuit (Application Specific Integrated Circuit, abbreviated as ASIC), or one or more integrated circuits configured to implement embodiments of the present application.
Alternatively, the memory 502 may be separate or integrated with the processor 501. When the memory 502 is a device separate from the processor 501, the electronic device 500 may further include:
a bus 503 for connecting the processor 501 and the memory 502. The bus may be an industry standard architecture (industry standard architecture, abbreviated ISA) bus, an external device interconnect (peripheral component, PCI) bus, or an extended industry standard architecture (extended industry standard architecture, EISA) bus, among others. Buses may be divided into address buses, data buses, control buses, etc., but do not represent only one bus or one type of bus.
Alternatively, in a specific implementation, if the memory 502 and the processor 501 are integrated on a chip, the memory 502 and the processor 501 may complete communication through an internal interface.
The present application also provides a computer-readable storage medium, which may include: 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, random Access Memory), a magnetic disk or an optical disk, and specifically, the computer-readable storage medium stores computer-executable instructions for performing the steps of the method in the above embodiments.
The present application also provides a computer program product comprising computer-executable instructions which, when executed by a processor, implement the steps of the methods of the above-described embodiments.
Other embodiments of the present application 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 application following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the application pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
It is to be understood that the present application 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 application is limited only by the appended claims.

Claims (10)

1. The non-inductive upgrading method is characterized by being applied to a system-on-chip (SOC) in an Electronic Control Unit (ECU), and the ECU further comprises a Micro Control Unit (MCU); the method comprises the following steps:
switching a starting slot to an inactive slot, and starting a corresponding operating system from a designated slot in the inactive slot to start a user space of the operating system;
updating firmware of the user space in response to the starting of the user space, wherein the firmware comprises an updating packet of the MCU;
and restarting the operating system in response to a restarting instruction, and finishing upgrading the MCU when the operating system is restarted successfully.
2. The method of claim 1, wherein the upgrade package of the MCU is stored in a folder of the SOC active partition, the folder storing the firmware, the active partition having a correspondence with an active slot.
3. The method of sensorless upgrade of claim 2 wherein the upgrading of the firmware of the user space in response to the user space startup comprises:
and in the starting process of the user space, using a UDS protocol to burn the upgrade package of the MCU in the folder of the active partition to the MCU.
4. A method of non-inductive upgrade according to any one of claims 1-3, wherein when the operating system reboots fails, further comprising:
judging whether the number of times of the starting failure of the operating system exceeds the upper limit of the number of times of failure;
if yes, determining whether to switch the starting slot position;
if not, restarting the corresponding operating system from the appointed slot position in the inactive slot positions.
5. The method of sensorless upgrade of claim 4 wherein the determining whether to switch the startup slots comprises:
judging whether the effective inactive slot position exists;
if yes, switching the starting slot to the effective inactive slot;
if not, recovering the operating system to finish upgrading the MCU.
6. The sensorless upgrade method of claim 2 further comprising:
and in the starting process of the user space, upgrading the other peripheral chips by using upgrading interfaces of the other peripheral chips according to the upgrading package of the other peripheral chips.
7. The method of claim 1, further comprising, prior to said launching the user space of the operating system:
and in response to the starting of the operating system, upgrading a kernel driver of the operating system.
8. The non-inductive upgrading device is characterized by being applied to a system-on-chip (SOC) in an Electronic Control Unit (ECU), and the ECU further comprises a Micro Control Unit (MCU); the device comprises:
the starting module is used for switching the starting slot position to an inactive slot position, and starting a corresponding operating system from a designated slot position in the inactive slot position so as to start a user space of the operating system;
the upgrading module is used for responding to the starting of the user space to upgrade the firmware of the user space, wherein the firmware comprises an upgrade package of the MCU;
and the restarting module is used for restarting the operating system in response to the restarting instruction, and finishing upgrading of the MCU when the operating system is successfully restarted.
9. An electronic device, comprising: a processor, and a memory communicatively coupled to the processor;
the memory stores computer-executable instructions;
the processor executes computer-executable instructions stored in the memory to implement the non-inductive upgrade method of any one of claims 1-7.
10. A computer readable storage medium having stored therein computer executable instructions which when executed by a processor are for implementing the non-inductive upgrade method according to any one of claims 1-7.
CN202311494359.4A 2023-11-09 2023-11-09 Non-inductive upgrade method, device, equipment and storage medium Pending CN117435225A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311494359.4A CN117435225A (en) 2023-11-09 2023-11-09 Non-inductive upgrade method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311494359.4A CN117435225A (en) 2023-11-09 2023-11-09 Non-inductive upgrade method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN117435225A true CN117435225A (en) 2024-01-23

Family

ID=89551353

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311494359.4A Pending CN117435225A (en) 2023-11-09 2023-11-09 Non-inductive upgrade method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN117435225A (en)

Similar Documents

Publication Publication Date Title
KR102356316B1 (en) Vehicle system, vehicle and method for operating such a vehicle system
KR101856284B1 (en) Backing up firmware during initialization of device
CN109408122B (en) Equipment starting method, electronic equipment and computer storage medium
CN108829449B (en) Method, device, equipment and medium for starting operating system by BIOS (basic input output System)
US11704198B2 (en) Method and apparatus for providing recovery from a computing device boot up error
CN113110891B (en) Firmware loading method and device for solid state disk, computer equipment and storage medium
CN110737449A (en) Method, apparatus, and machine-readable storage medium for processing device firmware
CN107220085B (en) Method for automatically upgrading RAID card firmware
CN113849272A (en) Method and device for adding GPU (graphics processing Unit) resources in virtual machine
CN110286953B (en) Method and device for starting embedded system, embedded device and storage medium
CN117435225A (en) Non-inductive upgrade method, device, equipment and storage medium
CN111913753A (en) Method and system for changing starting mode in cloud migration of windows system
CN110688130A (en) Physical machine deployment method, physical machine deployment device, readable storage medium and electronic equipment
CN110134456B (en) Method, apparatus, device and storage medium for managing operating system
CN116009899A (en) Mirror image making method and device of operating system, electronic equipment and storage medium
CN108829460A (en) The method, apparatus and car-mounted terminal of car-mounted terminal quick start
CN115658152A (en) Firmware upgrading method, firmware, electronic device and computer readable storage medium
CN113454608A (en) Update method for updating a motor vehicle computer to add additional functionality thereto
US9081727B2 (en) Method, apparatus and computer program for loading files during a boot-up process
CN114385255B (en) POS machine control method, POS machine control system, POS machine control device and computer readable medium
CN111857845B (en) Integrity verification method, device and system for TF card software
CN115145642B (en) Software starting method and system
CN112463244B (en) CPU starting method and device, electronic equipment and computer readable storage medium
CN110007973B (en) Information processing method and electronic equipment
CN117493079A (en) Method, device, equipment and storage medium for restarting vehicle-mounted system

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