Multi-core controller, data processing method thereof, electronic equipment and storage medium

By introducing an agent module to manage storage module access in the multi-core controller, the problem of storage module instability caused by the auxiliary core directly reading data is solved, ensuring the normal operation of the auxiliary core's basic functions.

CN120705093APending Publication Date: 2025-09-26CHONGQING JINKANG NEW ENERGY VEHICLE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510896083.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-30
Publication Date
2025-09-26

AI Technical Summary

Technical Problem

In a multi-core controller, the auxiliary core directly reads data from the storage module, resulting in poor stability of the storage module and prone to data loss, which affects the operation of the auxiliary core's basic functions.

Method used

An agent module is introduced into the main core to manage access to the storage module. The agent module reads data from the storage module and returns the reading results to the auxiliary core. The auxiliary core decides whether to perform local operations based on the return value and introduces a local preset value as a fallback execution value to avoid read failure.

Benefits of technology

It improves the stability of the storage module, ensures the basic functional operation of the auxiliary core, and avoids functional loss due to read failure.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120705093A_ABST
    Figure CN120705093A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of controllers, and discloses a multi-core controller and a data processing method thereof, electronic equipment and a storage medium, the multi-core controller comprises a main core and an auxiliary core, the main core comprises an agent module, the data processing method is applied to the main core, and the method comprises the following steps: in response to a reading request of the auxiliary core, calling the agent module to read a storage module; under the condition that a first return value representing the reading result is received, the agent module is called to send the first return value to the auxiliary core, so that the auxiliary core determines whether to execute local operation based on a local preset value or not based on the first return value. The data is read from the storage module through the agent module in the main core, so that the situation that the stability of the storage module is reduced due to the fact that multiple auxiliary cores access the storage module at the same time is avoided. According to the method, the local preset value is introduced as the bottom execution value, so that the deficiency of the basic function of the auxiliary core due to reading failure is avoided, and the operation of the basic function of the auxiliary core can be effectively guaranteed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of controller technology, and in particular to a multi-core controller and a data processing method thereof, an electronic device, and a storage medium. Background Art

[0002] A multi-core controller has a main core and at least one auxiliary core. The main core has a built-in storage module or an external storage module. Each auxiliary core reads the corresponding data directly from the storage module to perform local operations and realize the corresponding application functions. This makes the storage module less stable and prone to data loss, causing the auxiliary core to fail to read data and unable to guarantee the operation of the auxiliary core's basic functions. Summary of the Invention

[0003] In view of the above problems, the present application provides a multi-core controller and its data processing method, electronic device and storage medium, which are used to optimize the data reading process to improve the stability of the storage module and ensure the operation of the basic functions of the auxiliary core.

[0004] According to one aspect of the present application, a data processing method for a multi-core controller is provided, wherein the multi-core controller includes a main core and an auxiliary core, the main core includes an agent module, and the data processing method is applied to the main core, including: in response to a read request from the auxiliary core, calling the agent module to perform a read operation on the storage module; upon receiving a first return value representing a read result, calling the agent module to send the first return value to the auxiliary core, so that the auxiliary core determines, based on the first return value, whether to perform a local operation based on a local preset value.

[0005] In an optional manner, the auxiliary core includes multiple applications; the data processing method further includes: in response to a write request from a specified application in the auxiliary core, calling the proxy module to perform a write operation on the storage module; wherein the write request includes a write value; upon receiving a second return value representing a write result, calling the proxy module to return the second return value to the specified application, so that the specified application determines whether to perform a local operation based on the write value based on the write result represented by the second return value.

[0006] In an optional manner, the data processing method further includes: if the number of write requests received from the designated application within a first preset time period exceeds a preset number, restricting the write function of the designated application.

[0007] In an optional manner, the multi-core controller also includes a recording module; the data processing method also includes: in response to the read request, sending the read interface corresponding to the read request to the recording module, so that when the recording module receives the first return value generated by the storage module, it generates an operation and maintenance record reflecting the response status of the read request based on the read interface and the first return value.

