A vehicle inter-domain communication method, data gateway, device and storage medium

By creating a target interface class to receive and parse serialized data, the complexity and development workload of communication between different development language domains of smart cars is solved, and simplified data links and reduced development workload are achieved.

CN116166253BActive Publication Date: 2025-05-09SHENZHEN DESAY SV AUTOMOTIVE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310197811.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-22
Publication Date
2025-05-09
Estimated Expiration
2043-02-22

AI Technical Summary

Technical Problem

When communicating between domains of different development languages ​​of smart cars, the data receiving domain needs to parse data from different languages, resulting in longer data links, large development workload, and new interfaces are required when adding new protocols.

Method used

By obtaining the serialized data sent by the data sending domain, create a target interface class corresponding to the serialized data, receive the serialized data through the target interface class, and parse it into a target object through deserialization operations, and return it to the application of the data receiving domain.

Benefits of technology

Communication between domains of different development languages ​​is realized, development workload is reduced, the problem of adding new interfaces is avoided when adding new protocols, and data links are simplified.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116166253B_ABST
    Figure CN116166253B_ABST
Patent Text Reader

Abstract

The present invention discloses a vehicle inter-domain communication method, a data gateway, a device and a storage medium, the method comprising: obtaining serialized data sent by a data sending domain; creating a target interface class corresponding to the serialized data, receiving the serialized data through the target interface class; parsing the serialized data into a target object through a deserialization operation, and returning the target object to an application in a data receiving domain. The vehicle inter-domain communication method provided by the present invention can receive serialized data by creating a target interface class for a data receiving domain of a Java language when communicating between domains of different development languages, and then parse the serialized data to obtain the required Java object. When there is a new protocol, there is no need to add a new interface, and only one set of interfaces and one link are needed to solve the problem, thereby reducing the development workload.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of intelligent vehicle technology, and in particular to a vehicle inter-domain communication method, a data gateway, a device and a storage medium. Background Art

[0002] The electronic and electrical architecture of the entire vehicle is divided into five domains: power domain, chassis domain, body domain, cockpit domain and autonomous driving domain. Different domains may be developed in different development languages. For example, the AD (autonomous driving) domain is developed in C++, while the IC (intelligent cockpit) domain is developed in Java. Therefore, when the vehicle communicates between domains, if the data sending domain and the data receiving domain are developed in different languages, the data receiving domain needs to parse the data sent by the data sending domain before it can be used.

[0003] Take the AD domain as an example. Since the AD domain is developed in C++, when the AD domain is used as a data transmission domain to send data, it sends a section of C++ memory. There is no problem in sending this section of memory inside the AD domain. However, if it is sent directly to the Android end of the IC domain, since most Android applications are written in Java, it will need to be parsed by jni (C++ layer) before it can be sent to the Java application for use. Therefore, the data link will become very long, and every time the logic is changed, the number of interfaces that need to be changed will be very large. Figure 1 This is a data link diagram in the background technology. As shown in the figure, the link includes a hardware abstraction layer, middleware, C++ software development kit, camera service layer, Java software development kit and Android application. For each new protocol, an interface needs to be added to the Java service in the hardware abstraction layer, and the Java service needs to add an interface to the Android application through the Android Interface Definition Language (AIDL). Only then can the Android application call the corresponding interface, and the software development workload is very large. Summary of the invention

[0004] The present invention provides a vehicle inter-domain communication method, a data gateway, a device and a storage medium to achieve communication between domains of different development languages.

[0005] According to one aspect of the present invention, a vehicle inter-domain communication method is provided, comprising:

[0006] Get the serialized data sent by the data sending domain;

[0007] Creating a target interface class corresponding to the serialized data, and receiving the serialized data through the target interface class;

[0008] The serialized data is parsed into a target object through a deserialization operation, and the target object is returned to an application in a data receiving domain.

[0009] Further, creating a target interface class corresponding to the serialized data includes:

[0010] determining the number of protocol types in the serialized data;

