A test method, storage medium and electronic device for automatically verifying manual packaging

By automatically parsing and processing the automatic boxing files in the FPGA EDA tool, automatic verification of multiple test combinations of manual boxing is solved, and the problem of low manual boxing coverage in the existing technology is improved.

CN119782189AActive Publication Date: 2025-04-08EHIWAY MICROELECTRONIC SCI & TECH (SUZHOU) CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202510274338.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-10
Publication Date
2025-04-08
Estimated Expiration
2045-03-10

AI Technical Summary

Technical Problem

In the existing FPGA EDA tools, the coverage rate of the manual boxing process is low, and it is difficult for testers to manually adjust the position of the box and logic unit, resulting in insufficient testing and inability to meet the coverage rate.

Method used

It provides a test method for automatic verification of manual packing. By analyzing the automatic packing file, obtaining moving boxes and logical units, presetting the manual packing mode, selecting modes based on the moving boxes, adjusting the position of the logical unit, generating manual packing files, and performing rule verification, realizing automatic verification of multiple test combinations of manual packing.

Benefits of technology

This greatly reduces the tester's test time, improves testing efficiency and coverage, and realizes automatic verification of multiple test combinations of manual packing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119782189A_ABST
    Figure CN119782189A_ABST
Patent Text Reader

Abstract

The present application provides a test method, storage medium and electronic device for automatically verifying manual boxing, the method comprising: executing the automatic boxing layout and routing process of the circuit according to the circuit test file to obtain the automatic boxing file; parsing the automatic boxing file, counting the boxes that can be moved according to the logical units of the boxes; presetting the manual boxing mode, selecting the manual boxing mode according to the boxes that can be moved, moving the logical units that can be moved in the boxes that can be moved according to the manual boxing mode, and generating the manual boxing file; wherein the manual boxing file includes the movement information of the box; executing the boxing layout and routing process according to the manual boxing file and performing rule verification, if the boxing layout and routing processes all meet the corresponding rules of the process, the manual boxing is successful. The present application can automatically verify multiple test combinations of manual boxing, greatly reducing the test time of testers and improving test efficiency and coverage.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the technical field of programmable logic devices, and in particular, relates to a test method, storage medium and electronic device for automatically verifying manual packaging. Background Art

[0002] FPGA (Field-Programmable Gate Array) is a highly flexible programmable logic device, widely used in communications, embedded systems, AI acceleration and other fields. With the development of integrated circuit technology, FPGA EDA (Electronics Design Automation) software is particularly important. FPGA EDA software is different from other software systems. It integrates functions such as designing circuits, compiling circuits, debugging circuits, and analyzing circuits. The main function of FPGA EDA tools is to convert the circuit into a netlist file first, and then perform a series of subsequent process processing on the netlist file, such as boxing, layout, routing, and code generation.

[0003] FPGA EDA tools support manual box packing by users, and can adjust the results of automatic box packing and layout. The position of the box and the position of each logic unit inside the box can be moved, and each logic unit can be adjusted in which box and which position of the box. For each package and each circuit, there are many boxes and logic units that can be moved. If the tester moves them manually, there will undoubtedly be very few cases that can be covered, and the coverage rate cannot be met. Summary of the invention

[0004] The present application discloses a test method, storage medium and electronic device for automatically verifying manual boxing, which can automatically verify multiple test combinations of manual boxing, greatly reducing the test time of testers and improving test efficiency and coverage.

[0005] Other purposes and advantages of the present application can be further understood from the technical features disclosed in the present application.

[0006] To achieve one or part or all of the above-mentioned purposes or other purposes, in a first aspect, the present application provides a test method for automatically verifying manual box packing, the method comprising: obtaining a circuit test file, executing an automatic box packing layout and routing process of the circuit according to the circuit test file, and obtaining an automatic box packing file; parsing the automatic box packing file, and counting movable boxes according to the logical units of the boxes; wherein the movable boxes include movable logical units; presetting a manual box packing mode, selecting a manual box packing mode according to the movable boxes, moving the movable logical units in the movable boxes according to the manual box packing mode, and generating a manual box packing file; wherein the manual box packing file includes box movement information; executing a box packing layout and routing process according to the manual box packing file and performing rule verification, and if the box packing layout and routing processes all comply with the corresponding rules of the process, the manual box packing is successful.

