PDK efficient compiling and updating method, electronic equipment and storage medium

By identifying and encrypting the target files in the PDK resource file library and using the file management system to compile and update the PCell code, the complex and time-consuming problem of PDK update is solved, and the rapid and accurate PDK development and IC design and debugging efficiency is achieved.

CN120386531APending Publication Date: 2025-07-29NANJING IC DESIGN SERVICE IND INNOVATION CENT CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202510511967.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-23
Publication Date
2025-07-29

AI Technical Summary

Technical Problem

In the prior art, PDK updates are frequent, especially PCell codes related to design layouts are complex and time-consuming, making it difficult to iterate quickly and accurately, affecting the debugging efficiency of IC designers.

Method used

By establishing a PDK resource file library, using the built-in judgment system to identify the target file and encrypt it, using the file management system to compile and update it to the standardized PDK directory, generating PDK installation packages, and reducing duplicate compilation operations.

Benefits of technology

It realizes fast and accurate PCell code updates, improves PDK development efficiency, reduces unnecessary replicate compilation time, and improves IC design and debugging efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120386531A_ABST
    Figure CN120386531A_ABST
Patent Text Reader

Abstract

The invention discloses a PDK efficient compiling and updating method, electronic equipment and a storage medium. The method comprises the steps that a PDK resource file library is established; identifying a target file updated by a user from the PDK resource file library through a built-in judgment system, and marking the target file; executing an encryption operation on the PCell code of the marked target file; compiling the encrypted data by using a file management system, and updating the compiled data to a PDK structure package of a standardized PDK directory; after the judgment system confirms that the updating is successful, the PDK structure package is packaged, and a PDK installation package is generated. According to the method, the object needing to be updated is determined from the reference data source in the PDK resource file library through the built-in judgment system, the object is encrypted and compiled to the standardized PDK directory, and whether the updating is successful or not is judged through the built-in judgment system, so that the PCell code block in the PDK structure can be quickly and accurately updated, unnecessary repeated compiling operation is reduced, and the updating efficiency is improved. Therefore, the development efficiency of the PDK is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of PDK development, and particularly to a method for efficiently compiling and updating PDK, an electronic device, and a storage medium. Background Art

[0002] A PDK (Process Design Kit) is a semiconductor process design kit and a very important information transfer medium file library in the semiconductor industry. As a bridge between IC design companies, foundries, and EDA (Electronic Design Automation) manufacturers, the PDK describes semiconductor process detail files through foundries for use by chip design EDA tools. A PDK package usually contains design rule files, electrical rule files, layout layer definition files, SPICE simulation models, device layouts, and parameterized cells (pcells), etc. These contents together constitute the key factors for foundries to convey producible indicators to each IC design company.

[0003] However, in practical applications, due to the frequent update of PDK, especially for the pcell code related to the design layout, the traditional encryption process is complex and time-consuming. For updating a single device, especially in the scenario of debugging, the whole package compilation time is long, and it is difficult to quickly present the modified effect, so it is difficult to quickly and accurately iterate and provide a standard package to IC designers. Therefore, how to accelerate the iterative release of PDK development and improve the pcell debugging efficiency has become a technical problem to be solved urgently. Summary of the Invention

[0004] In order to solve the defects of the prior art, the purpose of the present invention is to provide a method for efficiently compiling and updating PDK, an electronic device, and a storage medium, and the method can quickly encrypt, compile, and debug and update the PCell source data in the PDK.

[0005] In order to achieve the above purpose, the method for efficiently compiling and updating PDK provided by the present invention includes:

[0006] Establish a PDK resource file library;

[0007] From the PDK resource file library, identify the target file updated by the user through the built-in determination system, and mark the target file;

[0008] Perform an encryption operation on the Pcell code of the marked target file;

[0009] Use the file management system to compile the encrypted data and update it to the PDK structure package in the standardized PDK directory;

[0010] After confirming the successful update through the determination system, package the PDK structure package to generate a PDK installation package.

[0011] Furthermore, the step of establishing the PDK resource file library further includes: creating a PyCell directory area in the PDK resource file library, and the PyCell directory area is used to store PCell source data.

