Two-way synchronization method, device and medium for schematic design tool and PDM system
By building a synchronization middleware in the schematic design tool, bidirectional data synchronization with the PDM system is achieved, solving the problem of poor data channels in the existing technology, improving design efficiency and accuracy, and forming an efficient digital design closed loop.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING NORI INTEGRATED CIRCUIT DESIGN CO LTD
- Filing Date
- 2026-05-06
- Publication Date
- 2026-06-19
AI Technical Summary
The lack of an efficient and automated data channel between existing schematic design tools and PDM systems leads to inefficient and error-prone component list entry, and the inability to automatically report changes in component inventory, affecting design efficiency and accuracy.
A synchronization middleware is built in the schematic design tool to achieve bidirectional data synchronization with the PDM system. By listening to preset trigger events, device data and design-related data are automatically synchronized, eliminating the manual input step and ensuring real-time data interconnection.
It enables real-time interconnection between schematic design tools and PDM systems, improving design efficiency and accuracy, ensuring design is based on the latest material information, and forming an efficient digital design closed loop.
Smart Images

Figure CN122240727A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of electronic design automation technology, and in particular to a method, device and medium for bidirectional synchronization between schematic design tools and PDM systems. Background Technology
[0002] The existing schematic design tools and product data management (PDM) systems lack an efficient and automated data channel, resulting in at least the following drawbacks: (1) Key data such as component lists and attributes in the schematic design tools need to be manually entered into the PDM system, which is inefficient and prone to errors. (2) Changes in component inventory and replacement information in the PDM system cannot be automatically fed back to the schematic design tools, leading to the selection of outdated or invalid components in the schematic design. (3) The data management processes of the schematic design tools and the PDM system are disconnected, affecting the efficiency of schematic design. Therefore, how to achieve data synchronization between the schematic design tools and the PDM system and improve the efficiency and accuracy of schematic design has become an urgent technical problem to be solved. Summary of the Invention
[0003] The purpose of this invention is to provide a method, device, and medium for bidirectional synchronization between schematic design tools and PDM systems, thereby improving the efficiency and accuracy of schematic design.
[0004] According to a first aspect of the present invention, a bidirectional synchronization method between a schematic design tool and a PDM system is provided, comprising: Step S1: Build a synchronization middleware in the schematic design tool, which can interact with the PDM system; Step S2: The synchronization middleware extracts schematic design data from the schematic design tool and schematic design related data from the PDM system, and listens for whether a preset synchronization trigger event occurs in the schematic design tool and the PDM system. If a preset synchronization trigger event is detected in the schematic design tool, then step S3 is executed. If a preset synchronization trigger event is detected in the PDM system, then step S4 is executed. Step S3: The synchronization middleware performs a synchronization operation from the schematic design tool to the PDM system based on the preset synchronization trigger event and schematic design data that occurred in the schematic design tool, and returns to step S2 or ends the process. Step S4: The synchronization middleware performs a synchronization operation from the PDM system to the schematic design tool based on the preset synchronization trigger events that occur in the PDM system and the schematic design associated data, and then returns to step S2 or ends the process.
[0005] According to a second aspect of the present invention, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being configured to perform the method described in the first aspect of the present invention.
[0006] According to a third aspect of the present invention, a computer-readable storage medium is provided, storing computer-executable instructions for performing the method described in the first aspect of the present invention.
[0007] Compared with existing technologies, this invention has significant advantages and beneficial effects. Through the above technical solution, the bidirectional synchronization method, device, and medium for schematic design tools and PDM systems provided by this invention achieve considerable technological advancement and practicality, and have broad industrial application value. It has at least the following beneficial effects: This invention enables bidirectional automatic data synchronization between schematic design tools and PDM systems by setting up a synchronization middleware, eliminating the need for manual data entry and verification. This achieves real-time interconnection and interoperability between schematic design tools and PDM systems, improving the efficiency and accuracy of schematic design. Attached Figure Description
[0008] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0009] Figure 1 A flowchart illustrating the bidirectional synchronization method between the schematic design tool and the PDM system provided in this embodiment of the invention. Detailed Implementation
[0010] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0011] This invention provides a bidirectional synchronization method between schematic design tools and PDM systems, such as... Figure 1 As shown, it includes: Step S1: Build a synchronization middleware in the schematic design tool. The synchronization middleware can interact with the PDM system.
[0012] Among them, schematic design tools are electronic design automation (EDA) tools used for circuit design. They are used to complete the placement of component symbols, drawing of electrical connection relationships, definition of signal networks and checking of electrical rules in a graphical way, and can output standardized netlist files to provide basic design data for subsequent printed circuit board (PCB) layout and routing, circuit simulation and hardware implementation.
[0013] The synchronization middleware is built based on a secondary development script of the schematic design tool. It should be noted that a secondary development script refers to an external script program not included in the software tool itself, but written based on the extension interfaces provided by the software tool to enhance or extend the functionality of the schematic design tool. As an example, the synchronization middleware is built based on a secondary development script of the schematic design tool, which can specifically be a Python script. Python, as an interpreted, cross-platform, and concise high-level scripting language, has advantages such as high development efficiency, a rich ecosystem, and ease of embedding and integration, effectively improving the security and scalability of the secondary development script. The PDM system is a software platform that centrally manages all data and business processes throughout the entire product lifecycle (such as R&D / design / process / manufacturing). Its core is to establish a "single trusted data source" to ensure data consistency, version correctness, process traceability, and controllable permissions.
[0014] Step S2: The synchronization middleware extracts schematic design data from the schematic design tool and schematic design related data from the PDM system, and listens for whether a preset synchronization trigger event occurs in the schematic design tool and the PDM system. If a preset synchronization trigger event is detected in the schematic design tool, then step S3 is executed. If a preset synchronization trigger event is detected in the PDM system, then step S4 is executed.
[0015] The schematic design data includes device identifiers, device attributes, and device parameters. Device attributes include device reference numbers, device values, and device package information. The schematic design associated data includes material data and schematic design annotation data. The synchronization middleware establishes a mapping relationship between device identifiers and material data. The preset events include device placement events and schematic upload events occurring in the original schematic design tool, as well as device placement prompt events and schematic marking events occurring in the PDM system.
[0016] Step S3: The synchronization middleware performs a synchronization operation from the schematic design tool to the PDM system based on the preset synchronization trigger event and schematic design data that occur in the schematic design tool, and then returns to step S2 or ends the process.
[0017] Step S4: The synchronization middleware performs a synchronization operation from the PDM system to the schematic design tool based on the preset synchronization trigger events that occur in the PDM system and the schematic design associated data, and then returns to step S2 or ends the process.
[0018] It should be noted that bidirectional synchronization between the schematic design tool and the PDM system can be achieved through steps S3-S4.
[0019] This invention completely eliminates manual data entry and verification, significantly improving data flow speed and accuracy. It also enables real-time interconnection between schematic diagrams and the PDM system, ensuring that schematic design is always based on the latest and most accurate material information. By seamlessly embedding data management processes into the schematic design phase, it breaks down information silos, forming an efficient digital design closed loop. This provides crucial support for the integration and automation of schematic design and product data management.
[0020] As one embodiment, if a device placement event is detected in step S2, then step S3 includes: Step S31: The synchronization middleware obtains the material information corresponding to the currently set device based on the mapping relationship between device identifier and material data, and uploads it to the PDM system.
[0021] Step S32: The synchronization middleware calls the Application Programming Interface (API) in the PDM system to obtain the material information corresponding to the currently set device and judges whether the device placement is reasonable. If it is not reasonable, a device placement prompt event is generated and the process returns to step S2.
[0022] Specifically, the rationality of component placement can be determined by assessing whether the remaining quantity of materials meets the demand and whether the material price information meets the demand. If the component placement is rational, the corresponding component can be directly placed in the schematic design tool. It should be noted that, through steps S31-S32, the rationality of the schematic design can be determined based on real-time material information in the PDM system.
[0023] As one embodiment, if a device placement prompt event is detected in step S2, then step S4 includes: Step S41: The synchronization middleware obtains the device identifier corresponding to the device placement prompt event based on the mapping relationship between device identifier and material data.
[0024] Step S42: The synchronization middleware calls the application programming interface (API) in the schematic design tool to generate prompt information based on the device identifier corresponding to the prompt event in the schematic design tool.
[0025] Specifically, based on the device identifier corresponding to the prompt event, prompt information is generated. Specifically, it can generate a prompt that the current device cannot be placed, and it can also generate recommended replacement device information.
[0026] As one embodiment, if a schematic upload event is detected in step S2, then step S3 includes: Step C31: The synchronization middleware obtains the schematic design data corresponding to the schematic to be uploaded and uploads it to the PDM system.
[0027] Step C32: The synchronization middleware calls the API in the PDM system to obtain the annotation information added by the PDM system based on the schematic design data, generates a schematic marking event, and returns to step S2.
[0028] It should be noted that through steps C31-C32, the schematic design data generated by the design user can be automatically uploaded to the PDM system. The reviewing user can then review the data based on the PDM system and add annotation information based on the schematic design data.
[0029] As one embodiment, if a schematic marker event is detected in step S2, then step S4 includes: Step C41: The synchronization middleware sends the annotation information added based on the schematic design data to the schematic design tool.
[0030] Step C42: The synchronization middleware calls the API of the schematic design tool to present the schematic design data and display the corresponding annotation information in the schematic design tool.
[0031] It should be noted that through steps C41-C42, the annotation information added by the reviewing user based on the schematic design data can be automatically sent to the schematic design tool for presentation, thereby improving the efficiency of schematic design.
[0032] In the process of secondary development of schematic design tools to generate the synchronization middleware, multiple secondary development scripts are usually written. In existing technologies, these scripts execute independently, meaning each script runs in a closed, isolated context. This reduces the efficiency of the schematic design tool, thereby decreasing the efficiency and accuracy of schematic design. Therefore, this invention further proposes a data sharing method among secondary development scripts of a schematic design tool, including: Step E1: When the schematic design tool starts or its secondary development environment is loaded, instantiate the shared context manager {A1,A2,...,A...} in the schematic design tool. n ,...,A N}, A n For the nth shared context manager instantiated in the schematic design tool, A n Used to store and manage the nth set of shared data corresponding to the secondary development scripts, for each A n Set a globally unique access point, where n ranges from 1 to N, and N is the number of shared context managers.
[0033] Step E2: Obtain the necessary access to A in the schematic design tool. n The collection of secondary development scripts for shared data {B1 n B2 n ,...,B i n ,....,B f(n) n}, B i n Let be the i-th secondary development script that needs to access shared data, where n ranges from 1 to f(n), and f(n) is the value of A that needs to be accessed. n The total number of secondary development scripts for shared data.
[0034] It should be noted that {B1 n B2 n ,...,B i n ,....,B f(n) n All secondary development scripts in} need to access A n Shared data within.
[0035] Step E3, for each B i n Set A n The corresponding access permissions include read / write permissions or read-only permissions.
[0036] It should be noted that different B in For A n Shared data in the database may have different access permissions, for each data type that can read data (A)... n The shared data in A can be modified. n B in shared data i n Set the corresponding access permissions to read and write. For A, which can only be read... n Shared data in A cannot be modified. n B in shared data i n Set the corresponding access permissions to read-only.
[0037] Steps E4 and B j n Obtain shared data through the secondary development interface in the schematic design tool and store it in A. n In the shared data storage area, B j n This is a secondary development script with read and write permissions.
[0038] Among them, B j n Shared data is retrieved from the schematic design through the secondary development interface in the schematic design tool. This can be understood as storing data in A... n The shared data storage area will soon store the shared data to A. n In the shared data storage area, it should be noted that if A n If the corresponding shared data in the shared data storage area is empty, then it is stored directly. If A n If the corresponding shared data already exists in the shared data storage area, then the corresponding shared data will be stored in an updated manner.
[0039] Steps E5 and B i n From A n Retrieve shared data from the shared data storage area.
[0040] It should be noted that the embodiments of this invention achieve deep collaboration and data interoperability between secondary development scripts, greatly enhancing the flexibility of secondary development functions. Furthermore, developers no longer need to write cumbersome intermediate file processing code, allowing them to focus more on the business logic code itself, significantly reducing code redundancy and enhancing code maintainability. This invention adopts a decentralized management model; secondary development scripts do not communicate directly but interact through a shared context manager, achieving high cohesion and low coupling between them, making the system architecture more robust and easily scalable.
[0041] Understandably, from A nB retrieves shared data from the shared data storage area. i n It can be a secondary development script with read-only access or a secondary development script with read and write permissions.
[0042] As one embodiment, step E3 includes: Steps E31 and B i n Through A n The corresponding unique access point to A n Initiate a connection request.
[0043] Step E32, A n For B i n Establish a session and assign B i n Read / write permissions or read-only permissions.
[0044] As one embodiment, the shared context manager includes a shared data storage area for storing shared data. Specifically, the shared data storage area stores the shared data in the form of a key-value pair or namespace-based in-memory database. The shared context manager is provided with a set_value("key", data) interface and an update_namespace({...}) interface for storing data in the shared data storage area. Step E4 includes: Steps E41 and B j n Design data can be obtained from schematic design through the secondary development interface in the schematic design tool.
[0045] Steps E42 and B j n Shared data is generated based on the acquired design data and stored in the form of key-value pairs.
[0046] Specifically, shared data can be generated based on the acquired design data through calculations, or by obtaining data from a cloud device library via network requests.
[0047] Steps E43 and B j n Call A n The `set_value("key", data)` or `update_namespace({...})` interface in the API stores shared data in A. n In the shared data storage area.
[0048] It should be noted that the set_value("key", data) interface can store key-value pairs one by one into the shared data storage area, while the update_namespace({...}) interface can store key-value pairs in groups into the shared data storage area. Choose the appropriate interface according to the specific application requirements.
[0049] As one embodiment, the shared context manager is provided with a get_value("key") interface for retrieving data from the shared data storage area, and step E5 includes: Steps E51 and B i n Call A n The get_value("key") interface in the A n Retrieve shared data from the shared data storage area.
[0050] Understandably, through step E51, B i n A can be called according to application requirements. n The get_value("key") interface in the code actively retrieves the key from A based on application requirements. n Data is retrieved from the shared data storage area.
[0051] In another embodiment, the shared context manager has a register_listener("key", callback_function) interface for listening, and step E6 is executed after step E4: Steps E6 and B i n Call A n The `register_listener("key", callback_function)` interface registers a listener when B... i n The listener in the middle listens to A n When shared data is updated in A n Automatically call B i n The callback function in A n Updated shared data is pushed to B in real time. i n Perform synchronized updates.
[0052] It should be noted that through step E6, real-time pushing and status synchronization of shared data in each relevant secondary development script can be achieved. Specifically, it can be realized based on the event mechanism. Through step E6, all relevant secondary development scripts can perceive the changes of shared data in real time, avoiding operations based on outdated information, thereby improving the accuracy and reliability of execution.
[0053] By setting the above mechanism, multiple secondary development scripts can form an automated workflow. As an embodiment, the method further includes: Step E10: Obtain the sequence of secondary development scripts (C1, C2,..., C m ,..., C M ) corresponding to the automated workflow in the schematic design tool, where C m is the m-th secondary development script corresponding to the automated workflow, and the value range of m is from 1 to M, where M is the total number of the sequence of secondary development scripts corresponding to the automated workflow, and C m is one of the secondary development scripts in {B1 n , B2 n ,..., B i n ,...., B f(n) n}.
[0054] Step E20: Set m = 1 and execute step E30.
[0055] Step E30: Execute C m , and update the corresponding shared data in the shared data storage area of A m based on the execution result of C n .
[0056] Step E40: If m = M, then end the process; if m < M, then execute step E50.
[0057] Step E50: C m+1 obtains the shared data from the shared data storage area of A n , sets m = m + 1, and returns to step E30.
[0058] Based on the above mechanism, multiple scripts can form an automated workflow. Specifically, after the rule-checking secondary development script discovers that a certain device is non-compliant, it writes the device ID and problem description into the shared data storage area. The device-replacement secondary development script monitors this change, automatically executes the replacement operation, and updates the replacement result back to the shared data storage area. The report-generation secondary development script then generates a report based on the final result.
[0059] It should be noted that by building an automated workflow, the efficiency and accuracy of schematic design have been further improved.
[0060] This invention enables bidirectional automatic data synchronization between the schematic design tool and the PDM system by setting up a synchronization middleware, eliminating the need for manual data entry and verification. This achieves real-time interconnection between the schematic design tool and the PDM system, improving the efficiency and accuracy of schematic design. By setting up a shared context manager, data sharing is achieved between secondary development scripts within the schematic design tool, enabling deep collaboration and data interoperability among these scripts. This ensures data consistency, reduces redundancy in secondary development code, and further improves the accuracy and efficiency of the schematic design tool.
[0061] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. The terminology used herein in the description of this invention is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.
[0062] It should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts describe the steps as sequential processes, many of these steps can be performed in parallel, concurrently, or simultaneously. Furthermore, the order of the steps can be rearranged. A process can be terminated when its operation is complete, but it may also have additional steps not included in the figures. A process can correspond to a method, function, procedure, subroutine, subroutine, etc.
[0063] This invention also provides an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being configured to perform the method described in this invention.
[0064] This invention also provides a computer-readable storage medium storing computer-executable instructions for performing the methods described in this invention.
[0065] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention in any way. Although the present invention has been disclosed above with reference to preferred embodiments, it is not intended to limit the present invention. Any person skilled in the art can make some modifications or alterations to the above-disclosed technical content to create equivalent embodiments without departing from the scope of the present invention. Any simple modifications, equivalent changes, and alterations made to the above embodiments based on the technical essence of the present invention without departing from the scope of the present invention shall still fall within the scope of the present invention.
Claims
1. A bidirectional synchronization method between a schematic design tool and a PDM system, characterized in that, include: Step S1: Build a synchronization middleware in the schematic design tool, which can interact with the PDM system; Step S2: The synchronization middleware extracts schematic design data from the schematic design tool and schematic design related data from the PDM system, and listens for whether a preset synchronization trigger event occurs in the schematic design tool and the PDM system. If a preset synchronization trigger event is detected in the schematic design tool, then step S3 is executed. If a preset synchronization trigger event is detected in the PDM system, then step S4 is executed. Step S3: The synchronization middleware performs a synchronization operation from the schematic design tool to the PDM system based on the preset synchronization trigger event and schematic design data that occurred in the schematic design tool, and returns to step S2 or ends the process. Step S4: The synchronization middleware performs a synchronization operation from the PDM system to the schematic design tool based on the preset synchronization trigger events that occur in the PDM system and the schematic design associated data, and then returns to step S2 or ends the process.
2. The method according to claim 1, characterized in that, The synchronization middleware is built based on a secondary development script of the schematic design tool.
3. The method according to claim 1, characterized in that, The schematic design data includes device identifiers, device attributes, and device parameters. Device attributes include device reference number, device value, and device package information. The schematic design associated data includes material data and schematic design annotation data. The synchronization middleware is configured with a mapping relationship between device identifiers and material data.
4. The method according to claim 1, characterized in that, The preset events include schematic device placement events and schematic upload events that occur in the original schematic design tool, as well as schematic device placement prompt events and schematic marking events that occur in the PDM system.
5. The method according to claim 4, characterized in that, If a device placement event is detected in step S2, then step S3 includes: Step S31: The synchronization middleware obtains the material information corresponding to the currently set device based on the mapping relationship between device identifier and material data, and uploads it to the PDM system; Step S32: The synchronization middleware calls the API in the PDM system to obtain the material information corresponding to the currently set device and judges whether the device placement is reasonable. If it is not reasonable, a device placement prompt event is generated and the process returns to step S2.
6. The method according to claim 5, characterized in that, If a device placement prompt event is detected in step S2, then step S4 includes: Step S41: The synchronization middleware obtains the device identifier corresponding to the device placement prompt event based on the mapping relationship between device identifier and material data; Step S42: The synchronization middleware calls the API in the schematic design tool and generates prompt information based on the device identifier corresponding to the prompt event in the schematic design tool.
7. The method according to claim 4, characterized in that, If a schematic upload event is detected in step S2, then step S3 includes: Step C31: The synchronization middleware obtains the schematic design data corresponding to the schematic to be uploaded and uploads it to the PDM system; Step C32: The synchronization middleware calls the API in the PDM system to obtain the annotation information added by the PDM system based on the schematic design data, generates a schematic marking event, and returns to step S2.
8. The method according to claim 7, characterized in that, If a schematic marker event is detected in step S2, then step S4 includes: Step C41: The synchronization middleware sends the annotation information added based on the schematic design data to the schematic design tool; Step C42: The synchronization middleware calls the API of the schematic design tool to present the schematic design data and display the corresponding annotation information in the schematic design tool.
9. An electronic device, characterized in that, include: At least one processor; And, a memory communicatively connected to the at least one processor; The memory stores instructions that are executed by the at least one processor, the instructions being configured to perform the method as described in any one of claims 1-8.
10. A computer-readable storage medium, characterized in that, The device stores computer-executable instructions for performing the method as described in any one of claims 1-8.