Data processing method and apparatus

The method of generating target files from template files solves the problem of complex configuration file format conversion in AUTOSAR development and achieves efficient data processing.

WO2026129363A1PCT designated stage Publication Date: 2026-06-25YINWANG INTELLIGENT TECHNOLOGIES CO LTD

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
YINWANG INTELLIGENT TECHNOLOGIES CO LTD
Filing Date
2024-12-20
Publication Date
2026-06-25

AI Technical Summary

Technical Problem

In the development of AUTOSAR, the configuration file format conversion is complicated, resulting in low configuration efficiency.

Method used

By associating configuration files with template files and generating target files using template files, the development and maintenance workload of AUTOSAR configuration tools is reduced, and data processing efficiency is improved.

Benefits of technology

The configuration file format can be converted without updating the AUTOSAR configuration tool, simplifying the configuration file processing process and improving data processing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024141235_25062026_PF_FP_ABST
    Figure CN2024141235_25062026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of data conversion, and provides a data processing method and apparatus. In the method, an AUTOSAR configuration tool can acquire a configuration file and a configuration rule file corresponding to the configuration file, and obtain an ARXML file on the basis of the configuration file and the configuration rule file. The configuration rule file is used for indicating a rule corresponding to the conversion of the configuration file to the ARXML file. When a configuration file is newly added, an ARXML file corresponding to the configuration file can be obtained by simply newly adding a corresponding configuration rule file, without updating the AUTOSAR configuration tool. The development and maintenance workload of the AUTOSAR configuration tool is reduced, and the configuration file processing efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Data processing method and apparatus Technical Field

[0001] This application relates to the field of data conversion technology, and in particular to a data processing method and apparatus. Background Technology

[0002] The Automotive Open System Architecture (AUTOSAR) is an industry-standard open architecture for automobiles. It generates code based on ARXML format configuration files, which then run in various components of the vehicle to perform corresponding functions. The configuration files are used to store and exchange configuration data for the vehicle's electronic systems.

[0003] In actual AUTOSAR development, configuration files may not be in ARXML format. In such cases, it is necessary to convert configuration files in other formats to ARXML format. However, in related technologies, the configuration file format conversion process is complex and inefficient. Summary of the Invention

[0004] This application provides a data processing method and apparatus that can improve the efficiency of data processing.

[0005] In a first aspect, embodiments of this application provide a data processing method, the method comprising: obtaining a configuration file, the configuration file being associated with a first template file including configuration items and configuration parameters corresponding to the configuration items; generating a target file corresponding to the configuration file based on a second template file, wherein the second template file is used to indicate one or more of the following: configuration steps required for converting the configuration file to the target file, the path of a node during the conversion of the configuration file to the target file, or a parameter list of a node during the conversion of the configuration file to the target file; wherein the parameter list of the node includes configuration items.

[0006] In this way, when the configuration file is updated, the configuration personnel can determine the corresponding second template file. The target file can be obtained through the configuration file and the second template file without updating the AUTOSAR configuration tool. This reduces the workload of developing and maintaining the AUTOSAR configuration tool and improves data processing efficiency.

[0007] In one possible implementation, the node's path includes the node's definition path and / or the node's parent node path; wherein, the node's definition path is an identifier representing the node's configuration type, and the node's configuration type includes one or more of the following: the node's parameter list, the configuration parameter names in the node's parameter list, the types of the configuration parameters in the node's parameter list, and the number of configuration parameters in the node's parameter list; the node's parent node path includes one or more of the following: a constant string representing the node's parent node path or the result of a configuration step.

[0008] The parent node path of a node in the second template file specifies the configuration path of the node, and the definition path of the node specifies the configuration type of the node. Subsequent configuration personnel can determine the parent node to which the node belongs based on the configuration path of the node, and configure the parameters of the node according to the configuration type of the node. The parameter configuration process is simple and efficient.

[0009] In some examples, the definition path of a node and / or the parent node path of a node may also be located in other template files, such as a third template file that includes the definition path of a node and / or the parent node path of a node. This application embodiment does not impose specific limitations.

[0010] In one possible implementation, the node's parameter list includes a configuration parameter name and the configuration parameter corresponding to the configuration parameter name. The configuration parameter corresponding to the configuration parameter name includes one or more of the following: the node's name, the configuration parameter corresponding to the configuration item, a constant string, a number, or the result of the configuration step; the node's name includes the configuration parameter corresponding to the configuration item and the node name identifier.

[0011] Configuration personnel can configure the parameter list of nodes, and the configuration parameters can include various forms, improving the flexibility of parameter configuration.

[0012] In one possible implementation, generating a target file corresponding to the configuration file based on the second template file includes: obtaining configuration items in the configuration file and configuration parameters corresponding to the configuration items based on the configuration file; obtaining one or more of the following based on the second template file: the configuration steps required for converting the configuration file to the target file, the path of the node for converting the configuration file to the target file, or the parameter list of the node required for converting the configuration file to the target file; generating a target file based on at least one of the configuration steps required for converting the configuration file to the target file, the path of the node for converting the configuration file to the target file, the parameter list of the node for converting the configuration file to the target file, the configuration items, or the configuration parameters corresponding to the configuration items.

[0013] In some examples, the AUTOSAR configuration tool can parse the configuration file using a configuration file parsing engine to obtain the configuration items and their corresponding parameters. Then, it can parse the second template file using a second template file parsing engine to obtain one or more of the following: the configuration steps required for converting the configuration file to the target file, the paths to the nodes required for this conversion, or a list of parameters for those nodes. The AUTOSAR configuration generation engine then processes the parsed content to obtain the target file.

[0014] In this way, the AUTOSAR configuration tool can process the configuration file and the second template file through the AUTOSAR configuration generation engine, the configuration file parsing engine, and the second template file parsing engine to obtain the target file. There is no need to update the AUTOSAR configuration tool, which reduces the consumption of manpower and material resources and lowers the update cost of the AUTOSAR configuration tool.

[0015] In one possible implementation, the first template file includes a first identifier for identifying the first template file, and the second template file includes a second identifier for identifying the second template file, wherein the first identifier matches the second identifier.

[0016] Thus, the AUTOSAR configuration tool determines the matching first template file and second template file based on the first identifier and the second identifier, so that the target file can be obtained by using the matching first template file and second template file in the future.

[0017] In one possible implementation, the configuration file includes a third identifier for identifying the configuration file, the third identifier matching a first identifier corresponding to a first template file for generating the configuration file, the first identifier corresponding to the first template file matching a second identifier corresponding to a second template file, and generating a target file corresponding to the configuration file based on the second template file, including: determining the second template file based on the third identifier of the configuration file, the third identifier of the configuration file matching a second identifier of the second template file; and generating the target file corresponding to the configuration file based on the second template file.

[0018] The first identifier of the first template file matches the second identifier of the second template file, and the first identifier of the first template file matches the third identifier of the configuration file. The AUTOSAR configuration tool can determine the second template file based on the third identifier, and the third identifier of the configuration file matches the second identifier of the second template file. This allows the AUTOSAR configuration tool to subsequently obtain the corresponding target file based on the matched configuration file and the second template file.

[0019] In one possible implementation, determining the second template file based on the third identifier of the configuration file includes: determining the first template file based on the third identifier of the configuration file; matching the third identifier of the configuration file with the first identifier of the first template file; and determining the second template file based on the third identifier of the configuration file when the number of configuration items in the configuration file matches the number of configuration items in the first template file, and the configuration parameters corresponding to the configuration items in the configuration file match the configuration parameters corresponding to the configuration items in the first template file.

[0020] This prevents the second identifier corresponding to the second template file from being overwritten, which could lead to a mismatch between the configuration file and the determined second template file.

[0021] In one possible implementation, before obtaining the configuration file, the method further includes: displaying an editing interface; the editing interface guiding the user to complete a first template file and a second template file; the editing interface includes a first control, which includes a configuration node control and a parameter list control for the configuration node; in response to a first operation on the first control, obtaining corresponding first content; the first operation includes a configuration node operation and a parameter list operation for the configuration node; the first content includes the configuration steps of the configured node, the path of the configured node, and the parameter list of the configured node; and generating the first template file and the second template file based on the first content.

[0022] In this way, the first template file and the corresponding second template file can be obtained in a wizard-driven manner. The process is visualized, which reduces the difficulty of obtaining the first template file and the corresponding second template file, lowers the usage threshold for configuration personnel, improves the user experience, and increases the efficiency of obtaining the first template file and the corresponding second template file.

[0023] In one possible implementation, obtaining the configuration file includes: displaying a configuration interface, which is generated based on a first configuration file and used to configure the configuration file; the configuration interface includes configuration controls for configuration items; in response to a configuration operation on the configuration controls for the configuration items, generating a configuration file, the configuration operation including configuring configuration parameters corresponding to the configuration items, the configuration file including a third identifier; the third identifier of the configuration file matching the first identifier of the first configuration file.

[0024] In this way, the AUTOSAR configuration tool can obtain the configuration file based on the configuration interface. This configuration file includes a third identifier that matches the first identifier of the first configuration file, so that the AUTOSAR configuration tool can determine the second template file based on the third identifier.

[0025] In one possible implementation, before obtaining the configuration file, the method further includes: displaying an import interface for importing a first template file and a second template file, the import interface including an import control; and importing the first template file and the second template file in response to an import operation on the import control.

[0026] Thus, unlike existing technologies, the AUTOSAR configuration tool can import the first template file and the second template file without updating the AUTOSAR configuration tool, and obtain the target file based on the first template file and the second template file.

[0027] In one possible implementation, the configuration parameter corresponding to the configuration parameter name is set with a fourth identifier. The fourth identifier is used to indicate the configuration parameter corresponding to the configuration parameter name, referencing the result of the configuration step in the second template file, and / or the fourth identifier is used to indicate the configuration parameter corresponding to the configuration parameter name, referencing the configuration parameter corresponding to the configuration item in the configuration file.

[0028] Thus, the fourth identifier is used to indicate the configuration parameter corresponding to the configuration parameter name. Referencing the result of the configuration steps in the second template file and / or using the fourth identifier to indicate the configuration parameter corresponding to the configuration parameter name can simplify the writing process of the second template file and improve efficiency.

[0029] Secondly, embodiments of this application provide a data processing apparatus, which includes an acquisition module for acquiring a configuration file, the configuration file being associated with a first template file including configuration items and configuration parameters corresponding to the configuration items; and a processing module for generating a target file corresponding to the configuration file based on a second template file, wherein the second template file is used to indicate one or more of the following: configuration steps required for converting the configuration file to the target file, the path of a node during the conversion of the configuration file to the target file, or a parameter list of a node during the conversion of the configuration file to the target file; wherein the parameter list of the node includes configuration items.

[0030] In one possible implementation, the path of the node includes the definition path of the node and / or the parent node path of the node; wherein, the definition path of the node is an identifier representing the configuration type of the node, and the configuration type of the node includes one or more of the following: the parameter list of the node, the configuration parameter name in the parameter list of the node, the type of the configuration parameter in the parameter list of the node, and the number of configuration parameters in the parameter list of the node; the parent node path of the node includes one or more of the following: a constant string representing the parent node path of the node or the result of the configuration step.

[0031] In one possible implementation, the parameter list of the node includes the configuration parameter name and the configuration parameter corresponding to the configuration parameter name. The configuration parameter corresponding to the configuration parameter name includes one or more of the following: the name of the node, the configuration parameter corresponding to the configuration item, a constant string, a number, or the result of the configuration step; the name of the node includes the configuration parameter corresponding to the configuration item and the node name identifier.

