A low-latency CAN communication method, system and storage medium
By determining the optimal transmission path for CAN message processing events in the CAN communication system, the problem of increased latency in multi-core systems is solved, and low-latency CAN communication is achieved.
Patent Information
- Application Number
- CN202310387321.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-12
- Publication Date
- 2026-02-17
- Estimated Expiration
- 2043-04-12
AI Technical Summary
The existing single-core CAN communication system suffers from increased system latency after adding computing power.
By responding to the CAN message processing events received from the application software group, the computational core and protocol type are read, the computational core of the CAN communication protocol stack is determined, the optimal transmission path is generated, and the rational path selection and data flow direction of the CAN message are realized.
This reduces system latency and improves the efficiency of CAN communication.
Smart Images

Figure CN116346529B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Embodiments of the present application relate to vehicle-mounted communication technology, and particularly relate to a low-delay CAN communication method and system and storage medium. BACKGROUND
[0002] Controller Area Network (CAN) communication is very common in vehicle control applications. In a vehicle control system, various vehicle controllers exchange data through CAN bus communication to achieve control of the vehicle. Therefore, each vehicle controller must have the ability to obtain data from the CAN bus and send data.
[0003] Currently, most vehicle controllers use single-core CAN communication systems. Due to the insufficient computing power of single-core, they are gradually shifting to multi-core applications. Although multi-core increases the computing power of the controller, it greatly increases system latency. SUMMARY
[0004] The present application provides a low-delay CAN communication method and system and storage medium to reduce system latency.
[0005] In a first aspect, embodiments of the present application provide a low-delay CAN communication method, comprising:
[0006] In response to the received CAN message processing event of the application software group, reading the operation core to which the application software group belongs and the protocol type to which the application software group belongs;
[0007] Determining the operation core to which the CAN communication protocol stack belongs;
[0008] Based on the protocol type to which the application software group belongs, and / or based on the operation core to which the application software group belongs and the operation core to which the CAN communication protocol stack belongs, generating a transmission path for the CAN message processing event;
[0009] Completing the CAN message processing event based on the transmission path.
[0010] Optionally, the operation core includes a CAN communication protocol stack, a data packet routing module, a communication interface module, and an application software group. The CAN communication protocol stack includes a CAN driver module, a CAN interface module, and a CAN transmission module. The generation of the transmission path for the CAN message processing event includes:
[0011] The CAN controller, the CAN driver module, the CAN interface module, the CAN transmission module, the data packet routing module, the communication interface module and the application software group are determined as the transmission path of the CAN message processing event, wherein the operation core where the CAN communication protocol stack is located is a first operation core, the data packet routing module, the communication interface module and the application software group corresponding to the first operation core are a first data packet routing module, a first communication interface module and a first application software group.
[0012] Optionally, the application software group belongs to a long data packet protocol type or a non-long data packet protocol type, and the transmission path of the CAN message processing event is generated based on the protocol type to which the application software group belongs, including:
[0013] If the protocol type to which the application software group belongs is the long data packet protocol type, the CAN controller, the CAN driver module, the CAN interface module, the CAN transmission module, the first data packet routing module, the first communication interface module and the first application software group are determined as the transmission path of the CAN message processing event.
[0014] If the protocol type to which the application software group belongs is the non-long data packet protocol type, the CAN controller, the CAN driver module, the CAN interface module, the first data packet routing module, the first communication interface module and the first application software group are determined as the transmission path of the CAN message processing event.
[0015] Optionally, the CAN message processing event is completed based on the transmission path, including:
[0016] When the protocol type to which the application software group belongs is the long data packet protocol type and the CAN message processing event is a CAN message receiving event, the CAN message data packet sent by the CAN controller is received through the CAN driver module, the CAN message data packet is sent to the CAN transmission module through the CAN interface module, the long data packet is generated by combining the CAN message data packet through the CAN transmission module and is sent to the first data packet routing module, the long data packet is obtained from the data packet routing module through the first communication interface module and is converted into a function signal, the function signal is obtained from the first communication interface module by the first application software group and the function calculation of the function signal is completed.
[0017] When the application software group belongs to a non-long data packet protocol type and the CAN message processing event is a CAN message receiving event, a CAN message data packet sent by a CAN controller is received through a CAN drive module, the CAN message data packet is sent to a CAN transmission module through a CAN interface module, the CAN message data packet is sent to a first data packet routing module by the CAN transmission module, the CAN message data packet is obtained from the first data packet routing module by a first communication interface module and converted into a function signal, and the function signal is obtained from the first communication interface module by a first application software group and the function of the function signal is calculated;
[0018] When the application software group belongs to a long data packet protocol type and the CAN message processing event is a CAN message sending event, a function signal sent by the first application software group is obtained through the first communication interface module, the function signal is converted into a long data packet and sent to the first data packet routing module, the long data packet is sent to the CAN transmission module by the first data packet routing module for splitting processing to generate a CAN message data packet, the CAN message data packet is obtained from the CAN transmission module by the CAN interface module and sent to the CAN drive module, the CAN message data is written into the CAN controller by the CAN drive module, and the CAN message data packet is sent out by the CAN controller.
[0019] When the application software group belongs to a non-long data packet protocol type and the CAN message processing event is a CAN message sending event, a function signal sent by the first application software group is obtained through the first communication interface module, the function signal is converted into a CAN message data packet and sent to the first data packet routing module, the CAN message data packet is obtained from the first data packet routing module by the CAN interface module, the CAN message data packet is obtained from the CAN interface module by the CAN drive module and written into the CAN controller, and the CAN message data packet is sent out by the CAN controller.
[0020] Optionally, the transmission path of the CAN message processing event is generated based on an operation core of the application software group and an operation core of the CAN communication protocol stack, and the transmission path comprises:
[0021] determining whether the operation core of the application software group corresponding to the CAN message processing event is the same as the operation core of the CAN communication protocol stack;
[0022] If the CAN message processing event corresponds to the application software group belongs to the same operation core and the CAN communication protocol stack belongs to the operation core, the CAN controller, CAN driver module, CAN interface module, CAN transmission module, data packet routing module, communication interface module and application software group are determined as the transmission path of the CAN message processing event.
[0023] If the CAN message processing event corresponds to the application software group belongs to the different operation core and the CAN communication protocol stack belongs to the operation core, the CAN controller, CAN driver module, CAN interface module, CAN transmission module, data packet routing module, communication interface module, application software group and the data storage block corresponding to the application software group belong to the operation core are determined as the transmission path of the CAN message processing event.
[0024] Optionally, the CAN message processing event based on the transmission path includes:
[0025] When the CAN message processing event corresponds to the application software group belongs to the different operation core and the CAN communication protocol stack belongs to the operation core, and the CAN message processing event is a CAN message receiving event, the CAN message data packet sent by the CAN controller is received through the CAN driver module, the CAN message data packet is sent to the CAN transmission module through the CAN interface module, the CAN message data packet is combined to generate a long data packet and sent to the first data packet routing module through the CAN transmission module, the long data packet is written into the second data storage block through the first data packet routing module, the long data packet is obtained from the second data storage block through the second data packet routing module, the long data packet is obtained from the second data packet routing module through the second communication interface module and converted into a function signal, and the function signal is obtained from the second communication interface module through the second application software group and the function calculation of the function signal is completed.
[0026] When the CAN message processing event corresponds to the application software group belonging to the operation core and the CAN communication protocol stack belongs to the operation core, and the CAN message processing event is a CAN message sending event, the second communication interface module obtains the function signal sent by the second application software group, converts the function signal into a long data packet and sends it to the second data packet routing module, the second data packet routing module writes the long data packet into the first data storage block, the first data packet routing module obtains the long data packet from the first data storage block, the CAN transmission module obtains the long data packet from the first data packet routing module and performs splitting processing on the long data packet, generates a CAN message data packet, the CAN interface module obtains the CAN message data packet from the CAN transmission module and sends it to the CAN drive module, and the CAN drive module writes the CAN message data into the CAN controller. The CAN controller sends out the CAN message data packet;
[0027] When the CAN message processing event corresponds to the application software group belonging to the operation core and the CAN communication protocol stack belongs to the operation core, and the CAN message processing event is a CAN message sending event, the first communication interface module obtains the function signal sent by the first application software group, converts the function signal into a long data packet and sends it to the first data packet routing module, the first data packet routing module sends the long data packet to the CAN transmission module for splitting processing, generates a CAN message data packet, the CAN interface module obtains the CAN message data packet from the CAN transmission module and sends it to the CAN drive module, the CAN drive module writes the CAN message data into the CAN controller, and the CAN controller sends out the CAN message data packet.
[0028] When the CAN message processing event corresponds to the application software group belonging to the operation core and the CAN communication protocol stack belongs to the operation core, and the CAN message processing event is a CAN message sending event, the first communication interface module obtains the function signal sent by the first application software group, converts the function signal into a long data packet and sends it to the first data packet routing module, the first data packet routing module sends the long data packet to the CAN transmission module for splitting processing, generates a CAN message data packet, the CAN interface module obtains the CAN message data packet from the CAN transmission module and sends it to the CAN drive module, the CAN drive module writes the CAN message data into the CAN controller, and the CAN controller sends out the CAN message data packet.
[0029] Wherein, the first data storage block is the data storage block corresponding to the first operation core, and the second data storage block is the data storage block corresponding to the non-first operation core with CAN message processing event demand.
[0030] Optionally, the CAN message processing event of the application software group is generated and triggered by an event or / and periodically generated and triggered.
[0031] In a second aspect, the embodiments of the present application further provide a low-latency CAN communication system, which implements the low-latency CAN communication method as described in any of the first aspect, and comprises a power supply, a monitor, a CAN transceiver and a controller; wherein the controller is electrically connected with the power supply, the monitor and the CAN transceiver, the power supply is electrically connected with the monitoring module and the CAN transceiver, and the monitor is electrically connected with the CAN transceiver.
[0032] The power supply is configured to provide safe power supply for the controller, the monitoring module and the transceiver.
[0033] The monitor is configured to monitor the power supply module, the controller and the CAN transceiver, and when at least one of the power supply module, the controller and the CAN transceiver produces a failure that is harmful to safety, control the entire system to enter a safe state and shut down the CAN transceiver.
[0034] The controller comprises at least two operation cores, a data storage, a program storage and a CAN controller, wherein the at least two operation cores are electrically connected with the data storage, the program storage and the CAN controller.
[0035] The at least two operation cores are configured to be responsible for running application software programs in the application software group.
[0036] The data storage is configured to store data required for program running, and comprises a plurality of data storage blocks, wherein the operation cores and the data storage blocks are in one-to-one correspondence.
[0037] The program storage is configured to store programs required for running the application software.
[0038] The CAN controller is configured to obtain CAN message data packets.
[0039] Optionally, the at least two operation cores comprise a CAN drive module, a CAN interface module, a CAN transmission module, a data packet routing module, a communication interface module and an application software group, wherein the CAN drive module, the CAN interface module and the CAN transmission module constitute a CAN communication protocol stack, and the CAN communication protocol stack is arranged in one of the at least two operation cores.
[0040] In a third aspect, the embodiments of the present application further provide a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the low-latency CAN communication method as described in any of the first aspect.
[0041] The application reads the operation core to which the application software group belongs and the protocol type to which the application software group belongs in response to the received CAN message processing event of the application software group, determines the operation core to which the CAN communication protocol stack belongs, generates the transmission path of the CAN message processing event based on the protocol type to which the application software group belongs and / or based on the operation core to which the application software group belongs and the operation core to which the CAN communication protocol stack belongs, and completes the CAN message processing event based on the transmission path. The transmission path of the CAN message processing event is generated based on the protocol type and the operation core to which the application software group belongs, reasonable path selection and data flow direction are realized, and the time delay of the system is reduced. BRIEF DESCRIPTION OF DRAWINGS
[0042] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the embodiments will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative effort.
[0043] Figure 1 is a flow chart of a low-delay CAN communication method provided by the first embodiment of the present application;
[0044] Figure 2 is a path diagram of a CAN message receiving event provided by the first embodiment of the present application;
[0045] Figure 3 is a path diagram of a CAN message sending event provided by the first embodiment of the present application;
[0046] Figure 4 is a structural schematic diagram of a low-delay CAN communication system provided by the second embodiment of the present application;
[0047] Figure 5 is a structural schematic diagram of an electronic device provided by the third embodiment of the present application. DETAILED DESCRIPTION
[0048] In order to make the technical personnel in the art better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely in the following with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative effort should belong to the scope of protection of the present application.
[0049] It should be noted that the terms "first", "second", and the like in the description and in the claims of the present application and the above-described drawings are used to distinguish similar objects, and do not necessarily have to be used to describe a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the application described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device that includes a series of steps or units does not have to be limited to only those steps or units clearly listed, but can include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0050] Embodiment one
[0051] Figure 1 is a flowchart of a low-latency CAN communication method provided by the first embodiment of the present application. The present embodiment can be applicable to the case of automobile communication. The method can be executed by a low-latency CAN communication system, which can be realized in the form of hardware and / or software. The low-latency CAN communication system can be configured in an electronic device such as a vehicle-mounted computer, a vehicle-mounted terminal, etc. As shown in Figure 1 , the method comprises:
[0052] S110, in response to the received CAN message processing event of the application software group, reading the operation core to which the application software group belongs and the protocol type to which the application software group belongs.
[0053] The application software group can be a set of one or more application software, which implements the whole vehicle application function and can receive or send function signals. For example, the power application software group, the chassis application software group, the vehicle body application software group, the cabin application software group, and the driving assistance application software group, etc. Here, no specific limitation is made, and vehicle-mounted software with CAN message processing event requirements can belong to the corresponding application software group. The CAN message processing event can be a CAN message receiving or sending event of the application software in the application software group.
[0054] The operation core can be a module responsible for running various software programs. The operation core to which the application software group belongs can be understood as a function module responsible for running one or more application software in the application software group. The protocol type can be the data packet type protocol of the application software in the application software group when transmitting and receiving CAN messages. Correspondingly, the protocol type to which the application software group belongs can be a long data packet protocol type or a non-long data packet protocol type. Optionally, the operation core to which the application software group belongs and the protocol type to which the application software group belongs can be read by a controller (multi-core microcontroller).
[0055] S120, determine the operation core to which the CAN communication protocol stack belongs.
[0056] The CAN communication protocol stack can be a module for uniformly processing CAN data, and the CAN communication protocol stack can be arranged in any one of the at least two operation cores, which will not be described here.
[0057] The operation core can include the CAN communication protocol stack, a data packet routing module, a communication interface module, and a group of application software. The CAN communication protocol stack can include a CAN driver module, a CAN interface module, and a CAN transmission module.
[0058] Optionally, the data packet routing module can be used to obtain data packets from the CAN interface module and / or the CAN transmission module, and through cooperation with the data packet routing modules in different operation cores, data communication between the group of application software and the CAN communication protocol stack in different operation cores can be realized. The communication interface module can be used for mutual conversion of CAN message data packets and function signals, and provides an interface for whether the signal is valid. The CAN driver module can be used for configuration of the CAN controller, writing of CAN message data packets into the CAN controller, or obtaining of CAN message data packets from the CAN controller. The CAN interface module can be used for CAN data field data, CAN message reception notification, CAN message sending notification, and hardware fault diagnosis supported by the CAN controller. The CAN transmission module can be used to split a long data packet into multiple CAN message data packets based on the protocol type of the group of application software, or combine multiple CAN message data packets into a long data packet.
[0059] Optionally, the operation core where the CAN communication protocol stack is located is a first operation core, and the data packet routing module, the communication interface module, and the group of application software corresponding to the first operation core are a first data packet routing module, a first communication interface module, and a first group of application software.
[0060] By taking the operation core where the CAN communication protocol stack is located as the first operation core, the transmission path of the CAN message processing event is clearer when it is generated.
[0061] S130, based on the protocol type of the group of application software, and / or based on the operation core to which the group of application software belongs and the operation core to which the CAN communication protocol stack belongs, a transmission path of a CAN message processing event is generated.
[0062] The transmission path of the CAN message processing event can be determined from the CAN controller, the CAN driver module, the CAN interface module, the CAN transmission module, the data packet routing module, the communication interface module, and the application software group.
[0063] Optionally, based on the protocol type of the application software group, the transmission path of the CAN message processing event can be: if the protocol type of the application software group is a long data packet protocol type, the CAN controller, the CAN driver module, the CAN interface module, the CAN transmission module, the first data packet routing module, the first communication interface module, and the first application software group are determined as the transmission path of the CAN message processing event.
[0064] If the protocol type of the application software group is a non-long data packet protocol type, the CAN controller, the CAN driver module, the CAN interface module, the first data packet routing module, the first communication interface module, and the first application software group are determined as the transmission path of the CAN message processing event.
[0065] The transmission path of the CAN message processing event and the CAN message receiving event is the same when the operation core of the application software group and the operation core of the CAN communication protocol stack are the same, and the direction is opposite when the operation core of the application software group and the operation core of the CAN communication protocol stack are different, i.e. the data packet routing module corresponding to the sending operation core writes the data packet into the data storage block corresponding to the receiving operation core, and the data packet routing module corresponding to the receiving operation core obtains the data packet from the corresponding data storage block.
[0066] By generating the transmission path of the CAN message processing event based on the protocol type of the application software group, different types of CAN message data packets are transmitted through the optimal path during transmission, reducing the system delay.
[0067] Optionally, based on the operation core of the application software group and the operation core of the CAN communication protocol stack, the transmission path of the CAN message processing event can be: determining whether the operation core of the application software group corresponding to the CAN message processing event is the same as the operation core of the CAN communication protocol stack.
[0068] If the application software group corresponding to the CAN message processing event belongs to the same operation core as the CAN communication protocol stack, the CAN controller, the CAN driver module, the CAN interface module, the CAN transmission module, the data packet routing module, the communication interface module and the application software group are determined as the transmission path of the CAN message processing event.
[0069] If the application software group corresponding to the CAN message processing event belongs to the different operation core as the CAN communication protocol stack, the CAN controller, the CAN driver module, the CAN interface module, the CAN transmission module, the data packet routing module, the communication interface module, the application software group and the data storage block corresponding to the application software group are determined as the transmission path of the CAN message processing event.
[0070] The data storage block can be a data storage area corresponding to each operation core on the data storage, and the number of data storage blocks is the same as the number of operation cores, and one-to-one correspondence. The first operation core, i.e. the data storage block corresponding to the operation core where the CAN communication protocol stack is located, can be the first data storage block. The data storage block corresponding to the application software group and the data packet routing module are the second data storage block and the second data packet routing module, which can be the data storage block and the data packet routing module corresponding to the non-first operation core with CAN message processing event requirements.
[0071] It should be noted that the generation of the transmission path of the CAN message processing event based on the protocol type of the application software group and the generation of the transmission path of the CAN message processing event based on the operation core of the application software group and the operation core of the CAN communication protocol stack can be performed simultaneously and in parallel.
[0072] For example, the transmission path of the CAN message processing event (receiving event) can be "CAN controller-CAN driver module-CAN interface module-CAN transmission module-first data packet routing module-first communication interface module-first application software group", "CAN controller-CAN driver module-CAN interface module-first data packet routing module-first communication interface module-first application software group", "CAN controller-CAN driver module-CAN interface module-CAN transmission module-first data packet routing module-second data storage block-second data packet routing module-second application software group", "CAN controller-CAN driver module-CAN interface module-first data packet routing module-second data storage block-second data packet routing module-second application software group", etc. The CAN message data packet between different types and different operation cores is transmitted through the optimal path in the transmission process, which reduces the system delay. This is only an example and is not limited.
[0073] Exemplarily, the transmission path of the CAN message processing event (a sending event) can be "a first application software group - a first communication interface module - a first data packet routing module - a CAN transmission module - a CAN interface module - a CAN driver module - a CAN controller", "a first application software group - a first communication interface module - a first data packet routing module - a CAN interface module - a CAN driver module - a CAN controller", "a second application software group - a second communication interface module - a second data packet routing module - a first data storage block - a first data packet routing module - a CAN transmission module - a CAN interface module - a CAN driver module - a CAN controller", "a second application software group - a second communication interface module - a second data packet routing module - a first data storage block - a first data packet routing module - a CAN interface module - a CAN driver module - a CAN controller", and the like, so that the CAN message data packets between different types and different operation cores are transmitted through the optimal path in the transmission process, and the system delay is reduced. Here, only examples are given, and no specific limitation is made.
[0074] The transmission path of the CAN message processing event is generated based on the operation core to which the application software group belongs and the operation core to which the CAN communication protocol stack belongs, so that the CAN message data packets between different operation cores are transmitted through the optimal path in the transmission process, and the system delay is further reduced.
[0075] S140, completing the CAN message processing event based on the transmission path.
[0076] The CAN message processing event can be completed based on the generated transmission path of the CAN message processing event, so that the CAN message data packets are directly converted into function signals, the application software group completes the function calculation of the function signals, and the CAN controller sends the CAN message data packets.
[0077] Optionally, when the CAN message processing event is a CAN message receiving event, completing the CAN message processing event based on the transmission path can include:
[0078] When the protocol type to which the application software group belongs is a long data packet protocol type, and the CAN message processing event is a CAN message receiving event, the CAN message data packets sent by the CAN controller are received through the CAN driver module, the CAN message data packets are sent to the CAN transmission module through the CAN interface module, the CAN message data packets are combined to generate a long data packet through the CAN transmission module, the long data packet is obtained from the data packet routing module through the first communication interface module and is converted into a function signal, the first application software group obtains the function signal from the first communication interface module and completes the function calculation of the function signal.
[0079] When the application software group belongs to the protocol type of non-long data packet protocol type, and the CAN message processing event is a CAN message receiving event, the CAN message data packet sent by the CAN controller is received through the CAN drive module, the CAN message data packet is sent to the CAN transmission module through the CAN interface module, the CAN message data packet is sent to the first data packet routing module by the CAN transmission module, the CAN message data packet is obtained from the first data packet routing module by the first communication interface module and converted into a function signal, and the function signal is obtained from the first communication interface module by the first application software group and the function calculation of the function signal is completed.
[0080] When the application software group belongs to the protocol type of non-long data packet protocol type, and the CAN message processing event is a CAN message receiving event, the CAN message data packet sent by the CAN controller is received through the CAN drive module, the CAN message data packet is sent to the CAN transmission module through the CAN interface module, the CAN message data packet is sent to the first data packet routing module by the CAN transmission module, the CAN message data packet is obtained from the first data packet routing module by the first communication interface module and converted into a function signal, and the function signal is obtained from the first communication interface module by the first application software group and the function calculation of the function signal is completed.
[0081] When the application software group belongs to the protocol type of non-long data packet protocol type, and the CAN message processing event is a CAN message receiving event, the CAN message data packet sent by the CAN controller is received through the CAN drive module, the CAN message data packet is sent to the CAN transmission module through the CAN interface module, the CAN message data packet is sent to the first data packet routing module by the CAN transmission module, the CAN message data packet is obtained from the first data packet routing module by the first communication interface module and converted into a function signal, and the function signal is obtained from the first communication interface module by the first application software group and the function calculation of the function signal is completed.
[0082] For example, see Figure 2When the CAN message processing event is a CAN message receiving event, when the CAN communication protocol stack and the application software group are in the same operation core, if the application software group 1 needs to use the received message, the CAN message receiving event triggers 201 -CAN driver module to read the CAN message from the CAN controller, to obtain the CAN message data packet, triggers 202 -CAN interface module to obtain the CAN message data packet from 201 -CAN driver module, when the received CAN message data packet and / or the application software group packet belongs to the long data packet protocol, 203 -CAN transmission module combines it into a long data packet and delivers it to 204 -data packet routing module 1, when the received CAN message data or the application software group packet does not belong to the long data packet protocol, 202 -CAN interface module directly delivers it to 204 -data packet routing module 1, 204 -data packet routing module 1 obtains the long data packet and the CAN message data packet from 203 -CAN transmission module and 202 -CAN interface module, 205 -communication interface module 1 obtains the CAN message data packet or the long data packet from 204 -data packet routing module 1 and converts it into a function signal, 206 -application software group 1 obtains the function signal from 205 -communication interface module 1 to complete its function calculation.
[0083] When the CAN communication protocol stack and the application software group are in different operation cores, if the application software group 2 needs to use the received message, the CAN receiving event triggers 201 -CAN driver module to read the CAN message from the CAN controller, to obtain the CAN message data packet, triggers 202 -CAN interface module to obtain the CAN message data packet from 201 -CAN driver module, when the received CAN message data and / or the application software group packet belongs to the long data packet protocol, 203 -CAN transmission module combines it into a long data packet and delivers it to 204 -data packet routing module, when the received CAN message data packet and / or the application software group does not belong to the long data packet protocol, 202 -CAN interface module directly delivers it to 204 -data packet routing module 1, 204 -data packet routing module 1 obtains the long data packet and the CAN message data packet from 203 -CAN transmission module and 202 -CAN interface module, and writes it into 214 -data storage block 2, 207 -data packet routing module 2 obtains the CAN message data packet or the long data packet from 214 -data storage block 2, 208 -communication interface module 2 obtains the CAN message data packet and the long data packet from 207 -data packet routing module 2 and converts it into a function signal, 209 -application software group 2 obtains the function signal from 205 -communication interface module 2 to complete its function calculation.
[0084] Optionally, when the CAN message processing event is a CAN message sending event, the CAN message processing event based on the transmission path can include:
[0085] When the application software group belongs to the long data packet protocol type, and the CAN message processing event is the CAN message sending event, the first communication interface module obtains the function signal sent by the first application software group, converts the function signal into a long data packet, and sends the long data packet to the first data packet routing module. The first data packet routing module sends the long data packet to the CAN transmission module for splitting processing of the long data packet to generate a CAN message data packet. The CAN interface module obtains the CAN message data packet from the CAN transmission module and sends it to the CAN drive module. The CAN drive module writes the CAN message data into the CAN controller, and the CAN controller sends out the CAN message data packet.
[0086] When the application software group belongs to the non-long data packet protocol type, and the CAN message processing event is the CAN message sending event, the first communication interface module obtains the function signal sent by the first application software group, converts the function signal into a CAN message data packet, and sends the CAN message data packet to the first data packet routing module. The CAN interface module obtains the CAN message data packet from the first data packet routing module. The CAN drive module obtains the CAN message data packet from the CAN interface module and writes it into the CAN controller. The CAN controller sends out the CAN message data packet.
[0087] When the application software group belongs to the non-long data packet protocol type, and the CAN message processing event is the CAN message sending event, the first communication interface module obtains the function signal sent by the first application software group, converts the function signal into a CAN message data packet, and sends the CAN message data packet to the first data packet routing module. The CAN interface module obtains the CAN message data packet from the first data packet routing module. The CAN drive module obtains the CAN message data packet from the CAN interface module and writes it into the CAN controller. The CAN controller sends out the CAN message data packet.
[0088] When the CAN message processing event corresponds to the same application software group as the CAN communication protocol stack, and the CAN message processing event is a CAN message sending event, the first communication interface module obtains the function signal sent by the first application software group, converts the function signal into a long data packet, and sends the long data packet to the first data packet routing module. The first data packet routing module sends the long data packet to the CAN transmission module for splitting processing to generate a CAN message data packet. The CAN interface module obtains the CAN message data packet from the CAN transmission module and sends it to the CAN drive module. The CAN drive module writes the CAN message data into the CAN controller, and the CAN controller sends out the CAN message data packet.
[0089] For example, referring to Figure 3 When the CAN message processing event is a CAN message sending event, and the CAN communication protocol stack and the application software group are in the same operation core, if the application software group 1 needs to send a message, the 205-communication interface module 1 obtains the function signal from the 206-application software group 1 and converts it into a CAN message data packet or a long data packet. The 204-data packet routing module 1 obtains the CAN message data packet or the long data packet from the 205-communication interface module 1. When sending a long data packet protocol, the 203-CAN transmission module obtains the long data packet and splits it into a CAN message data packet. The 202-CAN interface module obtains the CAN message data packet from the 204-data packet routing module 1 or the 203-CAN transmission module. The 201-CAN drive module obtains the CAN message data packet from the 202-CAN interface module and writes it into the 104-CAN controller. The 104-CAN controller sends out the CAN message data packet.
[0090] When the CAN communication protocol stack and the application software group are in different operation cores, if the application software group 2 needs to send a message, the 206-communication interface module 2 obtains the function signal from the 209-application software group 2 and converts it into a CAN message data packet or a long data packet. The 207-data packet routing module 2 obtains the CAN message data packet or the long data packet from the 208-communication interface module 2 and writes it into the 213-data storage block 1. The 204-data packet routing module 1 reads the CAN message data packet or the long data packet from the 213-data storage block 1. When sending a long data packet protocol, the 203-CAN transmission module obtains the long data packet and splits it into a CAN message data packet. The 202-CAN interface module obtains the CAN message data packet from the 204-data packet routing module 1 or the 203-CAN transmission module. The 201-CAN drive module obtains the CAN message data packet from the 202-CAN interface module and writes it into the 104-CAN controller. The 104-CAN controller sends out the CAN message data packet.
[0091] Optionally, the CAN message processing event of the application software group is generated and triggered or / and periodically generated and triggered.
[0092] By processing the CAN message processing event based on the transmission path of the determined CAN message processing event, the message transmission of different protocol types and the operation core can be transmitted in the optimal path, which greatly reduces the delay of the system.
[0093] The technical scheme of the embodiment, in response to the received CAN message processing event of the application software group, reads the operation core to which the application software group belongs and the protocol type to which the application software group belongs, determines the operation core to which the CAN communication protocol stack belongs, generates the transmission path of the CAN message processing event based on the protocol type to which the application software group belongs and / or based on the operation core to which the application software group belongs and the operation core to which the CAN communication protocol stack belongs, and completes the CAN message processing event based on the transmission path. By generating the transmission path of the CAN message processing event based on the protocol type and the operation core to which the application software group belongs, the rationalization of path selection and data flow direction is realized, and the time delay of the system is reduced.
[0094] Embodiment two
[0095] Figure 4 is a structure schematic diagram of a low-delay CAN communication system provided by the embodiment two of the application. As shown in the figure, Figure 4 the system comprises a power supply 001, a monitor 002, a CAN transceiver 003, and a controller 100; wherein the controller 100 is electrically connected with the power supply 001, the monitor 002, and the CAN transceiver 003, the power supply 001 is electrically connected with the monitor module 002 and the CAN transceiver 003, and the monitor 002 is electrically connected with the CAN transceiver 003;
[0096] The power supply 001 is used to provide safe power supply for the controller 100, the monitor module 002, and the transceiver 003.
[0097] The monitor 002 is used to monitor the power supply module 001, the controller 100, and the CAN transceiver 003, when at least one of the power supply module 001, the controller 100, and the CAN transceiver 003 produces a failure that endangers safety, the whole system is controlled to enter a safe state, and the CAN transceiver 003 is closed.
[0098] The controller 100 is composed of at least two operation cores 101, a data storage 102, a program storage 103, and a CAN controller 104, wherein the at least two operation cores 101 are electrically connected with the data storage 102, the program storage 103, and the CAN controller 104.
[0099] The at least two operation cores 100 are configured to run application software programs in the application software group.
[0100] The data storage 102 is configured to store data required for program running, and includes a plurality of data storage blocks, wherein the operation cores and the data storage blocks are in one-to-one correspondence.
[0101] The program storage 103 is configured to store programs required for running the application software.
[0102] The CAN controller 104 is configured to acquire CAN message data packets.
[0103] Optionally, the at least two operation cores 101 include a CAN drive module, a CAN interface module, a CAN transmission module, a data packet routing module, a communication interface module and an application software group, wherein the CAN drive module, the CAN interface module and the CAN transmission module constitute a CAN communication protocol stack, and the CAN communication protocol stack is arranged in one of the at least two operation cores.
[0104] For specific description, refer to the method embodiments, which will not be repeated here. The low-latency CAN communication system provided by the embodiments of the present application can execute the low-latency CAN communication method provided by any embodiment of the present application, and has the corresponding function modules and beneficial effects of executing the method.
[0105] Embodiment three
[0106] Figure 5 Fig. 1 is a structural schematic diagram of an electronic device according to an embodiment of the present application. The electronic device 10 is intended to represent various forms of digital computers, such as laptops, desktops, tablets, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular telephones, smart phones, wearable devices (such as headsets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not intended to limit the implementations of the present application described and / or claimed in this document.
[0107] As shown in Fig. 1, the electronic device 10 includes one or more processors 101, one or more memory devices 102, one or more communication interfaces 103, one or more input devices 104, and one or more output devices 105. These components can be communicatively coupled via one or more buses 106, which are used to facilitate communication between the various components. Figure 5As shown, the electronic device 10 includes at least one processor 11, and a memory, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., communicatively connected to the at least one processor 11, where the memory stores a computer program executable by the at least one processor. The processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or loaded into the random access memory (RAM) 13 from the storage unit 18. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0108] Various components in the electronic device 10 are connected to the I / O interface 15, including an input unit 16, such as a keyboard, a mouse, etc., an output unit 17, such as various types of displays, a speaker, etc., a storage unit 18, such as a magnetic disk, an optical disk, etc., and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network, such as the Internet, and / or various telecommunication networks.
[0109] The processor 11 can be various general and / or special-purpose processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 performs various methods and processes described above, such as the low-latency CAN communication method.
[0110] In some embodiments, the low-latency CAN communication method can be implemented as a computer program tangibly embodied in a computer readable storage medium, such as the storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or installed onto the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the low-latency CAN communication method described above can be performed. Alternatively, in other embodiments, the processor 11 can be configured to perform the low-latency CAN communication method by any other appropriate means, such as by means of firmware.
[0111] The various embodiments of the systems and techniques described above can be implemented in digital electronic circuitry, integrated circuitry, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system on a chip systems (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include implementation in one or more computer programs that are executable and / or interpretable on a programmable system including at least one programmable processor, which can be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
[0112] Computer programs used to implement the low-latency CAN communication method of the present application can be written in any combination of one or more programming languages. These computer programs can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the computer program running on the processor implements the functions / operations specified in the flowcharts and / or the block diagrams. The computer program can execute entirely on a machine, partly on a machine, partly on a machine and partly on a remote machine or entirely on a remote machine or server.
[0113] Embodiment Four
[0114] Embodiment Four of the present application also provides a computer readable storage medium, which stores computer instructions for causing a processor to execute a low-latency CAN communication method, the method comprising:
[0115] reading an operation core to which the application software group belongs and a protocol type to which the application software group belongs in response to a received CAN message processing event of the application software group;
[0116] determining an operation core to which the CAN communication protocol stack belongs;
[0117] generating a transmission path of the CAN message processing event based on the protocol type to which the application software group belongs, and / or based on the operation core to which the application software group belongs and the operation core to which the CAN communication protocol stack belongs;
[0118] completing the CAN message processing event based on the transmission path.
[0119] In the context of the present application, a computer-readable storage medium can be a tangible medium that can contain or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. A computer-readable storage medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium can be a machine-readable signal medium. More specific examples of a machine-readable storage medium will include one or more lines of a program of instructions in a transitory signal, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0120] To provide for interaction with a user, the systems and techniques described here can be implemented on an electronic device having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the electronic device. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.
[0121] The systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a user computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0122] The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system, to solve the defects of large management difficulty and weak business scalability in traditional physical host and VPS service.
[0123] It should be understood that the various forms of flow shown above can be used to reorder, add or delete steps. For example, each step described in the present application can be executed in parallel, sequentially or in a different order, as long as the desired results of the technical solutions of the present application can be achieved, which is not limited herein.
[0124] The above detailed description does not constitute a limitation on the protection scope of the present application. Those skilled in the art should understand that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modifications, equivalent replacements and improvements made within the spirit and principles of the present application shall be included in the protection scope of the present application.
Claims
1. A low-latency CAN communication method, characterized by, The application comprises the following steps: reading the operation core to which the application software group belongs and the protocol type to which the application software group belongs in response to the received CAN message processing event of the application software group; determining the operation core to which the CAN communication protocol stack belongs; generating the transmission path of the CAN message processing event based on the protocol type to which the application software group belongs and / or based on the operation core to which the application software group belongs and the operation core to which the CAN communication protocol stack belongs; completing the CAN message processing event based on the transmission path; wherein the protocol type to which the application software group belongs is a long data packet protocol type or a non-long data packet protocol type, and the transmission path of the CAN message processing event is generated based on the protocol type to which the application software group belongs, comprising: if the protocol type to which the application software group belongs is a long data packet protocol type, determining that the CAN controller, the CAN drive module, the CAN interface module, the CAN transmission module, the first data packet routing module, the first communication interface module and the first application software group are the transmission path of the CAN message processing event; if the protocol type to which the application software group belongs is a non-long data packet protocol type, determining that the CAN controller, the CAN drive module, the CAN interface module, the first data packet routing module, the first communication interface module and the first application software group are the transmission path of the CAN message processing event; wherein the transmission path of the CAN message processing event is generated based on the operation core to which the application software group belongs and the operation core to which the CAN communication protocol stack belongs, comprising: determining whether the operation core to which the application software group corresponding to the CAN message processing event belongs is the same as the operation core to which the CAN communication protocol stack belongs; if the operation core to which the application software group corresponding to the CAN message processing event belongs is the same as the operation core to which the CAN communication protocol stack belongs, determining that the CAN controller, the CAN drive module, the CAN interface module, the CAN transmission module, the data packet routing module, the communication interface module and the application software group are the transmission path of the CAN message processing event; if the operation core to which the application software group corresponding to the CAN message processing event belongs is not the same as the operation core to which the CAN communication protocol stack belongs, determining that the CAN controller, the CAN drive module, the CAN interface module, the CAN transmission module, the data packet routing module, the communication interface module, the application software group and the data storage block corresponding to the operation core to which the application software group belongs are the transmission path of the CAN message processing event.
2. The low-latency CAN communication method of claim 1, wherein, The operation core comprises the CAN communication protocol stack, the data packet routing module, the communication interface module and the application software group, the CAN communication protocol stack comprises the CAN drive module, the CAN interface module and the CAN transmission module, and the transmission path of the CAN message processing event is generated, comprising: Determine a plurality of CAN controller, CAN driver module, CAN interface module, CAN transmission module, data packet routing module, communication interface module and application software group, generate the transmission path of the CAN message processing event, wherein the operation core where the CAN communication protocol stack is located is the first operation core, the data packet routing module, the communication interface module and the application software group corresponding to the first operation core are the first data packet routing module, the first communication interface module and the first application software group.
3. The low-latency CAN communication method according to claim 1, wherein, The CAN message processing event is completed based on the transmission path, which comprises: When the protocol type of the application software group is a long data packet protocol type, and the CAN message processing event is a CAN message receiving event, the CAN message data packet sent by the CAN controller is received through the CAN driver module, the CAN message data packet is sent to the CAN transmission module through the CAN interface module, the long data packet is generated by combining the CAN message data packet through the CAN transmission module and sent to the first data packet routing module, the long data packet is obtained from the data packet routing module through the first communication interface module and converted into a function signal, and the function signal is obtained from the first communication interface module by the first application software group and the function calculation of the function signal is completed; When the protocol type of the application software group is a non-long data packet protocol type, and the CAN message processing event is a CAN message receiving event, the CAN message data packet sent by the CAN controller is received through the CAN driver module, the CAN message data packet is sent to the CAN transmission module through the CAN interface module, the CAN message data packet is sent to the first data packet routing module by the CAN transmission module, the CAN message data packet is obtained from the first data packet routing module by the first communication interface module and converted into a function signal, and the function signal is obtained from the first communication interface module by the first application software group and the function calculation of the function signal is completed; When the protocol type of the application software group is a long data packet protocol type, and the CAN message processing event is a CAN message sending event, the function signal sent by the first application software group is obtained through the first communication interface module, the function signal is converted into a long data packet and sent to the first data packet routing module, the long data packet is sent to the CAN transmission module for splitting processing by the first data packet routing module, the CAN message data packet is generated, the CAN message data packet is obtained from the CAN transmission module by the CAN interface module and sent to the CAN driver module, the CAN message data is written into the CAN controller by the CAN driver module, and the CAN message data packet is sent out by the CAN controller. When the CAN message processing event corresponds to an application software group, and the application software group belongs to a non-long data packet protocol type, and the CAN message processing event is a CAN message sending event, the first communication interface module obtains a function signal sent by the first application software group, converts the function signal into a CAN message data packet, and sends the CAN message data packet to the first data packet routing module; the CAN interface module obtains the CAN message data packet from the first data packet routing module; the CAN driving module obtains the CAN message data packet from the CAN interface module, and writes the CAN message data packet into the CAN controller; and the CAN controller sends out the CAN message data packet.
4. The low-latency CAN communication method of claim 1, wherein, The CAN message processing event is completed based on the transmission path, including: When the CAN message processing event corresponds to an application software group, and the application software group belongs to a non-long data packet protocol type, and the CAN message processing event is a CAN message sending event, the first communication interface module obtains a function signal sent by the first application software group, converts the function signal into a CAN message data packet, and sends the CAN message data packet to the first data packet routing module; the CAN interface module obtains the CAN message data packet from the first data packet routing module; the CAN driving module obtains the CAN message data packet from the CAN interface module, and writes the CAN message data packet into the CAN controller; and the CAN controller sends out the CAN message data packet. When the CAN message processing event corresponds to an application software group, and the application software group belongs to a non-long data packet protocol type, and the CAN message processing event is a CAN message sending event, the first communication interface module obtains a function signal sent by the first application software group, converts the function signal into a CAN message data packet, and sends the CAN message data packet to the first data packet routing module; the CAN interface module obtains the CAN message data packet from the first data packet routing module; the CAN driving module obtains the CAN message data packet from the CAN interface module, and writes the CAN message data packet into the CAN controller; and the CAN controller sends out the CAN message data packet. When the CAN message processing event corresponds to an application software group, and the application software group belongs to a non-long data packet protocol type, and the CAN message processing event is a CAN message sending event, the first communication interface module obtains a function signal sent by the first application software group, converts the function signal into a CAN message data packet, and sends the CAN message data packet to the first data packet routing module; the CAN interface module obtains the CAN message data packet from the first data packet routing module; the CAN driving module obtains the CAN message data packet from the CAN interface module, and writes the CAN message data packet into the CAN controller; and the CAN controller sends out the CAN message data packet. When the CAN message processing event corresponds to the application software group belonging to the same operation core as the CAN communication protocol stack, and the CAN message processing event is a CAN message sending event, the first communication interface module obtains the function signal sent by the first application software group, converts the function signal into a long data packet and sends it to the first data packet routing module, the first data packet routing module sends the long data packet to the CAN transmission module for splitting processing to generate a CAN message data packet, the CAN interface module obtains the CAN message data packet from the CAN transmission module and sends it to the CAN drive module, and the CAN drive module writes the CAN message data into the CAN controller, and the CAN controller sends out the CAN message data packet; When the CAN message processing event corresponds to the application software group belonging to the same operation core as the CAN communication protocol stack, and the CAN message processing event is a CAN message receiving event, the CAN drive module receives the CAN message data packet sent by the CAN controller, the CAN interface module sends the CAN message data packet to the CAN transmission module, the CAN transmission module combines the CAN message data packet to generate a long data packet and sends it to the first data packet routing module, the first communication interface module obtains the long data packet from the data packet routing module and converts it into a function signal, and the first application software group obtains the function signal from the first communication interface module and completes the function calculation of the function signal. The first data storage block is the data storage block corresponding to the first operation core, and the second data storage block is the data storage block corresponding to the non-first operation core with CAN message processing event requirements.
5. The low-latency CAN communication method according to any one of claims 1 to 4, characterized by, The CAN message processing event of the application software group is generated and triggered or / and periodically generated and triggered.
6. A low latency CAN communication system, characterized by The low-delay CAN communication method of any one of claims 1-5 is implemented, including a power supply, a monitor, a CAN transceiver, and a controller; wherein the controller is electrically connected with the power supply, the monitor, and the CAN transceiver, the power supply is electrically connected with the monitoring module and the CAN transceiver, and the monitor is electrically connected with the CAN transceiver. The power supply is configured to provide safe power supply for the controller, the monitoring module, and the transceiver. The monitor is configured to monitor the power supply module, the controller, and the CAN transceiver, and when at least one of the power supply module, the controller, and the CAN transceiver produces a failure that threatens safety, control the entire system to enter a safe state and shut down the CAN transceiver. The controller is composed of at least two operation cores, a data storage, a program storage, and a CAN controller, wherein the at least two operation cores are electrically connected with the data storage, the program storage, and the CAN controller. The at least two operation cores are configured to be responsible for running the application software programs in the application software group. The data storage is configured to store data required for program running, including a plurality of data storage blocks, wherein the operation cores and the data storage blocks are one-to-one corresponding. The program memory is used for storing programs required by the application software running; The CAN controller is used for obtaining CAN message data packets.
7. The low-latency CAN communication system of claim 6, wherein, The at least two operation cores comprise a CAN drive module, a CAN interface module, a CAN transmission module, a data packet routing module, a communication interface module and an application software group, wherein the CAN drive module, the CAN interface module and the CAN transmission module constitute a CAN communication protocol stack, and the CAN communication protocol stack is arranged in one of the at least two operation cores.
8. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to realize the low-delay CAN communication method according to any one of claims 1-5.
Citation Information
Patent Citations
DSP based Ethernet communication method in fault recording system
CN101707599A
A message processing method and device for multi-core network equipment
CN109714273A