Revolutionary Technology in Circuit Board Design: Concurrent Design Method

Efficient parallel circuit board design can be accomplished using newly developed software technologies. This new technology enables multiple designers, multiple processes and different types of tools to work simultaneously on the same design database, significantly improving design productivity.

Unlike the traditional method of dividing the design into several parts and completing each part independently, this new technology can create parallel processes on a common database and automatically synchronize process changes and resolve conflicts that may occur between them. This is the first of its kind in the EDA industry.

Since the widespread adoption of CAD 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, the need to support new signals, components, or board-level manufacturing technologies is also increasing, so the overall design time is hardly shortened (or even longer).

If there are no fundamental changes in design methodology, software will always play the role of a follower of hardware technology, rather than becoming a leader on the development curve.

Concurrent engineering technology, in which multiple engineers work on the same design, has always been an effective magic weapon for productivity breakthroughs. The traditional divide-and-conquer approach divides the design into several parts and assigns them to various engineers, and finally connects the parts and uses force (automated decisions based on predefined rules) or clever means (letting engineers resolve conflicts one by one) ) to resolve all conflicts.

This method is quite effective for schematic design of circuits because it can directly divide the design into multiple modules and pages based on functionality. Even so, this method still requires considerable manual operations to solve interconnection problems between modules, such as signal name conflicts, missing components, etc. As long as designers can’t see what each other is doing, these mistakes are likely to happen.

If a parallel design method allows multiple designers to work on the same design at the same time, see the editing content made by other designers, and automatically manage various potential conflicts in real time, then this parallel design method can achieve Optimal flexibility and productivity.

1 Parallel design architecture

New parallel design techniques require a design process manager (server) and multiple design clients running in a network environment. The main job of the server software is to receive update requests from each client, perform checks on the requests to ensure that no design rules are violated, and then synchronize each client based on the update content.

Each client must have its own dedicated processor and memory.

The new parallel design architecture also assumes that the communication system can support the minimum bandwidth and maximum latency required for efficient exchange of information between clients and servers in real time. Each client can see the entire design and observe other clients’ edits as the server processes them. The design database can be stored anywhere on the network.

This parallel design architecture allows multiple designers to work on the same design at the same time without dividing the design logically or in any other way. This is a truly real-time collaborative design environment where all the issues related to split boundaries and managing data integrity during split-join operations do not arise.

Since multiple designers can work on the same design in parallel without any restrictions, the overall design cycle can be significantly shortened.

Each design has an associated design team, and only members of the team are allowed access to the design data. Any team member can initiate a design session on the server and individual clients. Other clients can join the conference at any time.

The design is initially loaded on the server, and when the client joins the meeting and the current state of the server design is automatically downloaded into the client’s memory, the client is initialized and synchronized. Once the client joins the design session, it can edit the design using the standard editing tools available in the application.

An edit event is an independent 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 editing event. The start of the event is to select the device, and the end of the event is to indicate the new position with a mouse click (or equivalent input). Edit events are sent to the server as a transaction, which describes what is to be deleted and what is to be added.

Each editing event generated by the client must first perform a local design rule check (DRC) before being sent to the server, and then set the priority of the editing request and enter the input message queue according to the first-in, first-out principle. After receiving the edit request, the server first integrates it into the design database and then performs DRC. If no problems are found, the edit request is approved and sent to all clients through the output message queue for synchronization of the client’s internal core database.

Most computing time is spent on the local client.

Target objects are added, edited, and deleted on the client side, while performing all automated operations associated with those edits (such as pushing, squeezing, and smoothing). Compared with the client, the load on the server is relatively lighter, so it will not affect system performance. Testing of this environment showed that the server was very responsive and did not slow down the client.

2 Automatic wiring of circuit boards

The second application of parallel design technology is the automatic routing of circuit boards. Distributed automatic routing has been a “powerful weapon” for circuit board routing software for many years. Previously IC routers have transitioned to operating in a distributed environment. However, the problem of circuit board routing is very different, and until now it was thought that the autorouter had to be adapted to take full advantage of multiple computers working together on the same design. Software vendors and third-party engineers have made numerous attempts to achieve acceptable performance improvements, but all have failed.

The new parallel design technology adopts an architecture that can solve most of the key problems in a distributed wiring environment. It knows how to prevent or resolve conflicts. Likewise, the server serves as the design process manager, where requests from each Autorouter client are consolidated, inspected, and broadcast to other clients. All autorouter clients remain synchronized, so when new routing paths are added locally, there is little chance of routing path conflicts.

3 Integrate efficient tools

Since circuit design is a process involving many steps and rules, achieving excellent productivity requires tight integration of the most efficient point tools. Data and rules must flow smoothly throughout the design process.

Over the past 20 years, the EDA industry has seen an unprecedented level of mergers and acquisitions, with the result that software vendors’ design processes rely on the integration of numerous tools. In addition, large companies require tools from numerous software vendors to be integrated into their unique design processes.

A workaround is to write an interface through which the ASCII output of one tool is converted into the ASCII input format of the other tool. Doing so will generate hundreds of ASCII interfaces, each designed to overcome common data model and rule incompatibilities.

A 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 when processing data, but each application must be able to receive changes and recognize them so it knows what to do next.

It is also possible to use concurrent design techniques to integrate an application to perform a specific set of tasks, such as creating, placing, routing, and editing embedded devices. If so, then that application can be automatically restricted to only allow those specific functions.

4 Circuit and Board Design

Combining the technologies required for parallel layout and parallel integration can create an environment where multiple disparate 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 of these applications to be put into use simultaneously, while all of them are updated and synchronized throughout the design process. edit event. There may even be multiple similar applications in a mixed environment, such as multiple layout tools.

With multiple applications running simultaneously, engineers can quickly understand the signal integrity effects of added paths. For example, in a three-dimensional mechanical system designed for a cell phone, the movement of components through the layout can be updated and inspected immediately.

Similar Posts

Leave a Reply