[0032] In one possible implementation, the processing module is further configured to: obtain the configuration items in the configuration file and the configuration parameters corresponding to the configuration items according to the configuration file; obtain one or more of the following according to the second template file: the configuration steps required for converting the configuration file to the target file, the path of the node when converting the configuration file to the target file, or the parameter list of the node required for converting the configuration file to the target file; generate the target file according to at least one of the configuration steps required for converting the configuration file to the target file, the path of the node when converting the configuration file to the target file, the parameter list of the node when converting the configuration file to the target file, the configuration item, or the configuration parameters corresponding to the configuration item.

[0033] In one possible implementation, the first template file includes a first identifier for identifying the first template file, and the second template file includes a second identifier for identifying the second template file, wherein the first identifier matches the second identifier.

[0034] In one possible implementation, the configuration file includes a third identifier for identifying the configuration file, the third identifier matching a first identifier corresponding to a first template file that generates the configuration file, the first identifier corresponding to the first template file matching a second identifier corresponding to a second template file, and the processing module is further configured to: determine the second template file based on the third identifier of the configuration file, the third identifier of the configuration file matching the second identifier of the second template file; and generate a target file corresponding to the configuration file based on the second template file.

[0035] In one possible implementation, the processing module is further configured to: determine the first template file based on the third identifier of the configuration file; the third identifier of the configuration file matches the first identifier of the first template file; and determine the second template file based on the third identifier of the configuration file if the number of configuration items in the configuration file matches the number of configuration items in the first template file, and the configuration parameters corresponding to the configuration items in the configuration file match the configuration parameters corresponding to the configuration items in the first template file.

[0036] In one possible implementation, the data processing device further includes a display module, which is used to display an editing interface; the editing interface is used to guide the user to complete the first template file and the second template file; the editing interface includes a first control, the first control including a configuration node control and a parameter list control for the configuration node; the processing module is further used to obtain corresponding first content in response to a first operation on the first control; the first operation includes a configuration node operation and a parameter list operation for the configuration node; the first content includes the configuration steps of the configured node, the path of the configured node, and the parameter list of the configured node; and generates the first template file and the second template file based on the first content.

[0037] In one possible implementation, the display module is further configured to display a configuration interface, which is generated based on the first configuration file and is used to configure the configuration file; the configuration interface includes configuration controls for the configuration items; the processing module is further configured to generate the configuration file in response to a configuration operation on the configuration controls of the configuration items, the configuration operation including configuring configuration parameters corresponding to the configuration items, the configuration file including a third identifier; the third identifier of the configuration file matches the first identifier of the first configuration file.

[0038] In one possible implementation, the display module is further configured to display an import interface for importing the first template file and the second template file, the import interface including an import control; the processing module is further configured to import the first template file and the second template file in response to an import operation on the import control.

[0039] In one possible implementation, the configuration parameter corresponding to the configuration parameter name is set with a fourth identifier, which is used to indicate the configuration parameter corresponding to the configuration parameter name, referencing the result of the configuration step in the second template file and / or the fourth identifier is used to indicate the configuration parameter corresponding to the configuration parameter name, referencing the configuration parameter corresponding to the configuration item in the configuration file.

[0040] Thirdly, embodiments of this application provide a data processing apparatus, including at least one processor and a memory, the memory being used to store computer-readable instructions, wherein when at least one processor reads the computer-readable instructions from the memory, the data processing apparatus causes to execute the method described in the first aspect or any possible implementation thereof.

[0041] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program or instructions that, when executed on a computer, cause the computer to perform the methods described in the first aspect or any possible implementation thereof.

[0042] Fifthly, embodiments of this application provide a computer program product including a computer program, which, when run on a computer, causes the computer to perform the methods described in the first aspect or any possible implementation thereof.

[0043] In a sixth aspect, embodiments of this application provide a chip or chip system, the chip or chip system including at least one processor and a communication interface, the communication interface and at least one processor being interconnected via a line, the at least one processor being used to run computer programs or instructions to perform the methods described in the first aspect or any possible implementation of the first aspect.

[0044] In one possible implementation, the chip or chip system described above in this application further includes at least one memory storing instructions. The memory can be an internal storage unit of the chip, such as a register or cache, or it can be a storage unit of the chip itself (e.g., read-only memory, random access memory, etc.).

[0045] In a seventh aspect, embodiments of this application provide an AUTOSAR configuration tool, which includes the data processing apparatus as described in the third aspect.

[0046] It should be understood that the second to seventh aspects of this application correspond to the technical solutions of the first aspect of this application, and the beneficial effects achieved by each aspect and the corresponding feasible implementation are similar, and will not be repeated here. Attached Figure Description

[0047] Figure 1 is a schematic diagram of an ARXML file generation code provided in an embodiment of this application;

[0048] Figure 2 is a flowchart illustrating an ARXML file generation method provided in an embodiment of this application;

[0049] Figure 3 is a flowchart illustrating another ARXML file generation method provided in an embodiment of this application;

[0050] Figure 4A is a flowchart illustrating another ARXML file generation method provided in an embodiment of this application;

[0051] Figure 4B is a flowchart illustrating another ARXML file generation method provided in an embodiment of this application;

[0052] Figure 5 is a schematic diagram of an in-vehicle service development scenario provided in an embodiment of this application;

[0053] Figure 6 is a flowchart illustrating a data processing method provided in an embodiment of this application;

[0054] Figure 7 is a flowchart illustrating another data processing method provided in an embodiment of this application;

[0055] Figure 8 is a schematic diagram of an import interface provided in an embodiment of this application;

[0056] Figure 9 is a schematic diagram of a wizard-driven file generation process provided in an embodiment of this application;

[0057] Figure 10 is a schematic diagram of a wizard-driven file generation interface provided in an embodiment of this application;

[0058] Figure 11 is a schematic diagram of another wizard-driven file generation interface provided in an embodiment of this application;

[0059] Figure 12 is a schematic diagram of a configuration interface provided in an embodiment of this application;

[0060] Figure 13 is a schematic diagram of another configuration interface provided in an embodiment of this application;

[0061] Figure 14 is a schematic diagram of the structure of a data processing device provided in an embodiment of this application;

[0062] Figure 15 is a schematic diagram of the structure of a chip system provided in an embodiment of this application. Detailed Implementation

[0063] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0064] In the embodiments of this application, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this application, unless otherwise stated, "a plurality of" means two or more.

[0065] In this application, the term "at least one" means one or more, and the term "multiple" means two or more. For example, multiple second messages refer to two or more second messages. The terms "system" and "network" are often used interchangeably in this document.

[0066] It should be understood that the terminology used in the description of the various examples described herein is for the purpose of describing the specific examples only and is not intended to be limiting.

[0067] It should also be understood that the term "and / or" as used herein refers to and covers any and all possible combinations of one or more of the associated listed items. The term "and / or" describes an association between related objects, indicating that three relationships can exist; for example, A and / or B can represent: A alone, A and B simultaneously, or B alone. Additionally, the character " / " in this application generally indicates that the preceding and following related objects are in an "or" relationship.

[0068] It should also be understood that, in the various embodiments of this application, the sequence number of each process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0069] It should be understood that the phrases "an embodiment," "an embodiment," and "a possible implementation" used throughout the specification mean that a specific feature, structure, or characteristic related to an embodiment or implementation is included in at least one embodiment of this application. Therefore, the phrases "in an embodiment," "an embodiment," or "a possible implementation" appearing throughout the specification do not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments.

[0070] To facilitate understanding, the relevant terms and concepts involved in the embodiments of this application will be introduced below:

[0071] node:

[0072] The software functions in an electronic control unit (ECU) can be divided into multiple function sets based on functional classification. Each function set may include one or more containers. Containers are used to encapsulate and / or manage software functions, and each container corresponds to one or more configuration parameters.

[0073] In a broad sense, a node can be understood as a container, which has one or more configuration parameters.

[0074] The path of a node can be the node's identifier, and the node's path can include the definition path and the configuration path.

[0075] The definition path of a node is the identifier of the container corresponding to that node in the ECU file; specifically, it can be the category path of that container in the ECU file. The node definition path is used not only to identify the node in the ECU file but also to specify the node's configuration type. The node's configuration type can include one or more of the following: a list of node parameters, the names of configuration parameters in the node's parameter list, the types of configuration parameters in the node's parameter list, or the number of configuration parameters in the node's parameter list. The ECU file is a set of parameters describing the underlying software functions of the ECU. The ECU file can be used to define the specifications that the ECU must conform to.

[0076] In some examples, the types of configuration parameters in the parameter list of a node may include text type, integer type, floating-point type or character type, etc., and this application embodiment does not impose specific restrictions on this.

[0077] The configuration path of a node is its identifier in the configuration file set by the administrator. Specifically, it can be any of the nodes accessed when visiting that node. The configuration path of a node includes the path of its parent node, which is the configuration path of the node's predecessor.

[0078] In some examples, the configuration personnel can create a new node B under node A in the configuration file. The parent node path of the newly created node B is the configuration path of node A, and the configuration path of node B includes the configuration path of node A and the node name of node B.

[0079] Subsequently, the configuration personnel can determine the definition path of the newly created node B. Once the definition path of the newly created node B is determined, its configuration type can also be determined. The configuration personnel can then configure the parameters of the newly created node B based on its configuration type.

[0080] In some examples, the configurator can also modify the configuration parameters of node B in the configuration file, thereby modifying the configuration parameters of the container corresponding to node B in the ECU file.

[0081] AUTOSAR is an open, standardized software architecture jointly developed by global vehicle manufacturers, component suppliers, and electronic software systems companies. AUTOSAR defines ARXML files as the standard AUTOSAR configuration file, based on Extensible Markup Language (XML) files. These ARXML files can store and exchange configuration data for automotive electronic systems.

[0082] ARXML files can include configuration information for underlying software modules, software architecture, and / or communication matrix configuration. During AUT OSAR development, AUTOSAR developers can use AUTOSAR configuration tools to edit ARXML files. For example, they can use these tools to add, delete, or modify the aforementioned configuration information. The edited ARXML file can then generate code using a code generator that conforms to the AUTOSAR specification standard. This code generator is used to generate corresponding code based on the input ARXML file.

[0083] As shown in Figure 1, the code generator can read the required configuration data from an ARXML file and generate code, such as C or C++ code from an ARXML file. The generated code can be applied to in-vehicle devices to implement specific business functions.

[0084] In actual vehicle-mounted service development, different vehicle-mounted services need to follow different industry standards and specifications. Therefore, the standard configuration file formats in different vehicle-mounted services may differ. For example, the standard configuration file for controller area network (CAN) communication is in the format of database controller area network (DBC), the configuration file for local interconnect network (LIN) communication is in the format of local interconnect network description file (LDF), and the configuration file for diagnostic description is in the format of open diagnostic data exchange (ODX).

[0085] In some examples, for customized in-vehicle business scenarios, custom configuration files may also be introduced, such as custom Excel format configuration files.

[0086] The configuration files in the above format cannot be used as input files for the code generator. Therefore, AUTOSAR defines a type of AUTOSAR configuration tool. As shown in Figure 2, this AUTOSAR configuration tool supports inputting standardized configuration files of various formats as well as custom configuration files, and generates ARXML files. These ARXML files contain the specific configuration information for vehicle-mounted services. The code generator can then generate code based on the ARXML files.