[0008] In an optional manner, the data processing method also includes: when power-on is successful and the current request to be responded to is a write request, determining whether to respond to the current request to be responded to based on the historical return value; if the historical return value is the first return value and the read result indicates a successful read, responding to the current request to be responded to.

[0009] According to one aspect of the present application, a data processing method for a multi-core controller is provided, wherein the multi-core controller includes a main core and an auxiliary core, the main core includes a proxy module, and the data processing method is applied to the auxiliary core, including: initiating a read request to the main core, and detecting whether a first return value representing a read result fed back by the proxy module is received within a second preset time length; wherein the read request is a request representing a data read operation on a storage module; if the first return value is received within the second preset time length, and the read result of the first return value represents a successful read, then performing a local operation based on the received read value; wherein the read value is a value read by the proxy module from the storage module; if the first return value is received within the second preset time length, and the read result of the first return value represents a read failure, then performing a local operation based on a local preset value.

[0010] According to another aspect of the present application, a multi-core controller is provided, which includes a main core and an auxiliary core, and the main core includes a proxy module; the auxiliary core initiates a read request to the main core, and the main core calls the proxy module to perform a read operation on the storage module in response to the read request; the proxy module returns a first return value representing the read result to the auxiliary core, and the auxiliary core determines whether to perform a local operation based on a local preset value based on the first return value.

[0011] In an optional manner, the proxy module is used to determine the response order of each request according to the request time of each request; the proxy module is also used to record the number of write requests received from the same source within a first preset time period.

[0012] According to one aspect of the present application, an electronic device is provided, comprising: a controller; and a memory for storing one or more programs, wherein when the one or more programs are executed by the controller, the above-mentioned data processing method is executed.

[0013] According to one aspect of the present application, a computer-readable storage medium is further provided, on which computer-readable instructions are stored. When the computer-readable instructions are executed by a processor of a computer, the computer executes the above-mentioned data processing method.

[0014] According to one aspect of the present application, a computer program product or computer program is also provided, the computer program product or computer program including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the above-described data processing method.

[0015] This application uses a proxy module in the main core to read data from the storage module to avoid the situation where multiple auxiliary cores access the storage module at the same time, which may cause the stability of the storage module to decrease. The proxy module can return a first return value representing the read result to the corresponding auxiliary core, so that the auxiliary core can determine whether to perform a local operation based on the local preset value based on the first return value. This application introduces the local preset value as a fallback execution value to avoid the loss of basic functions of the auxiliary core due to read failure, thereby effectively ensuring the operation of the basic functions of the auxiliary core.

[0016] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] The accompanying drawings are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present application, and together with the specification, are used to explain the principles of the present application. Obviously, the drawings described below are only some embodiments of the present application, and it is clear that a person of ordinary skill in the art can derive other drawings based on these drawings without inventive effort.

[0018] Figure 1 This is a flow chart of a data processing method for a multi-core controller shown in an exemplary embodiment of the present application.

[0019] Figure 2 It is a structural diagram of a multi-core controller shown in an exemplary embodiment of the present application.

[0020] Figure 3 is based on Figure 1 The exemplary embodiment shown is a flow chart of another data processing method of a multi-core controller.

[0021] Figure 4 is based on Figure 1 、 Figure 3 A flowchart of another data processing method for a multi-core controller is shown in any one of the exemplary embodiments shown.

[0022] Figure 5 This is a schematic diagram of a data processing scenario of a multi-core controller shown in an exemplary embodiment of the present application.

[0023] Figure 6 is based on Figure 1 、 Figure 3 、 Figure 4 Any one of the exemplary embodiments shown in FIG. 1 is a flow chart of another data processing method for a multi-core controller.

[0024] Figure 7 This is a flowchart of another data processing method for a multi-core controller shown in an exemplary embodiment of the present application.

[0025] Figure 8 It is a structural diagram of a computer system of an electronic device shown in an exemplary embodiment of the present application. DETAILED DESCRIPTION

[0026] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. When the following description refers to the drawings, identical numerals in different figures represent identical or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.