[0012] Furthermore, the PDK resource file library is used to store and manage all PDK-related files; the PDK-related files include: PyCell files, rule files, and process files.

[0013] Furthermore, the step of identifying the target file updated by the user through the built-in determination system and marking the target file further includes: establishing a marking area in the file management system, and the marking area is used to highlight the files that the user needs to update.

[0014] Furthermore, the step of using the file management system to compile the encrypted data, update it to the standardized PDK directory, and generate the PDK structure package further includes:

[0015] Establishing a temporary directory working area in the file management system;

[0016] Compiling the python code source file in the temporary directory working area;

[0017] Updating the compiled file to the PDK structure package in the standardized PDK directory.

[0018] Furthermore, the step of compiling the python code source file in the temporary directory working area further includes:

[0019] Compiling the PyCell files in the PDK resource file library, automatically executing the compilation according to the flag bits provided by the determination system using the compilation commands provided by the compilation system;

[0020] During the compilation process, the process technology files required for compilation are provided by the file management system, and the operation of loading the process technology files is executed in the compilation system;

[0021] For the log files generated by third-party tools during the compilation process, keep them in the temporary directory working area created in the file management system.

[0022] Furthermore, the step of using the file management system to compile the encrypted data, update it to the PDK structure package in the standardized PDK directory further includes: synchronizing the updated compressed package to the existing standardized PDK structure package; packing the synchronized PDK structure package to generate the final PDK installation package.

[0023] Further, it further includes: using built-in script commands to open a visualization tool to display the updated content in a visual form.

[0024] To achieve the above object, the present invention further provides an electronic device, including a memory and a processor, where a computer-executable program is stored on the memory, and the processor is configured to execute the computer-executable program to perform the steps of the PDK efficient compilation and update method as described above.

[0025] To achieve the above object, the present invention further provides a computer-readable storage medium, where a computer program is stored in the storage medium, and the computer program is loaded and executed by a processor to implement the steps of the PDK efficient compilation and update method as described above.

[0026] The PDK efficient compilation and update method provided by the present invention has the following beneficial effects compared with the prior art:

[0027] Through the built-in determination system, the objects to be updated are determined from the reference data sources in the PDK resource file library, and they are encrypted and compiled, which can quickly update the PCell code blocks in the PDK structure and reduce unnecessary repeated compilation operations; after processing the encrypted data into the standardized PDK directory, the success or failure of the update is determined through the built-in judgment system, which can quickly and accurately implement the PCell code update, thereby improving the development efficiency of the PDK.

[0028] Other features and advantages of the present invention will be described in the following description, and some of them will become obvious from the description, or be understood by implementing the present invention. Description of the Drawings

[0029] The drawings are used to provide a further understanding of the present invention, and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the present invention and do not constitute a limitation to the present invention. In the drawings:

[0030] Figure 1 It is a flowchart of the PDK efficient compilation and update method according to an embodiment of the present invention;

[0031] Figure 2 It is a schematic structural diagram of an electronic device according to an embodiment of the present invention. Detailed Embodiments

[0032] The following describes the preferred embodiments of the present invention with reference to the drawings. It should be understood that the preferred embodiments described herein are only used to illustrate and explain the present invention and are not used to limit the present invention.

[0033] Embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present invention are shown in the drawings, it should be understood that the present invention can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. On the contrary, these embodiments are provided to more thoroughly and completely understand the present invention. It should be understood that the drawings and embodiments of the present invention are only for exemplary purposes and are not used to limit the protection scope of the present invention.

[0034] As used herein, the term "including" and its variations are open-ended, i.e., "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". The relevant definitions of other terms will be given in the following description.

[0035] It should be understood that concepts such as "first" and "second" that may be mentioned in the present invention are only used to distinguish different data or units, and are not used to limit the order or interdependence of the functions performed by these data or units. These terms are only used to distinguish one feature from another. For example, without departing from the scope of the exemplary embodiments, the first feature may be referred to as the second feature, and similarly the second feature may be referred to as the first feature.