[0087] The AUTOSAR configuration tool can integrate multiple AUTOSAR configuration generation engines to adapt to different input configuration files. However, the AUTOSAR configuration generation engines for different configuration files are not interchangeable. For newly added configuration files, a corresponding AUTOSAR configuration generation engine needs to be added to process the new configuration file and obtain the corresponding ARXML file.

[0088] For example, as shown in Figure 3, configuration file A corresponds to configuration generation engine A, and configuration file B corresponds to configuration generation engine B. When a new configuration file C is added, developers need to add a new configuration generation engine C corresponding to configuration file C, and then use configuration generation engine C to generate the corresponding ARXML file for configuration file C.

[0089] In some examples, the AUTOSAR configuration generation engine can adopt a plug-in architecture. A plug-in AUTOSAR configuration generation engine can include a configuration generation framework and one or more configuration generation instances. When adding a new configuration file, developers need to write a corresponding new configuration generation instance and register it with the configuration generation framework. After receiving the new configuration file from the configuration user, the configuration generation framework calls the corresponding new configuration generation instance to generate an ARXML file.

[0090] For example, as shown in Figure 4A, the configuration generation instances integrated in the AUTOSAR configuration tool may include: DBC configuration generation instance 2, LDF configuration generation instance, ODX configuration generation instance, and Excel configuration generation instance, etc.

[0091] If the newly added configuration file is a DBC format configuration file 1, the developer writes a corresponding DBC configuration generation instance 1 for configuration file 1 and registers this DBC configuration generation instance 1 in the configuration generation framework. After receiving configuration file 1 from the configuration user, the configuration generation framework calls the corresponding DBC configuration generation instance 1 to generate the corresponding ARXML file.

[0092] In some examples, the AUTOSAR configuration generation engine can also adopt a scripted architecture. As shown in Figure 4B, the scripted configuration template parser consists of two parts: a script parser and a configuration generation script. The script parser can define a set of standard syntax rules and a series of callable function libraries for loading configuration files or generating ARXML files. When a new configuration file is added, a corresponding configuration generation script needs to be added. When developers write the new configuration generation script, they need to follow the syntax rules defined by the script parser to implement the logic for generating ARXML files from configuration files. The new configuration file and its corresponding new configuration generation script are input into the script parser, which processes them to generate the corresponding ARXML file.

[0093] The above methods, which use plug-in or script-based AUTOSAR configuration generation engines to process configuration files, require configuration personnel to write corresponding AUTOSAR configuration generation engines, such as configuration generation scripts or configuration generation instances, to update the AUTOSAR configuration generation engine. For configuration personnel who use AUTOSAR configuration tools to edit ARXML files, writing an AUTOSAR configuration generation engine is too complex. They must then submit a request for a new configuration generation script or instance, which the developers then use to write the corresponding new AUTOSAR configuration generation engine. This process can take 1-2 months. Given the current trend of increasingly shorter iteration cycles in the automotive industry, the long development cycle of the AUTOSAR configuration generation engine may impact development efficiency and hinder vehicle development progress.

[0094] To address the aforementioned issues, this application proposes a data processing method. In this method, a configuration tool can obtain a configuration file and a corresponding configuration rule file, and obtain a target file based on the configuration file and the configuration rule file. The target file may be, for example, an ARXML file.

[0095] The configuration rule file specifies the rules for converting configuration files to ARXML files. When a new configuration file is added, only the corresponding configuration rule file needs to be added; the ARXML file corresponding to the configuration file can be obtained without updating the configuration tool. This reduces the development and maintenance workload of the configuration tool and improves the efficiency of configuration file processing.

[0096] The embodiments of this application can be applied to configuration tools in various scenarios.

[0097] In some examples, embodiments of this application can be applied to AUTOSAR configuration tools during the operating system configuration development phase in the automotive field. Figure 5 shows a schematic diagram of an application scenario in an embodiment of this application.

[0098] The AUTOSAR configuration tool imports the configuration file entered by the configuration personnel, generates an AUTOSAR configuration file based on this configuration file and its corresponding configuration rule file, and then imports the AUTOSAR configuration file into the AUTOSAR code generator. The AUTOSAR code generator generates code based on the AUTOSAR configuration file. This code can run in vehicle-mounted components, such as vehicle gateway components, LiDAR components, intelligent driving platforms, cockpit components, and / or vehicle control components.

[0099] The AUTOSAR configuration tool can be integrated into a software development kit (SDK), and a license can be used to specify how automotive application developers can use and / or modify the AUTOSAR configuration tool in the SDK.

[0100] For example, automotive manufacturers or automotive component suppliers and other automotive application developers can configure and develop automotive operating systems based on the AUTOSAR configuration tool in the SDK and the corresponding license, generate corresponding ARXML files, obtain code through the AUTOSAR code generator, and run it in the produced automotive components.

[0101] In some examples, embodiments of this application can also be applied to configuration tools in other tree-structured configuration scenarios with a large configuration workload. By generating the required files through configuration files and the corresponding configuration rule files, the required target files can be obtained without updating the configuration tools when adding new configuration files, thereby improving configuration development efficiency.

[0102] The above describes the application scenarios of the embodiments of this application. In some examples, as shown in Figure 6, it is a flowchart of a data processing method provided by the embodiments of this application, which can be applied to the AUTOSAR configuration tool.

[0103] It should be noted that this method is not limited to the specific order shown in Figure 6 and below. It should be understood that in other embodiments, the order of some steps can be interchanged according to actual needs, or some steps can be omitted or deleted. The method includes the following steps:

[0104] S601, the configuration tool obtains the configuration file.

[0105] The configuration file is associated with a first template file containing configuration items and the configuration parameters corresponding to those items.

[0106] In some examples, the first template file can be a file condensed by the configuration personnel from multiple configuration parameters of the vehicle service. Different vehicle services correspond to different first template files.

[0107] In some examples, the configuration items in the in-vehicle service determined by different configuration personnel may be different. Different configuration personnel can condense different first template files from the same in-vehicle service. For example, different configuration personnel may condense different numbers and / or different names of configuration items, thereby obtaining different first template files. This application embodiment does not impose specific limitations on this.

[0108] The configuration file is a file obtained by the configuration personnel by configuring parameters for each configuration item in the first template file. For example, taking the AUTOSAR configuration tool as an example, the AUTOSAR configuration tool stores the first template file. The configuration personnel can fill in the configuration parameters for each configuration item in the first template file based on this first template file, thereby obtaining the configuration file. This configuration file can be imported into the AUTOSAR configuration tool, which then retrieves it. The process of the configuration personnel configuring parameters based on the first template file to obtain the configuration file is described below and will not be repeated here.

[0109] S602. The configuration tool generates the target file corresponding to the configuration file based on the second template file.

[0110] The second template file indicates one or more of the following: the configuration steps required for converting the configuration file to the target file, the path of the node during the conversion, or the parameter list of the node during the conversion; wherein the parameter list of the node may include the configuration items in the first template file mentioned above. The specific content of the configuration steps required for converting the configuration file to the target file, the path of the node during the conversion, or the parameter list of the node during the conversion can be found below and will not be elaborated upon here.

[0111] In some examples, the second template file is the configuration rule file for the first template file. The configuration file is derived from the first template file, and the second template file can indicate the corresponding rules when converting the configuration file to the target file. There is a relationship between the first template file, the second template file, and the configuration file.

[0112] In some examples, the configuration items in the first template file are identical to those included in the parameter list of the nodes in the second template file. The configuration items in the configuration file are also identical to those included in the parameter list of the nodes in the second template file. For instance, taking the AUTOSAR configuration tool as an example, the AUTOSAR configuration tool can generate a target file corresponding to the configuration file based on the second template file and the configuration file.

[0113] The above embodiments describe the process by which the configuration tool, after obtaining the configuration file, generates a template file based on the configuration file and the corresponding second template file. Thus, when the configuration file is updated, the configuration tool determines the second template file corresponding to the configuration file, and can obtain the target file based on the configuration file and the second template file. This eliminates the need to update the configuration tool, reducing the development and maintenance workload of the configuration tool while improving data processing efficiency.

[0114] In some examples, the first template file can be an Excel file; or, the first template file can be an ODX file; or, the first template file can be a DBC file; or, the first template file can be a LIN file. The second template file can be an Excel file; or, the second template file can be a JavaScript object notation (JSON) file, and this application embodiment does not impose specific limitations on this.

[0115] The target file can be an ARXML file, or it can be a file in other formats. This application embodiment does not impose specific limitations on this.

[0116] In this embodiment of the application, the first template file and the second template file can both be in Excel format, and the target file can be in ARXML format as an example.

[0117] The following describes the embodiments of this application using the AUTOSAR configuration tool as an example.

[0118] Figure 7 illustrates how the AUTOSAR configuration tool generates ARXML files based on configuration files and corresponding second template files. Configuration file A corresponds to first template file A and second template file A, and configuration file B corresponds to first template file B and second template file B. In some examples, configuration file C is used as the newly added configuration file for in-vehicle services, first template file C is the first template file, and second template file C is the second template file.

[0119] In some examples, the first template file C can be a file formed by condensing configuration items from multiple configuration parameters in the vehicle service C.

[0120] For example, if there are M configuration parameters in the vehicle service C, these M configuration parameters can be condensed into N configuration items. Here, M and N are positive integers, and M is greater than N.

[0121] In some examples, configuration parameters of the same type in vehicle service C can be condensed into a single configuration item. For instance, vehicle service C may have multiple different request names, which can be condensed into a single configuration item "Request Name".

[0122] Alternatively, a configuration parameter in vehicle service C can be condensed into a single configuration item. For example, a "request identifier" in vehicle service C can be condensed into a single configuration item called "request identifier". Similarly, a "response identifier" in vehicle service C can be condensed into a single configuration item called "response identifier".

[0123] Alternatively, other content in the vehicle service C can be condensed into a single configuration item. For example, if the request identifier in the vehicle service C needs to be sent or received through a network port, the network port for sending or receiving the request identifier can be condensed into a single configuration item "Network Port Name"; or, the network port for sending or receiving the request identifier can also be condensed into a single configuration item "Controller Name"; or, the network port for sending or receiving the request identifier can also be condensed into one or more other configuration items.

[0124] It should be understood that the above-mentioned basis for condensing the configuration parameters in vehicle service C into configuration items is only one example. Configuration personnel can also condense the configuration parameters in vehicle service C into configuration items according to other considerations. This application embodiment does not impose specific restrictions on this.

[0125] In some examples, different configuration personnel can condense different numbers and / or different names of configuration items from the same in-vehicle service C, resulting in different first template files C. This application embodiment does not impose specific limitations on this. Each configuration item may correspond to at least one configuration parameter. Subsequent configuration personnel can fill in the configuration parameters corresponding to each configuration item in the first configuration file C to obtain the configuration file C.

[0126] In some examples, the first template file C may also include a name for the first template file C. The name of the first template file C can be determined based on the vehicle service C, indicating the vehicle service C corresponding to the first template file C, so that configuration personnel can distinguish the relationship between the first template file and the vehicle service. Alternatively, the name of the first template file C can also be other names defined by the configuration personnel; this application embodiment does not impose specific limitations on this.

[0127] In some examples, the first template file C may also include a first identifier. The first identifier can be used to identify the first template file. The first identifier can be a universally unique identifier (UUID); or, the first identifier can be other identifiers defined by the configuration personnel, such as the first identifier being C1, etc., and this application embodiment does not impose specific limitations on this.

[0128] For example, taking the first template file C, which includes 5 configuration items, as shown in Table 1 below:

[0129] Table 1

[0130] As shown in Table 1, the first template file C may include the name of the first template file C, the first identifier of the first template file C, and five configuration items. The names of these five configuration items can be: Configuration Item A, Configuration Item B, Configuration Item C, Configuration Item D, and Configuration Item E.

[0131] In some examples, subsequent configuration personnel can fill in the configuration parameters corresponding to each configuration item in the first template file C in order to generate configuration file C.

[0132] Specifically, this application embodiment can take the vehicle service C as an example of the CAN diagnostic gateway routing configuration service to introduce the first template file C.

[0133] For example, according to the requirements of the AUTOSAR configuration file, the CAN diagnostic gateway routing configuration service needs to configure the following parameters: Pdu of the EcuC module; CanIf RxPduCfg and CanIfTxPduCfg of the CanIf module; CanTpChannel, CanTpRxNSdu, CanTpRxNPdu, CanTpTxFcNPdu, CanTpTxNSdu, CanTpTxNPdu and CanTpRxFcNPdu of the CanTp module; and PduRSrcPdu, PduRDestPdu and PduRRoutingPath of the PduR module.

[0134] The Pdu of the EcuC module can include parameters such as ecuc_canif_req_npdu:EcuC_Pdu, ecuc_canif_resp_npdu:EcuC_Pdu, ecuc_cantp_req_nsdu:EcuC_Pdu, and ecuc_cantp_resp_nsdu:EcuC_Pdu on the source side; and parameters such as ecuc_canif_req_npdu:EcuC_Pdu, ecuc_canif_resp_npdu:EcuC_Pdu, ecuc_cantp_req_nsdu:EcuC_Pdu, and ecuc_cantp_resp_nsdu: on the destination side.

[0135] The CanIf module can include parameters such as canif_req_npdu:CanIfRxPduCfg and canif_resp_npdu:CanIfTxPduCfg on the source side, and canif_req_npdu:CanIfTxPduCfg and canif_resp_npdu:CanIfRxPduCfg on the destination side.

[0136] The CanTp module can include parameters such as cantp_src_channel:CanTpChannel and cantp_dest_channel:CanTpChannel.

[0137] The parameter `cantp_src_channel:CanTpChannel` can include parameters such as `cantp_req_nsdu:CanTpRxNSdu` and `cantp_resp_nsdu:CanTpTxNSdu`. Similarly, `cantp_req_nsdu:CanTpRxNSdu` can include parameters such as `cantp_req_npdu:CanTpRxNPdu` and `cantp_req_txfc_npdu:CanTpTxFcNPdu`. Finally, `cantp_resp_nsdu:CanTpTxNSdu` can include parameters such as `cantp_resp_npdu:CanTpTxNPdu` and `cantp_resp_rxfc_npdu:CanTpRxFcNPdu`.

[0138] The parameter `cantp_dest_channel:CanTpChannel` can include parameters such as `cantp_req_nsdu:CanTpTxNSdu` and `cantp_resp_nsdu:CanTpRxNSdu`. Similarly, `cantp_req_nsdu:CanTpTxNSdu` can include parameters such as `cantp_req_npdu:CanTpTxNPdu` and `cantp_req_rxfc_npdu:CanTpRxFcNPdu`. Finally, `cantp_resp_nsdu:CanTpRxNSdu` can include parameters such as `cantp_resp_npdu:CanTpRxNPdu` and `cantp_resp_txfc_npdu:CanTpTxFcNPdu`.

[0139] The PduR module can include parameters such as: pdur_req_src_pdu:PduRSrcPdu, pdur_req_dest_pdu:PduRDestPdu, pdur_req_routingpath:PduRRoutingPath, pdur_resp_src_pdu:PduRSrcPdu, pdur_resp_dest_pdu:PduRDestPdu, and pdur_resp_routingpath:PduRRoutingPath.

[0140] In some examples, the configuration personnel can condense the configuration items from multiple configuration parameters in the above-mentioned CAN diagnostic gateway routing configuration service to obtain the first template file C containing the configuration items.

[0141] For example, configuration personnel can condense multiple parameters in the above-mentioned CAN diagnostic gateway routing configuration service into 5 configuration items, which can be diagnostic route name, diagnostic request identifier (ID), diagnostic response identifier, diagnostic source controller name, and diagnostic destination controller name.

[0142] In some examples, the first template file C for the CAN diagnostic gateway routing configuration service can be named "CAN Diagnostic Gateway Routing First Template File". Configuration personnel can quickly identify the corresponding in-vehicle service based on this name, improving the user experience. Alternatively, the first template file for the CAN diagnostic gateway routing configuration service can also be named differently; this application embodiment does not impose specific limitations on this.

[0143] In some examples, the first identifier of the first template file C for the Can diagnostic gateway routing configuration service can be a UUID, such as 1465d5b7-658c-46d9-89f7-c49de7e7938e. The first identifier of the first template file for the Can diagnostic gateway routing configuration service can also be other than that. This application embodiment does not impose specific restrictions on this.

[0144] For example, the first template file C for the CAN diagnostic gateway routing configuration service can be shown in Table 2 below:

[0145] Table 2

[0146] As shown in Table 2, the first template file C for the CAN diagnostic gateway routing configuration service is named "CAN Diagnostic Gateway Routing First Template File", and its first identifier is UUID: 1465d5b7-658c-46d9-89f7-c49de7e7938e. The five configuration items are: diagnostic route name, diagnostic request identifier, diagnostic response identifier, diagnostic source controller name, and diagnostic destination controller name.

[0147] In some examples, subsequent configuration personnel can fill in the configuration parameters corresponding to each configuration item in the first template file C to obtain the configuration file C for the Can diagnostic gateway routing configuration service, and then import it into the AUTOSAR configuration tool.

[0148] The above provides an example of the first template file C. In some examples, the first template file C corresponds to a second template file C, which is the configuration rule file for the first template file C.

[0149] In some examples, the second template file C may include one or more of the following: the name of the second template file C, the second identifier of the second template file C, the configuration steps, the definition path of the node under each step, the parent node path of the node, or the configuration parameters of the node.

[0150] The name of the second template file C can be determined based on the vehicle service C, indicating the vehicle service C corresponding to the second template file C, so that the configuration personnel can distinguish the relationship between the second template file and the vehicle service. Alternatively, the name of the second template file C can also be other names defined by the configuration personnel, and this embodiment of the application does not impose specific restrictions on this.

[0151] In some examples, the name of the second template file C can be the same as the model of the first template file C. This application does not impose specific restrictions on this.

[0152] In some examples, the second template file C includes a second identifier. This second identifier can be used to identify the second template file. The second identifier can be a UUID set by the configurator that is the same as the UUID of the first template file; alternatively, the second identifier can be another identifier customized by the configurator that is the same as the first identifier of the first template file. For example, both the first and second identifiers can be C1, etc. This application embodiment does not impose specific limitations on this.

[0153] In some examples, the AUTOSAR configuration tool can determine whether the first template file C and the second template file C match using the first identifier and the second identifier.

[0154] In some examples, the configuration steps may include at least one step.

[0155] For example, the configuration steps can be S1 and S2.

[0156] In some examples, each configuration step can be to create a new node, which has a defined path, a parent node path, and configuration parameters for the node.

[0157] In some examples, the definition path of a node can be a constant string, which is the identifier of the container corresponding to the node in the ECU file. The container corresponding to the node can be determined based on the definition path of the node, and the container can specify the configuration type of the node.

[0158] The configuration type of a node may include one or more of the following: a list of parameters for the node, the name of the configuration parameter in the list of parameters for the node, the type of the configuration parameter in the list of parameters for the node, or the number of configuration parameters in the list of parameters for the node.

[0159] The parameter list of a node can be a list of configuration parameters that the node needs to configure, including the name of the configuration parameter, the number of configuration parameters, and the type of configuration parameter. For example, if the parameter list can be P11 and P12, then the number of configuration parameters is 2.

[0160] The types of configuration parameters in the node's parameter list can include text, integer, floating-point, or character types, etc., and this application embodiment does not impose specific restrictions on them.

[0161] In some examples, the parent node path of a node is the configuration path of the parent node in the node's configuration path. The parent node path of a node can be a constant string representing a fixed node. Alternatively, the parent node path of a node can also be the result of a configuration step. For example, if the result of the configuration step is the creation of node 1, then the parent node path of that node is the configuration path of node 1. This application embodiment does not impose specific limitations on this.

[0162] In some examples, when the parent path of a node is the result of a configuration step, a fourth identifier can be set in the parent path of the node. This fourth identifier can indicate that the parent path of the node references the result of the corresponding configuration step.

[0163] For example, the parent node path of a node can be: "Fourth Identifier S1". The parent node path of a node is the result of configuration step S1.

[0164] In some examples, the fourth identifier can be a special character, or the configuration personnel can represent the fourth identifier in other ways. This application embodiment does not impose specific restrictions on this.

[0165] For example, the fourth identifier can be the special character "$", then the parent node path of the node can be "$S1".

[0166] In this way, the result of the configuration steps is used as the parent node path of the node, which simplifies the writing process of the second template file C and improves efficiency.

[0167] In some examples, the list of configuration parameters for a node includes the node's configuration parameter name and the configuration parameter corresponding to that name, which can be represented as "configuration parameter name: configuration parameter corresponding to the node's configuration parameter name".

[0168] The configuration parameter names of the nodes can be names such as P11, P12, etc. Alternatively, the configuration parameter names of the nodes can be other names specified in the node's definition path, such as ShortName or PduLength. This embodiment of the application does not impose specific restrictions on this.

[0169] The configuration parameters corresponding to the node's configuration parameter name may include one or more of the following: configuration parameters corresponding to the configuration items in the first template file C, constant strings, numbers, the results of configuration steps, or the name of the node.

[0170] For example, the configuration parameter corresponding to the configuration parameter name of a node is: the configuration parameter corresponding to configuration item A; or, the configuration parameter corresponding to the configuration parameter name of a node is the number 8, 16, 32 or 64, etc.; or, the configuration parameter corresponding to the configuration parameter name of a node is the result of configuration step S1.

[0171] In some examples, when the configuration parameter name of a node corresponds to the configuration parameter of a configuration item, the configuration parameter of the configuration item can be set with a fourth identifier. The fourth identifier can indicate that the configuration parameter name of the node references the configuration parameter of the configuration item in the first template file C.

[0172] For example, the fourth identifier can be the special character "$", then the configuration parameter corresponding to the configuration item can be: "$[configuration parameter corresponding to configuration item A]". The configuration parameter name of a node can reference the configuration parameter corresponding to configuration item A.

[0173] In this way, referencing the configuration parameters corresponding to the configuration items as the configuration parameters corresponding to the node's configuration parameter name simplifies the writing process of the second template file C and improves efficiency.

[0174] In some examples, the configuration parameter name of a node corresponds to the configuration parameter of a configuration item. When the configuration item is a name, the configuration parameter name of a node can include a name identifier so that when the same name is referenced multiple times, the name identifier is different, and the name referenced each time can be distinguished.

[0175] For example, a configuration item can be a name, and the configuration parameter corresponding to the item can be: "Name identifier [Configuration parameter corresponding to configuration item A]". For instance, the name identifier can be represented by characters, such as the character Q, etc., and this embodiment does not impose specific limitations on this. Then the configuration parameter corresponding to the configuration item can be: "Q [Configuration parameter corresponding to configuration item A]".