[0007] Furthermore, the automatic boxing file is parsed in a dictionary manner, wherein the box name is used as a key and the logical unit in the box is used as a value.

[0008] Furthermore, the automatic packing file is parsed, and boxes that do not support movement are counted according to the logical units of the boxes, and the boxes that do not support movement are not manually packed.

[0009] Furthermore, the movable box includes at least one of a full box and an unfull box.

[0010] Further, for the full box, the manual box packing mode includes at least one of the following modes: Mode 1: exchanging the positions of the logic units in the same full box; Mode 2: Exchange the logical units in the two full boxes.

[0011] Further, for the incomplete box, the manual packing mode includes at least one of the following modes: Mode 3: exchanging the logic units in the two unfilled boxes; Mode 4: exchanging the positions of the logical units in the same unfilled box.

[0012] Further, the unfilled box includes at least one of a box containing only one logical unit and a box containing at least two logical units, and the manual packing mode includes at least one of the following modes: Mode 5: moving the logic unit in the box containing only one logic unit to a blank position; Mode 6: moving the logic unit in the box containing only one logic unit to other unfilled boxes; Mode 7: randomly selecting one of the logic units in the box containing at least two logic units and moving it to another unfilled box; Mode eight: moving the positions of the logic units in the box containing at least two logic units so that there are empty spaces from top to bottom in the box containing at least two logic units.

[0013] Furthermore, if any process in the box packaging layout and routing process does not comply with the process corresponding rule, the manual box packaging fails, and the test process and test results are recorded in combination with the movement information of the box.

[0014] In a second aspect, the present application provides a computer-readable storage medium having program code stored therein, and the program code is called by a processor to execute a test method for automatically verifying manual packaging according to any one of the first aspects.

[0015] In a third aspect, the present application also provides an electronic device comprising one or more processors; a memory; and one or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the one or more processors, and the one or more applications are configured to execute a test method for automatically verifying manual packaging as described in any one of the first aspects.

[0016] The above-mentioned test method, storage medium and electronic device for automatic verification of manual packing obtain the movable boxes and the movable logical units therein by parsing the automatic packing file, and preset the manual packing mode, randomly select the manual packing mode according to the movable boxes, adjust the position of the movable logical units, obtain the manual packing file and perform rule verification, and realize automatic verification of multiple test combinations of manual packing, which greatly reduces the test time of testers and improves test efficiency and coverage. At the same time, the present application can also configure the manual packing mode by itself to adapt to all devices that support manual packing. The present application can also be transplanted to the interface automation and the underlying automation to automatically execute the entire process and perform verification. The present application can also accurately record the test process and test results according to the movement information of the box for further analysis by the tester.

[0017] In order to make the above and other purposes, features and advantages of the present application more obvious and understandable, preferred embodiments are specifically listed below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] In order to more clearly illustrate the technical solutions in the specific embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0019] Figure 1 This is a flow chart of a test method for automatically verifying manual packing in this application.

[0020] Figure 2 This is a judgment flow chart of a test method for automatically verifying manual packing in this application.

[0021] Figure 3 This is a schematic diagram of a process for generating a manual packing file for this application. DETAILED DESCRIPTION

[0022] The aforementioned and other technical contents, features and effects of the present application will be clearly presented in the following detailed description of a preferred embodiment with reference to the drawings. The terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances. This is just a way of distinguishing objects with the same attributes when describing the embodiments of the present application.