[0036] It should be noted that the modifications of "one" and "multiple" that may be mentioned in the present invention are illustrative rather than restrictive. Those skilled in the art should understand that unless otherwise clearly specified in the context, it should be understood as "one or more". "Multiple" should be understood as two or more.

[0037] In an embodiment of the present invention, a method for efficient compilation and update of a PDK is provided, including: establishing a PDK resource file library; identifying a target file updated by a user from the PDK resource file library through a built-in determination system, and marking the target file; performing an encryption operation on the PCell code of the marked target file; using a file management system to compile the encrypted data and update it into a PDK structure package in a standardized PDK directory; after confirming the successful update through the determination system, packaging the PDK structure package to generate a PDK installation package.

[0038] Figure 1 For the method for efficient compilation and update of a PDK according to an embodiment of the present invention, the following will be combined with Figure 1 to further describe the method for efficient compilation and update of the PDK of the present invention in detail.

[0039] First, in step 101, establish a PDK resource file library. Create a PDK resource file library for storing and managing all PDK-related files, that is, this PDK resource file library should contain all relevant files of the PDK, such as PyCell files, process files, rule files, etc.

[0040] In some exemplary embodiments, a version control system or a file storage system can be used to establish the PDK resource file library.

[0041] In some exemplary embodiments, the step of establishing the PDK resource file library further includes: creating a PyCell directory area in the PDK resource file library, and the PyCell directory area is used to store PCell source data.

[0042] In step 102, identify the target files to be updated and mark them. Identify the target files updated by the user through a built-in determination system and mark them (which can be specific tags or metadata in the file attributes, etc.).

[0043] In some exemplary embodiments, develop a built-in determination system that can automatically scan the PDK resource file library and determine whether a file is a target file that the user needs to update based on the modification time, version number, or other identifiers of the file.

[0044] In some exemplary embodiments, the step of identifying the target files updated by the user through the built-in determination system and marking the target files further includes: establishing a marking area in the file management system, and the marking area is used to highlight the files that the user needs to update. The file management system can be developed based on Python or Shell scripts and is used for automated processing of encrypted files.

[0045] In step 103, perform an encryption operation on the PCell code of the marked target files.

[0046] In some exemplary embodiments, quickly encrypt the marked target files through an encryption module (python encryption library).

[0047] In step 104, a temporary directory workspace is created, and the encrypted data is compiled within the temporary directory workspace and updated to the standardized PDK directory. In this step, a temporary directory workspace is created in the file management system, which will serve as the working directory for the compilation and update operations, ensuring that the files during the compilation process do not affect the original data in the resource file library. The temporary directory workspace also serves as the working directory for the script and the root directory for data storage, and different data is stored in different directories. The python code source files that need to be updated are compiled within the temporary directory workspace, and the compiled files are updated to the PDK structure package in the standardized PDK directory, so that the finally packaged PDK installation package conforms to the predefined standardized structure, facilitating subsequent use and maintenance.

[0048] In some exemplary embodiments, the step of compiling the python code source files within the temporary directory workspace further includes:

[0049] Compiling the PyCell files in the PDK resource file library, automatically using the compilation commands provided by the compilation system to perform the compilation according to the flag bits provided by the determination system;

[0050] During the compilation process, the process technology files required for compilation are provided by the file management system, and the operation of loading the process technology files is performed in the compilation system;

[0051] For the log files generated by third-party tools during the compilation process, they are retained in the temporary directory workspace created in the file management system.

[0052] In some exemplary embodiments, this step further includes: synchronizing the updated compressed package (including the compiled files and other updated contents) to the existing standardized PDK structure package to ensure that the PDK installation package remains up-to-date and conforms to the standardized directory structure and file format at the same time; repackaging the synchronized PDK structure package to generate the final PDK installation package.

[0053] In step 105, it is judged whether the update is successful. The updated files are checked through the built-in determination system to confirm whether the update is successful.

[0054] In step 106, a window is launched to display the effect after the update.

[0055] In some exemplary embodiments, built-in script commands can be used to open a visualization tool (EDA tool) to visually display the effect presented by the updated content.

[0056] The PDK efficient compilation and update method of the present invention can quickly implement the update of PCell code; based on the above process, the PCell code is updated, which accelerates the PDK development, improves the development efficiency of PDK, and reduces unnecessary repeated compilation behaviors.