[0176] In some examples, when the configuration parameter name of a node corresponds to the result of a configuration step, the configuration step can also be set with a fourth identifier, which can indicate that the configuration parameter name of the node references the result of the configuration step.

[0177] For example, the fourth identifier can be the special character "$", then the result of the configuration step can be "$S1". The configuration parameter name of the node can refer to the result of configuration step S1.

[0178] In some examples, the node name may include the configuration parameters corresponding to the configuration items in the first template file C, as well as the node name identifier. The node name may also include a fourth identifier, indicating that the node name references the configuration parameters corresponding to the configuration items in the first template file C.

[0179] For example, the name of a node can be "the configuration parameter corresponding to the fourth identifier configuration item of the node name".

[0180] The node name identifier can be represented by characters, such as the character H or the character M, and this application embodiment does not impose specific restrictions on this.

[0181] In some examples, multiple different node names may correspond to the same configuration parameter for multiple nodes. This application does not impose specific limitations on this.

[0182] For example, the node name can be "H$[configuration parameters corresponding to configuration item A]" and / or "M$[configuration parameters corresponding to configuration item A]", etc.

[0183] For example, the second template file C can be as shown in Table 3 below:

[0184] Table 3

[0185] As shown in Table 3 above, the second template file C may include the name of the second template file C, the second identifier of the second template file C, the configuration steps, the definition path of the node under each step, the parent node path, and the configuration parameters of the node.

[0186] The configuration steps may include N steps such as S1, S2, S3, S4...SN.

[0187] In configuration step S1, the newly created node is defined by the path aaa / bbb / ccc, and its parent node is xxx / yyy. The node's parameter list in S1 includes P11 and P12. The parameter types in the node's parameter list can be: P11 is text type, and P12 is integer type. The number of configuration parameters in the node's parameter list is 2. P11 is the node name, and the configuration parameter corresponding to P11 is: H$[configuration parameter corresponding to configuration item A], where "$" indicates referencing the configuration parameter corresponding to configuration item A, and H is the node name identifier. The configuration parameter corresponding to P12 is 64.

[0188] In configuration step S2, the defined path of the newly created node is aaa / bbb / ccc, which is the same as the defined path of the node in configuration step S1. Therefore, the configuration type of the node in S2 is also the same as the configuration type of the node in S1. The parent node path of the node is xxx / yyy, which is the same as the defined path of the node in configuration step S1. The parameter list of the node in S2 includes P11 and P12; the types of the configuration parameters in the node's parameter list are: P11 is text type, and P12 is integer type. The number of configuration parameters in the node's parameter list is 2. Among them, P11 is the name of the node, and the configuration parameter corresponding to P11 is: M$[configuration parameter corresponding to configuration item A], where "$" is used to indicate referencing the configuration parameter corresponding to configuration item A, and M is the node name identifier. The configuration parameter corresponding to P12 is 8.

[0189] In configuration step S3, the newly created node is defined by the path aaa / ccc, and its parent node is uuu. The node's parameter list includes P31 and P32. The parameter types in both P31 and P32 are text. The node's parameter list contains two parameters. P31 is the node name, and its corresponding configuration parameter is N$[configuration parameter corresponding to configuration item A], where "$" indicates referencing the configuration parameter corresponding to configuration item A, and N is the node name identifier. The configuration parameter corresponding to P32 is $S1, where "$" indicates referencing the result of configuration step S1.

[0190] In configuration step S4, the newly created node is defined by the path aaa / bbb / ddd, and its parent node is $S1. The node's parameter list includes P41 and P42. The types of the configuration parameters in the node's parameter list are: P41 is text type, and P42 is text type. The number of configuration parameters in the node's parameter list is 2. P41 is the node name, and the configuration parameter corresponding to P41 is: P$[configuration parameter corresponding to configuration item A], where "$" indicates referencing the configuration parameter corresponding to configuration item A, and P is the node name identifier. The configuration parameter corresponding to P42 is Q$[configuration parameter corresponding to configuration item B], where "$" indicates referencing the configuration parameter corresponding to configuration item B, and Q is the name identifier.

[0191] The above introduces an example of the second template file C. Specifically, taking the vehicle service C as an example of the CAN diagnostic gateway routing configuration service, the second template file C will be introduced.

[0192] In some examples, the name of the second template file for the Can Diagnostic Gateway Routing Configuration service can be referenced from the name of the first template file for the Can Diagnostic Gateway Routing Configuration service, such as "Can Diagnostic Gateway Routing Second Template File". Based on this name, the configuration personnel can quickly identify the first template file corresponding to the second template file and the vehicle service, thus improving the user experience for the configuration personnel.

[0193] In some examples, the second identifier of the second template file of the CAN diagnostic gateway routing configuration service matches the first identifier of the first template file of the CAN diagnostic gateway routing configuration service. For example, the second identifier of the second template file is the same as the first identifier of the first template file, both being UUID: 1465d5b7-658c-46d9-89f7-c49de7e7938e. This application embodiment does not impose specific limitations on this.

[0194] For example, the second template file C for the CAN diagnostic gateway routing configuration service can be shown in Table 4 below:

[0195] Table 4

[0196] As shown in Table 4, the second template file C for the CAN diagnostic gateway routing configuration service is named "CAN Diagnostic Gateway Routing Second Template File", and its second identifier is UUID: 1465d5b7-658c-46d9-89f7-c49de7e7938e. The configuration steps include N steps such as S1, S2, S3, S4...SN.

[0197] In configuration step S1, the node definition path is AUTOSAR / XXXXDefs / EcuC / EcucConfigSet / EcucPduCollection / Pdu, and the parent node path is / XXXOS / EcucCfgVals / EcuC / EcucConfigSet / EcucPduCollection. The node parameter list in S1 can include ShortName and PduLength. The configuration parameter types in the node parameter list can be: ShortName is text type, and PduLength is integer type. The number of configuration parameters in the node parameter list can be 2. ShortName can be the node name, and the configuration parameter corresponding to ShortName is: EcuC_Pdu_CanIf_Req_Src_$[diagnostic route name], where "$" indicates referencing the configuration parameter corresponding to the diagnostic route name, and EcuC_Pdu_CanIf_Req_Src_ is the node name identifier. The configuration parameter corresponding to PduLength is 64.

[0198] In configuration step S2, the node definition path is AUTOSAR / XXXXDefs / EcuC / EcucConfigSet / EcucPduCollection / Pdu, which is the same as the node definition path in configuration step S1. Therefore, the configuration type of the node in S2 is also the same as the configuration type of the node in S1. The parent node path is / XXXOS / EcucCfgVals / EcuC / EcucConfigSet / EcucPduCollection, which is the same as the node definition path in configuration step S1. The parameter list of the node in S2 includes ShortName and PduLength; the types of the configuration parameters in the node's parameter list are: ShortName is text type, and PduLength is integer type. The number of configuration parameters in the node's parameter list is 2. Here, ShortName is the name of the node, and the configuration parameter corresponding to ShortName is: EcuC_Pdu_CanIf_Resp_Src_$[diagnostic route name], where "$" indicates that the configuration parameter corresponding to the diagnostic route name is referenced. EcuC_Pdu_CanIf_Resp_Src_ is the node name identifier. The configuration parameter corresponding to PduLength is 8.

[0199] In configuration step S3, the node definition path is / AUTOSAR / XXXXDefs / CanIf / CanIfInitCfg / CanIfRxPduCfg, and the parent node path is / XXXOS / EcucCfgVals / CanIf / CanIfInitCfg. The node's parameter list includes ShortName and P32. The configuration parameter types in the node's parameter list are: ShortName is text type, and CanIfRxPduRef is text type. The number of configuration parameters in the node's parameter list is 2. ShortName is the node name, and the configuration parameter corresponding to ShortName is: CanIfRxPduCfg_CanIf_R-eq_S--rc_$[diagnostic route name], where "$" indicates referencing the configuration parameter corresponding to the diagnostic route name. CanIfRxPduCfg_CanIf_R-eq_S--rc_ is the node name identifier. The configuration parameter corresponding to CanIfRxPduRef is $S1, where "$" indicates referencing the result of configuration step S1.

[0200] In configuration step S4, the node definition path is / AUTOSAR / XXXXDefs / CanTp / CanTpConfig / CanTpChannel / CanTpRx--NSdu / CanTpRxNPdu, and the parent node path is $S1. The node's parameter list includes ShortName, CanIfRxPduCanId, and CanIfRxPduHrhIdRef. The types of the configuration parameters in the node's parameter list are: ShortName (text type), CanIfRxPduCanId (text type), and CanIfRxPduHrhIdRef (text type). The number of configuration parameters in the node's parameter list is 2. ShortName is the node name, and the configuration parameter corresponding to ShortName is: CanTpRxNPdu_Src_Req_[diagnostic route name]. The "$" sign indicates that the configuration parameter corresponding to configuration item A is referenced. CanTpRxNPdu_Src_Req_ is the node name identifier. The configuration parameter corresponding to CanIfRxPduCanId is $[Diagnostic Request Identifier], where "$" indicates that the configuration parameter corresponding to the diagnostic request identifier is referenced. The configuration parameter corresponding to CanIfRxPduHrhIdRef is hrh_$[Diagnostic Source Controller Name], where "$" indicates that the configuration parameter corresponding to the diagnostic source controller name is referenced, where hrh_ is the name identifier.

[0201] The above describes one example of a second template file C. In some examples, the first template file C and the second template file C can be obtained in various ways.

[0202] For example, the first template file C and the second template file C can be manually created by the configuration personnel, or they can be obtained through a wizard-based method. Alternatively, the first template file C can be manually created by the configuration personnel, and the second template file C can be obtained through a wizard-based method. Alternatively, the second template file C can be manually created by the configuration personnel, and the first template file C can be obtained through a wizard-based method. Alternatively, the AUTOSAR configuration tool can also obtain the first template file C and the second template file C through other methods; this embodiment does not impose specific limitations on these methods.

[0203] Once the configuration personnel have manually created the first template file C and the second template file C, they can import the first template file C and the second template file C into the AUTOSAR configuration tool so that the AUTOSAR configuration tool can obtain the first template file C and the second template file C.

[0204] In some examples, the AUTOSAR configuration tool can display an import interface that may include import controls for importing the first template file C and the second template file C mentioned above.

[0205] For example, as shown in Figure 8(a), the AUTOSAR configuration tool displays an import interface 80, which includes an import control 801. The configuration user can trigger the import control 801. In response to the user's triggering of the import control 801, the import interface 80 can display an import file interface 81 as shown in Figure 8(b). This interface 81 may include a first template file C to be imported, a second template file C, and a confirmation control 811. Alternatively, the interface 81 may also include other files; this embodiment does not impose specific limitations. The configuration user can select the first template file C and the second template file C, and trigger the confirmation control 811 to import the first template file C and the second template file C into the AUTOSAR configuration tool.

[0206] In some examples, the AUTOSAR configuration tool can verify whether the first identifier of the first template file C matches the second identifier of the second template file C. If the first identifier of the first template file C matches the second identifier of the second template file C, the AUTOSAR configuration tool can retrieve both the first and second template files, and the import of both template files is successful. If the first identifier of the first template file C does not match the second identifier of the second template file C, the import of both template files fails.

[0207] In some examples, the AUTOSAR configuration tool can also pre-import a first template file C and then import a second template file C. When importing the second template file C, the AUTOSAR configuration tool can verify whether the second identifier of the second template file C matches the first identifier of the stored first template file C. If the first identifier of the first template file C matches the second identifier of the second template file C, the AUTOSAR configuration tool can obtain the second template file C, and the import of the second template file C is successful. If the first identifier of the first template file C does not match the second identifier of the second template file C, the import of the second template file C fails. Alternatively, the AUTOSAR configuration tool can also pre-import the second template file C and then import the first template file C. This application embodiment does not impose specific limitations on this.