[0011] According to the number of the protocol types, a corresponding number of the target interface classes are created.

[0012] Further, receiving the serialized data through the target interface class includes:

[0013] According to the protocol type in the serialized data, matching a corresponding target interface class for each serialized data;

[0014] The target interface class matched by the protocol type receives the serialized data of the corresponding protocol type respectively.

[0015] Furthermore, the serialized data is parsed into a target object through a deserialization operation, including:

[0016] Annotating the serialized data;

[0017] The annotated data is reflected into the target object.

[0018] Furthermore, the data types in the serialized data conform to the standard data types supported by the automotive open system architecture, and the serialized data are annotated, including:

[0019] Determining the annotation type of each variable in the serialized data according to the standard data type supported by the automotive open system architecture;

[0020] Determine the memory usage of each annotation type.

[0021] Further, reflecting the annotated data into the target object includes:

[0022] According to the memory occupied size corresponding to each variable in the serialized data, extract a memory block of a set size in the serialized data, and assign it to the corresponding variable;

[0023] The variables are combined into the target object.

[0024] According to another aspect of the present invention, there is provided a data gateway, comprising:

[0025] A serialized data acquisition module is used to acquire serialized data sent by the data sending domain;

[0026] A serialized data receiving module, used to create a target interface class corresponding to the serialized data, and receive the serialized data through the target interface class;

[0027] The serialized data parsing module is used to parse the serialized data into a target object through a deserialization operation, and return the target object to an application in a data receiving domain.

[0028] Optionally, the external interface provided by the data gateway includes at least one Java interface.

[0029] Optionally, the serialized data receiving module is further used to:

[0030] determining the number of protocol types in the serialized data;

[0031] According to the number of the protocol types, a corresponding number of the target interface classes are created.

[0032] Optionally, the serialized data receiving module is further used to:

[0033] According to the protocol type in the serialized data, matching a corresponding target interface class for each serialized data;

[0034] The target interface class matched by the protocol type receives the serialized data of the corresponding protocol type respectively.

[0035] Optionally, the serialized data parsing module is also used to:

[0036] Annotating the serialized data;

[0037] The annotated data is reflected into the target object.

[0038] Optionally, the data type in the serialized data complies with the standard data type supported by the automotive open system architecture, and the serialized data parsing module is further used to:

[0039] Determining the annotation type of each variable in the serialized data according to the standard data type supported by the automotive open system architecture;

[0040] Determine the memory usage of each annotation type.

[0041] Optionally, the serialized data parsing module is also used to:

[0042] According to the memory occupied size corresponding to each variable in the serialized data, extract a memory block of a set size in the serialized data, and assign it to the corresponding variable;

[0043] The variables are combined into the target object.

[0044] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:

[0045] at least one processor; and

[0046] a memory communicatively connected to the at least one processor; wherein,

[0047] The memory stores a computer program that can be executed by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the vehicle inter-domain communication method described in any embodiment of the present invention.

[0048] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the vehicle inter-domain communication method described in any embodiment of the present invention when executed.

[0049] The vehicle inter-domain communication method disclosed in the present invention first obtains the serialized data sent by the data sending domain, then creates a target interface class corresponding to the serialized data, receives the serialized data through the target interface class, and finally parses the serialized data into a target object through a deserialization operation, and returns the target object to the application of the data receiving domain. When the vehicle inter-domain communication method provided by the present invention communicates between domains of different development languages, for the data receiving domain of the Java language, the serialized data can be received by creating a target interface class, and then the serialized data can be parsed to obtain the required Java object. When there is a new protocol, there is no need to add a new interface, and only one set of interfaces and one link are needed to solve the problem, which reduces the development workload.

[0050] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0051] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, 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 invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0052] Figure 1 It is a data link schematic diagram in the background technology;

[0053] Figure 2 is a flow chart of a vehicle inter-domain communication method provided according to Embodiment 1 of the present invention;

[0054] Figure 3 This is a schematic diagram of a serialization process provided according to Embodiment 1 of the present invention;

