Data transmission method and device, traffic vehicle and storage medium

By adding an interface with the same programming language as the Someip protocol stack in the Zhijia domain controller, the problem of inefficient cross-language interface call during deserialization is solved, and more efficient data transmission and lower controller consumption is achieved.

CN120010959APending Publication Date: 2025-05-16GUANGZHOU AUTOMOBILE GROUP CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510021678.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-06
Publication Date
2025-05-16

AI Technical Summary

Technical Problem

In the smart domain controller in the automotive field, the Someip protocol stack is located in the C/C++ layer. When the data subscribed by the application is more complicated, the deserialization process requires a large number of calls to cross-language interfaces, resulting in inefficiency and increasing the consumption of the controller.

Method used

Provide a data transmission method. By adding a first designated interface and a second designated interface that adopts the same programming language as the designated protocol stack, the application can directly call these interfaces to send subscription requests and receive data to the protocol stack, and perform deserialization processing to avoid cross-language interface calls.

Benefits of technology

Improves the efficiency of deserialization processing, reduces the consumption of the controller, and improves the performance of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120010959A_ABST
    Figure CN120010959A_ABST
Patent Text Reader

Abstract

The invention discloses a data transmission method and device, a traffic carrier and a storage medium. The method comprises the following steps: calling a first specified interface to send a first subscription request to a specified protocol stack, wherein the first specified interface and the specified protocol stack are both realized based on a first programming language; obtaining first target data corresponding to the target service sent by the specified protocol stack; and calling a second specified interface to perform deserialization processing on the first target data to obtain first deserialized data, the second specified interface being also realized based on the first programming language. According to the technical scheme provided by the embodiment of the invention, the first specified interface, the second specified interface and the specified protocol stack are all realized by adopting the same programming language, and a cross-language interface does not need to be called in the deserialization processing process of the first target data, so that the deserialization processing efficiency can be improved, and moreover, the deserialization processing efficiency is improved. And the consumption of the controller is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of data transmission, and in particular to a data transmission method, device, transportation vehicle and storage medium. Background Art

[0002] In the automotive field, intelligent driving domain controllers and cockpit domain controllers popularly use the Someip protocol of Ethernet to transmit large amounts of data, especially the rendering data of intelligent driving models.

[0003] Specifically, the application call in the intelligent driving domain controller subscribes to events from the Someip protocol stack through an interface package implemented based on the Java language. After obtaining the byte type data, it deserializes it and serializes the above byte type data into structured Java Class data.

[0004] However, the Someip protocol stack is located at the C / C++ layer. When the data subscribed by the application is complex, its deserialization process requires a large number of cross-language interface calls, resulting in low efficiency in deserialization of data and increased consumption of the controller. Summary of the invention

[0005] The present application proposes a data transmission method, device, transportation vehicle and storage medium.

[0006] In a first aspect, an embodiment of the present application provides a data transmission method, including: calling a first designated interface to send a first subscription request to a designated protocol stack, the designated protocol stack subscribing to a target service based on the first subscription request, the first designated interface and the designated protocol stack both being implemented based on a first programming language; obtaining first target data corresponding to the target service sent by the designated protocol stack; calling a second designated interface to deserialize the first target data to obtain first deserialized data, the second designated interface also being implemented based on the first programming language.

[0007] In a second aspect, an embodiment of the present application provides a data transmission device, which includes: a data subscription module, which is used to call a first specified interface to send a first subscription request to a specified protocol stack, the specified protocol stack subscribes to a target service based on the first subscription request, and the first specified interface and the specified protocol stack are both implemented based on a first programming language; a data acquisition module, which is used to acquire first target data corresponding to the target service sent by the specified protocol stack; a deserialization module, which is used to call a second specified interface to deserialize the first target data to obtain first deserialized data, and the second specified interface is also implemented based on the first programming language.

[0008] In a third aspect, an embodiment of the present application provides a controller comprising: a specified protocol layer, a first specified interface, a second specified interface, and at least one application; the specified protocol layer, the first specified interface, and the second specified interface are all implemented based on a first programming language; there is a target application in at least one application; the target application is configured to execute the method of the first aspect.

[0009] In a fourth aspect, an embodiment of the present application provides a transportation vehicle, comprising: a controller as described in the third aspect.

