EDA software test case reuse method, electronic equipment and medium

By building a mapping relationship between the simulation result database and the test cases and utilizing the compatibility of the simulation software versions, the problem of simulation operation waste in each iteration of the EDA software test cases is solved, and the efficient operation of the test cases is achieved.

CN120803960AActive Publication Date: 2025-10-17成都融见软件科技有限公司 +1
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202511294748.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-11
Publication Date
2025-10-17
Estimated Expiration
2045-09-11

AI Technical Summary

Technical Problem

In the prior art, test cases of EDA software require repeated simulation operations in each iteration, resulting in a waste of computing resources and time, and reducing the running speed of the test cases.

Method used

By obtaining the mapping relationship between the simulation result database and the simulation instructions, a mapping relationship between the test case and the simulation result database is constructed, and the compatibility between simulation software versions is utilized to maximize the reuse of simulation result data and reduce the number of execution times of the simulation software.

Benefits of technology

It improves the running speed of EDA software test cases, reduces the number of simulation operations, and improves test efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120803960A_ABST
    Figure CN120803960A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of EDA software, in particular to an EDA software test case reuse method, electronic equipment and a medium, the method comprises the following steps: firstly obtaining a mapping relation between a simulation result database and a simulation instruction, then constructing a mapping relation between a test case and the simulation result database, and utilizing the compatibility between simulation software versions to obtain a simulation result database; in the process that debugging software executes the test case, simulation result data in the simulation result database are reused to the maximum extent, the number of times of execution of simulation software is reduced, and therefore the running speed of the test case of EDA software is increased.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of EDA software, and particularly relates to an EDA software test case reuse method, an electronic device and a medium. BACKGROUND

[0002] An Electronic Design Automation (EDA) software tool chain includes simulation software and debugging software, and the simulation software and the debugging software are a pair of inseparable tools, wherein the debugging software depends on the simulation result of the simulation software for debugging operation. The input of the simulation software is original design code, and the output is simulation data. The input of the debugging software is the data output by the simulation software, and the output is the visual result under different operation behaviors of a user. In the field of software development, in order to ensure that the original function is not affected by the newly added code in the process of forward iteration development, generally, test cases are written for the function after the function is completed, and in each iteration process, it is ensured that the original test cases can work normally, so as to ensure the correctness of the original function.

[0003] Generally, the simulation software and the debugging software are developed in parallel, but they work cooperatively. Since the debugging software works based on the output data of the simulation software, it is necessary to ensure that the test cases of the debugging software can work normally under the new version of the simulation software. Therefore, the existing test cases of the debugging software generally take the original design code as the input, first input the corresponding simulation instruction based on the simulation software, perform simulation, and then verify the function of the debugging software based on the simulation output result. Different test cases in the debugging software can generally work based on the same design code after simulation with the same simulation instruction. Since the simulation software is also iterated, in the prior art, the test case must be repeatedly simulated before the function of the debugging software, thereby wasting a large amount of computing resources and time, and reducing the running speed of the test case of the EDA software. Therefore, how to improve the running speed of the test case of the EDA software becomes a technical problem to be solved. SUMMARY

[0004] The present application aims to provide an EDA software test case reuse method, an electronic device and a medium, which improves the running speed of the test case of the EDA software.