[0023] In order to verify the manual boxing function in the EDA software, it is necessary to operate different boxes on the visual interface. There are too many test combinations, including the type of box, whether the box is full, whether the box has a carry chain, which logic unit in the box to move, and where to move the logic unit. Moreover, the boxing results of each circuit are different, and the possibilities are also different. If the tester manually tests each case, it will not only increase the complexity, but also easily lead to insufficient testing due to the large amount of data, resulting in low coverage.

[0024] The present application provides a manual packing test method, which obtains a circuit test file, executes the automatic packing layout and routing process of the circuit according to the circuit test file, and obtains an automatic packing file; analyzes the automatic packing file, and counts the movable boxes according to the logic units of the boxes; wherein the movable boxes include movable logic units; presets a manual packing mode, selects a manual packing mode according to the movable boxes, and moves the movable logic units in the movable boxes according to the manual packing mode to adjust the position of the movable logic units, and obtains a manual packing file; wherein the manual packing file includes the movement information of the boxes; executes the packing layout and routing process according to the manual packing file and performs rule verification, and if the packing layout and routing processes all meet the corresponding rules of the process, the manual packing is successful. Thereby, automatic verification of multiple test combinations of manual packing is realized, which greatly reduces the test time of testers and improves test efficiency and coverage.

[0025] The present application is described in detail below with reference to the accompanying drawings.

[0026] refer to Figure 1 and Figure 2 , the embodiment of the present application provides a test method for automatically verifying manual packing, which includes the following steps: Step 1: Obtain a circuit test file, and execute an automatic boxing layout and routing process of the circuit according to the circuit test file to obtain an automatic boxing file.

[0027] Exemplarily, the circuit test file is a CASE file. The CASE file is a TXT file that stores the paths and top-level file names of all circuits that need to be tested. When executing the test process in batches, the circuits in the CASE file are read and tested in sequence. For example, in each line, the local path of the test circuit is before the space, and the top-level file name of the test circuit is after the space.

[0028] Exemplarily, the circuit engineering address can also be pieced out according to the circuit test file to determine whether the automatic boxing layout and routing process of the circuit is successfully executed. If it is successfully executed, step 2 is executed, otherwise the next circuit test file is read for judgment.

[0029] Step 2: Parse the automatic packing file generated by automatic packing, and count the boxes that can be moved according to the logical units of the boxes.

[0030] Among them, a box represents a position of the chip, the logic unit is installed in the box, and the movable box includes the movable logic unit.

[0031] Optionally, parse the autopacking file in dictionary mode, use the box name as the KEY, and store the smallest logical unit in the box as the VALUE, and count all boxes that can be moved and boxes that do not support moving. Boxes that can be moved are modules that support manual packing. Boxes that do not support moving are modules that do not support manual packing. These modules are usually a whole and do not contain logical units, so they do not support manual packing.

[0032] Optionally, the movable boxes can also be parsed into full boxes and other unfilled boxes.

[0033] Furthermore, the unfilled boxes can be further divided into boxes containing only one logical unit and boxes containing at least two logical units, so as to perform more detailed manual packing.

[0034] Step 3: Preset the manual packing mode, select the manual packing mode according to the movable boxes, move the movable logical units in the movable boxes according to the manual packing mode, and generate a manual packing file.

[0035] Optional, reference Figure 3For full boxes, this application provides the following manual packing modes: Mode 1: swapping the positions of logical units in the same full box; Mode 2: Swapping logic cells between two full boxes.

[0036] Optional, reference Figure 3 For boxes that are not full, this application provides the following manual packing modes: Mode 3: swapping logic cells in two unfilled boxes; Mode 4: Swapping the positions of logical units in the same unfilled box.