[0010] In the fifth aspect, an embodiment of the present application provides a transportation vehicle, comprising: a memory; one or more processors coupled to the memory; one or more programs, wherein one or more applications are stored in the memory and configured to be executed by one or more processors, and the one or more programs are configured to execute the method described in the first aspect.

[0011] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium, in which computer program instructions are stored. The computer program instructions can be called by a processor to execute the method described in the first aspect.

[0012] In a seventh aspect, an embodiment of the present application provides a computer program product, which, when instructions in the computer program product are executed, is used to implement the method described in the first aspect.

[0013] Compared with the prior art, the technical solution provided in the embodiment of the present application is additionally provided with a first designated interface that uses the same programming language as the designated protocol stack. The application can call the first designated interface to send a first subscription request to the designated protocol stack, and receive the first target data sent by the designated protocol stack, and then call the second designated interface to deserialize the first target data to obtain the first deserialized data. Since the first designated interface, the second designated interface, and the designated protocol stack are all implemented in the same programming language, there is no need to call the cross-language interface in the process of deserializing the first target data, thereby improving the efficiency of the deserialization processing and reducing the consumption of the controller. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.

[0015] Figure 1 It is a structural block diagram of a controller provided by the related technology.

[0016] Figure 2 It is a schematic diagram of an implementation environment provided by an embodiment of the present application.

[0017] Figure 3 This is a structural block diagram of an intelligent driving domain controller provided by an embodiment of the present application.

[0018] Figure 4 This is a flowchart of a data transmission method provided by an embodiment of the present application.

[0019] Figure 5 This is a flowchart of a data transmission method provided by another embodiment of the present application.

[0020] Figure 6 This is a flowchart of a data transmission method provided by another embodiment of the present application.

[0021] Figure 7 This is a flowchart of a data transmission method provided by another embodiment of the present application.

[0022] Figure 8 It is a block diagram of a data transmission device provided by an embodiment of the present application.

[0023] Fig. 9 This is a structural block diagram of a transportation vehicle provided in one embodiment of the present application. DETAILED DESCRIPTION

[0024] The embodiments of the present application are described in detail below, and examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present application, and cannot be understood as limiting the present application.

[0025] In order to enable those skilled in the art to better understand the solutions of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without making creative work are within the scope of protection of the present application.

[0026] Combined with reference Figure 1, which shows a structural diagram of a domain controller 100 provided by the related art. In the related art, the operating system of the domain controller 100 includes a SOMEIP protocol stack of a C / C++ layer, an application of a Java layer, a Java interface package of the SOMEIP protocol stack (SOAlib Java interface library), and the SOMEIP protocol stack includes a deserialization library. Among them, the bottom APK of the application includes a data subscription module, a JSON data conversion module, and a graphic animation engine.

[0027] In the related art, the data subscription module in the bottom APK of the application calls the Java interface package of the SOMEIP protocol stack to subscribe to the event, and after obtaining the byte type data, it deserializes it and serializes the byte type data into structured Java Class data. In the case that the data subscribed by the application is complex, the deserialization process requires a large number of cross-language interface calls, resulting in low efficiency in deserialization of the data and increased consumption of the controller.

[0028] Based on the above problems, an embodiment of the present application provides a data transmission solution, which is additionally provided with a first designated interface that uses the same programming language as the designated protocol stack. The application can call the first designated interface to send a first subscription request to the designated protocol stack, and receive the first target data sent by the designated protocol stack, and then call the second designated interface to deserialize the first target data to obtain first deserialized data. Since the first designated interface, the second designated interface, and the designated protocol stack are all implemented in the same programming language, in the process of deserializing the first target data, there is no need to call the cross-language interface, thereby improving the efficiency of the deserialization processing and reducing the consumption of the controller.

[0029] Please refer to Figure 2 , which shows a schematic diagram of an implementation environment shown in an embodiment of the present application. The implementation environment includes a transportation vehicle 20. The transportation vehicle 20 can be a vehicle or an aircraft. In the embodiment of the present application, only the transportation vehicle 20 is taken as an example for explanation. The transportation vehicle 20 includes multiple domain controllers, such as a cockpit domain controller, a power domain controller, a chassis domain controller, a body domain controller, an intelligent driving domain controller, and the like.