[0208] This allows the first template file C and the second template file C stored in the AUTOSAR configuration tool to match, so that the ARXML file can be obtained subsequently through the first template file C and the second template file C.

[0209] When the first template file C and the second template file C are obtained through a wizard-driven approach, the AUTOSAR configuration tool can guide the configuration personnel to complete the process of obtaining the first template file C and the second template file C through a wizard-driven instruction interface. This improves the efficiency of obtaining the first template file C and the second template file C and reduces the workload of the configuration personnel.

[0210] In some examples, the AUTOSAR configuration tool obtains the first template file C and the second template file C through a wizard-driven approach. The AUTOSAR configuration tool can guide the configuration personnel to complete the first template file C and the second template file C through an editing interface. Alternatively, the AUTOSAR configuration tool can guide the configuration personnel to complete the first template file C through a first editing interface and the second template file C through a second editing interface. This application embodiment does not impose specific limitations on this approach.

[0211] This application example uses the AUTOSAR configuration tool to guide configuration personnel to complete the first template file C and the second template file C through the editing interface.

[0212] In some examples, as shown in Figure 9, the process of obtaining the first template file C and the second template file C through a wizard-driven approach is illustrated. The AUTOSAR configuration tool can create a template file wizard in response to the configuration user's actions and receive the first content from the configuration user. Based on the first content, the AUTOSAR configuration tool can generate the first template file C and the second template file C, and the AUTOSAR configuration tool can export the generated first template file C and the second template file C.

[0213] In some examples, the AUTOSAR configuration tool can store records of generating a first template file C and a second template file C using a template file wizard and first content. When the configuration personnel need to modify the generated first template file C and second template file C, they can select the template file wizard corresponding to the first template file C and the second template file C, and modify the previously entered first content based on the template file wizard, thereby modifying the first template file C and the second template file C.

[0214] For example, Figure 10 shows a schematic diagram of the interface for obtaining the first template file C and the second template file C through a wizard-driven process. The AUTOSAR configuration tool includes an editing interface 100, which includes node 1, node 2, configuration node controls, and parameter list controls for the configuration nodes. The name of node 1 is xxx, and the defined node path is aaa. The name of node 2 is yyy, the parent node path is xxx, and the defined node path is aaa / bbb.

[0215] The configuration personnel can create a new node 3 under node 2. The parent node path of node 3 is xxx / yyy, and the configuration personnel can set the name of node 3 to zzz and define the node path as aaa / bbb / ddd.

[0216] Based on the defined path of node 3, the configuration parameter list for node 3 is determined. The configuration user can trigger node 3, i.e., configure node control 1001. The AUTOSAR configuration tool responds to this action by displaying window 101. For example, the configuration user can double-click configuration node control 1001, and the AUTOSAR configuration tool will then display window 101.

[0217] Window 101 includes a list of configuration parameters for node 3. The list of configuration parameters includes: the name of the configuration parameter P11, the parameter list control 1002 of the configuration node corresponding to P11, the name of the configuration parameter P12, and the parameter list control 1003 of the configuration node corresponding to P12.

[0218] Afterwards, the configuration personnel can fill in the parameter list control 1002 and the parameter list control 1003 of the configuration node. The AUTOSAR configuration tool responds to the configuration personnel's operation of filling in the parameter list control 1002 and the parameter list control 1003 of the configuration node and determines the configuration parameters of node 3.

[0219] It should be understood that the nodes and the list of configuration parameters of the nodes in Figure 10 above are only examples. The nodes in the editing interface may include more or fewer nodes, and the list of configuration parameters of the nodes may include more or fewer configuration parameters. This application embodiment does not impose specific limitations on this.

[0220] For example, the configuration parameters for P11 filled in by the configuration personnel are: H$[configuration parameters corresponding to configuration item A], and the configuration parameters for P12 are: 64.

[0221] For example, the AUTOSAR configuration tool can generate Tables 5 and 6 based on the first content input by the configuration user, where Table 5 is the first template file C and Table 6 is the second template file C:

[0222] Table 5

[0223] As shown in Table 6, the first template file C includes configuration item A.

[0224] Table 6

[0225] As shown in Table 6, the second template file C includes configuration step S1, the definition path of the newly created node is aaa / bbb / ddd, the parent node path of the node is xxx / yyy, and the configuration parameters of the node are P11:H$[configuration parameters corresponding to configuration item A],P12:64.

[0226] In some examples, the configuration personnel can also continue to create new nodes according to the needs of the vehicle service C. After the template file wizard process for vehicle service C is completed, the AUTOSAR configuration tool generates a first template file C and a second template file C based on the content entered by the configuration personnel.

[0227] This application example uses the vehicle service C as an example of the CAN diagnostic gateway routing configuration service to introduce the wizard-driven configuration process of the first template file C and the second template file C of this service.

[0228] In some examples, the CAN diagnostic gateway route configuration service can be: performing configuration operations based on the existing configuration of the CAN diagnostic gateway route. The CAN diagnostic gateway route configuration base includes one or more nodes, which can represent some basic configurations such as some build settings of the CAN diagnostic gateway route.

[0229] For example, as shown in Figure 11, the AUTOSAR configuration tool obtains the first template file C and the second template file C in a wizard-driven manner. Figure 11(a) is the template file creation wizard interface 110, which includes a template file name control 1101, a completion control 1102, a new node control 1103, and a cancel control 1104.

[0230] The configuration personnel can enter the names of the first template file C and the second template file C in the template file name control 1101. For example, the configuration personnel can enter the names of the first template file C and the second template file C as "Can Diagnose Gateway Routing". Subsequently, the first template file C output by the AUTOSAR configuration tool will be named "Can Diagnose Gateway Routing First Template File" and the second template file C will be named "Can Diagnose Gateway Routing Second Template File".

[0231] Afterwards, the configuration personnel can trigger the new node control 1103. In response to the configuration personnel triggering the new node control 1103, the AUTOSAR configuration tool can display the interface 111 shown in Figure 11(b). This interface 111 includes multiple nodes, whose names can be EcuC, Pdus, etc. These nodes are existing configuration base nodes in the AUTOSAR configuration tool. The configuration personnel can trigger the add (ADD) control of one of the nodes, for example, triggering the ADD control 1111 of the Pdus node. In response to the configuration personnel triggering the ADD control 1111, the AUTOSAR configuration tool creates a new node under that node and displays the selectable definition node path Pdu under that node, as well as the definition node path control 1112 corresponding to that definition node path Pdu. The configuration user can select the node path definition control 1112. In response to this selection, the AUTOSAR configuration tool displays interface 112, which includes a list of configuration parameters for the new node, a completion control 1121, and a cancellation control 1122. The configuration parameter list includes ShortName, a corresponding configuration parameter list control 1123, PduLength, and a corresponding configuration parameter list control 1124. ShortName is the name of the new node, and PduLength is an integer. The configuration user can fill in the configuration parameter list controls 1123 and 1124. In response, the AUTOSAR configuration tool determines the configuration parameters corresponding to ShortName and PduLength. For example, the configuration parameter list control 1123 for ShortName can be filled in as EcuC_Pdu_CanIf_Req_Src_$[diagnostic route name], and the configuration parameter list control 1124 for PduLength can be filled in as 64.

[0232] After the configuration personnel complete the form, they can trigger the completion control 1121. The AUTOSAR configuration tool, in response to this action, completes the node creation and displays interface 110. Alternatively, the configuration personnel can trigger the cancellation control 1122. The AUTOSAR configuration tool, in response, cancels the node creation and displays interface 110.

[0233] It should be understood that the list of selectable node paths and configuration parameters for the above-mentioned nodes is only an example. The list of selectable node paths and configuration parameters for the nodes may include more or fewer options, and this application embodiment does not impose specific limitations on this.

[0234] Subsequently, the configuration personnel can continue to trigger the "Create New Node" operation on interface 110 to create new nodes.

[0235] In some examples, the parent node of the newly created node can be an existing configuration base node in the AUTOSAR configuration tool; or, the parent node of the newly created node can be the result of a previous configuration step, such as the parent node of the newly created node being a node created in a previous configuration step. For example, the parent node of the newly created node can be the node EcuC_Pdu_CanIf_Req_Src_$[diagnostic route name] created in configuration step S1. This application embodiment does not impose specific limitations on this.

[0236] In some examples, after the node corresponding to the Can diagnostic gateway routing configuration service is created, the configuration personnel can trigger the completion control 1102 on the interface 110. In response to the configuration personnel triggering the completion control 1102, the AUTOSAR configuration tool generates and obtains the first template file C "Can Diagnostic Gateway Routing First Template File" and the second template file C "Can Diagnostic Gateway Routing Second Template File" corresponding to the Can diagnostic gateway routing configuration service.

[0237] In some examples, if the node creation corresponding to the Can diagnostic gateway routing configuration service is incorrect, the configuration personnel can trigger the completion cancellation control 1104 on interface 110. The AUTOSAR configuration tool responds to the configuration personnel's operation of triggering the cancellation control 1104 and cancels the template creation for the Can diagnostic gateway routing configuration service.

[0238] The above embodiments describe the process by which configuration personnel configure the first template file C and the second template file C in a wizard-driven manner through the configuration interface. The AUTOSAR configuration tool can obtain the first template file C and the second template file C, thereby improving the efficiency of the AUTOSAR configuration tool in obtaining the first template file C and the second template file C.

[0239] In some examples, after obtaining the first template file C and the second template file C, the AUTOSAR configuration tool can store the first template file C and the second template file C in the template file repository of the AUTOSAR configuration tool. Alternatively, the AUTOSAR configuration tool can store the first template file C and the second template file C in a template file repository connected to the AUTOSAR configuration tool. This application embodiment does not impose specific limitations on this.

[0240] In some examples, the first template file C and the second template file C can be stored in the same template file repository. Alternatively, the first template file C and the second template file C can be stored in different template file repositories. For example, the first template file C can be stored in the first template file repository, and the second template file C can be stored in the second template file repository. This application embodiment does not impose specific limitations on this.

[0241] As shown in Figure 7, this embodiment of the application uses the example of storing a first template file C in a first template file repository and storing a second template file C in a second template file repository.

[0242] In some examples, after the AUTOSAR configuration tool imports the first template file C and the second template file C, it can also export the first template file C and / or the second template file C. The configuration personnel can modify the first template file C and / or the second template file C. After the modification is completed, the first template file C and / or the second template file C are imported into the AUTOSAR configuration tool. The AUTOSAR configuration tool responds to the configuration personnel's operation of importing the first template file C and / or the second template file C by obtaining the imported first template file C and / or the second template file C.

[0243] In this way, configuration personnel can quickly modify the first template file C and / or the second template file C, preventing errors in the first template file C and / or the second template file C from being delayed and affecting the generation of the ARXML file.

[0244] Subsequently, the configuration personnel can generate configuration file C based on the first template file C, and import configuration file C into the AUTOSAR configuration tool. The AUTOSAR configuration tool will then retrieve configuration file C in response to the configuration personnel's import of configuration file C.

[0245] In some examples, the AUTOSAR configuration tool can generate a configuration interface based on a first template file C, instructing the configuration personnel to configure the configuration file C corresponding to the first template file C. The configuration interface includes configuration items and corresponding configuration controls for each item. The configuration personnel can configure each item, and the AUTOSAR configuration tool responds to the configuration personnel's actions by obtaining the configuration file C.