[0027] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically separate entities. That is, these functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.

[0028] The flowcharts shown in the accompanying drawings are for illustrative purposes only and do not necessarily include all contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps may be decomposed, while others may be combined or partially combined. Therefore, the actual execution order may vary depending on the actual situation.

[0029] In this application, "plurality" refers to two or more. "And / or" describes the relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can mean: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally indicates that the related objects are in an "or" relationship.

[0030] A multi-core controller has a main core and at least one auxiliary core. The main core has a built-in storage module or an external storage module. Each auxiliary core reads the corresponding data directly from the storage module to perform local operations and realize the corresponding application functions. This makes the storage module less stable and prone to data loss, causing the auxiliary core to fail to read data and unable to guarantee the operation of the auxiliary core's basic functions.

[0031] To this end, one aspect of the present application provides a data processing method for a multi-core controller. Figure 1 , Figure 1 This is a flow chart of a data processing method for a multi-core controller, shown as an exemplary embodiment of the present application. The multi-core controller includes a primary core and a secondary core, the primary core includes an agent module, and the data processing method is applied to the primary core and includes at least steps S110 to S120, as detailed below: S110: In response to the read request of the auxiliary core, calling the proxy module to perform a read operation on the storage module.

[0032] The auxiliary core is the initiator of the read request. This application does not limit the number of auxiliary cores, and there can be multiple auxiliary cores.

[0033] The proxy module can be understood as a virtual program, such as a proxy application, within the primary core, or as a proxy port. It serves as a communication bridge between the primary and secondary cores, managing read requests from each secondary core. The primary core accesses relevant storage data from the storage module through the proxy module to prevent multiple secondary cores from directly accessing the storage module, which could lead to storage module instability. Interaction with the storage module through the proxy module ensures storage module stability.

[0034] like Figure 2 As shown, Figure 2 The main core and each auxiliary core can communicate with each other, and each auxiliary core can send a read request to the main core to read the storage data in the storage module connected to the main core. The storage module can be as follows: Figure 2 The device shown is external to the multi-core controller and can be considered a solid-state memory, such as a hard drive. When the multi-core controller is powered on, the primary core sequentially boots, initializes each module, and connects to the storage module. After the OS completes execution, it issues a synchronization boot command to the other secondary cores. Upon receiving the boot command, the secondary cores begin initialization. During initialization, the secondary cores read the values ​​in the storage module connected to the primary core.

[0035] S120 : Upon receiving a first return value representing a reading result, the proxy module is called to send the first return value to the auxiliary core, so that the auxiliary core determines whether to perform a local operation based on a local preset value based on the first return value.

[0036] The first return value includes a read result indicating a successful read and a read result indicating a failed read (e.g., 0x1 for a successful read and 0x2 for a failed read). The default local value is the auxiliary core's own value and serves as a fallback to prevent the auxiliary core's basic functions from being lost due to a read failure, effectively ensuring the operation of the auxiliary core's basic functions.

[0037] If the first return value is a read result indicating a successful read, the proxy module returns the first return value to the slave core and also returns the read value obtained from the storage module to the slave core. The slave core can determine whether the data read was successful or failed based on the first return value. If the read was successful, the slave core performs a local operation based on the read value; if the read failed, the slave core performs a local operation based on a preset value.

[0038] This embodiment uses a proxy module in the main core to read data from the storage module, thereby preventing multiple auxiliary cores from accessing the storage module simultaneously and causing a decrease in storage module stability. The proxy module can return a first return value representing the read result to the corresponding auxiliary core, so that the auxiliary core can determine whether to perform a local operation based on a local preset value based on the first return value. This embodiment introduces the local preset value as a fallback execution value to avoid the loss of basic auxiliary core functions due to read failures, thereby effectively ensuring the operation of the auxiliary core's basic functions.