[0005] According to a first aspect of the present application, an EDA software test case reuse method is provided, comprising: Step S1, obtaining a mapping relationship between a simulation result database and a simulation instruction, and setting simulation software version information compatible with each simulation result database; Step S2, a test case set is constructed, a simulation result database identifier set corresponding to each test case is obtained, and each simulation result database identifier in each simulation result database identifier set is marked as an untraversed state, and each simulation result database identifier corresponds to a simulation result database; Step S3, current simulation software version information is obtained; Step S4, an untraversed simulation result database identifier is obtained from the simulation result database identifier set corresponding to the to-be-executed test case as a to-be-processed simulation result database identifier; Step S5, if the current simulation software version information is the simulation software version information that the simulation result database corresponding to the to-be-processed simulation result database identifier is compatible with, step S6 is executed, otherwise, step S7 is executed; Step S6, the to-be-processed simulation result database identifier is added to the target simulation result database identifier set corresponding to the to-be-executed test case, and step S8 is executed; Step S7, a to-be-processed simulation instruction corresponding to the to-be-processed simulation result database identifier is obtained, the to-be-processed simulation instruction and a design file are input into current simulation software for simulation, a corresponding simulation result database is generated, and a newly generated corresponding simulation result database identifier is added to the target simulation result database identifier set corresponding to the to-be-executed test case; Step S8, if there is still an untraversed simulation result database identifier in the simulation result database identifier set corresponding to the to-be-executed test case, step S4 is returned, otherwise, step S9 is executed; Step S9, based on the to-be-executed test case, the target simulation result database identifier set corresponding to the to-be-executed test case, and debugging software, the to-be-executed test case is executed.

[0006] According to the second aspect of the present application, an electronic device is provided, comprising: at least one processor; and a memory in communication connection with the at least one processor; wherein the memory stores instructions executed by the at least one processor, and the instructions are arranged to execute the method of the first aspect of the present application.

[0007] According to the third aspect of the present application, a computer readable storage medium is provided, which stores computer executable instructions, and the computer executable instructions are used to execute the method of the first aspect of the present application.

[0008] Compared with the prior art, the EDA software test case reuse method, the electronic device and the medium provided by the present application have obvious advantages and beneficial effects. By the above technical solution, the EDA software test case reuse method, the electronic device and the medium provided by the present application can achieve considerable technical progress and practicality, and have wide industrial utilization value, and at least have the following beneficial effects: The application acquires the mapping relationship between the simulation result database and the simulation instruction, then constructs the mapping relationship between the test case and the simulation result database, utilizes the compatibility between the simulation software versions, maximizes the reuse of the simulation result data in the simulation result database in the process of debugging the software to execute the test case, reduces the execution times of the simulation software, and thus improves the running speed of the EDA software test case. BRIEF DESCRIPTION OF DRAWINGS

[0009] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the embodiments will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative effort.

[0010] Figure 1 The EDA software test case reuse method provided by the embodiments of the present application is shown in the flowchart. DETAILED DESCRIPTION

[0011] The technical solutions in the embodiments of the present application will be described clearly and completely with reference to the drawings of the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, but not all the embodiments. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without creative effort are within the protection scope of the present application.

[0012] The embodiments of the present application provide an EDA software test case reuse method, as shown in the figure, which comprises the following steps. Figure 1 Step S1: acquiring the mapping relationship between the simulation result database and the simulation instruction, and setting the simulation software version information compatible with each simulation result database.

[0013] Each simulation instruction corresponds to one simulation result database.

[0014] Step S2: constructing a test case set, acquiring the simulation result database identifier set corresponding to each test case, and marking each simulation result database identifier in each simulation result database identifier set as an untraversed state. Each simulation result database identifier corresponds to one simulation result database.

[0015] The simulation result database identifier can uniquely determine one simulation result data, which can be the simulation result database name or the simulation result data path.

[0016] As an example, the step S2 comprises the following steps. ​Step S21, a test case set is constructed, and a simulation instruction set corresponding to each test case is obtained, the simulation instruction set including at least one simulation instruction.

[0017] Step S22, based on the simulation instruction in the simulation instruction set corresponding to the test case, a corresponding simulation result database identifier is obtained and stored in the simulation result database identifier set corresponding to the test case.

[0018] Step S3, current simulation software version information is obtained.

[0019] It should be noted that the simulation software and the debugging software are prepared in advance before the test case to be executed is executed, and the current simulation software version information is obtained.

[0020] Step S4, an untraversed simulation result database identifier corresponding to the test case to be executed is obtained as a to-be-processed simulation result database identifier.

[0021] Step S5, if the current simulation software version information is the simulation software version information that the simulation result database corresponding to the to-be-processed simulation result database identifier can be compatible with, step S6 is executed, otherwise, step S7 is executed.

