Using the newly developed software technology, the parallel design method can accomplish the efficient parallel circuit board design. This new technology enables multiple designers, multiple processes, and different kinds of tools to work on the same design database at the same time and significantly increases design productivity. Therefore, when it comes to concurrent design method of PCB design, think the concurrent design method and the design is divided into several parts and independently complete each part of the traditional methods, this new technology can create a parallel process on a public database, and can automatic synchronization process of change, to solve possible conflicts between each other. This is the first in the eda industry.
Since cad was widely adopted in circuit board design in the 1990s, the manufacturing field has been continuously improving design productivity through automation and process optimization. Unfortunately, as circuit design software technology continues to innovate, so does the demand to support new signal, component or board manufacturing technologies.
Without fundamental changes in design methodology, software will always be a follower of hardware technology, not a leader on the growth curve. Concurrent engineering with multiple engineers working on the same design has always been an effective weapon for productivity breakthroughs. The traditional divide and conquer approach divides the design into several parts and assigns them to each engineer. Finally, the parts are linked together and all conflicts are resolved through enforcement measures (automatic decisions are made according to predefined rules) or clever means (let engineers resolve conflicts one by one).
The parallel design method is quite effective for schematic circuit design because it can directly divide the design into multiple modules and pages according to functions. However, this method still requires a considerable amount of manual work to solve the interconnection problems between modules, such as signal name conflicts, component omissions and so on. As long as designers don’t see what each other is doing, these mistakes can happen.
A parallel design approach that allows multiple designers to work on the same design at the same time, to see the edits of other designers, and to automatically manage potential conflicts in real time is optimal for flexibility and productivity.
Parallel design architecture
The new parallel design technique requires a design process manager (server) and multiple design clients running in a network environment. The main job of the server software is to receive an update request from each client, check the request to make sure there are no design violations, and then synchronize each client based on the update.
Each client must have its own dedicated processor and storage. The new parallel design architecture also assumes that the communication system can support the minimum bandwidth and maximum latency required for the efficient and real-time exchange of information between the client and the server. Each client sees the entire design and observes other client edits as the server processes them. Design databases allow storage anywhere on the network.
This parallel design architecture allows multiple designers to work on the same design at the same time without splitting the design logically or in any other way. This is a truly real-time collaborative design environment in which all issues related to partitioning boundaries and managing data integrity during partitioning and join operations do not arise.
Because multiple designers can do the same design in parallel without any constraints, the entire design cycle can be significantly shortened.
Each design has an associated design team, and only team members are allowed access to design data. Any team member can start a design meeting on the server and on a single client. Other clients can participate in the meeting at any time.
The design is initially loaded on the server, and when the client joins the meeting and automatically downloads the current state of the server design into the client’s memory, the client is initialized and synchronized. Once the client joins the design meeting, it can edit the design using the standard editing tools available in the application.
An edit event is a separate activity initiated by the client and sent to the server as an update request. For example, moving a device from point a to point b constitutes an edit event that starts with the selection of the device and ends with a mouse click (or equivalent input) indicating the new position. The edit event is sent to the server as a transaction that describes what to remove and what to add.
Each edit event generated by the client must first perform a local design rule check (DRC) before being sent to the server, and then priority edit requests and enter the input message queue on a first-in, first-out basis. The server receives the edit request, integrates it into the design database, and then performs DRC. If no problem is found, the edit request is approved and sent to all clients via the output message queue for synchronization with the core database within the client.
Most of the computing time is spent on the local client. The client target object is added, edited, and deleted while all the automation associated with those edits (such as push, squeeze, and smooth) is performed. The server is less heavily loaded than the client, so there is no impact on system performance. Tests on this environment show that the server responds very quickly without slowing down the client.
Automatic wiring of circuit boards
The second application of parallel design technology is automatic wiring of circuit boards. Distributed automatic wiring has been a powerful weapon in circuit board wiring software for many years. Previously IC cabling has been converted to a distributed environment. However, circuit board wiring problems are very different, and until now it was thought that automatic cabling would have to be adapted to take advantage of multiple computers working on the same design. Software vendors and third-party engineers have also tried and failed to achieve acceptable performance improvements.
The architecture of the new parallel design technique addresses most of the key issues in a distributed cabling environment and knows how to prevent or resolve conflicts. Similarly, the server plays a design process management role, and requests from each cabling client are consolidated, checked, and broadcast in the server to other clients. All cabling clients are in sync, so there is little chance of cabling path conflicts when new cabling paths are added locally.
Integrated efficient tools
Since circuit design is a process involving many steps and rules, the most efficient point-of-use tools must be tightly integrated to achieve good productivity. Data and rules must flow smoothly throughout the design process.
In the past 20 years, the eda industry has seen unprecedented mergers and acquisitions, resulting in software vendors’ design processes relying on the integration of many tools. In addition, large companies require tools from many software vendors to be integrated into their unique design processes.
A quick fix is to write an interface that converts one tool’s ASCII output to another tool’s ASCII input format. Doing so generates hundreds of ASCII interfaces, each designed to overcome common data model and rule incompatibilities.
The basic requirement of this integration approach is that all applications must have fully compatible data models. Each application may use different tools and different levels of automation to process the data, but each application must be able to accept changes and identify them so it knows what to do next.
It is also possible to use parallel design techniques to integrate an application to perform a specific set of tasks, such as creating, laying out, wiring, and editing embedded devices. If so, the application can be automatically restricted to only those specific functions.
Circuit and board design
Combining the techniques required for parallel layout and parallel integration creates an environment where multiple different applications in the design process can be integrated and used by multiple designers simultaneously.
For example, applications such as schematic design, constraint management, layout design, 3d mechanical design simulation, and manufacturing can be integrated in a way that allows all these applications to be put into use simultaneously, while updating and synchronizing all editing events throughout the design process. There may even be multiple similar applications in a mixed environment, such as multiple layout tools.
Because multiple applications are running simultaneously, engineers can quickly understand the signal integrity effect of the added path. For example, in a three dimensional mechanical system designed for cellular phones, the movement of devices in the layout can be updated and checked immediately.