[0037] Further, refer to Figure 3 For boxes that are not full, including boxes that contain only one logical unit or boxes that contain at least two logical units, this application provides the following manual packing modes: Mode 5: Move the logic unit in a box containing only one logic unit to a blank position; the blank position here refers to the position on the chip where no box is placed; Mode 6: Move the logic unit in the box with only one logic unit to other unfilled boxes; Mode 7: Randomly select a logic unit from a box that contains at least two logic units and move it to another unfilled box; Mode eight: Move the positions of the logic units in a box containing at least two logic units so that there are empty spaces from top to bottom in the box containing at least two logic units. Specifically, in the automatic packing process, the logic units will be placed from top to bottom in sequence. Therefore, the result of automatic packing is that there is no empty space between two logic units. Here, for the continuously placed logic units, one of them is moved so that there is an empty space in the box from top to bottom. Example 1: For the top two consecutive logic units, move the first one so that the top position is empty. Example 2: For five consecutive logic units from top to bottom, move the logic unit in the second position so that the second position is empty.

[0038] The present application can randomly select the manual packing mode according to the result of the analysis in step 2, randomly select boxes and logic units that meet the conditions to move, so as to adjust the position of the logic units that can be moved, and automatically generate a manual packing file. The manual packing file includes the movement information of the box, that is, the box that has not been moved and the box information after the move, so as to record the test process or locate the box when an error occurs in the subsequent process.

[0039] Step 4: Execute the packing layout and routing process according to the manual packing file and perform rule verification. If the packing layout and routing process complies with the corresponding rules of the process, the manual packing is successful.

[0040] Specifically, after completing the manual packing process, the packing layout and routing process needs to be executed again. The packing process will pack according to the manual packing file. The packing needs to comply with a series of packing rules. If the packing does not comply with the rules after the manual packing file is executed, the packing process will report an error and record the error information in an Excel table so that the tester can confirm the packing problem according to the error. If the packing complies with the rules after the manual packing file is executed, the layout and routing process will be further performed. The layout and routing also need to follow a series of rules. If they all comply with the corresponding rules of the process, the test process is successfully completed. Furthermore, the results of the re-executed packing layout and routing can also be checked by rules to ensure that the results are correct and comply with the rules. If they do not comply, the current circuit, the process of this manual packing (the movement information of the boxes and logic units involved) and the specific error can be recorded in the verification result for easy positioning. Regardless of whether the inspection result is correct or an error, the manual packing test process of the next circuit test file will be executed.

[0041] In a specific embodiment, a circuit has hundreds of thousands of logic units, and there are thousands of possibilities for manual packing. The present application can realize automatic batch execution of tens of thousands of circuits, randomly select logic units and randomly select movement methods for each circuit, and automatically verify the results. The movement method of the logic unit can also be specified for targeted testing. For failed circuits, the present application can automatically record the information of the moved logic units and the movement method for easy positioning. The present application not only greatly improves the test coverage and test efficiency, but also facilitates result positioning.

[0042] In summary, the test method, storage medium and electronic device for automatic verification of manual packing of the present application, through the automatic packing file, by obtaining the movable box and the movable logical unit therein, and presetting the manual packing mode, randomly selecting the manual packing mode according to the movable box, adjusting the position of the movable logical unit, obtaining the manual packing file and performing rule verification, realizes the automatic verification of multiple test combinations of manual packing, greatly reduces the test time of the tester, and improves the test efficiency and coverage. At the same time, the present application can also configure the manual packing mode by itself to adapt to all devices that support manual packing; the present application can also be transplanted to the interface automation and the bottom layer automation to automatically execute the entire process and perform verification, so as to make full use of the working time, and the tester can analyze the execution results after arriving at the post; the present application can also accurately record the test process and test results, including the name of the box to be moved and the name of the logical unit to be moved. If there is an error in the execution process, the error information can also be accurately recorded and the test project can be retained for further analysis by the tester.

[0043] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0044] Based on the same inventive concept, the present application also provides a computer-readable storage medium, in which a program code is stored, and the program code is called by a processor to execute any of the above-mentioned test methods for automatically verifying manual packaging.

[0045] In one embodiment, the present application also provides an electronic device, which includes one or more processors; a memory; and one or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the one or more processors, and the one or more applications are configured to execute any of the above-mentioned test methods for automatically verifying manual packaging.