[0022] It should be noted that if the current simulation software version information is the simulation software version information that the simulation result database corresponding to the to-be-processed simulation result database identifier can be compatible with, the data in the simulation result database corresponding to the to-be-processed simulation result database identifier can be directly reused, and therefore step S6 is directly executed. If the current simulation software version information is not the simulation software version information that the simulation result database corresponding to the to-be-processed simulation result database identifier can be compatible with, the corresponding simulation result data needs to be generated in step S8. The number of simulation executions is reduced, and the simulation result data is reused to the maximum extent.

[0023] Step S6, the to-be-processed simulation result database identifier is added to the target simulation result database identifier set corresponding to the test case to be executed, and step S8 is executed.

[0024] Step S7, the to-be-processed simulation instruction corresponding to the to-be-processed simulation result database identifier is obtained, the to-be-processed simulation instruction and the design file are input into the current simulation software for simulation, the corresponding simulation result database is generated, and the newly generated corresponding simulation result database identifier is added to the target simulation result database identifier set corresponding to the test case to be executed.

[0025] Step S8, if there is still an untraversed simulation result database identifier in the simulation result database identifier set corresponding to the test case to be executed, step S4 is returned, otherwise, step S9 is executed.

[0026] Step S9, based on the test case to be executed, the target simulation result database identifier set corresponding to the test case to be executed, and the debugging software, executing the test case to be executed.

[0027] The application is further described below through two specific embodiments.

[0028] Embodiment one The simulation software is not divided into development stages, the compatibility condition of the simulation software version is that the new version is compatible with the old version, and the simulation software version information includes the simulation software version.

[0029] As an example, the step S1 includes: Step S11, inputting the design file and the simulation instruction into the preset simulation software for simulation to generate simulation result data, and storing the simulation result data into the corresponding simulation result database.

[0030] The simulation result data can specifically include the state and signal value output by the design component.

[0031] Step S12, establishing a mapping relationship between the simulation result database and the simulation instruction.

[0032] Each simulation instruction corresponds to a simulation result database.

[0033] Step S13, setting the simulation software version information compatible with the simulation result database according to the compatibility condition of the simulation software version and the version of the preset simulation software.

[0034] The simulation software version information compatible with the simulation result database is specifically the version of the preset simulation software and the version lower than the version of the preset simulation software.

[0035] As an example, the step S7 includes: Step S71, obtaining the to-be-processed simulation instruction corresponding to the to-be-processed simulation result database identifier, inputting the to-be-processed simulation instruction and the design file into the current simulation software for simulation to generate the corresponding simulation result database.

[0036] Step S72, covering the original simulation result database corresponding to the to-be-processed simulation instruction with the newly generated corresponding simulation result database, and setting the simulation software version information compatible with the newly generated corresponding simulation result database according to the compatibility condition of the simulation software version.

[0037] The simulation software version information compatible with the newly generated corresponding simulation result database is specifically the version of the current simulation software and the version lower than the version of the current simulation software.

[0038] Step S73, add the newly generated corresponding simulation result database identifier to the target simulation result database identifier set corresponding to the to-be-executed test case.

[0039] As an example, the step S9 comprises: Step S91, obtain the target simulation result data in the target simulation result database based on the target simulation result database identifier in the target simulation result database identifier set corresponding to the to-be-executed test case.

[0040] Step S92, input the target simulation data target simulation result data and the to-be-executed test case into the debugging software to execute the to-be-executed test case.

[0041] Embodiment two The simulation software is divided into development stages, and the compatibility condition of the simulation software version is that the new version of the same development stage is compatible with the old version, and the versions of different development stages are not compatible with each other. Each simulation result database divides a corresponding storage area for each development stage, and the simulation software version information includes the simulation software version and the development stage.

[0042] As an example, the step S1 comprises: Step C11, input the design file and the simulation instruction into the preset simulation software for simulation, generate simulation result data, and store the simulation result data in the storage area of the development stage corresponding to the preset simulation software version in the corresponding simulation result database.