[0039] In another exemplary embodiment, the main core can also respond to the write request of the auxiliary core. For details, please refer to Figure 3 , Figure 3 is based on Figure 1 The exemplary embodiment shown is a flow chart of another data processing method for a multi-core controller. Figure 1 Based on S110 to S120 shown, at least S310 to S320 are also included. The auxiliary core includes multiple applications, which are described in detail as follows: S310: In response to a write request from a designated application in the auxiliary core, calling an agent module to perform a write operation on a storage module; wherein the write request includes a write value.

[0040] Each slave core contains at least one application, and different applications can initiate read and write requests to the primary core. It's important to note that different applications in the same slave core cannot initiate read and / or write requests concurrently. They must initiate them sequentially, for example, sending requests to the primary core in the order they were initiated.

[0041] The proxy module in this embodiment has the functions of both reading and writing data. The proxy module can write the write value in the write request into the storage module so that the write value is used as storage data.

[0042] S320: Upon receiving the second return value representing the write result, the calling proxy module returns the second return value to the designated application, so that the designated application determines whether to perform a local operation based on the write value based on the write result represented by the second return value.

[0043] Similarly, the second return value includes a write result value indicating a successful write and a write result value indicating a write failure. For example, 0x3 indicates a successful write, and 0x4 indicates a write failure. The designated application in the auxiliary core can determine the success or failure of the data write based on the second return value. If the write is successful, the designated application in the auxiliary core performs local operations based on the written value; if the write fails, the auxiliary core stops executing local operations.

[0044] In some embodiments, the master core also monitors the number of write requests to avoid responding to frequent write requests from the same source. Specifically, if the number of write requests received from a specified application exceeds a preset number within a first preset time period, the write function of the specified application is restricted. By monitoring write requests from the same source and, if corresponding penalty conditions are met, restricting writes to the specified application, this ensures that the storage module is not frequently operated, thereby improving the stability of the storage module.

[0045] Among them, the first preset duration can be a preset number of proxy cycles. This application does not limit its specific duration, and it can be adaptively adjusted according to actual scenario requirements.

[0046] In another exemplary embodiment of the present application, how to record the corresponding situation of the relevant request is described in detail. Figure 4 , Figure 4 is based on Figure 1 、 Figure 3 A flowchart of another data processing method for a multi-core controller according to any of the exemplary embodiments shown in FIG. The data processing method further includes S410 ; wherein the multi-core controller further includes a recording module, which is described in detail as follows: S410: In response to a read request, the read interface corresponding to the read request is sent to the recording module, so that when the recording module receives the first return value generated by the storage module, it generates an operation and maintenance record reflecting the response status of the read request based on the read interface and the first return value.

[0047] The recording module can be a module independent of the main core and the auxiliary core, or it can be an application with a recording function placed in the main core or the related auxiliary core, and this application does not limit it.

[0048] like Figure 5 As shown, Figure 5 This is a schematic diagram of a data processing scenario for a multi-core controller, shown in an exemplary embodiment of the present application. RTE_Redata represents the read interface, RTE_Wrdata represents the write interface, and Return_code represents the return value, which can be either the first return value (i.e., a value indicating read success / failure) or the second return value (i.e., a value indicating write success / failure). Figure 5 The multi-core controller in Figure 1 The multi-core controller shown in FIG. 1 further includes a recording module. The proxy module can send the read interface corresponding to the read request to the recording module. The RTE layer between the proxy module and the storage module sends the obtained first return value to the recording module. The recording module can generate an operation and maintenance record that fully reflects the response status of the read request based on the read interface and the first return value. In some embodiments, the read value can also be sent to the recording module for recording.

[0049] Similarly, the recording module can also fully record the response status of the write request, referring to the recording method of the response status of the read request, which will not be repeated in this application.

[0050] This embodiment introduces a recording module to completely record the responses to read requests and write requests, so as to facilitate tracing relevant data during problem analysis and improve data traceability.

[0051] In another exemplary embodiment of the present application, a method for preventing data from being overwritten is described in detail. Figure 6 , Figure 6 is based on Figure 1 、 Figure 3 、 Figure 4 The exemplary embodiment shown in any one of the flowcharts of another multi-core controller data processing method. The data processing method at least includes S610 to S620, which are described in detail as follows: S610: When power-on is successful and the current pending request is a write request, determine whether to respond to the current pending request based on historical return values.