[0246] For example, as shown in Figure 12, the configuration interface 120 of the AUTOSAR configuration tool includes the name of the first template file C, the first identifier of the first template file C, configuration item A, configuration item B, configuration item C, configuration item D and configuration item E, and each configuration item corresponds to at least one configuration control.

[0247] The configuration personnel can perform configuration operations on the configuration controls of the configuration items. The configuration interface 120 of the AUTOSAR configuration tool responds to the configuration personnel's configuration operations on the configuration controls of the configuration items and generates a configuration file C.

[0248] For example, a configuration user can enter configuration parameter A1 corresponding to configuration item A in configuration control 1201. Configuration interface 120, in response to the configuration user's input of configuration parameter A1 corresponding to configuration item A in configuration control 1201, determines configuration parameter A1 corresponding to configuration item A.

[0249] Similarly, the configuration personnel can configure the configuration parameter B1 corresponding to configuration item B, the configuration parameter C1 corresponding to configuration item C, the configuration parameter D1 corresponding to configuration item D, and the configuration parameter E1 corresponding to configuration item E. In response to the above operation by the configuration personnel, the configuration interface 120 determines the configuration parameter B1 corresponding to configuration item B, the configuration parameter C1 corresponding to configuration item C, the configuration parameter D1 corresponding to configuration item D, and the configuration parameter E1 corresponding to configuration item E, so that the AUTOSAR configuration tool can obtain the configuration file C.

[0250] In some examples, each configuration file C may include at least one set of configuration parameters. Each configuration item in each configuration file C may correspond to at least one configuration parameter, and the number of configuration parameters corresponding to each configuration item is the same.

[0251] For example, as shown in Figure 12, configuration file C may include two sets of configuration parameters. Configuration item A in configuration file C can correspond to configuration parameters A1 and A2, configuration item B can correspond to configuration parameters B1 and B2, configuration item C can correspond to configuration parameters C1 and C2, configuration item D can correspond to configuration parameters D1 and D2, and configuration item E can correspond to configuration parameters E1 and E2. Among them, configuration parameters A1, B1, C1, D1, and E1 form one set of configuration parameters, and configuration parameters A2, B2, C2, D2, and E2 form the other set of configuration parameters.

[0252] In some examples, configuration file C may include a third identifier, which can be used to identify configuration file C. The third identifier is an identifier that corresponds to the first identifier of the first template file C and matches the first identifier.

[0253] In some examples, the file name of configuration file C may be the same as or different from the name of the first template file C. This application embodiment does not impose specific restrictions on this.

[0254] Taking the first template file C as an example, the configuration interface of the configuration file for the Can diagnostic gateway routing service can be shown in Figure 13.

[0255] The configuration interface 130 includes the name of the first template file C, "Can Diagnose Gateway Routing First Template File", the first identifier UUID of the first template file C: 1465d5b7-658c-46d9-89f7-c49de7e7938e, configuration items, and configuration controls corresponding to each configuration item. The configuration items of the configuration interface 130 include the diagnostic route name, diagnostic request identifier, diagnostic response identifier, diagnostic source controller name, and diagnostic destination controller name, and each configuration item corresponds to at least one configuration control.

[0256] For example, a configuration user can enter the configuration parameter Diag_BMS corresponding to the diagnostic route name in the configuration control 1301. In response to the configuration user's input of the configuration parameter Diag_BMS corresponding to the diagnostic route name in the configuration control 1301, the configuration interface 130 determines the configuration parameter Diag_BMS corresponding to the diagnostic route name.

[0257] Similarly, the configuration personnel can configure the configuration parameter 0x4a5 corresponding to the diagnostic request identifier, the configuration parameter 0x4c5 corresponding to the diagnostic response identifier, the configuration parameter controller0 corresponding to the diagnostic source controller name, and the configuration parameter controller1 corresponding to the diagnostic destination controller name. In response to the above operation by the configuration personnel, the configuration interface 130 determines the configuration parameter 0x4a5 corresponding to the diagnostic request identifier, the configuration parameter 0x4c5 corresponding to the diagnostic response identifier, the configuration parameter controller0 corresponding to the diagnostic source controller name, and the configuration parameter controller1 corresponding to the diagnostic destination controller name. Thus, the AUTOSAR configuration tool can obtain the configuration file C of the CAN diagnostic gateway routing configuration service.

[0258] In some examples, the configuration file C for the Can diagnostic gateway routing configuration service may include multiple sets of configuration parameters.

[0259] For example, as shown in Figure 13, the configuration file C for the Can diagnostic gateway routing configuration service can include two sets of configuration parameters.

[0260] The configuration personnel can enter the configuration parameter Diag_PMS corresponding to the diagnostic route name in the configuration control 1302. The configuration interface 130 responds to the configuration personnel's input of the configuration parameter Diag_PMS corresponding to the diagnostic route name in the configuration control 1302, and confirms the configuration parameter Diag_PMS corresponding to the diagnostic route name.

[0261] Similarly, the configuration personnel can configure the configuration parameter 0x4a6 corresponding to the diagnostic request identifier, the configuration parameter 0x4c6 corresponding to the diagnostic response identifier, the configuration parameter controller0 corresponding to the diagnostic source controller name, and the configuration parameter controller1 corresponding to the diagnostic destination controller name. In response to the above operation by the configuration personnel, the configuration interface 130 determines the configuration parameter 0x4a6 corresponding to the diagnostic request identifier, the configuration parameter 0x4c6 corresponding to the diagnostic response identifier, the configuration parameter controller0 corresponding to the diagnostic source controller name, and the configuration parameter controller1 corresponding to the diagnostic destination controller name. Thus, the AUTOSAR configuration tool can obtain the configuration file C of the CAN diagnostic gateway routing configuration service.

[0262] In some examples, configuration file C may include a third identifier. For example, the third identifier is the same UUID as the first identifier: 1465d5b7-658c-46d9-89f7-c49de7e7938e.

[0263] In some examples, the filename for configuration file C can be "Can Diagnostic Gateway Routing Configuration File".

[0264] The above embodiments describe the process by which the AUTOSAR configuration tool generates a configuration interface based on a first template file C, and generates a corresponding configuration file C based on the input of the configuration user in the configuration interface. In some examples, after obtaining the configuration file C, the AUTOSAR configuration tool can determine the second template file C from the second template file repository based on the third identifier of the configuration file C, wherein the third identifier of the configuration file C matches the second identifier of the second template file C.

[0265] In some examples, the AUTOSAR configuration tool can process the configuration file C and the corresponding second template file C to obtain the corresponding ARXML file.

[0266] In some examples, the AUTOSAR configuration tool can obtain the configuration items and corresponding configuration parameters in configuration file C based on configuration file C. For example, see Figure 13.

[0267] In some examples, the AUTOSAR configuration tool can also obtain one or more of the following from the second template file C: the configuration steps required for converting the configuration file to an ARXML file, the paths to the nodes required for converting the configuration file to an ARXML file, or a list of parameters for the nodes required for converting the configuration file to an ARXML file. For example, refer to the contents of Table 4 above.

[0268] In some examples, the AUTOSAR configuration tool may include an AUTOSAR configuration generation engine. The AUTOSAR configuration tool can use the AUTOSAR configuration generation engine to parse the configuration file C and the second template file C to obtain the configuration items in the configuration file C and the configuration parameters corresponding to the configuration items, as well as one or more of the following: the configuration steps required for converting the configuration file to an ARXML file, the path of the node required for converting the configuration file to an ARXML file, or the list of parameters of the node required for converting the configuration file to an ARXML file.

[0269] Subsequently, the AUTOSAR configuration generation engine processes the parsed content to obtain an ARXML file.

[0270] Alternatively, the AUTOSAR configuration tool can include an AUTOSAR configuration generation engine, a configuration file parsing engine, and a second template file parsing engine. The AUTOSAR configuration tool can parse configuration file C using the configuration file parsing engine to obtain the configuration items and corresponding configuration parameters. It can then parse the second template file C using the second template file parsing engine to obtain one or more of the following: the configuration steps required for converting configuration file C to an ARXML file, the paths to nodes required for converting configuration file C to an ARXML file, or a list of node parameters required for converting configuration file C to an ARXML file. The AUTOSAR configuration generation engine processes the parsed content to obtain the ARXML file.

[0271] In some examples, when the configuration parameters corresponding to a configuration item include multiple sets of configuration parameters, the AUTOSAR configuration generation engine processes each set of configuration parameters and the content parsed from the second template file C to obtain an ARXML file.

[0272] For example, configuration file C is the CAN diagnostic gateway routing configuration file in Figure 13, and the second template file C is the CAN diagnostic gateway routing second template file shown in Table 4 above.

[0273] The AUTOSAR configuration generation engine executes configuration steps S1-SN in Table 4, referencing the first set of configuration parameters in Figure 13: Diag_BMS corresponding to the diagnostic route name, 0x4a5 corresponding to the diagnostic request identifier, 0x4c5 corresponding to the diagnostic response identifier, controller0 corresponding to the diagnostic source controller name, and controller1 corresponding to the diagnostic destination controller name.

[0274] Afterwards, the AUTOSAR configuration generation engine executes the configuration steps S1-SN in Table 4 again, referencing the second set of configuration parameters in Figure 13: the configuration parameter Diag_PMS corresponding to the diagnostic route name, the configuration parameter 0x4a6 corresponding to the diagnostic request identifier, the configuration parameter 0x4c6 corresponding to the diagnostic response identifier, the configuration parameter controller0 corresponding to the diagnostic source controller name, and the configuration parameter controller1 corresponding to the diagnostic destination controller name.

[0275] It should be understood that the process by which the AUTOSAR configuration tool processes the configuration file C and the second template file C to obtain the ARXML file is only an example. This application embodiment does not impose specific limitations on how the AUTOSAR configuration tool obtains the ARXML file based on the configuration file C and the second template file C.

[0276] In this way, when a new configuration file is added, only the corresponding configuration rule file needs to be added; the ARXML file corresponding to the configuration file can be obtained without updating the AUTOSAR configuration tool. This reduces the development and maintenance workload of the AUTOSAR configuration tool and improves the efficiency of configuration file processing.

[0277] In some examples, after the AUTOSAR configuration tool obtains the configuration file C, it can determine the first template file C from the first template file repository based on the third identifier of the configuration file C, where the first identifier of the first template file C matches the third identifier of the configuration file C.

[0278] The AUTOSAR configuration tool can verify whether the number of configuration items in configuration file C matches the number of configuration items in the first template file C, and whether the content of the configuration items in configuration file C matches the content of the configuration items in the first template file C. If the number of configuration items in configuration file C matches the number of configuration items in the first template file C, and the configuration parameters corresponding to the configuration items in configuration file C match the configuration parameters corresponding to the configuration items in the first template file C, the AUTOSAR configuration tool can determine the second template file C from the second template file repository based on the third identifier of configuration file C, where the third identifier of configuration file C matches the second identifier of second template file C. Subsequently, the AUTOSAR configuration tool can process configuration file C and second template file C to obtain an ARXML file.

[0279] This prevents the second identifier corresponding to the second template file C in the second template file repository from being overwritten, which could lead to a mismatch between the configuration file C and the determined second template file C. For example, after the AUTOSAR configuration tool obtains the configuration file C based on the first template file C, the first template file C in the first template file repository and the corresponding second template file C in the second template file repository are updated. However, the first identifier corresponding to the first template file C and the second identifier corresponding to the second template file C remain unchanged. In this case, the second template file C determined based on the third identifier will not match the configuration file C.