[0043] The simulation result data can specifically include the state, signal value, etc. output by the design component.

[0044] Step C12, establish a mapping relationship between the simulation result database and the simulation instruction.

[0045] Each simulation instruction corresponds to a simulation result database.

[0046] Step C13, set the simulation software version information that the storage area of the development stage corresponding to the preset simulation software version in the simulation result database can be compatible with.

[0047] The simulation software version information that the storage area of the development stage corresponding to the preset simulation software version in the simulation result database can be compatible with specifically refers to the version of the preset simulation software and the version lower than the version of the preset simulation software corresponding to the development stage corresponding to the preset simulation software version.

[0048] As an example, the current simulation software version information obtained in the step S3 specifically includes the development stage corresponding to the current simulation software version and the current simulation software version.

[0049] As an example, the step S5 comprises: Step C51, judge whether there is a storage area corresponding to the development stage of the current simulation software version in the simulation result database corresponding to the to-be-processed simulation result database identifier, if not, execute step S7, if yes, execute step C52.

[0050] Step C52, judge whether the simulation software version information compatible with the current simulation software version is included in the storage area corresponding to the development stage of the current simulation software version in the simulation result database corresponding to the to-be-processed simulation result database identifier, if yes, execute step S6, otherwise, execute step S7.

[0051] As an example, the step S6 includes: Step C61, add the to-be-processed simulation result database identifier and the current simulation software version to the target simulation result database identifier set corresponding to the to-be-processed test case, and execute step S8.

[0052] As an example, the step S7 includes: Step C71, obtain the to-be-processed simulation instruction corresponding to the to-be-processed simulation result database identifier, input the to-be-processed simulation instruction and the design file into the current simulation software for simulation, and generate the corresponding simulation result data.

[0053] Step C72, if there is a storage area corresponding to the development stage of the current simulation software in the database corresponding to the to-be-processed simulation instruction, execute step C73, otherwise, execute step C74.

[0054] Step C73, cover the data in the storage area corresponding to the development stage of the current simulation software in the database corresponding to the to-be-processed simulation instruction with the newly generated corresponding simulation result data, update the simulation software version compatible with the development stage of the current simulation software in the database corresponding to the to-be-processed simulation instruction, and execute step C75.

[0055] The simulation software version compatible with the development stage of the current simulation software in the database corresponding to the to-be-processed simulation instruction is specifically the version of the current simulation software and the version lower than the current simulation software corresponding to the development stage of the previous simulation software.

[0056] Step C74, divide the corresponding storage area for the development stage of the current simulation software in the database corresponding to the to-be-processed simulation instruction, store the newly generated corresponding simulation result data into the newly divided storage area, set the simulation software version compatible with the development stage of the current simulation software, and execute step C75.

[0057] Step C75, add the newly generated corresponding simulation result data, corresponding database identifier and storage area identifier to the target simulation result database identifier set corresponding to the test case to be executed.

[0058] As an example, the step S9 comprises: Step C91, acquire the target simulation result data of the corresponding target area in the target simulation result database based on the target simulation result database identifier and the target storage area identifier in the target simulation result database identifier set corresponding to the test case to be executed.

[0059] Step C92, input the target simulation data target simulation result data and the test case to be executed into the debugging software to execute the test case to be executed.

[0060] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used in the description herein is for describing particular embodiments only and is not intended to be limiting of the application. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.

[0061] It is to be understood that some of the example embodiments are described in terms of a process or method being performed at a location, such as an electronic device. Although a process or method can be described as being performed at a location, such as an electronic device, it is understood that such a process or method can be performed at one or more locations, such as an electronic device.

[0062] An electronic device is also provided, including at least one processor, and a memory connected with the at least one processor in communication; wherein the memory stores instructions executed by the at least one processor, and the instructions are configured to perform the method described in the embodiments of the application.

[0063] A computer readable storage medium is also provided, storing computer executable instructions, and the computer executable instructions are configured to perform the method described in the embodiments of the application.