[0057] In an embodiment of the present invention, an electronic device is further provided. Figure 2 As a schematic structural diagram of the electronic device according to an embodiment of the present invention, as Figure 2 shown, the electronic device of the present invention includes a processor 201 and a memory 202, wherein

[0058] The memory 202 stores a computer program, and when the computer program is read and executed by the processor 201, it executes the steps in the PDK efficient compilation and update method embodiment as described above.

[0059] In an embodiment of the present invention, a computer-readable storage medium is further provided, and a computer program is stored in the computer-readable storage medium, wherein the computer program is set to execute the steps in the PDK efficient compilation and update method embodiment as described above when running.

[0060] In this embodiment, the above computer-readable storage medium may include, but is not limited to: USB flash drive, read-only memory (abbreviated as ROM), random access memory (abbreviated as RAM), mobile hard disk, magnetic disk or optical disc and other various media that can store computer programs.

[0061] Those of ordinary skill in the art can understand that the above are only preferred embodiments of the present invention and are not used to limit the present invention. Although the present invention has been described in detail with reference to the foregoing embodiments, for those skilled in the art, they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements for some of the technical features. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A method for efficient compilation and update of PDK, characterized in that, Including: Establish a PDK resource file library; From the PDK resource file library, identify the target file updated by the user through the built-in determination system, and mark the target file; Perform an encryption operation on the PCell code of the marked target file; Use the file management system to compile the encrypted data and update it to the PDK structure package in the standardized PDK directory; After confirming the successful update through the determination system, package the PDK structure package to generate a PDK installation package.

2. The PDK high-efficiency compilation and update method according to claim 1, wherein The step of establishing the PDK resource file library further includes: creating a PyCell directory area in the PDK resource file library, and the PyCell directory area is used to store PCell source data.

3. The PDK high-efficiency compilation update method according to claim 1, wherein The PDK resource file library is used to store and manage all PDK-related files; the PDK-related files include: PyCell files, rule files, and process files.

4. The PDK high-efficiency compilation update method according to claim 1, wherein The step of identifying the target file updated by the user through the built-in determination system and marking the target file further includes: establishing a marking area in the file management system, and the marking area is used to highlight the files that the user needs to update.

5. The PDK high-efficiency compilation update method according to claim 1, characterized in that The step of using the file management system to compile the encrypted data and update it to the PDK structure package in the standardized PDK directory, and generating a PDK structure package further includes: Establish a temporary directory working area in the file management system; Compile the python code source file in the temporary directory working area; Update the compiled file to the PDK structure package in the standardized PDK directory.

6. The PDK high-efficiency compilation update method according to claim 5, characterized in that The step of compiling the python code source file in the temporary directory working area further includes: Compile the PyCell files in the PDK resource file library, and automatically execute the compilation according to the flag bits provided by the determination system using the compilation commands provided by the compilation system; During the compilation process, the process technology files required for compilation are provided by the file management system, and the operation of loading the process technology files is performed in the compilation system; For the log files generated by third-party tools during the compilation process, keep them in the temporary directory working area created in the file management system.

7. The PDK high-efficiency compilation and update method according to claim 1, wherein The step of using the file management system to compile the encrypted data and update it to the PDK structure package in the standardized PDK directory further includes: synchronizing the updated compressed package to the existing standardized PDK structure package; packaging the synchronized PDK structure package to generate the final PDK installation package.

8. The PDK high-efficiency compilation update method according to claim 1, wherein Also including: Use the built-in script command to open the visualization tool to display the updated content in a visual form.

9. An electronic device, characterized in that, Including a memory and a processor, a computer executable program is stored on the memory, and the processor is used to execute the computer executable program to perform the steps of the PDK efficient compilation and update method according to any one of claims 1 to 8.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program runs, it performs the steps of the PDK efficient compilation and update method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Installation package compiling method and device, electronic device and readable storage medium

    CN110442347A

  • Method for realizing PDK compiling function

    CN112416362A

  • Layout file encryption method, layout file decryption method, layout file encryption system and layout file decryption system

    CN114444098A