[0052] Each time the main core is powered on, if the current pending request (i.e., the request that needs to be responded to immediately after power-on) is a write request, it is necessary to analyze the operation request at the last power-off, that is, to determine whether the last operation request was a read request based on the historical return value, and thus determine whether to respond to the current pending request.

[0053] S620: If the historical return value is the first return value, and the read result indicates a successful read, respond to the current pending request.

[0054] If the historical return value is the second return value, it indicates that a data writing operation was performed on the storage module before the power was turned off last time. If a writing operation is performed on the storage module again, the last written data will be overwritten.

[0055] If the historical return value is the first return value and the read result indicates a successful read, it indicates that a data read operation was performed on the storage module before the last power-off, and the storage module includes valid data that can be read. If the current power-on is successful, a write request can be responded to to perform a write operation on the storage module.

[0056] By analyzing the historical return value after each power-on, it is determined whether to respond to the current pending request which is a write request, so as to avoid the valid data in the storage module being overwritten due to continuous write operations.

[0057] One aspect of the present application provides another data processing method for a multi-core controller applied to an auxiliary core. The data processing method has the same framework logic as any of the above data processing methods, and the only difference is the execution subject. Figure 7 , Figure 7 This is a flow chart illustrating another data processing method for a multi-core controller according to an exemplary embodiment of the present application. The multi-core controller includes a primary core and a secondary core, the primary core includes a proxy module, and the data processing method is applied to the secondary core, including at least steps S710 to S730, as detailed below: S710: Initiate a read request to the main core, and detect whether a first return value representing a read result fed back by the proxy module is received within a second preset time period; wherein the read request represents a request for performing a data read operation on the storage module.

[0058] In order to ensure the timeliness of the relevant return value, this embodiment of the auxiliary core has an invalidation monitoring mechanism, setting a second preset time to monitor the invalidation of the first return value. In some embodiments, the auxiliary core will also monitor the invalidation of the second return value corresponding to the relevant write request, which will not be repeated here.

[0059] The second preset duration can also be a preset number of proxy cycles, just like the first preset duration. This application does not limit its specific duration, nor does it limit the size relationship between the first preset duration and the second preset duration. They can both be adaptively adjusted according to actual scenario requirements.

[0060] S720: If a first return value is received within a second preset time period, and the reading result of the first return value indicates a successful reading, a local operation is performed based on the received read value; wherein the read value is a value read by the proxy module from the storage module.

[0061] If the first return value is a value indicating a successful read, the proxy module returns the first return value to the slave core and also returns the read value read from the storage module to the slave core.

[0062] S730: If the first return value is received within the second preset time period, and the reading result of the first return value indicates a reading failure, performing a local operation based on the local preset value.

[0063] If the first return value is a reading result indicating a reading failure, the pointer proxy module does not read the relevant data from the storage module. The proxy module only returns the first return value indicating a reading failure to the auxiliary core, without a reading value. The auxiliary core then performs local operations based on local preset values, thereby effectively ensuring the operation of the basic functions of the auxiliary core.

[0064] This embodiment uses a proxy module in the main core to read data from the storage module, thereby preventing multiple auxiliary cores from accessing the storage module simultaneously and causing a decrease in storage module stability. The proxy module can return a first return value representing the read result to the corresponding auxiliary core, so that the auxiliary core can determine whether to perform a local operation based on a local preset value based on the first return value. This embodiment introduces the local preset value as a fallback execution value to avoid the loss of basic auxiliary core functions due to read failures, thereby effectively ensuring the operation of the auxiliary core's basic functions.

[0065] Another aspect of the present application provides a multi-core controller, such as Figure 2 As shown, the multi-core controller includes a main core and an auxiliary core, and the main core includes an agent module.