[0030] Taking the intelligent driving domain controller as an example, its operating system includes a part implemented based on the first programming language and a part implemented based on the second programming language; the part implemented based on the first programming language is provided with a designated protocol stack, and the designated protocol stack includes a deserialization library; the part implemented based on the second programming language includes at least one application. In an embodiment of the present application, an interface library based on the first programming language is added to the intelligent driving domain controller, and a first subscription module that can call the interface based on the first programming language is added to the APK of the application. Therefore, the application can call the interface in the interface library based on the first programming language to implement data subscription and deserialization processing. Since the interface called by the application and the designated protocol stack are both implemented based on the first programming language, there is no need to call the cross-language interface in the process of deserializing the data subscribed by the application, thereby improving the efficiency of the deserialization processing and reducing the consumption of the controller.

[0031] Combine the following Figure 3 The structure of the intelligent driving domain controller 200 is explained by way of example, wherein the operating system of the intelligent driving domain controller 200 is the Android system, the first programming language is the C / C++ language, the part implemented based on the first programming language is the C / C++ layer, the C / C++ layer includes the SOMEIP protocol stack, and an interface library (SOAlibC / C++ interface library) implemented based on the C / C++ language, the interface library includes a first subscription interface and a first deserialization interface, and similarly, a first subscription module that can call the above-mentioned first subscription interface is added to the underlying APK of the application. In addition, the underlying APK of the application also includes a graphics animation engine implemented based on the C / C++ language. After the first subscription module calls the first subscription interface to obtain byte-type data, it deserializes it to obtain C++Struct structure data, and the above-mentioned C++Struct structure data can be directly input into the graphics animation engine and rendered and displayed by the graphics animation engine.

[0032] In some embodiments, the intelligent driving domain controller 200 further includes an interface library implemented based on a second programming language, and the APK of the application includes a second subscription module that can call an interface implemented based on the second programming language. Please refer again Figure 3 The second programming language is JAVA, the part implemented based on the second programming language is the Java layer, the Java layer includes an interface library (SOAlib Java interface library) implemented based on the Java language, and the interface library includes a second subscription interface and a second deserialization interface. The bottom APK of the application includes a second subscription module, and after the second subscription module calls the second subscription interface to obtain byte type data, it deserializes it to obtain Java Class structure data.

[0033] Please refer to Figure 4 , which shows a flow chart of a data transmission method shown in an embodiment of the present application. The method includes the following process.

[0034] S401: Call a first designated interface to send a first subscription request to a designated protocol stack.

[0035] The specified protocol stack subscribes to the target service based on the first subscription request. The first subscription request generally includes a unique identifier of the first subscription request, a client identifier, a name of the target service, a Someip protocol version, a message type of the first subscription request, and the like.

[0036] In an embodiment of the present application, the first designated interface and the designated protocol stack are implemented based on a first programming language, and optionally, the first programming language is C / C++ language. That is, the first designated interface is a data subscription interface implemented based on C / C++ language. Optionally, the designated protocol stack is a Someip protocol stack. That is, the application calls the data subscription interface implemented based on C / C++ language to subscribe to the Someip protocol stack for relevant data of the target event.

[0037] S402: Acquire first target data corresponding to the target service sent by the specified protocol stack.

[0038] The first target data is byte type data.

[0039] S403, calling the second designated interface to perform deserialization processing on the first target data to obtain first deserialized data.

[0040] In the embodiment of the present application, the second designated interface is also implemented based on the first programming language, so in the process of deserializing the target data, there is no need to call the cross-language interface, thereby improving the efficiency of the deserialization process and reducing the consumption of the controller. When the first programming language is C / C++, the second designated interface is a deserialization interface implemented based on C / C++.

[0041] Serialization refers to the process of converting a data structure or object into a binary byte stream, while deserialization refers to the process of restoring the binary byte stream to the original data structure or object. When the first programming language is C / C++, deserialization refers to the process of converting the first target data of byte type into Struct structure data of C / C++ language (i.e., the first deserialized data).

[0042] To sum up, the technical solution provided by the embodiment of the present application adds a first designated interface and a second designated interface that use the same programming language as the designated protocol stack in the application. The application calls the first designated interface to send a first subscription request to the designated protocol stack, and receives the first target data sent by the designated protocol stack, and then calls the second designated interface to deserialize the first target data to obtain first deserialized data. Since the first designated interface, the second designated interface, and the designated protocol stack are all implemented in the same programming language, there is no need to call the cross-language interface in the process of deserializing the first target data, thereby improving the efficiency of the deserialization processing and reducing the consumption of the controller.