[0046] It should be noted that, for those of ordinary skill in the art, several improvements and modifications may be made to the present application without departing from the principles of the present application, and these improvements and modifications also fall within the scope of protection of the claims of the present application. It should be understood that certain features of the present disclosure described in the context of a separate embodiment for the sake of clarity may also be provided in a single embodiment by combination. Conversely, various features of the present disclosure described in the context of a single embodiment for the sake of clarity may also be provided individually or in any suitable combination or as any other described embodiment of the present disclosure.

Claims

1. A test method for automatically verifying manual packing, characterized in that: The method comprises: Acquire a circuit test file, and execute an automatic boxing layout and routing process of the circuit according to the circuit test file to obtain an automatic boxing file; Parsing the automatic packing file, and counting the boxes that can be moved according to the logical units of the boxes; wherein the boxes that can be moved include the logical units that can be moved; A manual packing mode is preset, the manual packing mode is selected according to the movable box, the movable logical unit in the movable box is moved according to the manual packing mode, and a manual packing file is generated; wherein the manual packing file includes the moving information of the box; The box packing layout and routing process is executed according to the manual box packing file and a rule check is performed. If the box packing layout and routing process all conform to the process corresponding rules, the manual box packing is successful.

2. A test method for automatic verification of manual packing according to claim 1, characterized in that: The automatic boxing file is parsed in a dictionary manner, wherein the box name is used as a key and the logical unit in the box is used as a value.

3. A test method for automatic verification of manual packing according to claim 1, characterized in that: The automatic packing file is parsed, and boxes that do not support movement are counted according to the logical units of the boxes. The boxes that do not support movement are not manually packed.

4. A test method for automatic verification of manual packing according to claim 1, characterized in that: The movable box includes at least one of a full box and an unfull box.

5. A test method for automatic verification of manual packing according to claim 4, characterized in that: For the full box, the manual box packing mode includes at least one of the following modes: Mode 1: exchanging the positions of the logic units in the same full box; Mode 2: Exchange the logical units in the two full boxes.

6. A test method for automatic verification of manual packing according to claim 4, characterized in that: For the incomplete box, the manual box packing mode includes at least one of the following modes: Mode 3: exchanging the logic units in the two unfilled boxes; Mode 4: exchanging the positions of the logical units in the same unfilled box.

7. A test method for automatic verification of manual packing according to claim 6, characterized in that: The unfilled box includes at least one of a box containing only one logical unit and a box containing at least two logical units, and the manual packing mode includes at least one of the following modes: Mode 5: moving the logic unit in the box containing only one logic unit to a blank position; Mode 6: moving the logic unit in the box containing only one logic unit to other unfilled boxes; Mode 7: randomly selecting one of the logic units in the box containing at least two logic units and moving it to another unfilled box; Mode eight: moving the positions of the logic units in the box containing at least two logic units so that there are empty spaces from top to bottom in the box containing at least two logic units.

8. A test method for automatic verification of manual packing according to claim 1, characterized in that: If any process in the box packing layout and routing process does not comply with the process corresponding rule, the manual box packing fails, and the test process and test results are recorded in combination with the movement information of the box.

9. A computer-readable storage medium having a program code stored therein, the program code being called by a processor to execute any one of the above-mentioned test methods for automatically verifying manual packaging.

10. An electronic device comprising one or more processors; a memory; and one or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the one or more processors, and the one or more applications are configured to execute a test method for automatically verifying manual packaging as described in any of the above items.

Citation Information

Patent Citations

  • Test method and system for automatically verifying boxing, layout and wiring

    CN111400992A

  • Method for chip design engineering automation, computer equipment and medium

    CN117291128A

  • Automatic testing method for FPGA hardware security

    CN118278056A

  • Method and device for layout verification

    JP2011065207A

  • Layout design verification method of semiconductor integrated circuit

    JP2014142694A