WO2021128165A1 - Formal verification method and device, information identification method and device, and storage medium - Google Patents

Formal verification method and device, information identification method and device, and storage medium Download PDF

Info

Publication number
WO2021128165A1
WO2021128165A1 PCT/CN2019/128715 CN2019128715W WO2021128165A1 WO 2021128165 A1 WO2021128165 A1 WO 2021128165A1 CN 2019128715 W CN2019128715 W CN 2019128715W WO 2021128165 A1 WO2021128165 A1 WO 2021128165A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
unit
netlist
name
information
Prior art date
Application number
PCT/CN2019/128715
Other languages
French (fr)
Chinese (zh)
Inventor
刘其龙
冯鲲鹏
唐辉艳
Original Assignee
深圳市大疆创新科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳市大疆创新科技有限公司 filed Critical 深圳市大疆创新科技有限公司
Priority to CN201980051925.XA priority Critical patent/CN112567375A/en
Priority to PCT/CN2019/128715 priority patent/WO2021128165A1/en
Publication of WO2021128165A1 publication Critical patent/WO2021128165A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3323Design verification, e.g. functional simulation or model checking using formal methods, e.g. equivalence checking or property checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/02System on chip [SoC] design

Definitions

  • the embodiments of the present invention relate to the technical field of chip design, in particular to a formal verification method, an information identification method, equipment, and storage medium.
  • EDA Electronics Design Automation
  • the EDA tool will change the naming of the various components in the design for various reasons at various stages. At this time, if the EDA tool provided by the same supplier is used, the EDA tool can adopt a unified file name matching method and search method, so that the entire formal verification process can be realized. If EDA tools provided by different vendors are used for formal verification, the EDA tools cannot recognize formal verification files due to the mismatch of unit naming information of cross-vendor EDA tools, file encryption, or incompatibility between tools from different vendors. For the formal verification tools of different manufacturers, the difficulty of formal verification is increased, and normal formal verification operations cannot even be performed.
  • the embodiments of the present invention provide a formal verification method, information identification method, equipment and storage medium.
  • the first aspect of the present invention is to provide a formal verification method, including:
  • the second aspect of the present invention is to provide an information identification method, including:
  • unit matching information corresponding to the second file and the first file, where the unit matching information includes the at least one data unit in the second file and the data unit in the first file Correspondence between;
  • the unit matching information is used to identify the data unit in the second file.
  • the third aspect of the present invention is to provide a method for identifying name information, including:
  • the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name corresponding to the first name information and the second name information Matching information
  • the first name information of the data unit is stored in a first file
  • the second name information of the data unit is stored in a second file
  • the first electronic design tool and the second electronic design tool are different .
  • the fourth aspect of the present invention is to provide a formal verification device, including:
  • the first memory is used to store computer programs
  • the first processor is configured to run a computer program stored in the first memory to implement:
  • the fifth aspect of the present invention is to provide an information recognition device, including:
  • the second memory is used to store computer programs
  • the second processor is configured to run a computer program stored in the second memory to implement:
  • unit matching information corresponding to the second file and the first file, where the unit matching information includes the at least one data unit in the second file and the data unit in the first file Correspondence between;
  • the unit matching information is used to identify the data unit in the second file.
  • the sixth aspect of the present invention is to provide a name information recognition device, including:
  • the third storage is used to store computer programs
  • the third processor is configured to run the computer program stored in the third memory to implement:
  • the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name corresponding to the first name information and the second name information Matching information
  • the first name information of the data unit is stored in a first file
  • the second name information of the data unit is stored in a second file
  • the first electronic design tool and the second electronic design tool are different .
  • the seventh aspect of the present invention is to provide a computer-readable storage medium, the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used in the first aspect.
  • the eighth aspect of the present invention is to provide a computer-readable storage medium, the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used in the second aspect.
  • the ninth aspect of the present invention is to provide a computer-readable storage medium, the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used in the third aspect.
  • the formal verification method, information identification method, equipment, and storage medium provided by the embodiments of the present invention effectively ensure the stability and reliability of the formal verification operation.
  • FIG. 1 is a flow chart of the implementation of a very large scale integrated circuit provided by an embodiment of the present invention
  • FIG. 2 is a flowchart of design using an electronic design automation tool provided by an embodiment of the present invention
  • Figure 3 is a simplified schematic diagram of the formal verification operation shown in Figure 2;
  • Fig. 4 is a schematic diagram of the principle of formal verification shown in Fig. 3;
  • Figure 5 is a flowchart of a formal verification method provided by an embodiment of the present invention.
  • FIG. 6 is a flowchart of obtaining the first file and the second file in the formal verification method shown in FIG. 5;
  • FIG. 7 is a flowchart of obtaining the integrated netlist and the layout netlist in FIG. 6;
  • FIG. 8 is a flowchart of another formal verification method provided by an embodiment of the present invention.
  • FIG. 9 is a flowchart of an information identification method provided by an embodiment of the present invention.
  • FIG. 10 is a flowchart of a method for identifying name information according to an embodiment of the present invention.
  • FIG. 11 is a schematic structural diagram of a formal verification device provided by an embodiment of the present invention.
  • FIG. 12 is a schematic structural diagram of an information recognition device provided by an embodiment of the present invention.
  • FIG. 13 is a schematic structural diagram of a name information identification device provided by an embodiment of the present invention.
  • EDA Electronics Design Automation
  • Figure 1 The implementation process is shown in Figure 1, which mainly includes: designers try hardware description languages (VHDL, Verilog, or HDL, etc.) to design functions with The code is described to form the Register Transfer Level (RTL) code. Then, the RTL code is logically synthesized into a comprehensive netlist, and the layout and routing process is performed based on the comprehensive netlist to obtain the physical layout design. Perform verification and other operations on the physical layout design.
  • the design process mainly includes: obtaining RTL design code, synthesizing and optimizing the RTL design code, and obtaining the first network
  • scan chain stitching can be performed based on the first netlist to obtain the second netlist.
  • the physical layout design can be based on the second netlist , Obtain the third netlist, and then perform formal verification operations on the third netlist.
  • the implementation process of formal verification may include: starting formal verification, loading reference information, loading tools, loading wizard information, executing settings, matching comparison points, running formal verification operations, obtaining verification results, and then The verification result can be analyzed and processed to determine whether the formal verification operation is successful. If the formal verification operation is successful, the formal verification operation is completed; if the formal verification operation is unsuccessful, debugging is performed.
  • the matching comparison point is the most critical step.
  • the design tool can be used to automatically perform the matching operation. After an abnormality occurs at the matching comparison point, for example, due to incompatibility between the design tools of different manufacturers, it cannot be used universally between the tools of different manufacturers. At this time, in the process of formal verification, it is easy to appear inconsistent unit naming information. In the case of matching and unable to find, you need to search for the error in the results of each stage, and you need to manually add commands to match.
  • FIG. 5 is a flowchart of a formal verification method provided by an embodiment of the present invention; referring to FIG. 5, this embodiment provides a formal verification method, and the execution subject of the method is a formal verification device. It can be understood that The formal verification device can be implemented as software or a combination of software and hardware. Specifically, the formal verification method may include:
  • Step S501 Obtain a first file and a second file, and the second file is obtained based on the first file.
  • Step S502 Determine unit matching information corresponding to the first file and the second file, and the unit matching information includes the correspondence between the data unit in the first file and the data unit in the second file.
  • Step S503 Perform formal verification on the second file according to the unit matching information and the first file.
  • Step S501 Obtain a first file and a second file, and the second file is obtained based on the first file.
  • the first file may include an integrated netlist corresponding to the chip design code
  • the second file may include a layout netlist corresponding to the integrated netlist.
  • the EDA tool can be used to perform logic synthesis processing on the chip design code to obtain a comprehensive netlist corresponding to the chip design code; after the comprehensive netlist is obtained, it can be performed based on the comprehensive netlist. Place and route processing to obtain the layout netlist corresponding to the integrated netlist.
  • the first file may include source program files, and the second file may include a comprehensive netlist corresponding to the chip design code; alternatively, the first file may include a comprehensive netlist corresponding to the chip design code, and the second file may include A netlist generated after the test; or, the first file may include a netlist generated after a logical test, and the second file may include a layout netlist and so on.
  • Step S502 Determine unit matching information corresponding to the first file and the second file, and the unit matching information includes the correspondence between the data unit in the first file and the data unit in the second file.
  • the first file and the second file can be analyzed and processed to determine the unit matching information corresponding to the first file and the second file according to the analysis and processing result.
  • the unit corresponding to the first file and the second file can be determined Matching information.
  • the unit matching information may include the correspondence between the data unit in the first file and the data unit in the second file.
  • the name information of at least one data unit in the second file does not correspond to the name information of all data units in the first file, it can be determined that the second file and the first file correspond to the name information.
  • Unit matching information may include the correspondence between the data unit in the second file and the data unit in the first file.
  • the unit matching information may include the correspondence between the name information of the data unit in the second file, the data unit in the first file and the name information of the data unit, based on the unit matching information and the name of the data unit Information to determine unrecognized data units in the second file.
  • the unit matching information corresponding to the second file and the first file may include the corresponding relationship between the input/output relationship of each data unit in the second file and the input/output relationship of each data unit in the first file, so as to determine the second based on the unit matching information and the input/output relationship.
  • the unrecognized data unit in the file and the name information corresponding to the data unit may include the corresponding relationship between the input/output relationship of each data unit in the second file and the input/output relationship of each data unit in the first file, so as to determine the second based on the unit matching information and the input/output relationship.
  • the first file includes data unit A, data unit B, and data unit C.
  • the names corresponding to the aforementioned data unit A, data unit B, and data unit C are name a, name b, and name c, respectively;
  • the file includes data unit A ⁇ , data unit B ⁇ and data unit C ⁇ .
  • the names corresponding to the above data unit A ⁇ , data unit B ⁇ and data unit C ⁇ are name a ⁇ , name b ⁇ and name c ⁇ , respectively ;
  • the data unit A corresponds to the data unit A'
  • the data unit B corresponds to the data unit B'
  • the data unit C corresponds to the data unit C'.
  • data unit A, data unit B, and data unit C in the first file are data unit A', data unit B', and data unit C'in the second file, respectively. That is, the data unit A, data unit B, and data unit C in the first file have the same functions and/or types as the data unit A ⁇ , data unit B ⁇ , and data unit C ⁇ in the second file, but , The names of data unit A, data unit B, and data unit C in the first file are different from the names of corresponding data unit A', data unit B', and data unit C'in the second file.
  • the name information of the data unit in the first file is different from that in the second file, when performing formal verification on the second file, it may not be possible to identify the data unit corresponding to at least one data unit in the second file.
  • Name information for example: the name b ⁇ of the data unit B ⁇ cannot be recognized.
  • the unit matching information corresponding to the first file and the second file can be determined, and the determined unit matching information can include the unit matching information in the first file.
  • the corresponding relationship between the data unit and the data unit in the second file, that is, the unit matching information at this time includes the corresponding relationship between the data unit B ⁇ and the data unit B (for example, the name of the data unit B ⁇ and the data unit B).
  • the corresponding relationship between the data unit B'and the input/output relationship of the data unit B); the acquired unit matching information can facilitate stable formal verification operations on the first file and the second file.
  • the name information of the data unit in the first file is different from that in the second file, when performing formal verification on the second file, it may not be possible to identify the first file corresponding to at least one data unit in the second file.
  • Data unit when performing formal verification on the second file, it may also appear that the name information of at least one data unit in the second file does not correspond to the name information of all the data units in the first file.
  • the data unit corresponding to the function and/or type of the data unit in the second file cannot be identified in the first file.
  • the data unit B ⁇ of the second file and the name b ⁇ corresponding to the data unit B ⁇ can be identified, and for the first file, the data unit B and the data unit B of the first file can be identified.
  • the corresponding name b it cannot be recognized that the data unit B'of the second file corresponds to the data unit B of the first file. Or it is impossible to identify the name b of the data unit B of the second file corresponding to the name b of the data unit B of the first file.
  • the data unit B of the first file and the name b corresponding to the data unit B can be identified.
  • the data unit B'of the second file and the name b'corresponding to the data unit B' can be identified.
  • the data unit B of the first file corresponds to the data unit B'of the second file.
  • the name b of the data unit B of the first file cannot be identified corresponding to the name b ⁇ of the data unit B of the second file.
  • the unit matching information corresponding to the first file and the second file is determined, and the determined unit matching information may include the correspondence between the data unit in the first file and the data unit in the second file, that is,
  • the unit matching information includes the correspondence between the name b'of the data unit B'and the data unit B and the name b. Therefore, the acquired unit matching information facilitates stable formal verification operations on the first file and the second file.
  • determining the unit matching information corresponding to the first file and the second file may include: obtaining the input correspondence relationship for the register unit based on the integrated netlist and the layout netlist. According to the input correspondence, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained.
  • the comprehensive netlist and the layout netlist can be analyzed and processed, so as to obtain the input and output corresponding relationship for the register unit, and then the input and output corresponding relationship can be obtained and integrated according to the input and output relationship.
  • the unit matching information corresponding to the netlist and the layout netlist can be obtained and integrated according to the input and output relationship.
  • the register unit A in the integrated netlist matches the register unit C in the layout netlist.
  • the integrated netlist includes register unit A
  • the input signal of register unit A is the output signal of register unit B.
  • the layout netlist includes register unit C.
  • the register unit A in the integrated netlist is considered Corresponds to register unit C in the layout netlist. That is, the register unit A in the integrated netlist matches the register unit C in the layout netlist. In addition, a unit matching relationship is generated, and the unit matching information indicates that the register unit A of the integrated netlist corresponds to the register unit C of the layout netlist.
  • the correspondence relationship existing in the unit matching information can be a one-way correspondence relationship, for example: the correspondence relationship from the register unit A of the integrated netlist to the register unit C of the layout netlist, or the layout netlist The corresponding relationship between the register unit C of the integrated netlist and the register unit A of the integrated netlist; or, the corresponding relationship existing in the unit matching information can also be a two-way corresponding relationship, that is, it can include: from the register unit A of the integrated netlist to the layout The correspondence between the register unit C of the netlist and the correspondence between the register unit C of the layout netlist and the register unit A of the integrated netlist.
  • determining the unit matching information corresponding to the first file and the second file may include: obtaining the correspondence between the input and output components of the register unit and the register unit name correspondence based on the integrated netlist and the layout netlist relationship. According to the corresponding relationship between the input and output components of the register unit and the corresponding relationship between the name of the register unit, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained. For example, if the name of the first register unit in the integrated netlist and the name of the second register unit in the layout netlist have the same keyword, the first register unit in the integrated netlist and the second register unit in the layout netlist The register unit corresponds.
  • the comprehensive netlist and the layout netlist can be analyzed and processed, so as to obtain the input correspondence and the name correspondence for the register unit, and then the input correspondence and the name correspondence may be obtained according to the input correspondence and The name correspondence relationship obtains the unit matching information corresponding to the integrated netlist and the layout netlist.
  • the comprehensive netlist includes register unit A, the name information of register unit A is name information a, and the input information of register unit A is register unit B.
  • the register unit is included in the layout netlist C, the name information of the register unit C is the name information c, the input information of the register unit C is the register unit B ⁇ , and when the register unit B ⁇ corresponds to the register unit B, unit matching information can be generated, and the unit matches
  • the information includes the corresponding relationship between the register unit A and the register unit C, and/or the corresponding relationship between the name information a and the name information c.
  • the corresponding relationship included in the unit matching information is similar to the corresponding relationship in the foregoing embodiment, that is, the corresponding relationship The relationship can be a one-way correspondence or a two-way correspondence.
  • Step S503 Perform formal verification on the second file according to the unit matching information and the first file.
  • the second file can be formally verified based on the unit matching information and the first file, thereby effectively ensuring the stability and reliability of the formal verification of the second file.
  • the formal verification method provided in this embodiment determines the unit matching information corresponding to the first file and the second file by acquiring the first file and the second file, and then performs the second file based on the unit matching information and the first file.
  • Formal verification since the unit matching information can include the correspondence between the data unit in the first file and the data unit in the second file, it can be realized when formal verification devices from different vendors are used for formal verification. It can also perform formal verification operations stably and effectively, which not only guarantees the quality and efficiency of formal verification operations, but also reduces the difficulty of formal verification for users who use multiple EDA tools. At the same time, it is also useful for debugging. It provides great convenience and further improves the practicability of the method.
  • Fig. 6 is a flowchart of obtaining the first file and the second file in the formal verification method shown in Fig. 5; on the basis of the above-mentioned embodiment, referring to Fig. 6, the first file includes the code corresponding to the chip design
  • acquiring the first file and the second file in this embodiment may include:
  • Step S601 Obtain a comprehensive netlist corresponding to the chip design code, and the comprehensive netlist includes a register unit.
  • Step S602 Obtain the layout netlist based on the integrated netlist, and the name information of the register unit in the integrated netlist is different from the name information of the corresponding register unit in the layout netlist.
  • the comprehensive netlist may include one or more register units; After the comprehensive netlist is obtained, the comprehensive netlist can be analyzed and processed to obtain the layout netlist.
  • the process of obtaining the layout netlist based on the comprehensive netlist may include: using a preset tool to place and route the comprehensive netlist Process to obtain the layout netlist corresponding to the integrated netlist; at this time, the name information of the register unit in the integrated netlist is different from the name information of the corresponding register unit in the layout netlist.
  • the comprehensive netlist can include all the first register units and the first name information corresponding to the first register unit; the layout netlist can include all the second register units and the second register unit. Corresponding second name information; the first register unit in the integrated netlist corresponds to the second register unit in the layout netlist.
  • the preset tool can be a preset EDA tool used to perform placement and routing processing on the integrated netlist.
  • the preset tool and the formal verification device can belong to the same supplier, or the preset tool and formal verification The equipment can also belong to different suppliers.
  • the comprehensive netlist can be processed by the preset tool to obtain the layout netlist.
  • the preset tool can generate unit matching information, and then can be based on the unit matching information and The first file, formal verification of the second file.
  • Fig. 8 is a second flowchart of a formal verification method provided by an embodiment of the present invention; in the above-mentioned embodiment, referring to Fig. 8, the method in this embodiment can be applied to a formal verification device.
  • the following situations may occur: in the first file, the data unit or the name information of the data unit in the first file corresponding to at least one data unit in the second file cannot be identified, or, In the second file, the data unit or the name information of the data unit in the second file corresponding to the name information of at least one data unit in the first file cannot be identified.
  • the foregoing situations in the formal verification device are collectively referred to as the inability of the formal verification device to recognize the register unit.
  • the method may include:
  • Step S801 Check whether the formal verification device and the preset tool belong to the same supplier.
  • Step S802 When the formal verification device and the preset tool belong to different suppliers, it is determined that the formal verification device cannot recognize the correspondence between the register units respectively located in different files generated by the preset tool. or,
  • Step S803 When the formal verification device and the preset tool belong to the same supplier, it is determined that the formal verification device can identify the register unit.
  • the formal verification equipment and preset tools can be tested, that is, whether the formal verification equipment and the preset tools belong to the same supplier Specifically, the identification information of the first supplier of the formal verification device and the identification information of the second supplier of the preset tool can be obtained.
  • the identification information of the first supplier and the second supplier identification information can be used to detect whether the formal verification device is connected to the preset tool. Whether the tools belong to the same supplier.
  • the identification information of the first supplier and the identification information of the second supplier are the same, it can be determined that the formal verification device and the preset tool belong to the same supplier, and the formal verification device at this time can identify the register unit.
  • the first supplier identification information and the second supplier identification information are different, it can be determined that the formal verification device and the preset tool belong to different suppliers, and it can be determined that the formal verification device cannot identify the register unit.
  • the method further includes:
  • Step S804 Perform formal verification on the layout netlist by using the formal verification device and the integrated netlist.
  • the formal verification device when the formal verification device can identify the register unit, it can directly use the formal verification device and the integrated netlist to perform formal verification on the layout netlist, thereby improving the quality and efficiency of formal verification.
  • the above steps are optional steps, that is, when the layout netlist is configured to perform formal verification operations, the method in this embodiment may include the above step S804; if there is no configuration to perform formal verification on the layout netlist During the operation, the method in this embodiment does not include the above step S804.
  • the first file can be a comprehensive netlist corresponding to the chip design code
  • the second file can be a layout netlist corresponding to the comprehensive netlist
  • the comprehensive netlist is placed and routed through a preset tool. So you can get the layout netlist.
  • a formal verification device belonging to a different vendor from the preset tool to perform formal verification operations on the layout netlist as an example. Because the name information of the register unit in the integrated netlist is different from the name information of the register unit in the layout netlist , Therefore, the formal verification operation can be realized through the unit matching information.
  • the formal verification method may include:
  • Step 1 Use the preset tool to analyze and process the comprehensive netlist to obtain the layout netlist. Specifically, when the layout netlist is obtained, the marking information corresponding to the preset tool can be added to the layout netlist.
  • Step 2 Use the preset tool to automatically generate unit matching information, which corresponds to the integrated netlist and the layout netlist.
  • the script in the preset tool can be used to automatically generate unit matching information.
  • the unit matching information can include the input correspondence between the register units in the layout netlist after the register units in the comprehensive netlist are processed by the preset tool. relationship.
  • Step 3 Use formal verification equipment and unit matching information to perform formal verification operations on the layout netlist.
  • the operation process of the formal verification includes the matching of the register unit, and the formal verification after the matching is to verify whether the input signals of the matching unit are the same, so as to determine whether the formal verification is successful.
  • the corresponding relationship between the naming information of the register unit in the layout netlist and the naming information of the register unit in the comprehensive netlist can be determined based on the unit matching information, so that the layout can be realized based on the unit matching information.
  • the netlist performs formal verification operations.
  • the formal verification method provided by this application embodiment takes into account the incompatibility characteristics of different design tools.
  • unit matching information can be generated, and then When using different design tools for formal verification, the unit matching information can be used to identify the register unit, thereby ensuring the accuracy of the matching of the name information of the register unit.
  • this method can process a large number of files.
  • the scope of application of the method is improved; at the same time, the efficiency and success rate of formal verification are also improved, and the possibility of data loss during the file conversion process is also reduced, which is convenient for query and location of subsequent debugging problems.
  • FIG. 9 is a flowchart of an information recognition method provided by an embodiment of the present invention. referring to FIG. 9, this embodiment provides an information recognition method, and the execution subject of the method is an information recognition device, and it can be understood that
  • the information recognition device can be implemented as software or a combination of software and hardware.
  • the information identification method may include:
  • Step S901 Obtain a first file and a second file.
  • the second file is obtained from the first file, and the second file includes at least one data unit.
  • Step S902 Determine unit matching information corresponding to the second file and the first file.
  • the unit matching information includes the correspondence between at least one data unit in the second file and the data unit in the first file.
  • Step S903 Use the unit matching information to identify the data unit in the second file.
  • Step S901 Obtain a first file and a second file.
  • the second file is obtained from the first file, and the second file includes at least one data unit.
  • the first file includes an integrated netlist corresponding to the chip design code
  • the second file includes a layout netlist corresponding to the integrated netlist
  • the first file includes source program files
  • the second file includes The integrated netlist corresponding to the chip design code
  • the first file includes the integrated netlist corresponding to the chip design code
  • the second file includes the netlist generated after logic testing; or, the first file includes logic testing The generated netlist, the second file includes the layout netlist.
  • At least one data unit included in the second file may also have different manifestations.
  • the at least one data unit included in the second file may be at least one register unit.
  • the first file when the first file is a netlist file, the first file may include at least one register unit, and the name information of the at least one register unit in the first file is different from the name information of the corresponding register unit in the second file.
  • the second file is obtained by processing the first file by the first electronic design automation tool; the first file, the second file, and the unit matching information are used for data processing of the second electronic design automation tool at the same time, Among them, the first electronic design automation tool is different from the second electronic design automation tool.
  • the first electronic design automation tool changes at least one first data unit in the first file and generates at least one data unit stored in the second file, determine at least one data unit in the second file Corresponding to at least one first data unit in the first file.
  • first file, the second file, and the unit matching information are used for the data processing of the second electronic design automation tool at the same time, including: the first file and the unit matching information are used for the second electronic design automation tool to the second file at the same time.
  • the formal verification process is used for the formal verification process.
  • Step S902 Determine unit matching information corresponding to the second file and the first file.
  • the unit matching information includes the correspondence between at least one data unit in the second file and the data unit in the first file.
  • the unit matching information corresponding to the first file and the second file is determined; or, when in the first file, it cannot be When a data unit corresponding to the name information of at least one data unit in the second file is identified, the unit matching information corresponding to the second file and the first file is determined.
  • determining the unit matching information corresponding to the second file and the first file may include: obtaining input correspondence and name correspondence for the register unit based on the first file and the second file; and according to the input correspondence and name correspondence The relationship obtains unit matching information corresponding to the first file and the second file.
  • determining the unit matching information corresponding to the second file and the first file may include: obtaining the input correspondence relationship of at least one data unit based on the first file and the second file; and obtaining the input correspondence relationship with the first file according to the input correspondence relationship.
  • the file and the unit matching information corresponding to the second file may include: obtaining the input correspondence relationship of at least one data unit based on the first file and the second file; and obtaining the input correspondence relationship with the first file according to the input correspondence relationship.
  • Step S903 Use the unit matching information to identify the data unit in the second file.
  • the unit matching information can be used to identify the data unit in the second file, which effectively guarantees the accuracy and reliability of information identification, thereby facilitating the application and processing of the second file.
  • FIG. 10 is a flowchart of a method for identifying name information provided by an embodiment of the present invention; referring to FIG. 10, this embodiment provides a method for identifying name information, and the subject of the method is a name information identifying device.
  • the name information identification device can be implemented as software or a combination of software and hardware.
  • the name information identification method may include:
  • Step S1001 Obtain the first name information of the data unit.
  • Step S1002 When the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name matching information corresponding to the first name information and the second name information.
  • Step S1003 Send the name matching information to the second electronic design tool for the second electronic design tool to identify the correspondence between the first name information and the second name information.
  • the first electronic design tool and the second electronic design tool are different; at this time, when the first electronic design tool is used to change the data unit from the first name information to the second name information, in order to ensure that other electronic design tools (section The second electronic design tool) can accurately identify the second name information of the data unit, and the first electronic design tool can determine the name matching information corresponding to the first name information and the second name information.
  • the first name information of the data unit is stored in the first file
  • the second name information of the data unit is stored in the second file.
  • the name matching information can be understood as corresponding to the first file and the second file.
  • the first file is generated before the second file.
  • the first file and the second file are both files generated during the chip design process, and the first file is used to generate the second file.
  • the second electronic design tool is used for the formal verification of chip design.
  • the second file can be performed based on the name matching information and the above-mentioned first file. Formal verification to ensure that the first document and the second document meet the preset requirements.
  • the name matching information may include first name information, second name information, and an index between the first name information and the second name information; or, the name matching information includes first name information, second name information Information, and an index between the second name information and the first name information; or, the name matching information may also include: the first name information, the second name information, and the index between the first name information and the second name information Bidirectional index information.
  • the name matching information can be sent to the second electronic design tool.
  • the second electronic design tool can identify the second name information of the data unit in the second file and the first file based on the name matching information. The corresponding relationship between the first name information of the data unit in the data unit, thereby realizing effective identification of the data unit.
  • the name information identification method determines the first name by acquiring the first name information of the data unit, and when the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit
  • the information corresponds to the name matching information of the second name information
  • the name matching information is sent to the second electronic design tool, which effectively ensures that the second electronic design tool can identify the corresponding relationship between the first name information and the second name information , which effectively guarantees the accuracy and reliability of name information identification, facilitates the use of different electronic design tools to identify the name information of data units, and further expands the scope of application of the method.
  • sending the name matching information to the second electronic design tool may include: storing the name matching information about the first name information and the second name information in the name matching file; and sending the name matching file to the second electronic design tool.
  • the name matching information about the first name information and the second name information can be stored in a name matching file Then, the name matching file is sent to the second electronic design tool, thereby improving the stability and reliability of the method.
  • Figure 11 is a schematic structural diagram of a formal verification device provided by an embodiment of the present invention. referring to Figure 11, this embodiment provides a formal verification device that can perform the formal verification shown in Figure 5 above method.
  • the formal verification device may include:
  • the first memory 12 is used to store computer programs
  • the first processor 11 is configured to run a computer program stored in the first memory 12 to implement:
  • the second file is formally verified.
  • the structure of the formal verification device may also include a first communication interface 13 for the electronic device to communicate with other devices or a communication network.
  • the first processor 11 is further configured to: when the name information corresponding to at least one data unit in the second file cannot be identified, determine the unit matching information corresponding to the first file and the second file; In the first file, when the data unit corresponding to the name information of at least one data unit in the second file cannot be identified, the unit matching information corresponding to the first file and the second file is determined.
  • the first file includes an integrated netlist corresponding to the chip design code
  • the second file includes a layout netlist corresponding to the integrated netlist
  • the first processor 11 when the first processor 11 obtains the first file and the second file, the first processor 11 is configured to: obtain a comprehensive netlist corresponding to the chip design code, and the comprehensive netlist includes a register unit; The layout netlist is obtained based on the integrated netlist, and the name information of the register unit in the integrated netlist is different from the name information of the corresponding register unit in the layout netlist.
  • the comprehensive netlist includes all the first register units and the first name information corresponding to the first register unit; the layout netlist includes all the second register units and the information corresponding to the second register unit. Second name information; the first register unit in the integrated netlist corresponds to the second register unit in the layout netlist.
  • the first processor 11 when the first processor 11 obtains the layout netlist based on the integrated netlist, the first processor 11 is configured to: use a preset tool to perform placement and routing processing on the integrated netlist to obtain the corresponding integrated netlist The layout netlist.
  • the first processor 11 is also used to: detect whether the formal verification device and the preset tool belong to the same supplier; when the formal verification device and the preset tool belong to different suppliers, determine that the formal verification device cannot Identify the correspondence between the register units located in different files generated by the preset tool; or, when the formal verification device and the preset tool belong to the same supplier, it is determined that the formal verification device can identify the register unit.
  • the first processor 11 is further configured to: after determining that the formal verification device can identify the register unit, use the formal verification device and the integrated netlist to perform formal verification on the layout netlist.
  • the first processor 11 determines the unit matching information corresponding to the first file and the second file
  • the first processor 11 is configured to: obtain the register unit based on the integrated netlist and the layout netlist According to the input corresponding relationship, obtain the unit matching information corresponding to the integrated netlist and the layout netlist.
  • the first processor 11 determines the unit matching information corresponding to the first file and the second file
  • the first processor 11 is configured to: obtain the register unit based on the integrated netlist and the layout netlist The input correspondence relationship and name correspondence relationship; according to the input correspondence relationship and the name correspondence relationship, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained.
  • the device shown in Fig. 11 can execute the methods of the embodiments shown in Figs. 5-8.
  • parts that are not described in detail in this embodiment please refer to the relevant descriptions of the embodiments shown in Figs. 5-8.
  • FIG. 12 is a schematic structural diagram of an information recognition device provided by an embodiment of the present invention. referring to FIG. 12, this embodiment provides an information recognition device that can perform the information recognition shown in FIG. 9 above method.
  • the information identification device may include:
  • the second memory 22 is used to store computer programs
  • the second processor 21 is configured to run a computer program stored in the second memory 22 to implement:
  • the second file is obtained according to the first file, and the second file includes at least one data unit;
  • the unit matching information is used to identify the data unit in the second file.
  • the structure of the information identification device may further include a second communication interface 23 for the electronic device to communicate with other devices or a communication network.
  • the second processor 21 is configured to: when the name information corresponding to at least one data unit in the second file cannot be identified, determine the unit matching information corresponding to the first file and the second file; or When the data unit corresponding to the name information of at least one data unit in the second file cannot be identified in the first file, the unit matching information corresponding to the second file and the first file is determined.
  • the first file includes an integrated netlist corresponding to the chip design code
  • the second file includes a layout netlist corresponding to the integrated netlist
  • the first file includes source program files
  • the second file includes The integrated netlist corresponding to the chip design code
  • the first file includes the integrated netlist corresponding to the chip design code
  • the second file includes the netlist generated after logic testing; or, the first file includes logic testing The generated netlist, the second file includes the layout netlist.
  • the first file includes at least one register unit, and the name information of the at least one register unit in the first file is different from the name information of the corresponding register unit in the second file;
  • the second processor 21 is configured to obtain the second file based on the first file.
  • the second processor 21 determines the unit matching information corresponding to the second file and the first file
  • the second processor 21 is configured to: obtain information about the register unit based on the first file and the second file The input correspondence relationship and the name correspondence relationship; the unit matching information corresponding to the first file and the second file is obtained according to the input correspondence relationship and the name correspondence relationship.
  • the second file is obtained by processing the first file by the first electronic design automation tool; the first file, the second file, and the unit matching information are used for data processing of the second electronic design automation tool at the same time, Among them, the first electronic design automation tool is different from the second electronic design automation tool.
  • the first electronic design automation tool when it is detected that the first electronic design automation tool changes at least one first data unit in the first file and generates at least one data unit stored in the second file, it is determined that at least one of the second files is The data unit corresponds to at least one first data unit in the first file.
  • the first file, the second file, and the unit matching information are used for data processing of the second electronic design automation tool at the same time, including: the first file and the unit matching information are used for the second electronic design automation tool at the same time.
  • the formal verification process of documents are used for data processing of the second electronic design automation tool at the same time.
  • the second processor 21 determines the unit matching information corresponding to the second file and the first file
  • the second processor 21 is configured to: obtain at least one piece of data based on the first file and the second file The input corresponding relationship of the unit; the unit matching information corresponding to the first file and the second file is obtained according to the input corresponding relationship.
  • the device shown in FIG. 12 can execute the method of the embodiment shown in FIG. 9.
  • the implementation process and technical effects of this technical solution refer to the description in the embodiment shown in FIG. 9, which will not be repeated here.
  • FIG. 13 is a schematic structural diagram of a name information recognition device provided by an embodiment of the present invention. referring to FIG. 13, this embodiment provides a name information recognition device that can perform the name information recognition device shown in FIG. 10
  • the name information identification method may include:
  • the third memory 32 is used to store computer programs
  • the third processor 31 is configured to run a computer program stored in the third memory 32 to implement:
  • the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name matching information corresponding to the first name information and the second name information;
  • the first name information of the data unit is stored in the first file
  • the second name information of the data unit is stored in the second file
  • the first electronic design tool and the second electronic design tool are different.
  • the structure of the name information identification device may further include a third communication interface 33 for the electronic device to communicate with other devices or a communication network.
  • the third processor 31 when the third processor 31 sends the name matching information to the second electronic design tool, the third processor 31 is configured to: store the name matching information about the first name information and the second name information in The name matching file; and, sending the name matching file to the second electronic design tool.
  • the name matching information includes first name information, second name information, and an index between the first name information and the second name information; or, the name matching information includes first name information, second name information, And the index between the second name information and the first name information.
  • the second electronic design tool is used for formal verification of chip design.
  • the first file is generated before the second file.
  • the first file and the second file are both files generated during the chip design process, and the first file is used to generate the second file.
  • the device shown in FIG. 13 can execute the method of the embodiment shown in FIG. 10. For parts that are not described in detail in this embodiment, reference may be made to the related description of the embodiment shown in FIG. 10. For the implementation process and technical effects of this technical solution, refer to the description in the embodiment shown in FIG. 10, which will not be repeated here.
  • an embodiment of the present invention provides a computer storage medium for storing computer software instructions used by an electronic device, which includes a program for executing the formal verification method in the method embodiment shown in FIGS. 5 to 8 above.
  • the embodiment of the present invention provides a computer storage medium for storing computer software instructions used by an electronic device, which includes a program for executing the information identification method in the method embodiment shown in FIG. 9.
  • the embodiment of the present invention provides a computer storage medium for storing computer software instructions used by an electronic device, which includes a program for executing the name information identification method in the method embodiment shown in FIG. 10.
  • the disclosed related devices and methods can be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods, for example, multiple units or components may be divided. It can be combined or integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • the functional units in the various embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of the present invention essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium.
  • the aforementioned storage media include: U disk, mobile hard disk, Read-Only Memory (ROM), Random Access Memory (RAM, Random Access Memory), magnetic disks or optical disks and other media that can store program codes.