[0064] The embodiments of the application first acquire the mapping relationship between the simulation result database and the simulation instruction, then construct the mapping relationship between the test case and the simulation result database, utilize the compatibility between the simulation software versions, reuse the simulation result data in the simulation result database to the greatest extent in the process of the debugging software executing the test case, reduce the number of times of the simulation software execution, and thus improve the running speed of the test case of the EDA software.

[0065] The above merely describes preferred embodiments of the present application, and is not intended to limit the present application in any form. Although the present application has been disclosed with the preferred embodiments as above, it is not intended to limit the present application, and any person skilled in the art can make some changes or modifications to the above disclosed technical contents to obtain equivalent embodiments with equivalent changes, as long as the changes or modifications do not depart from the technical solution of the present application. Any simple modification, equivalent change and modification made to the above embodiments according to the technical essence of the present application still falls within the scope of the technical solution of the present application.

Claims

1. A method for reusing EDA software test cases, characterized in that: include: Step S1: obtaining a mapping relationship between a simulation result database and simulation instructions, and setting the simulation software version information that each simulation result database is compatible with; Step S2: construct a test case set, obtain a simulation result database identifier set corresponding to each test case, and mark each simulation result database identifier in each simulation result database identifier set as an untraversed state, each simulation result database identifier corresponding to a simulation result database; Step S3, obtaining the current simulation software version information; Step S4: obtaining an untraversed simulation result database identifier from the simulation result database identifier set corresponding to the test case to be executed as the simulation result database identifier to be processed; Step S5: If the current simulation software version information is the simulation software version information compatible with the simulation result database corresponding to the to-be-processed simulation result database identifier, then executing step S6; otherwise, executing step S7; Step S6: Add the to-be-processed simulation result database identifier to the target simulation result database identifier set corresponding to the to-be-executed test case, and execute step S8; Step S7: Obtain the pending simulation instruction corresponding to the pending simulation result database identifier, input the pending simulation instruction and the design file into the current simulation software for simulation, generate the corresponding simulation result database, and add the newly generated corresponding simulation result database identifier to the target simulation result database identifier set corresponding to the test case to be executed; Step S8: If there are still untraversed simulation result database identifiers in the simulation result database identifier set corresponding to the test case to be executed, return to step S4; otherwise, execute step S9; Step S9: Execute the test case to be executed based on the test case to be executed, the target simulation result database identifier set corresponding to the test case to be executed, and the debugging software.

2. The method according to claim 1, characterized in that The compatibility condition of the simulation software version is that the new version is compatible with the old version, the simulation software version information includes the simulation software version, and the step S1 includes: Step S11: input the design file and simulation instructions into the preset simulation software to perform simulation, generate simulation result data, and store the simulation result data in the corresponding simulation result database; Step S12: establishing a mapping relationship between the simulation result database and the simulation instructions; Step S13: setting the simulation software version information compatible with the simulation result database according to the compatibility condition of the simulation software version and the preset simulation software version.

3. The method according to claim 1, characterized in that The compatibility condition of the simulation software version is that the new version is compatible with the old version, the simulation software version information includes the simulation software version, and the step S7 includes: Step S71: Obtain the pending simulation instruction corresponding to the pending simulation result database identifier, input the pending simulation instruction and the design file into the current simulation software for simulation, and generate the corresponding simulation result database; Step S72: Overwrite the simulation result database corresponding to the original simulation instruction to be processed with the newly generated corresponding simulation result database, and set the simulation software version information that the newly generated corresponding simulation result database is compatible with according to the compatibility condition of the simulation software version; Step S73: Add the newly generated corresponding simulation result database identifier to the target simulation result database identifier set corresponding to the test case to be executed.

4. The method according to claim 1, wherein The compatibility condition of the simulation software version is that the new version is compatible with the old version, the simulation software version information includes the simulation software version, and the step S9 includes: Step S91: acquiring target simulation result data in a target simulation result database based on a target simulation result database identifier in a target simulation result database identifier set corresponding to a test case to be executed; Step S92: input the target simulation data, target simulation result data and the test case to be executed into the debugging software to execute the test case to be executed.