[0066] The auxiliary core initiates a read request to the main core. In response to the read request, the main core calls the proxy module to perform a read operation on the storage module. The proxy module returns a first return value representing the read result to the auxiliary core. Based on the first return value, the auxiliary core determines whether to perform a local operation based on a local preset value.

[0067] In another exemplary embodiment, the proxy module is configured to determine a response order for each request based on the request time of each request. Specifically, the proxy module can prioritize related read requests and / or related write requests to avoid read / write conflicts caused by responding to multiple requests simultaneously, thereby preventing impacts on the stability of the main core and storage module. In certain embodiments, the proxy module includes a request queue for prioritizing responses to each request. Each received request is sequentially placed into the request queue based on its receipt time. The request queue then outputs related requests for response in a first-in, first-out manner, thereby achieving prioritized responses to each request.

[0068] The proxy module is further configured to record the number of write requests received from the same source within a first preset time period. If the number of write requests received from the same source within the first preset time period exceeds a preset number, the write function of the source (the source slave core or an application in the slave core) is restricted.

[0069] In another exemplary embodiment, Figure 5 As shown, the multi-core controller also includes a recording module for completely recording the response status of read requests and write requests, so as to facilitate tracing relevant data during problem analysis and improve data traceability.

[0070] Another aspect of the present application provides an electronic device, comprising: a controller; and a memory for storing one or more programs, which, when executed by the controller, executes the above-mentioned data processing method.

[0071] See also Figure 8 , Figure 8 1 is a structural diagram of a computer system of an electronic device shown in an exemplary embodiment of the present application, which shows a structural diagram of a computer system of an electronic device suitable for implementing an embodiment of the present application.

[0072] It should be noted that Figure 8 The computer system 800 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0073] like Figure 8 As shown, the computer system 800 includes a central processing unit (CPU) 801, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 802 or the program loaded from the storage part 808 to the random access memory (RAM) 803, such as executing the method in the above embodiment. Various programs and data required for system operation are also stored in the RAM 803. The CPU 801, ROM 802 and RAM 803 are connected to each other via a bus 804. An input / output (I / O) interface 805 is also connected to the bus 804.

[0074] The following components are connected to the I / O interface 805: an input section 806 including a keyboard, a mouse, and the like; an output section 807 including devices such as a cathode ray tube (CRT), a liquid crystal display (LCD), and a speaker; a storage section 808 including a hard disk and the like; and a communication section 809 including a network interface card such as a LAN (Local Area Network) card or a modem. The communication section 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the I / O interface 805 as needed. Removable media 811, such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, is installed in the drive 810 as needed, so that computer programs read therefrom can be installed into the storage section 808 as needed.

[0075] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 809, and / or installed from a removable medium 811. When the computer program is executed by the central processing unit (CPU) 801, the various functions defined in the system of the present application are executed.

[0076] It should be noted that the computer-readable medium shown in the embodiments of the present application can be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium can be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In the present application, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, which carries a computer-readable computer program. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. A computer program embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, or any suitable combination thereof.

[0077] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present application. Among them, each box in the flowchart or block diagram can represent a module, program segment, or part of the code, and the above-mentioned module, program segment, or part of the code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0078] The units involved in the embodiments described in this application may be implemented by software or hardware, and the units described may also be set in a processor. In some cases, the names of these units do not constitute limitations on the units themselves.

[0079] Another aspect of the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the aforementioned data processing method. The computer-readable storage medium may be included in the electronic device described in the above embodiments, or may exist independently and not be incorporated into the electronic device.

[0080] Another aspect of the present application further provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the data processing method provided in each of the above embodiments.

[0081] According to one aspect of an embodiment of the present application, a computer system is further provided, including a central processing unit (CPU), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) or a program loaded from a storage portion into a random access memory (RAM), such as executing the method in the above embodiment. Various programs and data required for system operation are also stored in the RAM. The CPU, ROM, and RAM are connected to each other via a bus. An input / output (I / O) interface is also connected to the bus.