[0043] Please refer to Figure 5 , which shows a flow chart of a data transmission method provided by an embodiment of the present application. The method includes the following process.

[0044] S501: Call a first designated interface to send a first subscription request to a designated protocol stack.

[0045] The designated protocol stack subscribes to the target service based on the first subscription request. The first designated interface and the designated protocol stack are both implemented based on the first programming language.

[0046] S502: Acquire first target data corresponding to a target service sent by a specified protocol stack.

[0047] In the embodiment of the present application, the first target data is at least one of graphic data, video data, and animation data, which usually needs to be input into a graphic animation engine for rendering and display. This type of data is relatively complex. If data transmission is implemented through an interface different from the programming language used by the specified protocol stack (for example, the specified protocol layer is implemented based on the C / C++ language, and the data subscription interface is implemented based on the Java language), a large number of cross-language interfaces need to be called during the deserialization process, resulting in reduced efficiency of the deserialization process and increased consumption of the controller.

[0048] S503: Call the second designated interface to perform deserialization processing on the first target data to obtain first deserialized data.

[0049] The second designated interface is also implemented based on the first programming language.

[0050] S404: input the first deserialized data into a graphics animation engine, and the graphics animation engine is used to render and display the deserialized data.

[0051] In the related art, please refer again to Figure 1The data obtained by deserializing using the second programming language is Java Class data. Since the graphic animation engine cannot recognize the data, a JSON data conversion module needs to be set up in the system. The JSON data conversion module first converts the above Java Class data into JSON data, and the graphic animation engine first converts the JSON data into Struct structure data in C / C++ language. This process takes a long time, resulting in low efficiency of rendering and display of the graphic animation engine.

[0052] However, in the embodiment of the present application, the first deserialized data is Struct structure data in C / C++ language. There is no need to convert it into JSON data first, and then the graphics animation engine converts the JSON data into Struct structure data in C / C++ language. The first deserialized data is directly input into the graphics animation engine, which can improve rendering efficiency.

[0053] To sum up, the technical solution provided by the embodiment of the present application does not need to convert graphic data, video data, animation data, etc. that need to be input into a graphic animation engine into JSON data first, and then the graphic animation engine converts the JSON data into Struct structure data in C / C++ language. The first deserialized data is directly input into the graphic animation engine, which can improve rendering efficiency.

[0054] Please refer to Figure 6 , which shows a flow chart of a data transmission method provided by an embodiment of the present application. The method includes the following process.

[0055] S601: Call a third designated interface to send a second subscription request to a designated protocol stack.

[0056] The designated protocol stack subscribes to other services based on the second subscription request, and the second target data corresponding to the other services is web page data. The third designated interface is implemented based on the second programming language. Optionally, the second programming language is Java data.

[0057] Since the complexity of the second target data is usually low, even if data transmission is achieved through an interface with a programming language different from that adopted by the specified protocol stack (for example, the specified protocol layer is implemented based on the C / C++ language, and the data subscription interface is implemented based on the Java language), during the deserialization process, the number of cross-language interfaces that need to be called is usually not large, and the impact on the efficiency of the deserialization process is small. Therefore, in an embodiment of the present application, when the application needs to call web page data, it can call the third specified interface to send a second subscription request to the specified protocol stack.

[0058] S602: Acquire second target data sent by a specified protocol stack.

[0059] The second target data is also byte type data.

[0060] S603: Call a second designated interface to perform deserialization processing on the second target data to obtain third deserialized data.

[0061] When the second programming language is Java, the third deserialized data is Java Class data. The third deserialized data is usually input into the rendering engine of the browser for rendering and display.

[0062] To sum up, the technical solution provided by the embodiment of the present application can call a third designated interface that uses a programming language different from the designated protocol stack to implement data subscription when the application needs to subscribe to web page data, thereby avoiding the situation where data subscription is implemented entirely through the first designated interface when multiple data need to be subscribed at the same time, thereby improving efficiency.

[0063] Please refer to Figure 7 , which shows a flow chart of a data transmission method provided by an embodiment of the present application. The method includes the following process.

[0064] S701, obtaining the complexity of historical data of the target service.

[0065] The historical data of the target service refers to the data obtained by the application from the specified protocol stack after the application has subscribed to the target service at least once recently. The complexity of the historical data of the target service can be automatically determined by the application after obtaining the historical data.

[0066] In some embodiments, the application obtains the number of nested layers of historical data of the target service and the number of data types included in each layer, and determines the complexity based on the number of nested layers and the number of data types included in each layer.