[0055] Figure 4 is a flow chart of a vehicle inter-domain communication method provided according to Embodiment 2 of the present invention;

[0056] Figure 5 A schematic diagram of the structure of a data gateway provided according to Embodiment 3 of the present invention;

[0057] Figure 6 It is a structural diagram of an electronic device for implementing the vehicle inter-domain communication method of embodiment 4 of the present invention. DETAILED DESCRIPTION

[0058] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0059] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0060] Embodiment 1

[0061] Figure 2 This is a flow chart of a vehicle domain communication method provided by the first embodiment of the present invention. This embodiment is applicable to the case where a Java data receiving domain receives data from a C++ data sending domain. The method can be executed by a data gateway, which can be implemented in the form of hardware and / or software. The data gateway can be configured in an electronic device. Figure 2 As shown, the method includes:

[0062] S110. Acquire serialized data sent by the data sending domain.

[0063] The so-called "domain" is a collection of electronic and electrical architectures that control a certain functional module of the car. Each domain is uniformly controlled by a domain controller. The most typical division method is to divide the electronic and electrical architecture of the entire vehicle into five domains: power domain, chassis domain, body domain, cockpit domain and autonomous driving domain. The data transmission domain is the domain for data transmission in vehicle-to-vehicle inter-domain communication.

[0064] In this embodiment, the data sending domain is developed using C++. When communicating with other domains, data is sent in the form of serialized data. Among them, serialized data is a binary memory block obtained after serializing the data. Serialization refers to the process of converting data into binary content, which is essentially a byte[]. Because after serialization, the byte[] can be saved to a file, or the byte[] can be transmitted to a remote (IO) through a network, so that the Java object can be stored in a file or transmitted through a network.

[0065] Figure 3 This is a schematic diagram of a serialization process provided by this embodiment. As shown in the figure, the structure data before serialization consists of Struct_1 and Struct_2. After serialization, a binary memory block [Uint32 a Float32 b_1…Float32 e_2] can be obtained.

[0066] S120. Create a target interface class corresponding to the serialized data, and receive the serialized data through the target interface class.

[0067] Among them, a class in Java is a collection of objects with the same properties and behaviors, and an interface is a special class, which is a specification that can constrain other classes to do something. For example, the Class class can be used to represent the information of the JVM (Java Virtual Machine) runtime interface, and can provide many methods for obtaining various information about the class, such as obtaining the class name, determining whether the class is an interface or a normal class, etc.

[0068] In this embodiment, the data receiving domain is developed using Java, and the target interface class is a class used to receive serialized data in the data receiving domain. In order to receive the serialized data sent by the data sending domain, a target interface class can be created in the data receiving domain, and a target interface class of type matching can be created accordingly according to the type of the serialized data. For different serialized data sent by the data sending domain, data reception can be adaptively performed by modifying the target interface class.

[0069] S130: Parse the serialized data into a target object through a deserialization operation, and return the target object to an application in the data receiving domain.

[0070] The data receiving domain is the domain that receives data sent by the data sending domain in vehicle-to-vehicle domain communication. Since the data receiving domain is developed using the Java development language, after receiving the serialized data sent by the data sending domain, the data needs to be parsed into a Java object recognizable by the data receiving domain, i.e., the target object, through a deserialization operation, and then given to the application of the data receiving domain.

[0071] In this embodiment, deserialization is the process of converting a binary content (ie, byte[]) into a Java object.

[0072] For example, taking the AD (autonomous driving) domain as an example, since the AD domain is developed in C++, what is sent out during inter-domain communication is a serialized C++ memory. If this memory is sent directly to the Android end of the IC (intelligent cockpit) domain, since most Android applications are written in Java, it will need to be deserialized and parsed before it can be sent to the Java application for use.