[0280] It should be understood that some operations in the processes of the above method embodiments may be optionally combined, and / or the order of some operations may be optionally changed. Furthermore, the execution order between the steps of each process is merely exemplary and does not constitute a limitation on the execution order between steps; other execution orders are also possible. It is not intended to indicate that the execution order is the only possible order in which these operations can be performed. Those skilled in the art will conceive of various ways to reorder the operations described herein. Additionally, it should be noted that process details relating to one embodiment herein are similarly applicable to other embodiments, or different embodiments may be combined.

[0281] Furthermore, some steps in the method embodiments can be equivalently replaced with other possible steps. Alternatively, some steps in the method embodiments may be optional and can be deleted in certain use cases. Or, other possible steps may be added to the method embodiments.

[0282] Furthermore, the above-described method embodiments can be implemented individually or in combination.

[0283] Figure 14 shows a schematic diagram of another data processing device provided in an embodiment of this application. The data processing device 1400 includes an acquisition module 1401 and a processing module 1402. In some examples, the data processing device 1400 may also include a display module 1403. The data processing device 1400 is used to execute the aforementioned data processing method, for example, to execute the data processing method shown in Figure 6. Of course, the data processing device 1400 may also include other modules, or it may include fewer modules. This application does not specifically limit the specific form and implementation of the data processing device.

[0284] The acquisition module 1401 is used to acquire the configuration file, which is associated with a first template file including configuration items and configuration parameters corresponding to the configuration items.

[0285] Processing module 1402 is used to generate a target file corresponding to the configuration file based on the second template file, wherein the second template file is used to indicate one or more of the following: the configuration steps required when converting the configuration file to the target file, the path of the node when converting the configuration file to the target file, or the parameter list of the node when converting the configuration file to the target file; wherein the parameter list of the node includes configuration items.

[0286] Display module 1403 is used to display an editing interface; the editing interface guides the user to complete the first template file and the second template file; the editing interface includes a first control, which includes a configuration node control and a parameter list control for the configuration node. Alternatively, display module 1403 is used to display a configuration interface, which is generated based on the first configuration file and is used to configure the configuration file; the configuration interface includes configuration controls for configuration items. Alternatively, display module 1403 is used to display an import interface, which is used to import the first template file and the second template file; the import interface includes import controls.

[0287] The operation and / or function of each module in the data processing device 1400 are respectively to implement the corresponding process of the vehicle control method described in the above method embodiments. All relevant content of each step involved in the above method embodiments can be referred to the functional description of the corresponding functional unit. For the sake of brevity, it will not be repeated here.

[0288] Optionally, the data processing apparatus 1400 shown in FIG. 14 may further include a storage module (not shown in FIG. 14) storing a program or instructions. When the acquisition module 1401 and the processing module 1402 execute the program or instructions, the data processing apparatus 1400 shown in FIG. 14 can perform the data processing method described in the above method embodiments. Optionally, the storage module may store a first template file and a second template file.

[0289] The technical effects of the data processing device 1400 shown in Figure 14 can be referred to the technical effects of the vehicle control method described in the above method embodiments, and will not be repeated here.

[0290] This application also provides a chip system, as shown in FIG15, which includes at least one processor 151 and at least one interface circuit 152. The processor 151 and the interface circuit 152 are interconnected via lines. For example, the interface circuit 152 can be used to receive signals from other devices (e.g., the memory of an electronic device). As another example, the interface circuit 152 can be used to send signals to other devices (e.g., the processor 151). Exemplarily, the interface circuit 152 can read instructions stored in the memory and send the instructions to the processor 151. When the instructions are executed by the processor 151, the electronic device can perform the steps in the above embodiments. Of course, the chip system may also include other discrete devices, which are not specifically limited in this application.

[0291] This application also provides a computer storage medium that includes computer instructions. When the computer instructions are executed on the electronic device, the electronic device causes the electronic device to perform various functions or steps performed by the mobile phone in the above method embodiment.

[0292] This application also provides a computer program product that, when run on a computer, causes the computer to perform the various functions or steps performed by the mobile phone in the above method embodiments.

[0293] This application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program. When the computer program is executed by a processor, it implements the methods described above. The methods described in the above embodiments can be implemented wholly or partially by software, hardware, firmware, or any combination thereof. If implemented in software, the functionality can be stored as one or more instructions or code on or transmitted over the computer-readable medium. The computer-readable medium can include computer storage media and communication media, and can also include any medium that can transfer a computer program from one place to another. The storage medium can be any target medium accessible by a computer.

[0294] In one possible implementation, a computer-readable medium may include random access memory (RAM), read-only memory (ROM), compact disc read-only memory (CD-ROM) or other optical disc storage, magnetic disk storage or other magnetic storage devices, or any other medium intended to carry or store required program code in the form of instructions or data structures, and accessible by a computer. Furthermore, any connection is appropriately referred to as a computer-readable medium. For example, if software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. As used herein, disks and optical discs include optical discs, laser discs, optical discs, digital versatile discs (DVDs), floppy disks, and Blu-ray discs, where disks typically reproduce data magnetically, while optical discs optically reproduce data using lasers. Combinations of the above should also be included within the scope of computer-readable media.

[0295] Through the above description of the embodiments, those skilled in the art will clearly understand that, for the sake of convenience and brevity, the division of the above functional modules is only used as an example. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. The specific working process of the system, device and module described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0296] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0297] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0298] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0299] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, essentially or in other words, the parts that contribute to the prior art, or all or part of the technical solutions, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0300] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A data processing method, characterized in that, include: Obtain a configuration file, which is associated with a first template file including configuration items and configuration parameters corresponding to the configuration items; The target file corresponding to the configuration file is generated according to the second template file, wherein the second template file is used to indicate one or more of the following: the configuration steps required for converting the configuration file to the target file, the path of the node when converting the configuration file to the target file, or the parameter list of the node when converting the configuration file to the target file; wherein the parameter list of the node includes the configuration items.

2. The method according to claim 1, characterized in that, The path of a node includes the definition path of the node and / or the parent node path of the node; wherein, the definition path of the node is an identifier representing the configuration type of the node, and the configuration type of the node includes one or more of the following: the parameter list of the node, the configuration parameter name in the parameter list of the node, the type of the configuration parameter in the parameter list of the node, and the number of configuration parameters in the parameter list of the node; the parent node path of the node includes one or more of the following: a constant string representing the parent node path of the node or the result of the configuration step.

3. The method according to claim 1, characterized in that, The parameter list of the node includes the configuration parameter name and the configuration parameter corresponding to the configuration parameter name. The configuration parameter corresponding to the configuration parameter name includes one or more of the following: the name of the node, the configuration parameter corresponding to the configuration item, a constant string, a number, or the result of the configuration step; the name of the node includes the configuration parameter corresponding to the configuration item and the node name identifier.

4. The method according to any one of claims 1-3, characterized in that, The step of generating the target file corresponding to the configuration file based on the second template file includes: Based on the configuration file, the configuration items in the configuration file and the configuration parameters corresponding to the configuration items are obtained; Based on the second template file, one or more of the following are obtained: the configuration steps required when converting the configuration file to the target file, the path of the node when converting the configuration file to the target file, or the parameter list of the node required when converting the configuration file to the target file; The target file is generated based on at least one of the following: the configuration steps required for converting the configuration file to the target file, the path of the node when converting the configuration file to the target file, the parameter list of the node when converting the configuration file to the target file, and the configuration item or the configuration parameter corresponding to the configuration item.

5. The method according to any one of claims 1-4, characterized in that, The first template file includes a first identifier for identifying the first template file, and the second template file includes a second identifier for identifying the second template file, wherein the first identifier matches the second identifier.

6. The method according to any one of claims 1-5, characterized in that, The configuration file includes a third identifier for identifying the configuration file, the third identifier matching a first identifier corresponding to a first template file that generates the configuration file, and the first identifier corresponding to the first template file matching a second identifier corresponding to a second template file. Generating the target file corresponding to the configuration file based on the second template file includes: The second template file is determined based on the third identifier of the configuration file, wherein the third identifier of the configuration file matches the second identifier of the second template file; Generate the target file corresponding to the configuration file based on the second template file.

7. The method according to claim 6, characterized in that, The step of determining the second template file based on the third identifier of the configuration file includes: The first template file is determined based on the third identifier of the configuration file; the third identifier of the configuration file matches the first identifier of the first template file; If the number of configuration items in the configuration file matches the number of configuration items in the first template file, and the configuration parameters corresponding to the configuration items in the configuration file match the configuration parameters corresponding to the configuration items in the first template file, then the second template file is determined based on the third identifier of the configuration file.

8. The method according to any one of claims 1-7, characterized in that, Before obtaining the configuration file, the method further includes: The editing interface is displayed; the editing interface is used to guide the user to complete the first template file and the second template file; the editing interface includes a first control, which includes a configuration node control and a parameter list control for the configuration node; In response to a first operation on the first control, corresponding first content is obtained; the first operation includes a configuration node operation and a configuration node parameter list operation; the first content includes the configuration steps of the configured node, the path of the configured node, and the parameter list of the configured node. Generate the first template file and the second template file based on the first content.

9. The method according to any one of claims 1-8, characterized in that, The process of obtaining the configuration file includes: A configuration interface is displayed, which is generated based on the first configuration file and is used to configure the configuration file; the configuration interface includes configuration controls for the configuration items. In response to a configuration operation on the configuration control of the configuration item, the configuration file is generated. The configuration operation includes configuring the configuration parameters corresponding to the configuration item. The configuration file includes a third identifier. The third identifier of the configuration file matches the first identifier of the first configuration file.

10. The method according to any one of claims 1-9, characterized in that, Before obtaining the configuration file, the method further includes: The import interface is displayed, which is used to import the first template file and the second template file. The import interface includes import controls. In response to the import operation of the import control, the first template file and the second template file are imported.

11. The method according to any one of claims 1-10, characterized in that, The configuration parameter corresponding to the configuration parameter name is set with a fourth identifier. The fourth identifier is used to indicate the configuration parameter corresponding to the configuration parameter name, referencing the result of the configuration step in the second template file and / or the fourth identifier is used to indicate the configuration parameter corresponding to the configuration parameter name, referencing the configuration parameter corresponding to the configuration item in the configuration file.

12. A data processing apparatus, characterized in that, include: The acquisition module is used to acquire a configuration file, which is generated based on a first template file including configuration items and configuration parameters corresponding to the configuration items. The processing module is used to generate a target file corresponding to the configuration file based on the second template file. The second template file is used to indicate the configuration steps required to convert the first template file to the target file, the path of the node when converting the first template file to the target file, and the parameter list of the node when converting the first template file to the target file. The parameter list of the node includes the configuration items.

13. A data processing apparatus, characterized in that, The device includes at least one processor and a memory for storing computer-readable instructions, which, when read from the memory by the at least one processor, cause the data processing apparatus to perform the method as described in any one of claims 1-11.

14. A computer-readable storage medium storing instructions, characterized in that, When the instructions are executed on a computer, the computer performs the method as described in any one of claims 1-11.

15. A computer program product, characterized in that, The computer program product includes: a computer program or instructions that, when run on a computer, cause the computer to perform the method as described in any one of claims 1-11.

16. An AUTOSAR configuration tool, characterized in that, The configuration tool includes the data processing apparatus as described in claim 13.