[0067] The complexity of data is positively correlated with the number of nested layers of data. That is, the more nested layers of data, the greater the complexity of the data, and the fewer nested layers of data, the smaller the complexity of the data.

[0068] The complexity of data is positively correlated with the number of data types included in each layer. That is, the more data types each layer includes, the greater the complexity of the data, and the fewer data types each layer includes, the smaller the complexity of the data.

[0069] Optionally, the controller calculates the number of calls based on the number of nested layers and the number of data types included in each layer, and determines the complexity based on the number of calls. The number of calls refers to the number of times the cross-language interface needs to be called during subsequent deserialization processing if an interface in a programming language different from the specified protocol layer is used to implement data transmission.

[0070] Exemplarily, there is a set of data, including 20 member structures, each member structure includes 6 data types such as uint64, uint8, float, uint8, float, Array, etc., among which, Array array has 1024 member structures, each member structure includes 5 data types such as double, float, uint8, float, Array, among which, Array array has 255 member structures, each member structure includes 2 data types such as uint8 and float, then the number of calls is 20*(6*(1024*5*(255*2)))=313344000 times.

[0071] In some embodiments, the application directly determines the number of calls to the historical data of the target service as the complexity of the historical data of the target service. In other embodiments, the application can obtain a mapping relationship between different numbers of calls and different complexities, and determine the corresponding complexity based on the mapping relationship and the number of calls to the historical data of the target service. There may be other implementations for determining the complexity of the historical data of the target service, which are not limited in the embodiments of the present application.

[0072] S702: When the complexity is greater than a preset complexity, call a first designated interface to send a first subscription request to a designated protocol stack.

[0073] The preset complexity is set according to experiments or experience, and the embodiments of the present application do not limit this. In the embodiments of the present application, for data with greater complexity, the application in the controller subscribes to the data by calling the first specified interface implemented in the first programming language that is also used in the specified protocol layer. In the subsequent deserialization process of the data, there is no need to call the cross-language interface, thereby improving the efficiency of the deserialization process and reducing the consumption of the controller.

[0074] S703: Acquire first target data sent by the specified protocol stack based on the first subscription request.

[0075] S704, calling the second designated interface to perform deserialization processing on the first target data to obtain first deserialized data.

[0076] The second designated interface is also implemented based on the first programming language.

[0077] S705: When the complexity is less than the preset complexity, call a third designated interface to send a first subscription request to a designated protocol stack.

[0078] The third designated interface is implemented based on the second programming language. In the embodiment of the present application, for data with lower complexity, even if data transmission is implemented through an interface with a programming language different from that adopted by the designated protocol stack (for example, the designated protocol layer is implemented based on the C / C++ language, and the data subscription interface is implemented based on the Java language), during the deserialization process, the number of cross-language interfaces that need to be called is usually small, and the impact on the efficiency of the deserialization process is small. Therefore, in the embodiment of the present application, when the application needs to call data with lower complexity, the third designated interface can be called to send a second subscription request to the designated protocol stack.

[0079] S706: Acquire first target data corresponding to the target service sent by the specified protocol stack.

[0080] S707, calling the second designated interface to perform deserialization processing on the first target data to obtain second deserialized data.

[0081] When the second programming language is Java language, the second deserialized data is Java Class data.

[0082] To sum up, the technical solution provided in the embodiment of the present application chooses to call the first designated interface to implement data subscription according to the complexity of the data to be subscribed, or calls the third designated interface to implement data subscription, thereby avoiding the situation where data subscription is all implemented through the first designated interface when it is necessary to subscribe to multiple data of different complexities at the same time, thereby improving efficiency.

[0083] An embodiment of the present application further provides a controller, comprising: a specified protocol layer, a first specified interface, a second specified interface, and at least one application; the specified protocol layer, the first specified interface, and the second specified interface are all implemented based on a first programming language; at least one application includes a target application; the target application is configured to execute Figure 4-7 The method in the embodiment.

[0084] An embodiment of the present application also provides a transportation vehicle, including: the controller as described above.

[0085] Please refer to Figure 8 , which shows a structural diagram of a data transmission device shown in an embodiment of the present application. The data transmission device includes: a data subscription module 810, a data acquisition module 820, and a deserialization module 830.