[0073] The vehicle inter-domain communication method disclosed in the present invention first obtains the serialized data sent by the data sending domain, then creates a target interface class corresponding to the serialized data, receives the serialized data through the target interface class, and finally parses the serialized data into a target object through a deserialization operation, and returns the target object to the application of the data receiving domain. When the vehicle inter-domain communication method provided by the present invention communicates between domains of different development languages, for the data receiving domain of the Java language, the serialized data can be received by creating a target interface class, and then the serialized data can be parsed to obtain the required Java object. When there is a new protocol, there is no need to add a new interface, and only one set of interfaces and one link are needed to solve the problem, which reduces the development workload.

[0074] Embodiment 2

[0075] Figure 4 This is a flow chart of a vehicle inter-domain communication method provided in Embodiment 2 of the present invention. This embodiment is a refinement of the above embodiment. Figure 4 As shown, the method includes:

[0076] S210, obtaining serialized data sent by the data sending domain.

[0077] In this embodiment, after serializing the data in this domain, the data sending domain can first send the serialized data to the whole vehicle network, and then the whole vehicle network will give the serialized data to the data gateway of the data receiving domain, so that the data gateway can obtain the serialized data sent by the data sending domain.

[0078] S220. Determine the number of protocol types in the serialized data, and create a corresponding number of target interface classes according to the number of protocol types.

[0079] In this embodiment, the data gateway of the data receiving domain can provide two development language interfaces to the outside, one is Java language and the other is C++ language.

[0080] Preferably, the Java language interface is expressed as follows:

[0081] Public interface OnRecvClassCallback{

[0082] Object onRecvClassCallback(); / / Returns the received data format class object

[0083] }

[0084] Void onMessage(int eventId, int cmdId, Object data, OnRecvClassCallbackcallback); / / Data callback after receiving data.

[0085] Furthermore, the Java language interface can use the interface class to receive serialized data, and create a corresponding number of target interface classes according to the number of protocol types in the serialized data. For example, if the serialized data contains 8 protocol types, 8 target interface classes can be created for data reception.

[0086] Preferably, the Class class in Java can be used as the target interface class to receive the serialized data. According to the number of protocol types in the serialized data, a corresponding number of Classes can be created, so that each Class receives the serialized data of the corresponding type.

[0087] S230. Match corresponding target interface classes for each serialized data according to the protocol type in the serialized data, and receive serialized data of corresponding protocol types respectively through the target interface classes matched by the protocol types.

[0088] In this embodiment, after the target interface class is created, since the number of protocol types in the serialized data is consistent with the number of target interface classes, a target interface class can be matched for each type of serialized data, and the corresponding serialized data can be received respectively.

[0089] Optionally, if Class is used as the target interface class, after the data gateway obtains the serialized data in the form of a binary memory block, it can pass the memory block to the Java layer through the byte[] array, and then pass it from the data party to the Class through the callback onRecvClassCallback. The created Class can receive the corresponding type of serialized data according to the protocol type in the serialized data.

[0090] S240: Annotate the serialized data, reflect the annotated data into a target object, and return the target object to the application in the data receiving domain.

[0091] Annotations are a series of metadata that provide data to interpret program code, but annotations are not part of the interpreted code and have no direct impact on the running effect of the code. Reflection is the key to Java being considered a dynamic language. The reflection mechanism allows the program to obtain the internal information of any class during execution with the help of the Reflection API, and can directly operate the internal properties and methods of any object.

[0092] In this embodiment, the serialized data received by the target interface class needs to be deserialized and parsed into the target object, that is, the Java object, before it can be provided to the application in the data receiving domain of the Java voice. The deserialization process includes annotation and reflection, and the serialized data needs to be annotated first.

[0093] Optionally, the data type in the serialized data conforms to the standard data type supported by the automotive open system architecture, and the method of annotating the serialized data can be: determining the annotation type of each variable in the serialized data according to the standard data type supported by the automotive open system architecture; determining the memory usage corresponding to each annotation type.

[0094] Among them, Automotive Open System Architecture (Autosar) is an alliance dedicated to developing automotive electronic software standards. The standard data types and sizes supported by Autosar are shown in Table 1:

[0095] Table 1

[0096]

[0097]

[0098] For example, for the following structure data:

[0099] Struct ApaTouchInfo_struct{

[0100] uint8 type;

[0101] uint16 x;

[0102] uint16 y;

[0103] uint16 w;

[0104] uint16 h;

[0105] }

[0106] The types of variables type, x, y, w, and h are uint8, uint16, uint16, uint16, and uint16, respectively. According to Table 1, the sizes of the above variables are 8 bits, 16 bits, 16 bits, 16 bits, and 16 bits, respectively. The corresponding binary memory blocks are shown in Table 2:

[0107] Table 2

[0108]

[0109] Memory block size Sizeof(ApaTouchInfo_struct)=72.

[0110] By annotating the above binary memory block, we can get the types of the variables type, x, y, w, and h. The Class definition is as follows:

[0111]

[0112] Furthermore, according to the types of the variables obtained after annotation and in combination with Table 1, the memory usage of each variable can be determined.

[0113] Optionally, the annotated data may be reflected into a target object by: extracting a memory block of a set size in the serialized data according to the memory occupied by each variable in the serialized data, and assigning the memory block to the corresponding variable; and combining the variables into the target object.

[0114] Specifically, after annotating the serialized data, the memory occupied by each variable can be determined. Based on this, the data in the memory block can be extracted and assigned to the corresponding variable, thereby restoring the serialized data into a Java object.

[0115] Take the serialized data in Table 2 as an example, which contains variables type, x, y, w, and h. After annotation, the annotation type of type is uint8, so the first 8 bits are assigned to type from the byte[] array. The annotation type of x is uint16, so the value of byte[8-23] is assigned to x from the byte[] array, and so on. Finally, the assigned variables are combined and the serialized data is parsed into a Java ApaTouchInfo object.

[0116] Furthermore, after obtaining the target object, the data parameter in onMessage(int eventId, int cmdId, Object data, OnRecvClassCallback callback) can be passed to Java, thereby returning the target object to the application in the data receiving domain.

[0117] The vehicle inter-domain communication method disclosed in the present invention first obtains the serialized data sent by the data sending domain, then determines the number of protocol types in the serialized data, creates a corresponding number of target interface classes according to the number of protocol types, and then matches the corresponding target interface class for each serialized data according to the protocol type in the serialized data, and receives the serialized data of the corresponding protocol type through the target interface class matched by the protocol type, and finally annotates the serialized data, reflects the annotated data into a target object, and returns the target object to the application of the data receiving domain. The vehicle inter-domain communication method provided by the present invention, when communicating between domains of different development languages, for the data receiving domain of the Java language, can receive the serialized data by creating a target interface class, and then parse the serialized data to obtain the required Java object. When there is a new protocol, there is no need to add a new interface, and only one set of interfaces and one link are needed to solve the problem, reducing the development workload.

[0118] Embodiment 3

[0119] Figure 5 This is a schematic diagram of the structure of a data gateway provided by Embodiment 3 of the present invention. Figure 5 As shown, the data gateway includes: a serialized data acquisition module 310, a serialized data receiving module 320 and a serialized data parsing module 330.

[0120] The serialized data acquisition module 310 is used to acquire the serialized data sent by the data sending domain.

[0121] The serialized data receiving module 320 is used to create a target interface class corresponding to the serialized data and receive the serialized data through the target interface class.

[0122] The serialized data parsing module 330 is used to parse the serialized data into a target object through a deserialization operation, and return the target object to the application in the data receiving domain.

[0123] Optionally, the external interface provided by the data gateway includes at least one Java interface.

[0124] Optionally, the serialized data receiving module 320 is further used for:

[0125] Determine the number of protocol types in the serialized data; create a corresponding number of target interface classes based on the number of protocol types.

[0126] Optionally, the serialized data receiving module 320 is further used for:

[0127] According to the protocol type in the serialized data, a corresponding target interface class is matched for each serialized data; and the serialized data of the corresponding protocol type are respectively received by the target interface class matched by the protocol type.