[0082] The following components are connected to the I / O interface: an input section including a keyboard, mouse, etc.; an output section including a cathode ray tube (CRT), liquid crystal display (LCD), and speakers; a storage section including a hard disk; and a communication section including a network interface card such as a LAN (Local Area Network) card and a modem. The communication section performs communication processing via a network such as the Internet. A drive is also connected to the I / O interface as needed. Removable media such as magnetic disks, optical disks, magneto-optical disks, semiconductor memories, etc. are installed in the drive as needed so that computer programs read from them can be installed into the storage section as needed.

[0083] The above content is only a preferred exemplary embodiment of the present application and is not intended to limit the implementation scheme of the present application. Ordinary technicians in this field can easily make corresponding changes or modifications based on the main ideas and spirit of the present application. Therefore, the scope of protection of the present application shall be based on the scope of protection required by the claims.

Claims

1. A data processing method for a multi-core controller, characterized in that: The multi-core controller includes a main core and an auxiliary core, the main core includes an agent module, and the data processing method is applied to the main core, including: In response to the read request of the auxiliary core, calling the proxy module to perform a read operation on the storage module; When a first return value representing a reading result is received, the proxy module is called to send the first return value to the auxiliary core, so that the auxiliary core determines whether to perform a local operation based on a local preset value based on the first return value.

2. The data processing method according to claim 1, characterized in that: The auxiliary core includes multiple applications; the data processing method further includes: In response to a write request from a specified application in the auxiliary core, calling the proxy module to perform a write operation on the storage module; wherein the write request includes a write value; When a second return value representing a write result is received, the proxy module is called to return the second return value to the designated application, so that the designated application determines whether to perform a local operation based on the write value based on the write result represented by the second return value.

3. The data processing method according to claim 2, characterized in that: The data processing method further includes: If the number of write requests received from the designated application within a first preset time period exceeds a preset number, the write function of the designated application is restricted.

4. The data processing method according to claim 1, characterized in that: The multi-core controller further includes a recording module; and the data processing method further includes: In response to the read request, the read interface corresponding to the read request is sent to the recording module, so that when the recording module receives the first return value generated by the storage module, it generates an operation and maintenance record reflecting the response status of the read request based on the read interface and the first return value.

5. The data processing method according to any one of claims 1 to 4, characterized in that: The data processing method further includes: If the power is on successfully and the current pending request is a write request, determine whether to respond to the current pending request based on the historical return value; If the historical return value is the first return value and the read result indicates a successful read, the current pending request is responded to.

6. A data processing method for a multi-core controller, characterized in that: The multi-core controller includes a main core and an auxiliary core, the main core includes an agent module, and the data processing method is applied to the auxiliary core, including: Initiating a read request to the main core and detecting whether a first return value representing a read result fed back by the proxy module is received within a second preset time period; wherein the read request represents a request for performing a data read operation on the storage module; If the first return value is received within the second preset time period, and the reading result of the first return value indicates a successful reading, performing a local operation based on the received read value; wherein the read value is a value read by the proxy module from the storage module; If the first return value is received within the second preset time period, and the reading result of the first return value indicates a reading failure, a local operation is performed based on a local preset value.

7. A multi-core controller, characterized in that: The multi-core controller includes a main core and an auxiliary core, and the main core includes an agent module; The auxiliary core initiates a read request to the main core, and the main core calls the proxy module to perform a read operation on the storage module in response to the read request; The proxy module returns a first return value representing the reading result to the auxiliary core, and the auxiliary core determines whether to perform a local operation based on a local preset value based on the first return value.

8. The multi-core controller according to claim 7, characterized in that: The proxy module is used to determine the response order of each request according to the request time of each request; the proxy module is also used to record the number of write requests received from the same source within a first preset time period.

9. An electronic device, characterized in that: include: Controller; A memory for storing one or more programs, which, when executed by a controller, enables the controller to implement the data processing method according to any one of claims 1 to 6.

10. A computer-readable storage medium, characterized in that Computer-readable instructions are stored thereon, and when the computer-readable instructions are executed by a processor of a computer, the computer is caused to execute the data processing method according to any one of claims 1 to 6.