[0086] The data subscription module 810 is used to call a first designated interface to send a first subscription request to a designated protocol stack in the protocol layer. The designated protocol stack subscribes to a target service based on the first subscription request. Both the first designated interface and the designated protocol stack are implemented based on a first programming language.

[0087] The data acquisition module 820 is used to acquire first target data corresponding to the target service sent by the specified protocol stack.

[0088] The deserialization module 830 is used to call the second specified interface to perform deserialization processing on the first target data to obtain first deserialized data. The second specified interface is also implemented based on the first programming language.

[0089] In some embodiments, the first target data is at least one of graphic data, video data, and animation data.

[0090] In some embodiments, the device further includes: a data input module (not shown in the figure). The data input module is used to input the first deserialized data into the graphic animation engine, and the graphic animation engine is used to render and display the deserialized data.

[0091] In some embodiments, the device further includes: a complexity acquisition module (not shown in the figure). The complexity acquisition module is used to obtain the complexity of the historical data of the target service. The data subscription module 830 is also used to execute the step of calling the first specified interface to send a first subscription request to the specified protocol stack when the complexity is greater than the preset complexity.

[0092] In some embodiments, the complexity acquisition module is used to obtain the number of nested layers of historical data of the target event and the number of data types included in each layer; the complexity is determined based on the number of nested layers and the number of data types included in each layer; the complexity is positively correlated with the number of nested layers, and the complexity is positively correlated with the number of data types included in each layer.

[0093] In some embodiments, the second subscription module is further used to call a third specified interface to send a first subscription request to a specified protocol stack in the protocol layer when the complexity is greater than a preset complexity, and the third specified interface is implemented based on a second programming language. The second acquisition module is further used to obtain the first target data sent by the specified protocol stack based on the first subscription request. The deserialization module 830 is further used to call the second specified interface to deserialize the first target data to obtain second deserialized data, and the second specified interface is implemented based on the first programming language.

[0094] In summary, the technical solution provided by the embodiment of the present application adds a first designated interface and a second designated interface that use the same programming language as the designated protocol stack in the application program. The first designated interface sends a first data subscription request to the designated protocol stack, and receives the first target data sent by the designated protocol stack, and then calls the second designated interface to deserialize the first target data to obtain first deserialized data. Since the first designated interface, the second designated interface, and the designated protocol stack are all implemented in the same programming language, the efficiency of the deserialization processing can be improved in the process of deserializing the first target data, and the consumption of the controller can be reduced.

[0095] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described devices and modules can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here.

[0096] In several embodiments provided in the present application, the coupling between modules may be electrical, mechanical or other forms of coupling.

[0097] In addition, each functional module in each embodiment of the present application can be integrated into a processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The above integrated modules can be implemented in the form of hardware or software functional modules.

[0098] See also Fig. 9 , which shows that the embodiment of the present application also provides a transportation vehicle 900, which includes: one or more multi-core processors 910, a memory 920, and one or more applications. Among them, the one or more applications are stored in the memory 920 and are configured to be executed by the one or more multi-core processors 910, and the one or more applications are configured to execute the method described in the above embodiment.

[0099] The multi-core processor 910 may include one or more processing cores. The multi-core processor 910 uses various interfaces and lines to connect various parts of the entire battery management system, and executes various functions and processes data of the battery management system by running or executing instructions, programs, code sets or instruction sets stored in the memory 920, and calling data stored in the memory 920. Optionally, the multi-core processor 910 can be implemented in at least one hardware form of digital signal processing (Digital Signal Processing, DSP), field programmable gate array (Field-Programmable Gate Array, FPGA), and programmable logic array (Programmable Logic Array, PLA). The multi-core processor 910 can integrate one or more combinations of a central multi-core processor 910 (Central Processing Unit, CPU), an image multi-core processor 910 (Graphics Processing Unit, GPU) and a modem. Among them, the CPU mainly processes the operating system, user interface and application programs; the GPU is responsible for rendering and drawing display content; and the modem is used to process wireless communications. It can be understood that the above-mentioned modem may not be integrated into the multi-core processor 910, but may be implemented separately through a communication chip.

[0100] The memory 920 may include a random access memory 920 (Random Access Memory, RAM), and may also include a read-only memory 920 (Read-Only Memory). The memory 920 may be used to store instructions, programs, codes, code sets, or instruction sets. The memory 920 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for implementing at least one function (such as a touch function, a sound playback function, an image playback function, etc.), instructions for implementing the various method embodiments described below, etc. The data storage area may also store data created by the traffic vehicle map during use (such as a phone book, audio and video data, chat record data), etc.