Abstract

Provided are a formal verification method and device, an information identification method and device, and a storage medium. The formal verification method comprises: acquiring a first file and a second file, wherein the second file is obtained according to the first file (S501); determining unit matching information corresponding to the first file and the second file, wherein the unit matching information comprises the correlation between data units in the first file and data units in the second file (S502); and performing formal verification on the second file according to the unit matching information and the first file (S503). The method improves the reliability of the formal verification of a second file.

Description

形式验证方法、信息识别方法、设备和存储介质Formal verification method, information identification method, equipment and storage medium 技术领域Technical field
本发明实施例涉及芯片设计技术领域,尤其涉及一种形式验证方法、信息识别方法、设备和存储介质。The embodiments of the present invention relate to the technical field of chip design, in particular to a formal verification method, an information identification method, equipment, and storage medium.
背景技术Background technique
随着芯片技术的飞速发展,超大规模集成电路的应用越来越广泛。目前,通常采用电子设计自动化(Electronics Design Automation,简称,EDA)工具对芯片进行设计,在对芯片进行设计的过程中,每一个实现步骤均需要做形式验证,形式验证的目的可以保证前后设计是相同的。With the rapid development of chip technology, the application of very large scale integrated circuits has become more and more extensive. At present, electronic design automation (Electronics Design Automation, abbreviated, EDA) tools are usually used to design chips. In the process of chip design, formal verification is required for each implementation step. The purpose of formal verification can ensure that the design before and after identical.
在对芯片进行设计的过程中,由于EDA工具在各个阶段都会因为各种原因对设计中的各个成分进行命名变更。此时,若采用同一个供应商提供的EDA工具,EDA工具可以采用统一文件命名匹配的方式和查找方法,从而可以实现整个形式验证流程。若采用不同供应商提供的EDA工具进行形式验证,由于跨供应商的EDA工具的单元命名信息不匹配、文件加密或者不同厂商工具之间不兼容的问题,使得EDA工具无法识别形式验证文件,这样对于不同厂家的形式验证工具而言,增加了形式验证的难度,甚至无法进行正常的形式验证操作。In the process of designing the chip, the EDA tool will change the naming of the various components in the design for various reasons at various stages. At this time, if the EDA tool provided by the same supplier is used, the EDA tool can adopt a unified file name matching method and search method, so that the entire formal verification process can be realized. If EDA tools provided by different vendors are used for formal verification, the EDA tools cannot recognize formal verification files due to the mismatch of unit naming information of cross-vendor EDA tools, file encryption, or incompatibility between tools from different vendors. For the formal verification tools of different manufacturers, the difficulty of formal verification is increased, and normal formal verification operations cannot even be performed.
发明内容Summary of the invention
本发明实施例提供了一种形式验证方法、信息识别方法、设备和存储介质。The embodiments of the present invention provide a formal verification method, information identification method, equipment and storage medium.
本发明的第一方面是为了提供一种形式验证方法,包括:The first aspect of the present invention is to provide a formal verification method, including:
获取第一文件和第二文件,所述第二文件根据第一文件而得到;Obtaining a first file and a second file, the second file being obtained according to the first file;
确定与所述第一文件和所述第二文件相对应的单元匹配信息,所述单元匹配信息中包括所述第一文件中的数据单元与所述第二文件中的数据单元之间的对应关系;Determine unit matching information corresponding to the first file and the second file, where the unit matching information includes the correspondence between the data unit in the first file and the data unit in the second file relationship;
根据所述单元匹配信息和所述第一文件,对所述第二文件进行形式验证。Perform formal verification on the second file according to the unit matching information and the first file.
本发明的第二方面是为了提供一种信息识别方法,包括:The second aspect of the present invention is to provide an information identification method, including:
获取第一文件和第二文件,所述第二文件根据第一文件而得到,并且,所述第二文件中包括至少一个数据单元;Acquiring a first file and a second file, where the second file is obtained based on the first file, and the second file includes at least one data unit;
确定与所述第二文件和所述第一文件相对应的单元匹配信息,所述单元匹配信息中包括所述第二文件中的所述至少一个数据单元与所述第一文件中的数据单元之间的对应关系;Determine unit matching information corresponding to the second file and the first file, where the unit matching information includes the at least one data unit in the second file and the data unit in the first file Correspondence between;
利用所述单元匹配信息识别所述第二文件中的数据单元。The unit matching information is used to identify the data unit in the second file.
本发明的第三方面是为了提供一种名称信息识别方法,包括:The third aspect of the present invention is to provide a method for identifying name information, including:
获取数据单元的第一名称信息;Acquiring the first name information of the data unit;
当第一电子设计工具改变所述数据单元的所述第一名称信息,并生成所述数据单元的第二名称信息时,确定所述第一名称信息与所述第二名称信息相对应的名称匹配信息;When the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name corresponding to the first name information and the second name information Matching information
将所述名称匹配信息发送至第二电子设计工具,以用于所述第二电子设计工具识别所述第一名称信息和所述第二名称信息之间的对应关系;以及Sending the name matching information to a second electronic design tool for the second electronic design tool to identify the correspondence between the first name information and the second name information; and
其中,所述数据单元的第一名称信息存储于第一文件中,所述数据单元的第二名称信息存储于第二文件中,所述第一电子设计工具和所述第二电子设计工具不同。Wherein, the first name information of the data unit is stored in a first file, the second name information of the data unit is stored in a second file, and the first electronic design tool and the second electronic design tool are different .
本发明的第四方面是为了提供一种形式验证设备,包括:The fourth aspect of the present invention is to provide a formal verification device, including:
第一存储器,用于存储计算机程序;The first memory is used to store computer programs;
第一处理器,用于运行所述第一存储器中存储的计算机程序以实现:The first processor is configured to run a computer program stored in the first memory to implement:
获取第一文件和第二文件,所述第二文件根据第一文件而得到;Obtaining a first file and a second file, the second file being obtained according to the first file;
确定与所述第一文件和所述第二文件相对应的单元匹配信息,所述单元匹配信息中包括所述第一文件中的数据单元与所述第二文件中的数据单元之间的对应关系;Determine unit matching information corresponding to the first file and the second file, where the unit matching information includes the correspondence between the data unit in the first file and the data unit in the second file relationship;
根据所述单元匹配信息和所述第一文件,对所述第二文件进行形式验证。Perform formal verification on the second file according to the unit matching information and the first file.
本发明的第五方面是为了提供一种信息识别设备,包括:The fifth aspect of the present invention is to provide an information recognition device, including:
第二存储器,用于存储计算机程序;The second memory is used to store computer programs;
第二处理器,用于运行所述第二存储器中存储的计算机程序以实现:The second processor is configured to run a computer program stored in the second memory to implement:
获取第一文件和第二文件,所述第二文件根据第一文件而得到,并且,所述第二文件中包括至少一个数据单元;Acquiring a first file and a second file, where the second file is obtained based on the first file, and the second file includes at least one data unit;
确定与所述第二文件和所述第一文件相对应的单元匹配信息,所述单元匹配信息中包括所述第二文件中的所述至少一个数据单元与所述第一文件中 的数据单元之间的对应关系;Determine unit matching information corresponding to the second file and the first file, where the unit matching information includes the at least one data unit in the second file and the data unit in the first file Correspondence between;
利用所述单元匹配信息识别所述第二文件中的数据单元。The unit matching information is used to identify the data unit in the second file.
本发明的第六方面是为了提供一种名称信息识别设备,包括:The sixth aspect of the present invention is to provide a name information recognition device, including:
第三存储器,用于存储计算机程序;The third storage is used to store computer programs;
第三处理器,用于运行所述第三存储器中存储的计算机程序以实现:The third processor is configured to run the computer program stored in the third memory to implement:
获取数据单元的第一名称信息;Acquiring the first name information of the data unit;
当第一电子设计工具改变所述数据单元的所述第一名称信息,并生成所述数据单元的第二名称信息时,确定所述第一名称信息与所述第二名称信息相对应的名称匹配信息;When the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name corresponding to the first name information and the second name information Matching information
将所述名称匹配信息发送至第二电子设计工具,以用于所述第二电子设计工具识别所述第一名称信息和所述第二名称信息之间的对应关系;以及Sending the name matching information to a second electronic design tool for the second electronic design tool to identify the correspondence between the first name information and the second name information; and
其中,所述数据单元的第一名称信息存储于第一文件中,所述数据单元的第二名称信息存储于第二文件中,所述第一电子设计工具和所述第二电子设计工具不同。Wherein, the first name information of the data unit is stored in a first file, the second name information of the data unit is stored in a second file, and the first electronic design tool and the second electronic design tool are different .
本发明的第七方面是为了提供一种计算机可读存储介质,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于第一方面所述的形式验证方法。The seventh aspect of the present invention is to provide a computer-readable storage medium, the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used in the first aspect. The formal verification method described.
本发明的第八方面是为了提供一种计算机可读存储介质,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于第二方面所述的信息识别方法。The eighth aspect of the present invention is to provide a computer-readable storage medium, the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used in the second aspect. The information identification method described.
本发明的第九方面是为了提供一种计算机可读存储介质,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于第三方面所述的名称信息识别方法。The ninth aspect of the present invention is to provide a computer-readable storage medium, the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used in the third aspect. The name information identification method described.
本发明实施例提供的形式验证方法、信息识别方法、设备和存储介质,有效地保证了进行形式验证操作的稳定可靠性。The formal verification method, information identification method, equipment, and storage medium provided by the embodiments of the present invention effectively ensure the stability and reliability of the formal verification operation.
附图说明Description of the drawings
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:The drawings described here are used to provide a further understanding of the application and constitute a part of the application. The exemplary embodiments and descriptions of the application are used to explain the application, and do not constitute an improper limitation of the application. In the attached picture:
图1为本发明实施例提供的超大规模集成电路的实现流程图;FIG. 1 is a flow chart of the implementation of a very large scale integrated circuit provided by an embodiment of the present invention;
图2为本发明实施例提供的利用电子设计自动化工具进行设计的流程图;FIG. 2 is a flowchart of design using an electronic design automation tool provided by an embodiment of the present invention;
图3为图2所示的进行形式验证操作的简化示意图;Figure 3 is a simplified schematic diagram of the formal verification operation shown in Figure 2;
图4为图3所示的形式验证的原理示意图;Fig. 4 is a schematic diagram of the principle of formal verification shown in Fig. 3;
图5为本发明实施例提供的一种形式验证方法的流程图;Figure 5 is a flowchart of a formal verification method provided by an embodiment of the present invention;
图6为图5所示的形式验证方法中获取第一文件和第二文件的流程图;FIG. 6 is a flowchart of obtaining the first file and the second file in the formal verification method shown in FIG. 5;
图7为图6中获取综合网表和版图网表的流程图;FIG. 7 is a flowchart of obtaining the integrated netlist and the layout netlist in FIG. 6;
图8为本发明实施例提供的另一种形式验证方法的流程图;FIG. 8 is a flowchart of another formal verification method provided by an embodiment of the present invention;
图9为本发明实施例提供的一种信息识别方法的流程图;FIG. 9 is a flowchart of an information identification method provided by an embodiment of the present invention;
图10为本发明实施例提供的一种名称信息识别方法的流程图;FIG. 10 is a flowchart of a method for identifying name information according to an embodiment of the present invention;
图11为本发明实施例提供的一种形式验证设备的结构示意图;FIG. 11 is a schematic structural diagram of a formal verification device provided by an embodiment of the present invention;
图12为本发明实施例提供的一种信息识别设备的结构示意图;FIG. 12 is a schematic structural diagram of an information recognition device provided by an embodiment of the present invention;
图13为本发明实施例提供的一种名称信息识别设备的结构示意图。FIG. 13 is a schematic structural diagram of a name information identification device provided by an embodiment of the present invention.
具体实施方式Detailed ways
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。In order to make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments These are a part of the embodiments of the present invention, but not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative work shall fall within the protection scope of the present invention.
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the technical field of the present invention. The terms used in the specification of the present invention herein are only for the purpose of describing specific embodiments, and are not intended to limit the present invention.
随着芯片技术的飞速发展,超大规模集成电路的应用越来越广泛。通常会采用电子设计自动化(Electronics Design Automation,简称EDA)工具对芯片进行设计,其实现流程如图1所示,主要包括:设计人员试用硬件描述语言(VHDL、Verilog或者HDL等)将设计功能以代码来描述,形成寄存器传输级(Register Transfer Level,简称RTL)代码,而后,将RTL代码逻辑综合处理为综合网表,并基于综合网表进行布局和布线处理,获得物理的版图设计,之后与对物理的版图设计进行验证等操作。With the rapid development of chip technology, the application of very large scale integrated circuits has become more and more extensive. Usually electronic design automation (Electronics Design Automation, referred to as EDA) tools are used to design the chip. The implementation process is shown in Figure 1, which mainly includes: designers try hardware description languages (VHDL, Verilog, or HDL, etc.) to design functions with The code is described to form the Register Transfer Level (RTL) code. Then, the RTL code is logically synthesized into a comprehensive netlist, and the layout and routing process is performed based on the comprehensive netlist to obtain the physical layout design. Perform verification and other operations on the physical layout design.
具体的,如图2所示,提供了一种利用EDA工具进行设计的流程图,具体的,其设计流程主要包括:获取RTL设计代码、对RTL设计代码进行综合与优 化处理,获得第一网表,在第一网表通过形式验证之后,可以基于第一网表进行扫描链式缝合,获得第二网表,在第二网报通过形式验证之后,可以基于第二网表进行物理版图设计,获得第三网表,而后可以对第三网表进行形式验证操作。Specifically, as shown in Figure 2, a flow chart for designing using EDA tools is provided. Specifically, the design process mainly includes: obtaining RTL design code, synthesizing and optimizing the RTL design code, and obtaining the first network After the first netlist passes the formal verification, scan chain stitching can be performed based on the first netlist to obtain the second netlist. After the second netlist passes the formal verification, the physical layout design can be based on the second netlist , Obtain the third netlist, and then perform formal verification operations on the third netlist.
在上述的设计过程中,每一个步骤之间都需要做形式验证,而形式验证的目的就是保证前后设计是相同的。目前,现有的EDA工具在各个阶段都会因为各种原因对设计中的各个寄存器的成分进行命名变更,例:寄存器合并单元、寄存器解组(ungroup)单元等。一般情况下,若整个设计流程都选用一家EDA供应商提供的设计工具,该设计工具可以正常读取寄存器单元,如图3所示,在利用第一设计工具对第一设计A进行设计处理为第二设计B之后,若利用第一设计工具进行形式验证,则可以稳定地实现整个形式验证过程。具体的,如图4所示,形式验证的实现流程可以包括:开始进行形式验证、加载参考信息、装载工具、加载向导信息、执行设置、匹配比较点、运行形式验证操作、获得验证结果,而后可以对验证结果进行分析处理,判断形式验证操作是否成功,若形式验证操作成功,则完成了形式验证操作;若形式验证操作不成功,则进行调试。In the above design process, formal verification is required between each step, and the purpose of formal verification is to ensure that the design before and after are the same. At present, the existing EDA tools change the naming of the components of each register in the design for various reasons at various stages, such as: register merging unit, register ungrouping unit, etc. Under normal circumstances, if the design tool provided by an EDA supplier is selected for the entire design process, the design tool can read the register unit normally. As shown in Figure 3, the design process of the first design A using the first design tool is After the second design B, if the first design tool is used for formal verification, the entire formal verification process can be stably realized. Specifically, as shown in Figure 4, the implementation process of formal verification may include: starting formal verification, loading reference information, loading tools, loading wizard information, executing settings, matching comparison points, running formal verification operations, obtaining verification results, and then The verification result can be analyzed and processed to determine whether the formal verification operation is successful. If the formal verification operation is successful, the formal verification operation is completed; if the formal verification operation is unsuccessful, debugging is performed.
在上述过程中,匹配比较点是最为关键的一步,一般情况下,可以利用设计工具自动进行匹配操作。在匹配比较点出现异常之后,例如:由于不同厂商的设计工具之间不兼容等情况,无法在不同厂家的工具之间通用,此时,在形式验证的过程中,很容易出现单元命名信息不匹配和无法查找的情况,则需要去各个阶段的结果中搜寻出错的地方,需要人工手动加命令匹配,这样不仅形式验证效率较低,人工成本较高,并且,还容易耽误项目的进度,且不易于流程自动化;此外,对于使用多种EDA工具的用户来说,也增加了进行形式验证的困难程度,同时,调试工作也有极大的阻碍。In the above process, the matching comparison point is the most critical step. Generally, the design tool can be used to automatically perform the matching operation. After an abnormality occurs at the matching comparison point, for example, due to incompatibility between the design tools of different manufacturers, it cannot be used universally between the tools of different manufacturers. At this time, in the process of formal verification, it is easy to appear inconsistent unit naming information. In the case of matching and unable to find, you need to search for the error in the results of each stage, and you need to manually add commands to match. This will not only lower the efficiency of formal verification and higher labor costs, but also easily delay the progress of the project, and It is not easy to automate the process; in addition, for users who use multiple EDA tools, it also increases the difficulty of formal verification, and at the same time, debugging is also a great obstacle.
下面结合附图,对本发明的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。In the following, some embodiments of the present invention will be described in detail with reference to the accompanying drawings. As long as there is no conflict between the embodiments, the following embodiments and the features in the embodiments can be combined with each other.
图5为本发明实施例提供的一种形式验证方法的流程图;参考附图5所示,本实施例提供了一种形式验证方法,该方法的执行主体为形式验证设备,可以理解的是,该形式验证设备可以实现为软件、或者软件和硬件的组合。具体的,该形式验证方法可以包括:FIG. 5 is a flowchart of a formal verification method provided by an embodiment of the present invention; referring to FIG. 5, this embodiment provides a formal verification method, and the execution subject of the method is a formal verification device. It can be understood that The formal verification device can be implemented as software or a combination of software and hardware. Specifically, the formal verification method may include:
步骤S501:获取第一文件和第二文件,第二文件根据第一文件而得到。Step S501: Obtain a first file and a second file, and the second file is obtained based on the first file.
步骤S502:确定与第一文件和第二文件相对应的单元匹配信息,单元匹配信息中包括第一文件中的数据单元与第二文件中的数据单元之间的对应关系。Step S502: Determine unit matching information corresponding to the first file and the second file, and the unit matching information includes the correspondence between the data unit in the first file and the data unit in the second file.
步骤S503:根据单元匹配信息和第一文件,对第二文件进行形式验证。Step S503: Perform formal verification on the second file according to the unit matching information and the first file.
以下针对上述步骤进行详细阐述:The following is a detailed description of the above steps:
步骤S501:获取第一文件和第二文件,第二文件根据第一文件而得到。Step S501: Obtain a first file and a second file, and the second file is obtained based on the first file.
其中,第一文件可以包括与芯片设计代码相对应的综合网表,第二文件可以包括与综合网表相对应的版图网表。具体的,在获取到芯片设计代码之后,可以利用EDA工具对芯片设计代码进行逻辑综合处理,获得与芯片设计代码相对应的综合网表;在获取到综合网表之后,可以基于综合网表进行布局布线处理,从而可以获得与综合网表相对应的版图网表。The first file may include an integrated netlist corresponding to the chip design code, and the second file may include a layout netlist corresponding to the integrated netlist. Specifically, after obtaining the chip design code, the EDA tool can be used to perform logic synthesis processing on the chip design code to obtain a comprehensive netlist corresponding to the chip design code; after the comprehensive netlist is obtained, it can be performed based on the comprehensive netlist. Place and route processing to obtain the layout netlist corresponding to the integrated netlist.
可以理解的是,第一文件和第二文件所代表的信息并不限于上述所例举的综合网表和版图网表,本领域技术人员可以根据具体的应用需求和设计需求进行设置,例如:第一文件可以包括源程序文件,第二文件可以包括与芯片设计代码相对应的综合网表;或者,第一文件可以包括与芯片设计代码相对应的综合网表,第二文件可以包括经过逻辑测试后生成的网表;或者,第一文件可以包括经过逻辑测试后生成的网表,第二文件可以包括版图网表等等。It is understandable that the information represented by the first file and the second file is not limited to the comprehensive netlist and layout netlist exemplified above, and those skilled in the art can set it according to specific application requirements and design requirements, for example: The first file may include source program files, and the second file may include a comprehensive netlist corresponding to the chip design code; alternatively, the first file may include a comprehensive netlist corresponding to the chip design code, and the second file may include A netlist generated after the test; or, the first file may include a netlist generated after a logical test, and the second file may include a layout netlist and so on.
步骤S502:确定与第一文件和第二文件相对应的单元匹配信息,单元匹配信息中包括第一文件中的数据单元与第二文件中的数据单元之间的对应关系。Step S502: Determine unit matching information corresponding to the first file and the second file, and the unit matching information includes the correspondence between the data unit in the first file and the data unit in the second file.
在获取第一文件和第二文件之后,可以对第一文件和第二文件进行分析处理,以根据分析处理结果来确定与第一文件和第二文件相对应的单元匹配信息,在一些实例中,在形式验证过程中,若第一文件中的至少一个数据单元的名称信息与第二文件中的所有数据单元的名称信息不对应,则可以确定与第一文件和第二文件相对应的单元匹配信息。该单元匹配信息中可以包括第一文件中的数据单元与第二文件中的数据单元之间的对应关系。After the first file and the second file are obtained, the first file and the second file can be analyzed and processed to determine the unit matching information corresponding to the first file and the second file according to the analysis and processing result. In some examples, In the formal verification process, if the name information of at least one data unit in the first file does not correspond to the name information of all data units in the second file, the unit corresponding to the first file and the second file can be determined Matching information. The unit matching information may include the correspondence between the data unit in the first file and the data unit in the second file.
在另一些实例中,当在第二文件中的至少一个数据单元的名称信息与第一文件中的所有数据单元的名称信息不对应时,则可以确定与第二文件和第一文件相对应的单元匹配信息。该单元匹配信息中可以包括第二文件中的数据单元与第一文件中的数据单元之间的对应关系。In other examples, when the name information of at least one data unit in the second file does not correspond to the name information of all data units in the first file, it can be determined that the second file and the first file correspond to the name information. Unit matching information. The unit matching information may include the correspondence between the data unit in the second file and the data unit in the first file.
在另一些实例中,在形式验证过程中,若无法识别出第二文件中的数据单元,且可以获取上述数据单元的名称信息时,则确定与第一文件和第二文件相对应的单元匹配信息,该单元匹配信息中可以包括第二文件中数据单元的名称信息与第一文件中的数据单元以及该数据单元的名称信息之间的对应关系,以基于该单元匹配信息和数据单元的名称信息来确定第二文件中无法识别的数据单元。In other instances, in the formal verification process, if the data unit in the second file cannot be identified and the name information of the above data unit can be obtained, it is determined that the units corresponding to the first file and the second file match The unit matching information may include the correspondence between the name information of the data unit in the second file, the data unit in the first file and the name information of the data unit, based on the unit matching information and the name of the data unit Information to determine unrecognized data units in the second file.
在另一些实例中,在形式验证过程中,若无法识别出第二文件中的数据单元以及该数据单元所对应的名称信息、且可以识别出该数据单元的输入输出关系时,则确定与第二文件和第一文件相对应的单元匹配信息。该单元匹配信息中可以包括第二文件中各个数据单元的输入输出关系与第一文件中各个数据单元的输入输出关系之间的对应关系,以基于该单元匹配信息和输入输出关系来确定第二文件中无法识别的数据单元以及该数据单元所对应的名称信息。In other instances, in the formal verification process, if the data unit in the second file and the name information corresponding to the data unit cannot be identified, and the input and output relationship of the data unit can be identified, it is determined to be The unit matching information corresponding to the second file and the first file. The unit matching information may include the corresponding relationship between the input/output relationship of each data unit in the second file and the input/output relationship of each data unit in the first file, so as to determine the second based on the unit matching information and the input/output relationship. The unrecognized data unit in the file and the name information corresponding to the data unit.
举例来说,第一文件中包括数据单元A、数据单元B和数据单元C,上述数据单元A、数据单元B和数据单元C所对应的名称分别为名称a、名称b和名称c;第二文件中包括数据单元A`、数据单元B`和数据单元C`,上述数据单元A`、数据单元B`和数据单元C`所对应的名称分别为名称a`、名称b`和名称c`;其中,数据单元A与数据单元A`相对应,数据单元B与数据单元B`相对应,数据单元C与数据单元C`相对应。For example, the first file includes data unit A, data unit B, and data unit C. The names corresponding to the aforementioned data unit A, data unit B, and data unit C are name a, name b, and name c, respectively; The file includes data unit A`, data unit B` and data unit C`. The names corresponding to the above data unit A`, data unit B` and data unit C` are name a`, name b` and name c`, respectively ; Among them, the data unit A corresponds to the data unit A', the data unit B corresponds to the data unit B', and the data unit C corresponds to the data unit C'.
在一个实施例中,第一文件中的数据单元A、数据单元B和数据单元C分别为第二文件中的数据单元A`、数据单元B`和数据单元C`。也就是说,第一文件中的数据单元A、数据单元B和数据单元C分别与第二文件中的数据单元A`、数据单元B`和数据单元C`的功能及/或种类相同,但是,第一文件中的数据单元A、数据单元B和数据单元C的名称和第二文件中对应的数据单元A`、数据单元B`和数据单元C`的名称不同。In one embodiment, data unit A, data unit B, and data unit C in the first file are data unit A', data unit B', and data unit C'in the second file, respectively. That is, the data unit A, data unit B, and data unit C in the first file have the same functions and/or types as the data unit A`, data unit B`, and data unit C` in the second file, but , The names of data unit A, data unit B, and data unit C in the first file are different from the names of corresponding data unit A', data unit B', and data unit C'in the second file.
在一个实施例中,由于第一文件与第二文件中数据单元的名称信息不同,因此,在对第二文件进行形式验证时,可能会出现无法识别第二文件中至少一个数据单元所对应的名称信息,例如:无法识别出数据单元B`的名称b`。在进行形式验证时,对于第二文件中的数据单元B`而言,无法确定此数据单元B`对应于第一文件中的哪一个数据单元。或者,对于第一文件中的数据单元B,无法确定此数据单元B对应于第二文件中的哪一个数据单元。此时,为 了能够实现对第一文件和第二文件进行形式验证操作,则可以确定与第一文件和第二文件相对应的单元匹配信息,所确定的单元匹配信息中可以包括第一文件中的数据单元与第二文件中的数据单元之间的对应关系,即此时的单元匹配信息中包括数据单元B`与数据单元B的对应关系(例如,数据单元B`与数据单元B的名称之间的对应关系、数据单元B`与数据单元B的输入输出关系之间的对应关系);通过所获取的单元匹配信息,可以便于对第一文件和第二文件进行稳定地形式验证操作。In one embodiment, because the name information of the data unit in the first file is different from that in the second file, when performing formal verification on the second file, it may not be possible to identify the data unit corresponding to at least one data unit in the second file. Name information, for example: the name b` of the data unit B` cannot be recognized. When performing formal verification, for the data unit B'in the second file, it is impossible to determine which data unit in the first file this data unit B'corresponds to. Or, for the data unit B in the first file, it is impossible to determine which data unit in the second file this data unit B corresponds to. At this time, in order to be able to perform formal verification operations on the first file and the second file, the unit matching information corresponding to the first file and the second file can be determined, and the determined unit matching information can include the unit matching information in the first file. The corresponding relationship between the data unit and the data unit in the second file, that is, the unit matching information at this time includes the corresponding relationship between the data unit B` and the data unit B (for example, the name of the data unit B` and the data unit B The corresponding relationship between the data unit B'and the input/output relationship of the data unit B); the acquired unit matching information can facilitate stable formal verification operations on the first file and the second file.
由于第一文件与第二文件中数据单元的名称信息不同,因此,在对第二文件进行形式验证时,还可能无法识别出与第二文件中的至少一个数据单元相对应的第一文件中的数据单元。也就是说,在对第二文件进行形式验证时,还可能会出现在第二文件中的至少一个数据单元的名称信息与第一文件中所有的数据单元的名称信息不相对应。在一实施例中,在第一文件中无法识别出与第二文件中的数据单元相对应功能及/或种类的数据单元。例如,对于第二文件,可以识别出第二文件的数据单元B`以及数据单元B`所对应的名称b`,对于第一文件,可以识别出第一文件的数据单元B以及数据单元B所对应的名称b。但是,无法识别到第二文件的数据单元B`与第一文件的数据单元B相对应。或者无法识别到第二文件的数据单元B`的名称b`与第一文件的数据单元B名称b相对应。又例如,对于第一文件,可以识别出第一文件的数据单元B以及数据单元B所对应的名称b。对于第二文件,可以识别出第二文件的数据单元B`以及数据单元B`所对应的名称b`。但是,无法识别到第一文件的数据单元B与第二文件的数据单元B`相对应。或者无法识别到第一文件的数据单元B的名称b与第二文件的数据单元B`的名称b`相对应。此时,确定与第一文件和第二文件相对应的单元匹配信息,所确定的单元匹配信息中可以包括第一文件中的数据单元与第二文件中的数据单元之间的对应关系,即单元匹配信息中包括有数据单元B`的名称b`与数据单元B和名称b的对应关系。因此,通过所获取的单元匹配信息,便于对第一文件和第二文件进行稳定地形式验证操作。Since the name information of the data unit in the first file is different from that in the second file, when performing formal verification on the second file, it may not be possible to identify the first file corresponding to at least one data unit in the second file. Data unit. In other words, when performing formal verification on the second file, it may also appear that the name information of at least one data unit in the second file does not correspond to the name information of all the data units in the first file. In one embodiment, the data unit corresponding to the function and/or type of the data unit in the second file cannot be identified in the first file. For example, for the second file, the data unit B` of the second file and the name b` corresponding to the data unit B` can be identified, and for the first file, the data unit B and the data unit B of the first file can be identified. The corresponding name b. However, it cannot be recognized that the data unit B'of the second file corresponds to the data unit B of the first file. Or it is impossible to identify the name b of the data unit B of the second file corresponding to the name b of the data unit B of the first file. For another example, for the first file, the data unit B of the first file and the name b corresponding to the data unit B can be identified. For the second file, the data unit B'of the second file and the name b'corresponding to the data unit B'can be identified. However, it cannot be recognized that the data unit B of the first file corresponds to the data unit B'of the second file. Or the name b of the data unit B of the first file cannot be identified corresponding to the name b` of the data unit B of the second file. At this time, the unit matching information corresponding to the first file and the second file is determined, and the determined unit matching information may include the correspondence between the data unit in the first file and the data unit in the second file, that is, The unit matching information includes the correspondence between the name b'of the data unit B'and the data unit B and the name b. Therefore, the acquired unit matching information facilitates stable formal verification operations on the first file and the second file.
在一些实例中,确定与第一文件和第二文件相对应的单元匹配信息,可以包括:基于综合网表与版图网表,获取针对寄存器单元的输入对应关系。根据输入对应关系,获取与综合网表和版图网表相对应的单元匹配信息。In some examples, determining the unit matching information corresponding to the first file and the second file may include: obtaining the input correspondence relationship for the register unit based on the integrated netlist and the layout netlist. According to the input correspondence, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained.
具体的,在获取到综合网表和版图网表之后,可以对综合网表和版图网 表进行分析处理,从而获取到针对寄存器单元的输入输出对应关系,而后可以根据输入输出对应关系获取与综合网表和版图网表相对应的单元匹配信息。Specifically, after the comprehensive netlist and the layout netlist are obtained, the comprehensive netlist and the layout netlist can be analyzed and processed, so as to obtain the input and output corresponding relationship for the register unit, and then the input and output corresponding relationship can be obtained and integrated according to the input and output relationship. The unit matching information corresponding to the netlist and the layout netlist.
举例来说,若在综合网表中寄存器单元A的输入输出连接关系和版图网表中的寄存器单元C的输入输出连接关系一致或相似,则综合网表中的寄存器单元A和版图网表中的寄存器单元C相对应。即,综合网表中的寄存器单元A和版图网表中的寄存器单元C相匹配。在一个实施例中,综合网表中包括有寄存器单元A,该寄存器单元A的输入信号为寄存器单元B的输出信号,此时,在版图网表中包括有寄存器单元C,该寄存器单元C的输入信号为寄存器单元B`的输出信号,而寄存器单元B`与寄存器单元B相对应,并且寄存器A和寄存器C均没有其他元件与它们分别直接连接时,则认为综合网表中的寄存器单元A和版图网表中的寄存器单元C相对应。即,综合网表中的寄存器单元A和版图网表中的寄存器单元C相匹配。并且,生成单元匹配关系,该单元匹配信息指示综合网表的寄存器单元A与版图网表的寄存器单元C相对应。For example, if the input-output connection relationship of register unit A in the integrated netlist is consistent or similar to the input-output connection relationship of register unit C in the layout netlist, then the register unit A in the integrated netlist and the layout netlist Corresponding to the register unit C. That is, the register unit A in the integrated netlist matches the register unit C in the layout netlist. In one embodiment, the integrated netlist includes register unit A, and the input signal of register unit A is the output signal of register unit B. At this time, the layout netlist includes register unit C. When the input signal is the output signal of the register unit B`, and the register unit B` corresponds to the register unit B, and the register A and the register C have no other components directly connected to them respectively, the register unit A in the integrated netlist is considered Corresponds to register unit C in the layout netlist. That is, the register unit A in the integrated netlist matches the register unit C in the layout netlist. In addition, a unit matching relationship is generated, and the unit matching information indicates that the register unit A of the integrated netlist corresponds to the register unit C of the layout netlist.
可以理解的是,该单元匹配信息中所存在的对应关系可以为单向的对应关系,例如:由综合网表的寄存器单元A到版图网表的寄存器单元C的对应关系,或者,版图网表的寄存器单元C到综合网表的寄存器单元A的对应关系;或者,该单元匹配信息中所存在的对应关系也可以为双向的对应关系,即可以包括:由综合网表的寄存器单元A到版图网表的寄存器单元C的对应关系、以及版图网表的寄存器单元C到综合网表的寄存器单元A的对应关系。It is understandable that the correspondence relationship existing in the unit matching information can be a one-way correspondence relationship, for example: the correspondence relationship from the register unit A of the integrated netlist to the register unit C of the layout netlist, or the layout netlist The corresponding relationship between the register unit C of the integrated netlist and the register unit A of the integrated netlist; or, the corresponding relationship existing in the unit matching information can also be a two-way corresponding relationship, that is, it can include: from the register unit A of the integrated netlist to the layout The correspondence between the register unit C of the netlist and the correspondence between the register unit C of the layout netlist and the register unit A of the integrated netlist.
在另一些实例中,确定与第一文件和第二文件相对应的单元匹配信息,可以包括:基于综合网表与版图网表,获取针对寄存器单元的输入输出元件的对应关系和寄存器单元名称对应关系。根据寄存器单元的输入输出元件的对应关系和寄存器单元名称对应关系,获取与综合网表和版图网表相对应的单元匹配信息。例如,若综合网表中的第一寄存器单元的名称和版图网表中的第二寄存器单元的名称存在相同的关键字,则综合网表中的第一寄存器单元和版图网表中的第二寄存器单元相对应。In other examples, determining the unit matching information corresponding to the first file and the second file may include: obtaining the correspondence between the input and output components of the register unit and the register unit name correspondence based on the integrated netlist and the layout netlist relationship. According to the corresponding relationship between the input and output components of the register unit and the corresponding relationship between the name of the register unit, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained. For example, if the name of the first register unit in the integrated netlist and the name of the second register unit in the layout netlist have the same keyword, the first register unit in the integrated netlist and the second register unit in the layout netlist The register unit corresponds.
具体的,在获取到综合网表和版图网表之后,可以对综合网表和版图网表进行分析处理,从而获取到针对寄存器单元的输入对应关系和名称对应关系,而后可以根据输入对应关系和名称对应关系获取与综合网表和版图网表相对应的单元匹配信息。Specifically, after the comprehensive netlist and the layout netlist are obtained, the comprehensive netlist and the layout netlist can be analyzed and processed, so as to obtain the input correspondence and the name correspondence for the register unit, and then the input correspondence and the name correspondence may be obtained according to the input correspondence and The name correspondence relationship obtains the unit matching information corresponding to the integrated netlist and the layout netlist.
举例来说,综合网表中包括有寄存器单元A,该寄存器单元A的名称信息 为名称信息a,该寄存器单元A的输入信息为寄存器单元B,此时,在版图网表中包括有寄存器单元C,该寄存器单元C的名称信息为名称信息c,该寄存器单元C的输入信息为寄存器单元B`,而寄存器单元B`与寄存器单元B相对应时,则可以生成单元匹配信息,该单元匹配信息包括寄存器单元A与寄存器单元C的对应关系、及/或名称信息a与名称信息c的对应关系,该单元匹配信息中所包括的对应关系与上述实施例中的对应关系相类似,即对应关系可以是单向的对应关系,也可以是双向的对应关系。For example, the comprehensive netlist includes register unit A, the name information of register unit A is name information a, and the input information of register unit A is register unit B. At this time, the register unit is included in the layout netlist C, the name information of the register unit C is the name information c, the input information of the register unit C is the register unit B`, and when the register unit B` corresponds to the register unit B, unit matching information can be generated, and the unit matches The information includes the corresponding relationship between the register unit A and the register unit C, and/or the corresponding relationship between the name information a and the name information c. The corresponding relationship included in the unit matching information is similar to the corresponding relationship in the foregoing embodiment, that is, the corresponding relationship The relationship can be a one-way correspondence or a two-way correspondence.
步骤S503:根据单元匹配信息和第一文件,对第二文件进行形式验证。Step S503: Perform formal verification on the second file according to the unit matching information and the first file.
在获取到单元匹配信息之后,可以根据单元匹配信息和第一文件,对第二文件进行形式验证,从而有效地保证了对第二文件进行形式验证的稳定可靠性。After the unit matching information is obtained, the second file can be formally verified based on the unit matching information and the first file, thereby effectively ensuring the stability and reliability of the formal verification of the second file.
本实施例提供的形式验证方法,通过获取第一文件和第二文件,确定与第一文件和第二文件相对应的单元匹配信息,而后根据单元匹配信息和第一文件,对第二文件进行形式验证,由于单元匹配信息中可以包括第一文件中的数据单元与第二文件中的数据单元之间的对应关系,此时可以实现了在利用不同供应商的形式验证设备进行形式验证时,也可以稳定、有效地进行形式验证操作,不仅保证了形式验证操作的质量和效率,并且对于使用多种EDA工具的用户来说,也降低了进行形式验证的困难程度,同时,为调试工作也提供了极大的便利条件,进一步提高了该方法的实用性。The formal verification method provided in this embodiment determines the unit matching information corresponding to the first file and the second file by acquiring the first file and the second file, and then performs the second file based on the unit matching information and the first file. Formal verification, since the unit matching information can include the correspondence between the data unit in the first file and the data unit in the second file, it can be realized when formal verification devices from different vendors are used for formal verification. It can also perform formal verification operations stably and effectively, which not only guarantees the quality and efficiency of formal verification operations, but also reduces the difficulty of formal verification for users who use multiple EDA tools. At the same time, it is also useful for debugging. It provides great convenience and further improves the practicability of the method.
图6为图5所示的形式验证方法中获取第一文件和第二文件的流程图;在上述实施例的基础上,继续参考附图6所示,在第一文件包括与芯片设计代码相对应的综合网表,第二文件包括与综合网表相对应的版图网表时,本实施例中的获取第一文件和第二文件可以包括:Fig. 6 is a flowchart of obtaining the first file and the second file in the formal verification method shown in Fig. 5; on the basis of the above-mentioned embodiment, referring to Fig. 6, the first file includes the code corresponding to the chip design For the corresponding integrated netlist, when the second file includes the layout netlist corresponding to the integrated netlist, acquiring the first file and the second file in this embodiment may include:
步骤S601:获取与芯片设计代码相对应的综合网表,综合网表中包括寄存器单元。Step S601: Obtain a comprehensive netlist corresponding to the chip design code, and the comprehensive netlist includes a register unit.
步骤S602:基于综合网表获得版图网表,综合网表中寄存器单元的名称信息与版图网表中对应的寄存器单元的名称信息不同。Step S602: Obtain the layout netlist based on the integrated netlist, and the name information of the register unit in the integrated netlist is different from the name information of the corresponding register unit in the layout netlist.
其中,在获取到芯片设计代码之后,可以对芯片设计代码进行逻辑综合处理,从而可以获取到与芯片设计代码相对应的综合网表,此时综合网表中可以包括一个或多个寄存器单元;在获取到综合网表之后,可以对综合网表进行分析处理,从而获得版图网表,具体的,基于综合网表获得版图网表的 过程可以包括:利用预设工具对综合网表进行布局布线处理,获得与综合网表相对应的版图网表;此时,综合网表中寄存器单元的名称信息与版图网表中对应的寄存器单元的名称信息不同。Among them, after obtaining the chip design code, logic synthesis processing can be performed on the chip design code, so that a comprehensive netlist corresponding to the chip design code can be obtained. At this time, the comprehensive netlist may include one or more register units; After the comprehensive netlist is obtained, the comprehensive netlist can be analyzed and processed to obtain the layout netlist. Specifically, the process of obtaining the layout netlist based on the comprehensive netlist may include: using a preset tool to place and route the comprehensive netlist Process to obtain the layout netlist corresponding to the integrated netlist; at this time, the name information of the register unit in the integrated netlist is different from the name information of the corresponding register unit in the layout netlist.
可以理解的是,综合网表中可以包括所有的第一寄存器单元以及与第一寄存器单元相对应的第一名称信息;版图网表中可以包括所有的第二寄存器单元以及与第二寄存器单元相对应的第二名称信息;综合网表中的第一寄存器单元与版图网表中的第二寄存器单元相对应。It is understandable that the comprehensive netlist can include all the first register units and the first name information corresponding to the first register unit; the layout netlist can include all the second register units and the second register unit. Corresponding second name information; the first register unit in the integrated netlist corresponds to the second register unit in the layout netlist.
需要注意的是,预设工具可以为预先设置的用于对综合网表进行布局布线处理的EDA工具,该预设工具与形式验证设备可以属于同一个供应商,或者,预设工具与形式验证设备也可以属于不同的供应商,如图7所示,综合网表可以通过预设工具进行处理,获得版图网表,此时,预设工具可以生成单元匹配信息,而后可以根据单元匹配信息和第一文件,对第二文件进行形式验证。It should be noted that the preset tool can be a preset EDA tool used to perform placement and routing processing on the integrated netlist. The preset tool and the formal verification device can belong to the same supplier, or the preset tool and formal verification The equipment can also belong to different suppliers. As shown in Figure 7, the comprehensive netlist can be processed by the preset tool to obtain the layout netlist. At this time, the preset tool can generate unit matching information, and then can be based on the unit matching information and The first file, formal verification of the second file.
本实施例中,通过获取与芯片设计代码相对应的综合网表,而后基于综合网表获得版图网表,有效地保证了综合网表和版图网表获取的准确可靠性。In this embodiment, by obtaining the integrated netlist corresponding to the chip design code, and then obtaining the layout netlist based on the integrated netlist, the accurate and reliable acquisition of the integrated netlist and the layout netlist is effectively ensured.
图8为本发明实施例提供的一种形式验证方法的流程图二;在上述实施例中,参考附图8所示,本实施例中的方法可以应用于形式验证设备,在利用形式验证设备进行形式验证操作时,可能会出现以下情况:在第一文件中,无法识别与第二文件中的至少一个数据单元所对应的位于第一文件中的数据单元或数据单元的名称信息,或者,在第二文件中,无法识别到与第一文件中的至少一个数据单元的名称信息相对应的位于第二文件中的数据单元或数据单元的名称信息。为了便于说明,将形式验证设备出现的上述情况统称为形式验证设备无法识别寄存器单元。具体的,该方法可以包括:Fig. 8 is a second flowchart of a formal verification method provided by an embodiment of the present invention; in the above-mentioned embodiment, referring to Fig. 8, the method in this embodiment can be applied to a formal verification device. When performing formal verification operations, the following situations may occur: in the first file, the data unit or the name information of the data unit in the first file corresponding to at least one data unit in the second file cannot be identified, or, In the second file, the data unit or the name information of the data unit in the second file corresponding to the name information of at least one data unit in the first file cannot be identified. For the convenience of description, the foregoing situations in the formal verification device are collectively referred to as the inability of the formal verification device to recognize the register unit. Specifically, the method may include:
步骤S801:检测形式验证设备与预设工具是否属于同一个供应商。Step S801: Check whether the formal verification device and the preset tool belong to the same supplier.
步骤S802:在形式验证设备与预设工具属于不同的供应商时,确定形式验证设备无法识别分别位于由预设工具生成的不同文件中的寄存器单元之间的对应关系。或者,Step S802: When the formal verification device and the preset tool belong to different suppliers, it is determined that the formal verification device cannot recognize the correspondence between the register units respectively located in different files generated by the preset tool. or,
步骤S803:在形式验证设备与预设工具属于同一供应商时,确定形式验证设备能够识别寄存器单元。Step S803: When the formal verification device and the preset tool belong to the same supplier, it is determined that the formal verification device can identify the register unit.
在获取到形式验证设备和预设工具之后,为了能够保证形式验证操作的质量和效率,可以对形式验证设备和预设工具进行检测,即识别形式验证设备与预设工具是否属于同一个供应商,具体的,可以获取到形式验证设备的 第一供应商标识信息和预设工具的第二供应商标识信息,通过第一供应商标识信息和第二供应商标识信息可以检测形式验证设备与预设工具是否属于同一个供应商。当第一供应商标识信息和第二供应商标识信息相同时,则可以确定形式验证设备与预设工具属于同一供应商,此时的形式验证设备能够识别寄存器单元。当第一供应商标识信息和第二供应商标识信息不同时,则可以确定形式验证设备与预设工具属于不同的供应商,进而可以确定形式验证设备无法识别寄存器单元。After obtaining the formal verification equipment and preset tools, in order to ensure the quality and efficiency of the formal verification operation, the formal verification equipment and preset tools can be tested, that is, whether the formal verification equipment and the preset tools belong to the same supplier Specifically, the identification information of the first supplier of the formal verification device and the identification information of the second supplier of the preset tool can be obtained. The identification information of the first supplier and the second supplier identification information can be used to detect whether the formal verification device is connected to the preset tool. Whether the tools belong to the same supplier. When the identification information of the first supplier and the identification information of the second supplier are the same, it can be determined that the formal verification device and the preset tool belong to the same supplier, and the formal verification device at this time can identify the register unit. When the first supplier identification information and the second supplier identification information are different, it can be determined that the formal verification device and the preset tool belong to different suppliers, and it can be determined that the formal verification device cannot identify the register unit.
在一些实例中,在确定形式验证设备能够识别寄存器单元之后,方法还包括:In some instances, after determining that the formal verification device can identify the register unit, the method further includes:
步骤S804:利用形式验证设备和综合网表,对版图网表进行形式验证。Step S804: Perform formal verification on the layout netlist by using the formal verification device and the integrated netlist.
其中,在形式验证设备可以识别寄存器单元时,则可以直接利用形式验证设备和综合网表对版图网表进行形式验证,从而提高了形式验证的质量和效率。Among them, when the formal verification device can identify the register unit, it can directly use the formal verification device and the integrated netlist to perform formal verification on the layout netlist, thereby improving the quality and efficiency of formal verification.
需要注意的是,上述步骤是可选步骤,即在配置有对版图网表进行形式验证的操作时,则本实施例中的方法可以包括上述步骤S804;在没有配置对版图网表进行形式验证的操作时,则本实施例中的方法不包括上述步骤S804。It should be noted that the above steps are optional steps, that is, when the layout netlist is configured to perform formal verification operations, the method in this embodiment may include the above step S804; if there is no configuration to perform formal verification on the layout netlist During the operation, the method in this embodiment does not include the above step S804.
具体应用时,第一文件可以为与芯片设计代码相对应的综合网表,第二文件可以为与综合网表相对应的版图网表,并且,综合网表通过预设工具进行布局布线处理,从而可以获得版图网表。而后以利用与预设工具属于不同的供应商的形式验证设备对版图网表进行形式验证操作为例进行说明,由于综合网表中寄存器单元的名称信息与版图网表中寄存器单元的名称信息不同,因此,可以通过单元匹配信息来实现形式验证操作。具体的,该形式验证方法可以包括:In specific applications, the first file can be a comprehensive netlist corresponding to the chip design code, and the second file can be a layout netlist corresponding to the comprehensive netlist, and the comprehensive netlist is placed and routed through a preset tool. So you can get the layout netlist. Then take the use of a formal verification device belonging to a different vendor from the preset tool to perform formal verification operations on the layout netlist as an example. Because the name information of the register unit in the integrated netlist is different from the name information of the register unit in the layout netlist , Therefore, the formal verification operation can be realized through the unit matching information. Specifically, the formal verification method may include:
第一步:利用预设工具对综合网表进行分析处理,获得版图网表,具体的,在获得版图网表时,可以在版图网表中增加与预设工具相对应的标记信息。Step 1: Use the preset tool to analyze and process the comprehensive netlist to obtain the layout netlist. Specifically, when the layout netlist is obtained, the marking information corresponding to the preset tool can be added to the layout netlist.
第二步:利用预设工具自动生成单元匹配信息,该单元匹配信息与综合网表和版图网表相对应。Step 2: Use the preset tool to automatically generate unit matching information, which corresponds to the integrated netlist and the layout netlist.
具体的,可以利用预设工具中的脚本自动生成单元匹配信息,该单元匹配信息中可以包括综合网表中寄存器单元经过预设工具进行处理后,在版图网表中寄存器单元之间的输入对应关系。Specifically, the script in the preset tool can be used to automatically generate unit matching information. The unit matching information can include the input correspondence between the register units in the layout netlist after the register units in the comprehensive netlist are processed by the preset tool. relationship.
第三步:利用形式验证设备和单元匹配信息对版图网表进行形式验证操作。Step 3: Use formal verification equipment and unit matching information to perform formal verification operations on the layout netlist.
其中,形式验证的操作过程中包括寄存器单元的匹配,匹配之后的形式验证就是验证匹配单元的输入信号是否相同,从而确定形式验证是否成功。具体的,在获取到单元匹配信息之后,可以基于单元匹配信息来确定版图网表中寄存器单元的命名信息与综合网表中寄存器单元的命名信息的对应关系,从而可以基于单元匹配信息实现对版图网表进行形式验证操作。Among them, the operation process of the formal verification includes the matching of the register unit, and the formal verification after the matching is to verify whether the input signals of the matching unit are the same, so as to determine whether the formal verification is successful. Specifically, after the unit matching information is obtained, the corresponding relationship between the naming information of the register unit in the layout netlist and the naming information of the register unit in the comprehensive netlist can be determined based on the unit matching information, so that the layout can be realized based on the unit matching information. The netlist performs formal verification operations.
本应用实施例提供的形式验证方法,考虑到不同设计工具不能兼容的特性,同时为了保证形式验证操作的质量和效率,在任意的寄存器单元的名字信息发生改变时,可以生成单元匹配信息,而后在利用不同的设计工具进行形式验证时,可以通过单元匹配信息来识别寄存器单元,从而保证了寄存器单元的名字信息匹配的准确性,需要注意的是,该方法可以对大批量的文件进行处理,进而提高了该方法的适用范围;同时也提高了形式验证的效率和成功率,并且也降低了文件转换过程中数据丢失的可能性,便于在后续调试问题进行查询定位。The formal verification method provided by this application embodiment takes into account the incompatibility characteristics of different design tools. At the same time, in order to ensure the quality and efficiency of the formal verification operation, when the name information of any register unit changes, unit matching information can be generated, and then When using different design tools for formal verification, the unit matching information can be used to identify the register unit, thereby ensuring the accuracy of the matching of the name information of the register unit. It should be noted that this method can process a large number of files. In turn, the scope of application of the method is improved; at the same time, the efficiency and success rate of formal verification are also improved, and the possibility of data loss during the file conversion process is also reduced, which is convenient for query and location of subsequent debugging problems.
图9为本发明实施例提供的一种信息识别方法的流程图;参考附图9所示,本实施例提供了一种信息识别方法,该方法的执行主体为信息识别设备,可以理解的是,该信息识别设备可以实现为软件、或者软件和硬件的组合。具体的,该信息识别方法可以包括:FIG. 9 is a flowchart of an information recognition method provided by an embodiment of the present invention; referring to FIG. 9, this embodiment provides an information recognition method, and the execution subject of the method is an information recognition device, and it can be understood that The information recognition device can be implemented as software or a combination of software and hardware. Specifically, the information identification method may include:
步骤S901:获取第一文件和第二文件,第二文件根据第一文件而得到,并且,第二文件中包括至少一个数据单元。Step S901: Obtain a first file and a second file. The second file is obtained from the first file, and the second file includes at least one data unit.
步骤S902:确定与第二文件和第一文件相对应的单元匹配信息,单元匹配信息中包括第二文件中的至少一个数据单元与第一文件中的数据单元之间的对应关系。Step S902: Determine unit matching information corresponding to the second file and the first file. The unit matching information includes the correspondence between at least one data unit in the second file and the data unit in the first file.
步骤S903:利用单元匹配信息识别第二文件中的数据单元。Step S903: Use the unit matching information to identify the data unit in the second file.
以下针对上述步骤进行详细阐述:The following is a detailed description of the above steps:
步骤S901:获取第一文件和第二文件,第二文件根据第一文件而得到,并且,第二文件中包括至少一个数据单元。Step S901: Obtain a first file and a second file. The second file is obtained from the first file, and the second file includes at least one data unit.
在一些实例中,第一文件包括与芯片设计代码相对应的综合网表,第二文件包括与综合网表相对应的版图网表;或者,第一文件包括源程序文件,第二文件包括与芯片设计代码相对应的综合网表;或者,第一文件包括与芯 片设计代码相对应的综合网表,第二文件包括经过逻辑测试后生成的网表;或者,第一文件包括经过逻辑测试后生成的网表,第二文件包括版图网表。In some examples, the first file includes an integrated netlist corresponding to the chip design code, and the second file includes a layout netlist corresponding to the integrated netlist; or, the first file includes source program files, and the second file includes The integrated netlist corresponding to the chip design code; or, the first file includes the integrated netlist corresponding to the chip design code, and the second file includes the netlist generated after logic testing; or, the first file includes logic testing The generated netlist, the second file includes the layout netlist.
可以理解的是,在第一文件和第二文件代表不同的信息时,第二文件中所包括的至少一个数据单元也可以具有不同的表现形式,例如,在第二文件是网表文件时,第二文件中所包括的至少一个数据单元可以为至少一个寄存器单元。相类似的,在第一文件是网表文件时,第一文件中可以包括至少一个寄存器单元,第一文件中至少一寄存器单元的名称信息与第二文件中对应的寄存器单元的名称信息不同。It is understandable that when the first file and the second file represent different information, at least one data unit included in the second file may also have different manifestations. For example, when the second file is a netlist file, The at least one data unit included in the second file may be at least one register unit. Similarly, when the first file is a netlist file, the first file may include at least one register unit, and the name information of the at least one register unit in the first file is different from the name information of the corresponding register unit in the second file.
在一些实例中,第二文件是第一电子设计自动化工具对第一文件进行处理而得到的;第一文件、第二文件、和单元匹配信息同时用于第二电子设计自动化工具的数据处理,其中,第一电子设计自动化工具和第二电子设计自动化工具不同。In some instances, the second file is obtained by processing the first file by the first electronic design automation tool; the first file, the second file, and the unit matching information are used for data processing of the second electronic design automation tool at the same time, Among them, the first electronic design automation tool is different from the second electronic design automation tool.
进一步的,当检测到第一电子设计自动化工具改变第一文件中的至少一第一数据单元,并生成存储于第二文件中的至少一数据单元时,确定第二文件中的至少一数据单元与第一文件中的至少一第一数据单元对应。Further, when it is detected that the first electronic design automation tool changes at least one first data unit in the first file and generates at least one data unit stored in the second file, determine at least one data unit in the second file Corresponding to at least one first data unit in the first file.
进一步的,第一文件、第二文件、和单元匹配信息同时用于第二电子设计自动化工具的数据处理,包括:第一文件和单元匹配信息同时用于第二电子设计自动化工具对第二文件的形式验证过程。Further, the first file, the second file, and the unit matching information are used for the data processing of the second electronic design automation tool at the same time, including: the first file and the unit matching information are used for the second electronic design automation tool to the second file at the same time. The formal verification process.
步骤S902:确定与第二文件和第一文件相对应的单元匹配信息,单元匹配信息中包括第二文件中的至少一个数据单元与第一文件中的数据单元之间的对应关系。Step S902: Determine unit matching information corresponding to the second file and the first file. The unit matching information includes the correspondence between at least one data unit in the second file and the data unit in the first file.
在一些实例中,当无法识别第二文件中的至少一个数据单元所对应的名称信息时,确定与第一文件和第二文件相对应的单元匹配信息;或者,当在第一文件中,无法识别到与第二文件中的至少一个数据单元的名称信息相对应的数据单元时,确定与第二文件和第一文件相对应的单元匹配信息。In some instances, when the name information corresponding to at least one data unit in the second file cannot be identified, the unit matching information corresponding to the first file and the second file is determined; or, when in the first file, it cannot be When a data unit corresponding to the name information of at least one data unit in the second file is identified, the unit matching information corresponding to the second file and the first file is determined.
具体的,确定与第二文件和第一文件相对应的单元匹配信息可以包括:基于第一文件与第二文件,获取针对寄存器单元的输入对应关系和名称对应关系;根据输入对应关系和名称对应关系获取与第一文件和第二文件相对应的单元匹配信息。Specifically, determining the unit matching information corresponding to the second file and the first file may include: obtaining input correspondence and name correspondence for the register unit based on the first file and the second file; and according to the input correspondence and name correspondence The relationship obtains unit matching information corresponding to the first file and the second file.
在一些实例中,确定与第二文件和第一文件相对应的单元匹配信息可以包括:基于第一文件与第二文件,获取至少一个数据单元的输入对应关系; 根据输入对应关系获取与第一文件和第二文件相对应的单元匹配信息。In some instances, determining the unit matching information corresponding to the second file and the first file may include: obtaining the input correspondence relationship of at least one data unit based on the first file and the second file; and obtaining the input correspondence relationship with the first file according to the input correspondence relationship. The file and the unit matching information corresponding to the second file.
步骤S903:利用单元匹配信息识别第二文件中的数据单元。Step S903: Use the unit matching information to identify the data unit in the second file.
在获取到单元匹配信息之后,可以利用单元匹配信息识别第二文件中的数据单元,有效地保证了信息识别的准确可靠性,从而便于对第二文件进行应用和处理。After the unit matching information is obtained, the unit matching information can be used to identify the data unit in the second file, which effectively guarantees the accuracy and reliability of information identification, thereby facilitating the application and processing of the second file.
需要注意的是,本实施例中上述方法步骤的具体实现过程、实现效果和实现原理与上述实例中图5-图8所示实施例的方法的具体实现过程、实现效果和实现原理相类似,本实施例未详细描述的部分,可参考对图5-图8所示实施例的相关说明。该技术方案的执行过程和技术效果参见图5-图8所示实施例中的描述,在此不再赘述。It should be noted that the specific implementation process, implementation effect, and implementation principle of the above method steps in this embodiment are similar to the specific implementation process, implementation effect, and implementation principle of the method of the embodiment shown in Figure 5 to Figure 8 in the above example. For parts that are not described in detail in this embodiment, reference may be made to related descriptions of the embodiments shown in FIGS. 5 to 8. Refer to the description in the embodiment shown in FIG. 5 to FIG. 8 for the execution process and technical effect of this technical solution, and will not be repeated here.
图10为本发明实施例提供的一种名称信息识别方法的流程图;参考附图10所示,本实施例提供了一种名称信息识别方法,该方法的执行主体为名称信息识别设备,可以理解的是,该名称信息识别设备可以实现为软件、或者软件和硬件的组合。具体的,该名称信息识别方法可以包括:10 is a flowchart of a method for identifying name information provided by an embodiment of the present invention; referring to FIG. 10, this embodiment provides a method for identifying name information, and the subject of the method is a name information identifying device. It is understood that the name information identification device can be implemented as software or a combination of software and hardware. Specifically, the name information identification method may include:
步骤S1001:获取数据单元的第一名称信息。Step S1001: Obtain the first name information of the data unit.
步骤S1002:当第一电子设计工具改变数据单元的第一名称信息,并生成数据单元的第二名称信息时,确定第一名称信息与第二名称信息相对应的名称匹配信息。Step S1002: When the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name matching information corresponding to the first name information and the second name information.
步骤S1003:将名称匹配信息发送至第二电子设计工具,以用于第二电子设计工具识别第一名称信息和第二名称信息之间的对应关系。Step S1003: Send the name matching information to the second electronic design tool for the second electronic design tool to identify the correspondence between the first name information and the second name information.
其中,第一电子设计工具和第二电子设计工具不同;此时,利用第一电子设计工具将数据单元由第一名称信息改成第二名称信息时,为了能够保证其他的电子设计工具(第二电子设计工具)能够准确地识别出数据单元的第二名称信息,第一电子设计工具可以确定第一名称信息与第二名称信息相对应的名称匹配信息。具体的,数据单元的第一名称信息存储于第一文件中,数据单元的第二名称信息存储于第二文件中,此时,名称匹配信息可以理解为与第一文件和第二文件相对应的数据单元的名称对应关系。在一些实例中,在芯片设计过程中,第一文件先于第二文件产生。或者,第一文件和第二文件均为芯片设计过程中产生的文件,第一文件用于产生第二文件。Among them, the first electronic design tool and the second electronic design tool are different; at this time, when the first electronic design tool is used to change the data unit from the first name information to the second name information, in order to ensure that other electronic design tools (section The second electronic design tool) can accurately identify the second name information of the data unit, and the first electronic design tool can determine the name matching information corresponding to the first name information and the second name information. Specifically, the first name information of the data unit is stored in the first file, and the second name information of the data unit is stored in the second file. At this time, the name matching information can be understood as corresponding to the first file and the second file. Correspondence of the name of the data unit. In some instances, during the chip design process, the first file is generated before the second file. Alternatively, the first file and the second file are both files generated during the chip design process, and the first file is used to generate the second file.
在一些实例中,第二电子设计工具用于芯片设计的形式验证,此时,在 第二电子设计工具获取到名称匹配信息之后,可以基于名称匹配信息和上述的第一文件对第二文件进行形式验证,以保证第一文件和第二文件满足预设要求。In some instances, the second electronic design tool is used for the formal verification of chip design. At this time, after the second electronic design tool obtains the name matching information, the second file can be performed based on the name matching information and the above-mentioned first file. Formal verification to ensure that the first document and the second document meet the preset requirements.
在一些实例中,名称匹配信息中可以包括第一名称信息、第二名称信息、以及第一名称信息至第二名称信息之间的索引;或者,名称匹配信息包括第一名称信息、第二名称信息、以及第二名称信息至第一名称信息之间的索引;或者,名称匹配信息中还可以包括:第一名称信息、第二名称信息、以及第一名称信息至第二名称信息之间的双向索引信息。In some instances, the name matching information may include first name information, second name information, and an index between the first name information and the second name information; or, the name matching information includes first name information, second name information Information, and an index between the second name information and the first name information; or, the name matching information may also include: the first name information, the second name information, and the index between the first name information and the second name information Bidirectional index information.
在确定名称匹配信息之后,可以将名称匹配信息发送至第二电子设计工具,此时,第二电子设计工具可以基于名称匹配信息来识别第二文件中数据单元的第二名称信息与第一文件中数据单元的第一名称信息之间的对应关系,从而实现了对数据单元进行有效的识别。After the name matching information is determined, the name matching information can be sent to the second electronic design tool. At this time, the second electronic design tool can identify the second name information of the data unit in the second file and the first file based on the name matching information. The corresponding relationship between the first name information of the data unit in the data unit, thereby realizing effective identification of the data unit.
本实施例提供的名称信息识别方法,通过获取数据单元的第一名称信息,当第一电子设计工具改变数据单元的第一名称信息,并生成数据单元的第二名称信息时,确定第一名称信息与第二名称信息相对应的名称匹配信息,将名称匹配信息发送至第二电子设计工具,有效地保证了第二电子设计工具可以识别第一名称信息和第二名称信息之间的对应关系,有效地保证了名称信息识别的准确可靠性,便于实现利用不同的电子设计工具来识别数据单元的名称信息,进一步扩展了该方法的适用范围。The name information identification method provided in this embodiment determines the first name by acquiring the first name information of the data unit, and when the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit The information corresponds to the name matching information of the second name information, and the name matching information is sent to the second electronic design tool, which effectively ensures that the second electronic design tool can identify the corresponding relationship between the first name information and the second name information , Which effectively guarantees the accuracy and reliability of name information identification, facilitates the use of different electronic design tools to identify the name information of data units, and further expands the scope of application of the method.
在一些实例中,将名称匹配信息发送至第二电子设计工具可以包括:将关于第一名称信息和第二名称信息的名称匹配信息存储于名称匹配文件中;以及,将名称匹配文件发送至第二电子设计工具。In some examples, sending the name matching information to the second electronic design tool may include: storing the name matching information about the first name information and the second name information in the name matching file; and sending the name matching file to the second electronic design tool. 2. Electronic design tools.
具体的,在将名称匹配信息发送至第二电子设计工具时,为了保证名称匹配信息传输的安全可靠性,可以将关于第一名称信息和第二名称信息的名称匹配信息存储于一个名称匹配文件中,而后将名称匹配文件发送至第二电子设计工具,从而提高了该方法使用的稳定可靠性。Specifically, when the name matching information is sent to the second electronic design tool, in order to ensure the safety and reliability of the name matching information transmission, the name matching information about the first name information and the second name information can be stored in a name matching file Then, the name matching file is sent to the second electronic design tool, thereby improving the stability and reliability of the method.
图11为本发明实施例提供的一种形式验证设备的结构示意图;参考附图11所示,本实施例提供了一种形式验证设备,该形式验证设备可以执行上述图5所示的形式验证方法。具体的,该形式验证设备可以包括:Figure 11 is a schematic structural diagram of a formal verification device provided by an embodiment of the present invention; referring to Figure 11, this embodiment provides a formal verification device that can perform the formal verification shown in Figure 5 above method. Specifically, the formal verification device may include:
第一存储器12,用于存储计算机程序;The first memory 12 is used to store computer programs;
第一处理器11,用于运行第一存储器12中存储的计算机程序以实现:The first processor 11 is configured to run a computer program stored in the first memory 12 to implement:
获取第一文件和第二文件,第二文件根据第一文件而得到;Obtain the first file and the second file, and the second file is obtained from the first file;
确定与第一文件和第二文件相对应的单元匹配信息,单元匹配信息中包括第一文件中的数据单元与第二文件中的数据单元之间的对应关系;Determining unit matching information corresponding to the first file and the second file, where the unit matching information includes the correspondence between the data units in the first file and the data units in the second file;
根据单元匹配信息和第一文件,对第二文件进行形式验证。According to the unit matching information and the first file, the second file is formally verified.
其中,形式验证设备的结构中还可以包括第一通信接口13,用于电子设备与其他设备或通信网络通信。The structure of the formal verification device may also include a first communication interface 13 for the electronic device to communicate with other devices or a communication network.
在一些实例中,第一处理器11,还用于:当无法识别第二文件中的至少一个数据单元所对应的名称信息,确定与第一文件和第二文件相对应的单元匹配信息;当在第一文件中,无法识别到与第二文件中的至少一个数据单元的名称信息相对应的数据单元时,确定与第一文件和第二文件相对应的单元匹配信息。In some examples, the first processor 11 is further configured to: when the name information corresponding to at least one data unit in the second file cannot be identified, determine the unit matching information corresponding to the first file and the second file; In the first file, when the data unit corresponding to the name information of at least one data unit in the second file cannot be identified, the unit matching information corresponding to the first file and the second file is determined.
在一些实例中,第一文件包括与芯片设计代码相对应的综合网表,第二文件包括与综合网表相对应的版图网表。In some examples, the first file includes an integrated netlist corresponding to the chip design code, and the second file includes a layout netlist corresponding to the integrated netlist.
在一些实例中,在第一处理器11获取第一文件和第二文件时,第一处理器11,用于:获取与芯片设计代码相对应的综合网表,综合网表中包括寄存器单元;基于综合网表获得版图网表,综合网表中寄存器单元的名称信息与版图网表中对应的寄存器单元的名称信息不同。In some examples, when the first processor 11 obtains the first file and the second file, the first processor 11 is configured to: obtain a comprehensive netlist corresponding to the chip design code, and the comprehensive netlist includes a register unit; The layout netlist is obtained based on the integrated netlist, and the name information of the register unit in the integrated netlist is different from the name information of the corresponding register unit in the layout netlist.
在一些实例中,综合网表中包括所有的第一寄存器单元以及与第一寄存器单元相对应的第一名称信息;版图网表中包括所有的第二寄存器单元以及与第二寄存器单元相对应的第二名称信息;综合网表中的第一寄存器单元与版图网表中的第二寄存器单元相对应。In some examples, the comprehensive netlist includes all the first register units and the first name information corresponding to the first register unit; the layout netlist includes all the second register units and the information corresponding to the second register unit. Second name information; the first register unit in the integrated netlist corresponds to the second register unit in the layout netlist.
在一些实例中,在第一处理器11基于综合网表获得版图网表时,第一处理器11,用于:利用预设工具对综合网表进行布局布线处理,获得与综合网表相对应的版图网表。In some examples, when the first processor 11 obtains the layout netlist based on the integrated netlist, the first processor 11 is configured to: use a preset tool to perform placement and routing processing on the integrated netlist to obtain the corresponding integrated netlist The layout netlist.
在一些实例中,第一处理器11,还用于:检测形式验证设备与预设工具是否属于同一个供应商;在形式验证设备与预设工具属于不同的供应商时,确定形式验证设备无法识别分别位于由预设工具生成的不同文件中的所述寄存器单元之间的对应关系;或者,在形式验证设备与预设工具属于同一供应商时,确定形式验证设备能够识别寄存器单元。In some instances, the first processor 11 is also used to: detect whether the formal verification device and the preset tool belong to the same supplier; when the formal verification device and the preset tool belong to different suppliers, determine that the formal verification device cannot Identify the correspondence between the register units located in different files generated by the preset tool; or, when the formal verification device and the preset tool belong to the same supplier, it is determined that the formal verification device can identify the register unit.
在一些实例中,第一处理器11,还用于:在确定形式验证设备能够识别寄存器单元之后,利用形式验证设备和综合网表,对版图网表进行形式验证。In some examples, the first processor 11 is further configured to: after determining that the formal verification device can identify the register unit, use the formal verification device and the integrated netlist to perform formal verification on the layout netlist.
在一些实例中,在第一处理器11确定与第一文件和第二文件相对应的单元匹配信息时,第一处理器11,用于:基于综合网表与版图网表,获取针对寄存器单元的输入对应关系;根据输入对应关系,获取与综合网表和版图网表相对应的单元匹配信息。In some examples, when the first processor 11 determines the unit matching information corresponding to the first file and the second file, the first processor 11 is configured to: obtain the register unit based on the integrated netlist and the layout netlist According to the input corresponding relationship, obtain the unit matching information corresponding to the integrated netlist and the layout netlist.
在一些实例中,在第一处理器11确定与第一文件和第二文件相对应的单元匹配信息时,第一处理器11,用于:基于综合网表与版图网表,获取针对寄存器单元的输入对应关系和名称对应关系;根据输入对应关系和名称对应关系,获取与综合网表和版图网表相对应的单元匹配信息。In some examples, when the first processor 11 determines the unit matching information corresponding to the first file and the second file, the first processor 11 is configured to: obtain the register unit based on the integrated netlist and the layout netlist The input correspondence relationship and name correspondence relationship; according to the input correspondence relationship and the name correspondence relationship, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained.
图11所示设备可以执行图5-图8所示实施例的方法,本实施例未详细描述的部分,可参考对图5-图8所示实施例的相关说明。该技术方案的执行过程和技术效果参见图5-图8所示实施例中的描述,在此不再赘述。The device shown in Fig. 11 can execute the methods of the embodiments shown in Figs. 5-8. For parts that are not described in detail in this embodiment, please refer to the relevant descriptions of the embodiments shown in Figs. 5-8. Refer to the description in the embodiment shown in FIG. 5 to FIG. 8 for the execution process and technical effect of this technical solution, and will not be repeated here.
图12为本发明实施例提供的一种信息识别设备的结构示意图;参考附图12所示,本实施例提供了一种信息识别设备,该信息识别设备可以执行上述图9所示的信息识别方法。具体的,该信息识别设备可以包括:FIG. 12 is a schematic structural diagram of an information recognition device provided by an embodiment of the present invention; referring to FIG. 12, this embodiment provides an information recognition device that can perform the information recognition shown in FIG. 9 above method. Specifically, the information identification device may include:
第二存储器22,用于存储计算机程序;The second memory 22 is used to store computer programs;
第二处理器21,用于运行第二存储器22中存储的计算机程序以实现:The second processor 21 is configured to run a computer program stored in the second memory 22 to implement:
获取第一文件和第二文件,第二文件根据第一文件而得到,并且,第二文件中包括至少一个数据单元;Acquiring a first file and a second file, the second file is obtained according to the first file, and the second file includes at least one data unit;
确定与第二文件和第一文件相对应的单元匹配信息,单元匹配信息中包括第二文件中的至少一个数据单元与第一文件中的数据单元之间的对应关系;Determining unit matching information corresponding to the second file and the first file, where the unit matching information includes a correspondence between at least one data unit in the second file and a data unit in the first file;
利用单元匹配信息识别第二文件中的数据单元。The unit matching information is used to identify the data unit in the second file.
其中,信息识别设备的结构中还可以包括第二通信接口23,用于电子设备与其他设备或通信网络通信。Wherein, the structure of the information identification device may further include a second communication interface 23 for the electronic device to communicate with other devices or a communication network.
在一些实例中,第二处理器21,用于:当无法识别第二文件中的至少一个数据单元所对应的名称信息时,确定与第一文件和第二文件相对应的单元匹配信息;或者,当在第一文件中,无法识别到与第二文件中的至少一个数据单元的名称信息相对应的数据单元时,确定与第二文件和第一文件相对应的单元匹配信息。In some examples, the second processor 21 is configured to: when the name information corresponding to at least one data unit in the second file cannot be identified, determine the unit matching information corresponding to the first file and the second file; or When the data unit corresponding to the name information of at least one data unit in the second file cannot be identified in the first file, the unit matching information corresponding to the second file and the first file is determined.
在一些实例中,第一文件包括与芯片设计代码相对应的综合网表,第二文件包括与综合网表相对应的版图网表;或者,第一文件包括源程序文件,第二文件包括与芯片设计代码相对应的综合网表;或者,第一文件包括与芯 片设计代码相对应的综合网表,第二文件包括经过逻辑测试后生成的网表;或者,第一文件包括经过逻辑测试后生成的网表,第二文件包括版图网表。In some examples, the first file includes an integrated netlist corresponding to the chip design code, and the second file includes a layout netlist corresponding to the integrated netlist; or, the first file includes source program files, and the second file includes The integrated netlist corresponding to the chip design code; or, the first file includes the integrated netlist corresponding to the chip design code, and the second file includes the netlist generated after logic testing; or, the first file includes logic testing The generated netlist, the second file includes the layout netlist.
在一些实例中,第一文件中包括至少一个寄存器单元,第一文件中至少一寄存器单元的名称信息与第二文件中对应的寄存器单元的名称信息不同;以及,在第二处理器21获取第一文件和第二文件时,第二处理器21,用于:基于第一文件获得第二文件。In some examples, the first file includes at least one register unit, and the name information of the at least one register unit in the first file is different from the name information of the corresponding register unit in the second file; In the case of a file and a second file, the second processor 21 is configured to obtain the second file based on the first file.
在一些实例中,在第二处理器21确定与第二文件和第一文件相对应的单元匹配信息时,第二处理器21,用于:基于第一文件与第二文件,获取针对寄存器单元的输入对应关系和名称对应关系;根据输入对应关系和名称对应关系获取与第一文件和第二文件相对应的单元匹配信息。In some examples, when the second processor 21 determines the unit matching information corresponding to the second file and the first file, the second processor 21 is configured to: obtain information about the register unit based on the first file and the second file The input correspondence relationship and the name correspondence relationship; the unit matching information corresponding to the first file and the second file is obtained according to the input correspondence relationship and the name correspondence relationship.
在一些实例中,第二文件是第一电子设计自动化工具对第一文件进行处理而得到的;第一文件、第二文件、和单元匹配信息同时用于第二电子设计自动化工具的数据处理,其中,第一电子设计自动化工具和第二电子设计自动化工具不同。In some instances, the second file is obtained by processing the first file by the first electronic design automation tool; the first file, the second file, and the unit matching information are used for data processing of the second electronic design automation tool at the same time, Among them, the first electronic design automation tool is different from the second electronic design automation tool.
在一些实例中,当检测到第一电子设计自动化工具改变第一文件中的至少一第一数据单元,并生成存储于第二文件中的至少一数据单元时,确定第二文件中的至少一数据单元与第一文件中的至少一第一数据单元对应。In some instances, when it is detected that the first electronic design automation tool changes at least one first data unit in the first file and generates at least one data unit stored in the second file, it is determined that at least one of the second files is The data unit corresponds to at least one first data unit in the first file.
在一些实例中,第一文件、第二文件、和单元匹配信息同时用于第二电子设计自动化工具的数据处理,包括:第一文件和单元匹配信息同时用于第二电子设计自动化工具对第二文件的形式验证过程。In some examples, the first file, the second file, and the unit matching information are used for data processing of the second electronic design automation tool at the same time, including: the first file and the unit matching information are used for the second electronic design automation tool at the same time. 2. The formal verification process of documents.
在一些实例中,在第二处理器21确定与第二文件和第一文件相对应的单元匹配信息时,第二处理器21,用于:基于第一文件与第二文件,获取至少一个数据单元的输入对应关系;根据输入对应关系获取与第一文件和第二文件相对应的单元匹配信息。In some examples, when the second processor 21 determines the unit matching information corresponding to the second file and the first file, the second processor 21 is configured to: obtain at least one piece of data based on the first file and the second file The input corresponding relationship of the unit; the unit matching information corresponding to the first file and the second file is obtained according to the input corresponding relationship.
图12所示设备可以执行图9所示实施例的方法,本实施例未详细描述的部分,可参考对图9所示实施例的相关说明。该技术方案的执行过程和技术效果参见图9所示实施例中的描述,在此不再赘述。The device shown in FIG. 12 can execute the method of the embodiment shown in FIG. 9. For parts that are not described in detail in this embodiment, reference may be made to the related description of the embodiment shown in FIG. 9. For the implementation process and technical effects of this technical solution, refer to the description in the embodiment shown in FIG. 9, which will not be repeated here.
图13为本发明实施例提供的一种名称信息识别设备的结构示意图;参考附图13所示,本实施例提供了一种名称信息识别设备,该名称信息识别设备可以执行上述图10所示的名称信息识别方法。具体的,该名称信息识别设备可以包括:FIG. 13 is a schematic structural diagram of a name information recognition device provided by an embodiment of the present invention; referring to FIG. 13, this embodiment provides a name information recognition device that can perform the name information recognition device shown in FIG. 10 The name information identification method. Specifically, the name information identification device may include:
第三存储器32,用于存储计算机程序;The third memory 32 is used to store computer programs;
第三处理器31,用于运行第三存储器32中存储的计算机程序以实现:The third processor 31 is configured to run a computer program stored in the third memory 32 to implement:
获取数据单元的第一名称信息;Acquiring the first name information of the data unit;
当第一电子设计工具改变数据单元的第一名称信息,并生成数据单元的第二名称信息时,确定第一名称信息与第二名称信息相对应的名称匹配信息;When the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name matching information corresponding to the first name information and the second name information;
将名称匹配信息发送至第二电子设计工具,以用于第二电子设计工具识别第一名称信息和第二名称信息之间的对应关系;以及Sending the name matching information to the second electronic design tool for the second electronic design tool to identify the correspondence between the first name information and the second name information; and
其中,数据单元的第一名称信息存储于第一文件中,数据单元的第二名称信息存储于第二文件中,第一电子设计工具和第二电子设计工具不同。Wherein, the first name information of the data unit is stored in the first file, and the second name information of the data unit is stored in the second file, and the first electronic design tool and the second electronic design tool are different.
其中,名称信息识别设备的结构中还可以包括第三通信接口33,用于电子设备与其他设备或通信网络通信。Wherein, the structure of the name information identification device may further include a third communication interface 33 for the electronic device to communicate with other devices or a communication network.
在一些实例中,在第三处理器31将名称匹配信息发送至第二电子设计工具时,第三处理器31,用于:将关于第一名称信息和第二名称信息的名称匹配信息存储于名称匹配文件中;以及,将名称匹配文件发送至第二电子设计工具。In some examples, when the third processor 31 sends the name matching information to the second electronic design tool, the third processor 31 is configured to: store the name matching information about the first name information and the second name information in The name matching file; and, sending the name matching file to the second electronic design tool.
在一些实例中,名称匹配信息包括第一名称信息、第二名称信息、以及第一名称信息至第二名称信息之间的索引;或者,名称匹配信息包括第一名称信息、第二名称信息、以及第二名称信息至第一名称信息之间的索引。In some examples, the name matching information includes first name information, second name information, and an index between the first name information and the second name information; or, the name matching information includes first name information, second name information, And the index between the second name information and the first name information.
在一些实例中,第二电子设计工具用于芯片设计的形式验证。In some instances, the second electronic design tool is used for formal verification of chip design.
在一些实例中,在芯片设计过程中,第一文件先于第二文件产生。In some instances, during the chip design process, the first file is generated before the second file.
在一些实例中,第一文件和第二文件均为芯片设计过程中产生的文件,第一文件用于产生第二文件。In some examples, the first file and the second file are both files generated during the chip design process, and the first file is used to generate the second file.
图13所示设备可以执行图10所示实施例的方法,本实施例未详细描述的部分,可参考对图10所示实施例的相关说明。该技术方案的执行过程和技术效果参见图10所示实施例中的描述,在此不再赘述。The device shown in FIG. 13 can execute the method of the embodiment shown in FIG. 10. For parts that are not described in detail in this embodiment, reference may be made to the related description of the embodiment shown in FIG. 10. For the implementation process and technical effects of this technical solution, refer to the description in the embodiment shown in FIG. 10, which will not be repeated here.
另外,本发明实施例提供了一种计算机存储介质,用于储存电子设备所用的计算机软件指令,其包含用于执行上述图5-图8所示方法实施例中形式验证方法所涉及的程序。In addition, an embodiment of the present invention provides a computer storage medium for storing computer software instructions used by an electronic device, which includes a program for executing the formal verification method in the method embodiment shown in FIGS. 5 to 8 above.
本发明实施例提供了一种计算机存储介质,用于储存电子设备所用的计算机软件指令,其包含用于执行上述图9所示方法实施例中信息识别方法所涉及的程序。The embodiment of the present invention provides a computer storage medium for storing computer software instructions used by an electronic device, which includes a program for executing the information identification method in the method embodiment shown in FIG. 9.
本发明实施例提供了一种计算机存储介质,用于储存电子设备所用的计算机软件指令,其包含用于执行上述图10所示方法实施例中名称信息识别方法所涉及的程序。The embodiment of the present invention provides a computer storage medium for storing computer software instructions used by an electronic device, which includes a program for executing the name information identification method in the method embodiment shown in FIG. 10.
以上各个实施例中的技术方案、技术特征在与本相冲突的情况下均可以单独,或者进行组合,只要未超出本领域技术人员的认知范围,均属于本申请保护范围内的等同实施例。The technical solutions and technical features in each of the above embodiments can be singly or combined in case of conflict with the present invention, as long as they do not exceed the cognitive scope of those skilled in the art, they all belong to the equivalent embodiments within the protection scope of this application. .
在本发明所提供的几个实施例中,应该理解到,所揭露的相关装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided by the present invention, it should be understood that the disclosed related devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods, for example, multiple units or components may be divided. It can be combined or integrated into another system, or some features can be ignored or not implemented. In addition, the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, the functional units in the various embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得计算机处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或者光盘等各种可以存储程序代码的介质。If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the technical solution of the present invention essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium. , Including several instructions to make a computer processor (processor) execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage media include: U disk, mobile hard disk, Read-Only Memory (ROM), Random Access Memory (RAM, Random Access Memory), magnetic disks or optical disks and other media that can store program codes.
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是 利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。The above are only the embodiments of the present invention, which do not limit the scope of the present invention. Any equivalent structure or equivalent process transformation made by using the content of the description and drawings of the present invention, or directly or indirectly applied to other related technologies In the same way, all fields are included in the scope of patent protection of the present invention.
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: The technical solutions recorded in the foregoing embodiments can still be modified, or some or all of the technical features can be equivalently replaced; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the technical solutions of the embodiments of the present invention. range.

Claims (53)

  1. 一种形式验证方法,其特征在于,包括:A formal verification method, characterized in that it includes:
    获取第一文件和第二文件,所述第二文件根据第一文件而得到;Obtaining a first file and a second file, the second file being obtained according to the first file;
    确定与所述第一文件和所述第二文件相对应的单元匹配信息,所述单元匹配信息中包括所述第一文件中的数据单元与所述第二文件中的数据单元之间的对应关系;Determine unit matching information corresponding to the first file and the second file, where the unit matching information includes the correspondence between the data unit in the first file and the data unit in the second file relationship;
    根据所述单元匹配信息和所述第一文件,对所述第二文件进行形式验证。Perform formal verification on the second file according to the unit matching information and the first file.
  2. 根据权利要求1所述的方法,其特征在于,The method of claim 1, wherein:
    当无法识别所述第二文件中的至少一个所述数据单元所对应的名称信息,确定与所述第一文件和所述第二文件相对应的单元匹配信息;When the name information corresponding to at least one of the data units in the second file cannot be identified, determine the unit matching information corresponding to the first file and the second file;
    当在所述第一文件中,无法识别到与所述第二文件中的所述至少一个数据单元的名称信息相对应的数据单元时,确定与所述第一文件和所述第二文件相对应的单元匹配信息。When the data unit corresponding to the name information of the at least one data unit in the second file cannot be identified in the first file, it is determined that the data unit corresponds to the first file and the second file. Corresponding unit matching information.
  3. 根据权利要求1所述的方法,其特征在于,The method of claim 1, wherein:
    所述第一文件包括与芯片设计代码相对应的综合网表,所述第二文件包括与所述综合网表相对应的版图网表。The first file includes an integrated netlist corresponding to the chip design code, and the second file includes a layout netlist corresponding to the integrated netlist.
  4. 根据权利要求3所述的方法,其特征在于,获取第一文件和第二文件,包括:The method according to claim 3, wherein obtaining the first file and the second file comprises:
    获取与芯片设计代码相对应的综合网表,所述综合网表中包括寄存器单元;Acquiring a comprehensive netlist corresponding to the chip design code, the comprehensive netlist including a register unit;
    基于所述综合网表获得所述版图网表,所述综合网表中所述寄存器单元的名称信息与所述版图网表中对应的寄存器单元的名称信息不同。The layout netlist is obtained based on the integrated netlist, and the name information of the register unit in the integrated netlist is different from the name information of the corresponding register unit in the layout netlist.
  5. 根据权利要求4所述的方法,其特征在于,The method of claim 4, wherein:
    所述综合网表中包括所有的第一寄存器单元以及与所述第一寄存器单元相对应的第一名称信息;The comprehensive netlist includes all first register units and first name information corresponding to the first register units;
    所述版图网表中包括所有的第二寄存器单元以及与所述第二寄存器单元相对应的第二名称信息;The layout netlist includes all second register units and second name information corresponding to the second register units;
    所述综合网表中的所述第一寄存器单元与所述版图网表中的所述第二寄存器单元相对应。The first register unit in the integrated netlist corresponds to the second register unit in the layout netlist.
  6. 根据权利要求4所述的方法,其特征在于,基于所述综合网表获得所述版图网表,包括:The method according to claim 4, wherein obtaining the layout netlist based on the comprehensive netlist comprises:
    利用预设工具对所述综合网表进行布局布线处理,获得与所述综合网表相对应的版图网表。Use a preset tool to perform placement and routing processing on the integrated netlist to obtain a layout netlist corresponding to the integrated netlist.
  7. 根据权利要求6所述的方法,其特征在于,所述方法应用于形式验证设备,所述方法还包括:The method according to claim 6, wherein the method is applied to a formal verification device, and the method further comprises:
    检测所述形式验证设备与所述预设工具是否属于同一个供应商;Detecting whether the formal verification device and the preset tool belong to the same supplier;
    在所述形式验证设备与所述预设工具属于不同的供应商时,确定所述形式验证设备无法识别分别位于由所述预设工具生成的不同文件中的所述寄存器单元之间的对应关系;或者,When the formal verification device and the preset tool belong to different suppliers, it is determined that the formal verification device cannot recognize the correspondence between the register units located in different files generated by the preset tool. ;or,
    在所述形式验证设备与所述预设工具属于同一供应商时,确定所述形式验证设备能够识别所述寄存器单元。When the formal verification device and the preset tool belong to the same supplier, it is determined that the formal verification device can identify the register unit.
  8. 根据权利要求7所述的方法,其特征在于,在确定所述形式验证设备能够识别所述寄存器单元之后,所述方法还包括:The method according to claim 7, wherein after determining that the formal verification device can identify the register unit, the method further comprises:
    利用所述形式验证设备和所述综合网表,对所述版图网表进行形式验证。Using the formal verification device and the comprehensive netlist, formal verification is performed on the layout netlist.
  9. 根据权利要求4-8中任意一项所述的方法,其特征在于,所述确定与所述第一文件和所述第二文件相对应的单元匹配信息,包括:The method according to any one of claims 4-8, wherein the determining unit matching information corresponding to the first file and the second file comprises:
    基于所述综合网表与所述版图网表,获取针对所述寄存器单元的输入对应关系;Based on the comprehensive netlist and the layout netlist, acquiring the input correspondence for the register unit;
    根据所述输入对应关系,获取与所述综合网表和所述版图网表相对应的单元匹配信息。According to the input correspondence, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained.
  10. 根据权利要求4-8中任意一项所述的方法,其特征在于,所述确定与所述第一文件和所述第二文件相对应的单元匹配信息,包括:The method according to any one of claims 4-8, wherein the determining unit matching information corresponding to the first file and the second file comprises:
    基于所述综合网表与所述版图网表,获取针对所述寄存器单元的输入对应关系和名称对应关系;Based on the comprehensive netlist and the layout netlist, obtaining the input correspondence and the name correspondence for the register unit;
    根据所述输入对应关系和名称对应关系,获取与所述综合网表和所述版图网表相对应的单元匹配信息。According to the input correspondence and the name correspondence, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained.
  11. 一种信息识别方法,其特征在于,包括:An information recognition method, characterized in that it comprises:
    获取第一文件和第二文件,所述第二文件根据第一文件而得到,并且,所述第二文件中包括至少一个数据单元;Acquiring a first file and a second file, where the second file is obtained based on the first file, and the second file includes at least one data unit;
    确定与所述第二文件和所述第一文件相对应的单元匹配信息,所述单元匹配信息中包括所述第二文件中的所述至少一个数据单元与所述第一文件中 的数据单元之间的对应关系;Determine unit matching information corresponding to the second file and the first file, where the unit matching information includes the at least one data unit in the second file and the data unit in the first file Correspondence between;
    利用所述单元匹配信息识别所述第二文件中的数据单元。The unit matching information is used to identify the data unit in the second file.
  12. 根据权利要求11所述的方法,其特征在于,The method of claim 11, wherein:
    当无法识别所述第二文件中的至少一个所述数据单元所对应的名称信息时,确定与所述第一文件和所述第二文件相对应的单元匹配信息;或者,When the name information corresponding to at least one of the data units in the second file cannot be identified, determine the unit matching information corresponding to the first file and the second file; or,
    当在所述第一文件中,无法识别到与所述第二文件中的所述至少一个数据单元的名称信息相对应的数据单元时,确定与所述第二文件和所述第一文件相对应的单元匹配信息。When the data unit corresponding to the name information of the at least one data unit in the second file cannot be identified in the first file, it is determined that the data unit corresponds to the second file and the first file. Corresponding unit matching information.
  13. 根据权利要求11所述的方法,其特征在于,The method of claim 11, wherein:
    所述第一文件包括与芯片设计代码相对应的综合网表,所述第二文件包括与所述综合网表相对应的版图网表;或者The first file includes a comprehensive netlist corresponding to the chip design code, and the second file includes a layout netlist corresponding to the comprehensive netlist; or
    所述第一文件包括源程序文件,所述第二文件包括与芯片设计代码相对应的综合网表;或者The first file includes a source program file, and the second file includes a comprehensive netlist corresponding to the chip design code; or
    所述第一文件包括与芯片设计代码相对应的综合网表,所述第二文件包括经过逻辑测试后生成的网表;或者The first file includes a comprehensive netlist corresponding to the chip design code, and the second file includes a netlist generated after logic testing; or
    所述第一文件包括经过逻辑测试后生成的网表,所述第二文件包括版图网表。The first file includes a netlist generated after logic testing, and the second file includes a layout netlist.
  14. 根据权利要求11所述的方法,其特征在于,所述第一文件中包括至少一个寄存器单元,所述第一文件中所述至少一寄存器单元的名称信息与所述第二文件中对应的寄存器单元的名称信息不同;以及The method according to claim 11, wherein the first file includes at least one register unit, and the name information of the at least one register unit in the first file corresponds to the register in the second file The name information of the unit is different; and
    所述获取第一文件和第二文件,包括:The obtaining of the first file and the second file includes:
    基于所述第一文件获得所述第二文件。The second file is obtained based on the first file.
  15. 根据权利要求14所述的方法,其特征在于,所述确定与所述第二文件和所述第一文件相对应的单元匹配信息,包括:The method according to claim 14, wherein the determining unit matching information corresponding to the second file and the first file comprises:
    基于所述第一文件与所述第二文件,获取针对所述寄存器单元的输入对应关系和名称对应关系;Obtaining input correspondence and name correspondence for the register unit based on the first file and the second file;
    根据所述输入对应关系和名称对应关系获取与所述第一文件和所述第二文件相对应的单元匹配信息。Acquire unit matching information corresponding to the first file and the second file according to the input correspondence and the name correspondence.
  16. 根据权利要求11所述的方法,其特征在于,The method of claim 11, wherein:
    所述第二文件是第一电子设计自动化工具对所述第一文件进行处理而得到的;所述第一文件、所述第二文件、和所述单元匹配信息同时用于第二电 子设计自动化工具的数据处理,其中,所述第一电子设计自动化工具和所述第二电子设计自动化工具不同。The second file is obtained by processing the first file by a first electronic design automation tool; the first file, the second file, and the unit matching information are simultaneously used for the second electronic design automation Data processing of the tool, wherein the first electronic design automation tool and the second electronic design automation tool are different.
  17. 根据权利要求16所述的方法,其特征在于,The method of claim 16, wherein:
    当检测到所述第一电子设计自动化工具改变所述第一文件中的至少一第一数据单元,并生成存储于所述第二文件中的所述至少一数据单元时,确定所述第二文件中的所述至少一数据单元与所述第一文件中的所述至少一第一数据单元对应。When it is detected that the first electronic design automation tool changes at least one first data unit in the first file and generates the at least one data unit stored in the second file, determine the second The at least one data unit in the file corresponds to the at least one first data unit in the first file.
  18. 根据权利要求17所述的方法,其特征在于,The method of claim 17, wherein:
    所述第一文件、所述第二文件、和所述单元匹配信息同时用于第二电子设计自动化工具的数据处理,包括:The first file, the second file, and the unit matching information are simultaneously used for data processing of a second electronic design automation tool, including:
    所述第一文件和所述单元匹配信息同时用于第二电子设计自动化工具对所述第二文件的形式验证过程。The first file and the unit matching information are simultaneously used in the formal verification process of the second file by the second electronic design automation tool.
  19. 根据权利要求14-18中任意一项所述的方法,其特征在于,确定与所述第二文件和所述第一文件相对应的单元匹配信息,包括:The method according to any one of claims 14-18, wherein determining unit matching information corresponding to the second file and the first file comprises:
    基于所述第一文件与所述第二文件,获取所述至少一个数据单元的输入对应关系;Acquiring the input correspondence of the at least one data unit based on the first file and the second file;
    根据所述输入对应关系获取与所述第一文件和所述第二文件相对应的单元匹配信息。Acquire unit matching information corresponding to the first file and the second file according to the input correspondence relationship.
  20. 一种名称信息识别方法,其特征在于,包括:A method for identifying name information, which is characterized in that it includes:
    获取数据单元的第一名称信息;Acquiring the first name information of the data unit;
    当第一电子设计工具改变所述数据单元的所述第一名称信息,并生成所述数据单元的第二名称信息时,确定所述第一名称信息与所述第二名称信息相对应的名称匹配信息;When the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name corresponding to the first name information and the second name information Matching information
    将所述名称匹配信息发送至第二电子设计工具,以用于所述第二电子设计工具识别所述第一名称信息和所述第二名称信息之间的对应关系;以及Sending the name matching information to a second electronic design tool for the second electronic design tool to identify the correspondence between the first name information and the second name information; and
    其中,所述数据单元的第一名称信息存储于第一文件中,所述数据单元的第二名称信息存储于第二文件中,所述第一电子设计工具和所述第二电子设计工具不同。Wherein, the first name information of the data unit is stored in a first file, the second name information of the data unit is stored in a second file, and the first electronic design tool and the second electronic design tool are different .
  21. 根据权利要求20所述的方法,其特征在于,将所述名称匹配信息发送至第二电子设计工具,包括:22. The method of claim 20, wherein sending the name matching information to a second electronic design tool comprises:
    将关于所述第一名称信息和所述第二名称信息的名称匹配信息存储于名 称匹配文件中;以及Storing name matching information about the first name information and the second name information in a name matching file; and
    将所述名称匹配文件发送至所述第二电子设计工具。Sending the name matching file to the second electronic design tool.
  22. 根据权利要求20所述的方法,其特征在于,The method of claim 20, wherein:
    所述名称匹配信息包括所述第一名称信息、第二名称信息、以及所述第一名称信息至所述第二名称信息之间的索引;或者The name matching information includes the first name information, the second name information, and an index between the first name information and the second name information; or
    所述名称匹配信息包括所述第一名称信息、第二名称信息、以及所述第二名称信息至所述第一名称信息之间的索引。The name matching information includes the first name information, second name information, and an index from the second name information to the first name information.
  23. 根据权利要求20所述的方法,其特征在于,The method of claim 20, wherein:
    所述第二电子设计工具用于芯片设计的形式验证。The second electronic design tool is used for formal verification of chip design.
  24. 根据权利要求20所述的方法,其特征在于,The method of claim 20, wherein:
    在芯片设计过程中,所述第一文件先于所述第二文件产生。In the chip design process, the first file is generated before the second file.
  25. 根据权利要求20所述的方法,其特征在于,The method of claim 20, wherein:
    所述第一文件和所述第二文件均为芯片设计过程中产生的文件,所述第一文件用于产生所述第二文件。Both the first file and the second file are files generated during the chip design process, and the first file is used to generate the second file.
  26. 一种形式验证设备,其特征在于,包括:A formal verification device, characterized in that it comprises:
    第一存储器,用于存储计算机程序;The first memory is used to store computer programs;
    第一处理器,用于运行所述第一存储器中存储的计算机程序以实现:The first processor is configured to run a computer program stored in the first memory to implement:
    获取第一文件和第二文件,所述第二文件根据第一文件而得到;Obtaining a first file and a second file, the second file being obtained according to the first file;
    确定与所述第一文件和所述第二文件相对应的单元匹配信息,所述单元匹配信息中包括所述第一文件中的数据单元与所述第二文件中的数据单元之间的对应关系;Determine unit matching information corresponding to the first file and the second file, where the unit matching information includes the correspondence between the data unit in the first file and the data unit in the second file relationship;
    根据所述单元匹配信息和所述第一文件,对所述第二文件进行形式验证。Perform formal verification on the second file according to the unit matching information and the first file.
  27. 根据权利要求26所述的设备,其特征在于,所述第一处理器,还用于:The device according to claim 26, wherein the first processor is further configured to:
    当无法识别所述第二文件中的至少一个所述数据单元所对应的名称信息,确定与所述第一文件和所述第二文件相对应的单元匹配信息;When the name information corresponding to at least one of the data units in the second file cannot be identified, determine the unit matching information corresponding to the first file and the second file;
    当在所述第一文件中,无法识别到与所述第二文件中的所述至少一个数据单元的名称信息相对应的数据单元时,确定与所述第一文件和所述第二文件相对应的单元匹配信息。When the data unit corresponding to the name information of the at least one data unit in the second file cannot be identified in the first file, it is determined that the data unit corresponds to the first file and the second file. Corresponding unit matching information.
  28. 根据权利要求26所述的设备,其特征在于,The device of claim 26, wherein:
    所述第一文件包括与芯片设计代码相对应的综合网表,所述第二文件包括与所述综合网表相对应的版图网表。The first file includes an integrated netlist corresponding to the chip design code, and the second file includes a layout netlist corresponding to the integrated netlist.
  29. 根据权利要求28所述的设备,其特征在于,在所述第一处理器获取第一文件和第二文件时,所述第一处理器,用于:The device according to claim 28, wherein when the first processor obtains the first file and the second file, the first processor is configured to:
    获取与芯片设计代码相对应的综合网表,所述综合网表中包括寄存器单元;Acquiring a comprehensive netlist corresponding to the chip design code, the comprehensive netlist including a register unit;
    基于所述综合网表获得所述版图网表,所述综合网表中所述寄存器单元的名称信息与所述版图网表中对应的寄存器单元的名称信息不同。The layout netlist is obtained based on the integrated netlist, and the name information of the register unit in the integrated netlist is different from the name information of the corresponding register unit in the layout netlist.
  30. 根据权利要求29所述的设备,其特征在于,The device of claim 29, wherein:
    所述综合网表中包括所有的第一寄存器单元以及与所述第一寄存器单元相对应的第一名称信息;The comprehensive netlist includes all first register units and first name information corresponding to the first register units;
    所述版图网表中包括所有的第二寄存器单元以及与所述第二寄存器单元相对应的第二名称信息;The layout netlist includes all second register units and second name information corresponding to the second register units;
    所述综合网表中的所述第一寄存器单元与所述版图网表中的所述第二寄存器单元相对应。The first register unit in the integrated netlist corresponds to the second register unit in the layout netlist.
  31. 根据权利要求29所述的设备,其特征在于,在所述第一处理器基于所述综合网表获得所述版图网表时,所述第一处理器,用于:The device according to claim 29, wherein when the first processor obtains the layout netlist based on the integrated netlist, the first processor is configured to:
    利用预设工具对所述综合网表进行布局布线处理,获得与所述综合网表相对应的版图网表。Use a preset tool to perform placement and routing processing on the integrated netlist to obtain a layout netlist corresponding to the integrated netlist.
  32. 根据权利要求31所述的设备,其特征在于,所述第一处理器,还用于:The device according to claim 31, wherein the first processor is further configured to:
    检测所述形式验证设备与所述预设工具是否属于同一个供应商;Detecting whether the formal verification device and the preset tool belong to the same supplier;
    在所述形式验证设备与所述预设工具属于不同的供应商时,确定所述形式验证设备无法识别所述寄存器单元;或者,When the formal verification device and the preset tool belong to different suppliers, it is determined that the formal verification device cannot identify the register unit; or,
    在所述形式验证设备与所述预设工具属于同一供应商时,确定所述形式验证设备能够识别所述寄存器单元。When the formal verification device and the preset tool belong to the same supplier, it is determined that the formal verification device can identify the register unit.
  33. 根据权利要求32所述的设备,其特征在于,所述第一处理器,还用于:The device according to claim 32, wherein the first processor is further configured to:
    在确定所述形式验证设备能够识别所述寄存器单元之后,利用所述形式验证设备和所述综合网表,对所述版图网表进行形式验证。After it is determined that the formal verification device can identify the register unit, the formal verification device and the integrated netlist are used to perform formal verification on the layout netlist.
  34. 根据权利要求29-33中任意一项所述的设备,其特征在于,在所述第 一处理器确定与所述第一文件和所述第二文件相对应的单元匹配信息时,所述第一处理器,用于:The device according to any one of claims 29-33, wherein when the first processor determines the unit matching information corresponding to the first file and the second file, the first A processor for:
    基于所述综合网表与所述版图网表,获取针对所述寄存器单元的输入对应关系;Based on the comprehensive netlist and the layout netlist, acquiring the input correspondence for the register unit;
    根据所述输入对应关系,获取与所述综合网表和所述版图网表相对应的单元匹配信息。According to the input correspondence, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained.
  35. 根据权利要求29-33中任意一项所述的设备,其特征在于,在所述第一处理器确定与所述第一文件和所述第二文件相对应的单元匹配信息时,所述第一处理器,用于:The device according to any one of claims 29-33, wherein when the first processor determines the unit matching information corresponding to the first file and the second file, the first A processor for:
    基于所述综合网表与所述版图网表,获取针对所述寄存器单元的输入对应关系和名称对应关系;Based on the comprehensive netlist and the layout netlist, obtaining the input correspondence and the name correspondence for the register unit;
    根据所述输入对应关系和名称对应关系,获取与所述综合网表和所述版图网表相对应的单元匹配信息。According to the input correspondence and the name correspondence, the unit matching information corresponding to the integrated netlist and the layout netlist is obtained.
  36. 一种信息识别设备,其特征在于,包括:An information recognition device, characterized in that it comprises:
    第二存储器,用于存储计算机程序;The second memory is used to store computer programs;
    第二处理器,用于运行所述第二存储器中存储的计算机程序以实现:The second processor is configured to run a computer program stored in the second memory to implement:
    获取第一文件和第二文件,所述第二文件根据第一文件而得到,并且,所述第二文件中包括至少一个数据单元;Acquiring a first file and a second file, where the second file is obtained based on the first file, and the second file includes at least one data unit;
    确定与所述第二文件和所述第一文件相对应的单元匹配信息,所述单元匹配信息中包括所述第二文件中的所述至少一个数据单元与所述第一文件中的数据单元之间的对应关系;Determine unit matching information corresponding to the second file and the first file, where the unit matching information includes the at least one data unit in the second file and the data unit in the first file Correspondence between;
    利用所述单元匹配信息识别所述第二文件中的数据单元。The unit matching information is used to identify the data unit in the second file.
  37. 根据权利要求36所述的设备,其特征在于,所述第二处理器,用于:The device according to claim 36, wherein the second processor is configured to:
    当无法识别所述第二文件中的至少一个所述数据单元所对应的名称信息时,确定与所述第一文件和所述第二文件相对应的单元匹配信息;或者,When the name information corresponding to at least one of the data units in the second file cannot be identified, determine the unit matching information corresponding to the first file and the second file; or,
    当在所述第一文件中,无法识别到与所述第二文件中的所述至少一个数据单元的名称信息相对应的数据单元时,确定与所述第二文件和所述第一文件相对应的单元匹配信息。When the data unit corresponding to the name information of the at least one data unit in the second file cannot be identified in the first file, it is determined that the data unit corresponds to the second file and the first file. Corresponding unit matching information.
  38. 根据权利要求36所述的设备,其特征在于,The device of claim 36, wherein:
    所述第一文件包括与芯片设计代码相对应的综合网表,所述第二文件包 括与所述综合网表相对应的版图网表;或者,The first file includes a comprehensive netlist corresponding to the chip design code, and the second file includes a layout netlist corresponding to the comprehensive netlist; or,
    所述第一文件包括源程序文件,所述第二文件包括与芯片设计代码相对应的综合网表;或者,The first file includes a source program file, and the second file includes a comprehensive netlist corresponding to the chip design code; or,
    所述第一文件包括与芯片设计代码相对应的综合网表,所述第二文件包括经过逻辑测试后生成的网表;或者,The first file includes a comprehensive netlist corresponding to the chip design code, and the second file includes a netlist generated after logic testing; or,
    所述第一文件包括经过逻辑测试后生成的网表,所述第二文件包括版图网表。The first file includes a netlist generated after logic testing, and the second file includes a layout netlist.
  39. 根据权利要求36所述的设备,其特征在于,所述第一文件中包括至少一个寄存器单元,所述第一文件中所述至少一寄存器单元的名称信息与所述第二文件中对应的寄存器单元的名称信息不同;以及The device according to claim 36, wherein the first file includes at least one register unit, and the name information of the at least one register unit in the first file corresponds to the register in the second file The name information of the unit is different; and
    在所述第二处理器获取第一文件和第二文件时,所述第二处理器,用于:When the second processor obtains the first file and the second file, the second processor is configured to:
    基于所述第一文件获得所述第二文件。The second file is obtained based on the first file.
  40. 根据权利要求39所述的设备,其特征在于,在所述第二处理器确定与所述第二文件和所述第一文件相对应的单元匹配信息时,所述第二处理器,用于:The device according to claim 39, wherein when the second processor determines the unit matching information corresponding to the second file and the first file, the second processor is configured to :
    基于所述第一文件与所述第二文件,获取针对所述寄存器单元的输入对应关系和名称对应关系;Obtaining input correspondence and name correspondence for the register unit based on the first file and the second file;
    根据所述输入对应关系和名称对应关系获取与所述第一文件和所述第二文件相对应的单元匹配信息。Acquire unit matching information corresponding to the first file and the second file according to the input correspondence and the name correspondence.
  41. 根据权利要求36所述的设备,其特征在于,The device of claim 36, wherein:
    所述第二文件是第一电子设计自动化工具对所述第一文件进行处理而得到的;所述第一文件、所述第二文件、和所述单元匹配信息同时用于第二电子设计自动化工具的数据处理,其中,所述第一电子设计自动化工具和所述第二电子设计自动化工具不同。The second file is obtained by processing the first file by a first electronic design automation tool; the first file, the second file, and the unit matching information are simultaneously used in the second electronic design automation Data processing of the tool, wherein the first electronic design automation tool and the second electronic design automation tool are different.
  42. 根据权利要求41所述的设备,其特征在于,The device of claim 41, wherein:
    当检测到所述第一电子设计自动化工具改变所述第一文件中的至少一第一数据单元,并生成存储于所述第二文件中的所述至少一数据单元时,确定所述第二文件中的所述至少一数据单元与所述第一文件中的所述至少一第一数据单元对应。When it is detected that the first electronic design automation tool changes at least one first data unit in the first file and generates the at least one data unit stored in the second file, determine the second The at least one data unit in the file corresponds to the at least one first data unit in the first file.
  43. 根据权利要求42所述的设备,其特征在于,The device of claim 42, wherein:
    所述第一文件、所述第二文件、和所述单元匹配信息同时用于第二电子 设计自动化工具的数据处理,包括:The first file, the second file, and the unit matching information are used for data processing of a second electronic design automation tool at the same time, including:
    所述第一文件和所述单元匹配信息同时用于第二电子设计自动化工具对所述第二文件的形式验证过程。The first file and the unit matching information are simultaneously used in the formal verification process of the second file by the second electronic design automation tool.
  44. 根据权利要求39-43中任意一项所述的设备,其特征在于,在所述第二处理器确定与所述第二文件和所述第一文件相对应的单元匹配信息时,所述第二处理器,用于:The device according to any one of claims 39-43, wherein when the second processor determines the unit matching information corresponding to the second file and the first file, the first file Two processors for:
    基于所述第一文件与所述第二文件,获取所述至少一个数据单元的输入对应关系;Acquiring the input correspondence of the at least one data unit based on the first file and the second file;
    根据所述输入对应关系获取与所述第一文件和所述第二文件相对应的单元匹配信息。Acquire unit matching information corresponding to the first file and the second file according to the input correspondence relationship.
  45. 一种名称信息识别设备,其特征在于,包括:A name information recognition device, which is characterized in that it comprises:
    第三存储器,用于存储计算机程序;The third storage is used to store computer programs;
    第三处理器,用于运行所述第三存储器中存储的计算机程序以实现:The third processor is configured to run the computer program stored in the third memory to implement:
    获取数据单元的第一名称信息;Acquiring the first name information of the data unit;
    当第一电子设计工具改变所述数据单元的所述第一名称信息,并生成所述数据单元的第二名称信息时,确定所述第一名称信息与所述第二名称信息相对应的名称匹配信息;When the first electronic design tool changes the first name information of the data unit and generates the second name information of the data unit, determine the name corresponding to the first name information and the second name information Matching information
    将所述名称匹配信息发送至第二电子设计工具,以用于所述第二电子设计工具识别所述第一名称信息和所述第二名称信息之间的对应关系;以及Sending the name matching information to a second electronic design tool for the second electronic design tool to identify the correspondence between the first name information and the second name information; and
    其中,所述数据单元的第一名称信息存储于第一文件中,所述数据单元的第二名称信息存储于第二文件中,所述第一电子设计工具和所述第二电子设计工具不同。Wherein, the first name information of the data unit is stored in a first file, the second name information of the data unit is stored in a second file, and the first electronic design tool and the second electronic design tool are different .
  46. 根据权利要求45所述的设备,其特征在于,在所述第三处理器将所述名称匹配信息发送至第二电子设计工具时,所述第三处理器,用于:The device according to claim 45, wherein when the third processor sends the name matching information to the second electronic design tool, the third processor is configured to:
    将关于所述第一名称信息和所述第二名称信息的名称匹配信息存储于名称匹配文件中;以及Storing name matching information about the first name information and the second name information in a name matching file; and
    将所述名称匹配文件发送至所述第二电子设计工具。Sending the name matching file to the second electronic design tool.
  47. 根据权利要求45所述的设备,其特征在于,The device of claim 45, wherein:
    所述名称匹配信息包括所述第一名称信息、第二名称信息、以及所述第一名称信息至所述第二名称信息之间的索引;或者,The name matching information includes the first name information, the second name information, and an index between the first name information and the second name information; or,
    所述名称匹配信息包括所述第一名称信息、第二名称信息、以及所述第 二名称信息至所述第一名称信息之间的索引。The name matching information includes the first name information, second name information, and an index from the second name information to the first name information.
  48. 根据权利要求45所述的设备,其特征在于,The device of claim 45, wherein:
    所述第二电子设计工具用于芯片设计的形式验证。The second electronic design tool is used for formal verification of chip design.
  49. 根据权利要求45所述的设备,其特征在于,The device of claim 45, wherein:
    在芯片设计过程中,所述第一文件先于所述第二文件产生。In the chip design process, the first file is generated before the second file.
  50. 根据权利要求45所述的设备,其特征在于,The device of claim 45, wherein:
    所述第一文件和所述第二文件均为芯片设计过程中产生的文件,所述第一文件用于产生所述第二文件。Both the first file and the second file are files generated during the chip design process, and the first file is used to generate the second file.
  51. 一种计算机可读存储介质,其特征在于,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于实现权利要求1-10中任意一项所述的形式验证方法。A computer-readable storage medium, wherein the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used to implement any one of claims 1-10 The formal verification method described in the item.
  52. 一种计算机可读存储介质,其特征在于,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于实现权利要求11-19中任意一项所述的信息识别方法。A computer-readable storage medium, wherein the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used to implement any one of claims 11-19 The information identification method described in the item.
  53. 一种计算机可读存储介质,其特征在于,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于实现权利要求20-25中任意一项所述的名称信息识别方法。A computer-readable storage medium, wherein the storage medium is a computer-readable storage medium, the computer-readable storage medium stores program instructions, and the program instructions are used to implement any one of claims 20-25 The name information identification method described in the item.
PCT/CN2019/128715 2019-12-26 2019-12-26 Formal verification method and device, information identification method and device, and storage medium WO2021128165A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201980051925.XA CN112567375A (en) 2019-12-26 2019-12-26 Format verification method, information identification method, device and storage medium
PCT/CN2019/128715 WO2021128165A1 (en) 2019-12-26 2019-12-26 Formal verification method and device, information identification method and device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/128715 WO2021128165A1 (en) 2019-12-26 2019-12-26 Formal verification method and device, information identification method and device, and storage medium

Publications (1)

Publication Number Publication Date
WO2021128165A1 true WO2021128165A1 (en) 2021-07-01

Family

ID=75041166

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/128715 WO2021128165A1 (en) 2019-12-26 2019-12-26 Formal verification method and device, information identification method and device, and storage medium

Country Status (2)

Country Link
CN (1) CN112567375A (en)
WO (1) WO2021128165A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11775713B2 (en) 2021-09-28 2023-10-03 International Business Machines Corporation Register transfer level navigation microservices and instrumentation for cloud-native electronic design automation (EDA) platforms
CN114896921B (en) * 2022-06-10 2023-06-27 深圳国微芯科技有限公司 Integrated circuit form verification method, system and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453449B1 (en) * 1999-02-23 2002-09-17 Mitsubishi Denki Kabushiki Kaisha Formal logic verification system and method
US8042078B2 (en) * 2009-04-01 2011-10-18 International Business Machines Corporation Enhancing formal design verification by reusing previous results
CN105335570A (en) * 2015-11-24 2016-02-17 深圳市兴森快捷电路科技股份有限公司 Method for netlist comparison based on connection relationship of pins of components
CN105740487A (en) * 2014-12-09 2016-07-06 中芯国际集成电路制造(上海)有限公司 Method for verifying consistency between layout and schematic on basis of process design kit

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101419642A (en) * 2008-11-18 2009-04-29 北京巨数数字技术开发有限公司 Apparatus and method for extracting device connection relation from netlist file

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453449B1 (en) * 1999-02-23 2002-09-17 Mitsubishi Denki Kabushiki Kaisha Formal logic verification system and method
US8042078B2 (en) * 2009-04-01 2011-10-18 International Business Machines Corporation Enhancing formal design verification by reusing previous results
CN105740487A (en) * 2014-12-09 2016-07-06 中芯国际集成电路制造(上海)有限公司 Method for verifying consistency between layout and schematic on basis of process design kit
CN105335570A (en) * 2015-11-24 2016-02-17 深圳市兴森快捷电路科技股份有限公司 Method for netlist comparison based on connection relationship of pins of components

Also Published As

Publication number Publication date
CN112567375A (en) 2021-03-26

Similar Documents

Publication Publication Date Title
US8230370B2 (en) Circuit design assisting apparatus, computer-readable medium storing circuit design assisting program, and circuit design assisting method
US7644382B2 (en) Command-language-based functional engineering change order (ECO) implementation
TWI627547B (en) System and method for automated functional coverage generation and management for ic design protocols
US9589096B1 (en) Method and apparatus for integrating spice-based timing using sign-off path-based analysis
EP3185027B1 (en) Information processing method and device and computer storage medium
US9292652B2 (en) Generic design rule checking (DRC) test case extraction
CN112417798B (en) Time sequence testing method and device, electronic equipment and storage medium
CN112560401B (en) Verilog file conversion method, device, storage medium and equipment
CN108958744B (en) Deployment method, device, medium and electronic equipment of big data distributed cluster
WO2021128165A1 (en) Formal verification method and device, information identification method and device, and storage medium
CN111563257B (en) Data detection method and device, computer readable medium and terminal equipment
US20140188929A1 (en) Computer-readable storage medium, file management apparatus, and file management method
CN115630036A (en) Error information processing method, apparatus, device, storage medium and program product
US20150242296A1 (en) Analyzing behavior of a device under test
US20200042697A1 (en) Buffer overflow detection based on a synthesis of assertions from templates and k-induction
US10073852B2 (en) Computer-readable storage medium, file management apparatus, and file management method
US8510693B2 (en) Changing abstraction level of portion of circuit design during verification
CN115470125B (en) Log file-based debugging method, device and storage medium
CN111045948A (en) Method, apparatus and storage medium for checking interface signal between modules
US10430535B2 (en) Verification support program medium, verification support method, and information processing device for verification of a circuit
US9058184B2 (en) Run time generation and functionality validation of device drivers
CN112257359B (en) Debugging method, device, debugging system and storage medium for data waveform
KR20190020363A (en) Method and apparatus for analyzing program by associating dynamic analysis with static analysis
CN108334313A (en) Continuous integrating method, apparatus and code management system for large-scale SOC research and development
US7689399B1 (en) Automatic extraction of design properties

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19957436

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19957436

Country of ref document: EP

Kind code of ref document: A1