5. The method according to claim 1, wherein The compatibility condition of the simulation software version is that the new version of the same development stage is compatible with the old version, and the versions of different development stages are incompatible with each other. Each simulation result database is divided into a corresponding storage area for each development stage. The simulation software version information includes the simulation software version and the development stage. The step S1 includes: Step C11: input the design file and simulation instructions into a preset simulation software to perform simulation, generate simulation result data, and store the simulation result data in a storage area corresponding to the development stage of the preset simulation software version in a corresponding simulation result database; Step C12: establishing a mapping relationship between the simulation result database and the simulation instructions; Step C13: Setting the simulation software version information that is compatible with the storage area of ​​the development stage corresponding to the preset simulation software version in the simulation result database.

6. The method according to claim 1, characterized in that The compatibility condition of the simulation software version is that the new version of the same development stage is compatible with the old version, and the versions of different development stages are incompatible with each other. Each simulation result database is divided into a corresponding storage area for each development stage. The simulation software version information includes the simulation software version and the development stage. The step S6 includes: Step C61: Add the to-be-processed simulation result database identifier and the current simulation software version to the target simulation result database identifier set corresponding to the to-be-executed test case, and execute step S8.

7. The method according to claim 1, characterized in that The compatibility condition of the simulation software versions is that new versions in the same development stage are compatible with old versions, and versions in different development stages are incompatible with each other. Each simulation result database is divided into a corresponding storage area for each development stage. The simulation software version information includes the simulation software version and the development stage. The step S7 includes: Step C71: Obtain the pending simulation instruction corresponding to the pending simulation result database identifier, input the pending simulation instruction and the design file into the current simulation software for simulation, and generate corresponding simulation result data; Step C72: If the database corresponding to the simulation instruction to be processed currently contains a storage area corresponding to the development stage of the current simulation software, then execute step C73; otherwise, execute step C74; Step C73: Overwrite the data in the storage area of ​​the development stage corresponding to the current simulation software in the database corresponding to the simulation instruction to be processed with the newly generated corresponding simulation result data, update the simulation software version compatible with the development stage corresponding to the current simulation software in the database corresponding to the simulation instruction to be processed, and execute step C75; Step C74: In the database corresponding to the simulation instruction to be processed, a corresponding storage area is allocated for the development stage corresponding to the current simulation software, and the newly generated corresponding simulation result data is stored in the newly allocated storage area. The compatible simulation software version is set for the development stage corresponding to the current simulation software, and step C75 is executed; Step C75: Add the database identifier and storage area identifier corresponding to the newly generated corresponding simulation result data to the target simulation result database identifier set corresponding to the test case to be executed.

8. The method according to claim 1, characterized in that The compatibility condition of the simulation software version is that the new version of the same development stage is compatible with the old version, and the versions of different development stages are incompatible with each other. Each simulation result database is divided into a corresponding storage area for each development stage. The simulation software version information includes the simulation software version and the development stage. The step S9 includes: Step C91: acquiring target simulation result data corresponding to a target area in a target simulation result database based on a target simulation result database identifier and a target storage area identifier in a target simulation result database identifier set corresponding to a test case to be executed; Step C92: Input the target simulation data, target simulation result data and the test case to be executed into the debugging software to execute the test case to be executed.

9. An electronic device, characterized in that: include: at least one processor; and, a memory communicatively coupled to the at least one processor; The memory stores instructions to be executed by the at least one processor, wherein the instructions are configured to execute the method according to any one of claims 1 to 8.

10. A computer-readable storage medium, characterized in that The computer-executable instructions are stored, and the computer-executable instructions are used to execute the method according to any one of the preceding claims 1 to 8.

Citation Information

Patent Citations

  • Simulation method and system

    CN102855278A

  • Collaborative simulation method in chip simulation verification and application

    CN114282464A

  • Universal software testing method

    CN115525544A