[0128] Optionally, the serialized data parsing module 330 is further used to:

[0129] Annotate serialized data; reflect the annotated data into the target object.

[0130] Optionally, the data type in the serialized data complies with the standard data type supported by the automotive open system architecture, and the serialized data parsing module 330 is further used to:

[0131] Determine the annotation type of each variable in the serialized data according to the standard data types supported by the automotive open system architecture; and determine the memory usage size corresponding to each annotation type.

[0132] Optionally, the serialized data parsing module 330 is further used to:

[0133] According to the memory occupied by each variable in the serialized data, a memory block of a set size in the serialized data is extracted and assigned to the corresponding variable; each variable is combined into a target object.

[0134] The data gateway provided in the embodiment of the present invention can execute the vehicle inter-domain communication method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0135] Embodiment 4

[0136] Figure 6A schematic diagram of the structure of an electronic device 10 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.

[0137] like Figure 6 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. 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.

[0138] A number of 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, speakers, etc.; a storage unit 18, such as a 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.

[0139] The processor 11 may be a variety of general and / or special 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 dedicated 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 executes the various methods and processes described above, such as the vehicle inter-domain communication method.

[0140] In some embodiments, the vehicle inter-domain communication method may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on 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 vehicle inter-domain communication described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to execute the vehicle inter-domain communication method in any other appropriate manner (e.g., by means of firmware).

[0141] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0142] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0143] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, 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 disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0144] To provide interaction with a user, the systems and techniques described herein may 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 trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).

[0145] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may 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.

[0146] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may 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 difficult management and weak business scalability in traditional physical hosts and VPS services.

[0147] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.

[0148] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. A vehicle inter-domain communication method, characterized in that: include: Get the serialized data sent by the data sending domain; Creating a target interface class corresponding to the serialized data, and receiving the serialized data through the target interface class; According to the standard data types supported by the automotive open system architecture, the annotation type of each variable in the serialized data is determined, the memory usage size corresponding to each annotation type is determined, the annotated data is reflected into a target object, and the target object is returned to the application in the data receiving domain; wherein the data type in the serialized data conforms to the standard data type supported by the automotive open system architecture.

2. The method according to claim 1, characterized in that Create a target interface class corresponding to the serialized data, including: determining the number of protocol types in the serialized data; According to the number of the protocol types, a corresponding number of the target interface classes are created.

3. The method according to claim 2, characterized in that Receiving the serialized data through the target interface class includes: According to the protocol type in the serialized data, matching a corresponding target interface class for each serialized data; The target interface class matched by the protocol type receives the serialized data of the corresponding protocol type respectively.

4. The method according to claim 1, characterized in that: Reflecting the annotated data into the target object includes: According to the memory occupied size corresponding to each variable in the serialized data, extract a memory block of a set size in the serialized data, and assign it to the corresponding variable; The variables are combined into the target object.

5. A data gateway, characterized in that: include: A serialized data acquisition module is used to acquire serialized data sent by the data sending domain; A serialized data receiving module, used to create a target interface class corresponding to the serialized data, and receive the serialized data through the target interface class; A serialized data parsing module is used to determine the annotation type of each variable in the serialized data according to the standard data type supported by the automotive open system architecture, determine the memory usage size corresponding to each annotation type, reflect the annotated data into a target object, and return the target object to the application in the data receiving domain; wherein the data type in the serialized data conforms to the standard data type supported by the automotive open system architecture.

6. The data gateway according to claim 5, characterized in that: The external interface provided by the data gateway includes at least one Java interface.

7. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the vehicle inter-domain communication method according to any one of claims 1 to 4.

8. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the vehicle-domain communication method according to any one of claims 1 to 4 when executed.

Citation Information

Patent Citations

  • Data processing method and device, electronic equipment and storage medium

    CN114331416A

  • Vehicle-mounted communication method, device, equipment and storage medium

    CN114501376A