[0101] An embodiment of the present application further provides a computer-readable storage medium, in which computer program instructions are stored. The computer program instructions can be called by a processor to execute the method described in the above embodiment.

[0102] The computer-readable storage medium may be an electronic memory such as a flash memory, an EEPROM (electrically erasable programmable read-only memory), an EPROM, a hard disk or a ROM. Optionally, the computer-readable storage medium includes a non-transitory computer-readable storage medium. The computer-readable storage medium has storage space for computer program instructions for executing any method step of the above method. These computer program instructions may be read from or written to one or more computer program products. The computer program instructions may be compressed in an appropriate form.

[0103] The above are only preferred embodiments of the present application, and are not intended to limit the present application in any form. Although the present application has been disclosed as above with preferred embodiments, it is not intended to limit the present application. Any technical personnel in the field can make some changes or modify the technical contents disclosed above into equivalent embodiments without departing from the scope of the technical solution of the present application. However, any brief modifications, equivalent changes and modifications made to the above embodiments based on the technical essence of the present application without departing from the content of the technical solution of the present application are still within the scope of the technical solution of the present application.

Claims

1. A data transmission method, characterized in that: The method comprises: Calling a first designated interface to send a first subscription request to a designated protocol stack, wherein the designated protocol stack subscribes to a target service based on the first subscription request, and both the first designated interface and the designated protocol stack are implemented based on a first programming language; Acquire first target data corresponding to the target service sent by the specified protocol stack; A second designated interface is called to perform deserialization processing on the first target data to obtain first deserialized data, and the second designated interface is also implemented based on the first programming language.

2. The method according to claim 1, characterized in that The first target data is at least one of graphic data, video data, and animation data.

3. The method according to claim 2, characterized in that After the calling of the second designated interface to perform deserialization processing on the first target data to obtain first deserialized data, the method further includes: The first deserialized data is input into a graphics animation engine, and the graphics animation engine is used to render and display the deserialized data.

4. The method according to claim 1, characterized in that Before calling the first designated interface to send the first subscription request to the designated protocol stack, the method further includes: The complexity of obtaining historical data of the target service; When the complexity is greater than the preset complexity, the step of calling the first designated interface to send a first subscription request to the designated protocol stack is performed.

5. The method according to claim 4, characterized in that The complexity of obtaining the historical data of the target service includes: Obtain the number of nested layers of the historical data of the target service and the number of data types included in each layer; The complexity is determined based on the number of nesting layers and the number of data types included in each layer; the complexity is positively correlated with the number of nesting layers, and the complexity is positively correlated with the number of data types included in each layer.

6. The method according to claim 4, characterized in that After obtaining the complexity of the historical data of the target service, the method further includes: When the complexity is less than a preset complexity, calling a third designated interface to send a first subscription request to the designated protocol stack, wherein the third designated interface is implemented based on a second programming language; Acquire first target data sent by the specified protocol stack based on the first subscription request; The second designated interface is called to perform deserialization processing on the first target data to obtain second deserialized data.

7. A data transmission device, characterized in that: The device comprises: A data subscription module, configured to call a first designated interface to send a first subscription request to a designated protocol stack, wherein the designated protocol stack subscribes to a target service based on the first subscription request, and wherein both the first designated interface and the designated protocol stack are implemented based on a first programming language; A data acquisition module, used to acquire first target data corresponding to the target service sent by the specified protocol stack; A deserialization module is used to call a second specified interface to perform deserialization processing on the first target data to obtain first deserialized data, and the second specified interface is also implemented based on the first programming language.

8. A controller, characterized in that: include: A specified protocol layer, a first specified interface, a second specified interface, and at least one application; the specified protocol layer, the first specified interface, and the second specified interface are all implemented based on a first programming language; There is a target application in at least one application; the target application is configured to execute the method according to any one of claims 1 to 6.

9. A transportation vehicle, characterized in that: The transportation vehicle includes the controller as claimed in claim 8.

10. A transportation vehicle, characterized in that: include: Memory; One or more processors coupled to the memory; One or more programs, wherein the one or more application programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs are configured to execute the method according to any one of claims 1-6.

11. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer program instructions, and the computer program instructions can be called by a processor to execute the method according to any one of claims 1 to 6.