Step 1: Design for Manufacture
December 31, 1969 |Estimated reading time: 7 minutes
Electronic computer-aided design (ECAD) geometry creation primarily has been a manual process. Creating and maintaining the data necessary to drive printed circuit board (PCB) design requires a working knowledge of all rules to accurately define the shapes and sizes for each package, land pattern and variance of the manufacturing processes. With the drastic increase in package pin counts and the drive for tighter manufacturing tolerances, the already burdened PCB librarian is being taxed to keep up with the demand for error-free data. Sources for package data in machine-readable format now can be leveraged, and a new generation of automatic geometry generation has become viable.
Traditional automatic generation tools have suffered from two basic drawbacks. The first was a lack of EDA-friendly source data for defining component package physical models. Often, if source package data was not available to drive the automated generation tool, it became more cumbersome and error-prone to create the package data than creating the geometry by hand. The second drawback was the difficulty of capturing the manufacturing rules in a form that could be used by the generation tools. Current industry trends have been to consolidate library teams while reducing the workforce. Workloads, once handled by different library teams across the organization, now are handled by a single, global team.
Manufacturing process changes require either the wholesale change of an entire set of PCB package data, or the creation of a new set of data. The library must be at the highest possible quality level or manufacturing yields start dropping. For these reasons, many companies are investigating technology to automate the geometry creation process. Several major EDA vendors, as well as a few other companies, offer automatic geometry generation solutions.
Figure 1 presents the different elements associated with automatic geometry generation.
Figure 1. The geometry generation universe.
The basic flow for an automatic generation system using a semiconductor manufacturer's parts library* provides source data for the geometry generation toolset. The automatic generation process uses the parts library's* data for manufacturer-specific package dimensions, pin contact area (toeprint) and component body outlines. The engineering rules files (ERF) from the library* are for manufacturing process rules and optimal solder fillet. The rules files specify rules for all aspects of component generation, from land patterns, paste and soldermasks to required fiducials and hole sizes.
While the data contained within the parts library* is detailed and accurate, it also is specific to a manufacturer's part number (MPN). Package and pin sizes vary slightly from vendor to vendor, even if the part is of the same package type. Creating a geometry for a specific can be risky if there are alternate sources needed for components. To handle this situation, an envelope is created that is an aggregate of the possible MPNs for a package type. A geometry then is created from the envelope rather than a specific MPN. Figure 2 shows an overlay of three packages with different package sizes and pin toeprints with the resulting envelope. In our example, when an envelope is created, the minimum and maximum envelopes are calculated and stored for the component outline and toeprints. The user controls which can be used during the geometry generation process. During the envelope creation process, pins and outlines that are rectangles will result in an envelope that also is a rectangle. In the case of a contour, the result is a contour that contains all the individual contours.
Figure 2. Aggregate MPN packages and resulting envelope.
Once the desired set of MPN packages has been identified, the user begins aggregating the packages into the envelope. The user enters all of the desired MPNs in the envelope builder. The first MPN becomes the reference part for all other packages to confirm package compatibility. This means that if a package varies from the reference package by an amount that is determined through a set of rules, the package is rejected from the envelope.
Automatic geometry generation should take either an envelope file or a specific MPN package and create a geometry and associated padstacks in the ECAD tool format specified. For example, if the user specifies an MPN, the parts library* server site is queried for the package parts library file. The parts library* server returns the file to the generator for use in the geometry generation process. If an envelope file is specified, all the MPNs in the envelope are pulled down from the parts library* server for the generator. The setup file is read to set the defaults for output format and storage location.
The user chooses an ERF rules file from a list of files. By using these same rules to create the footprints and padstacks, any manual errors or rule interpretations are eliminated. At this point, the rules file is searched for the defined rules for the given package. The data provided from the parts library* file is a precise component body outline, shape package dimensions and pin-contact dimensions. Specific ERF rules modify the pin-contact data into an acceptable pad shape that creates an associated padstack. The component body outline creates the package geometry, silkscreen and other necessary layers in the geometry. Also, a configuration file is read to determine which parameters are needed that may not be specified in either an ERF file, a parts library* or envelope file. Options that guide the generation process also are included in this configuration file.
Release into the Corporate Library
One drawback of using an automatic generation tool is the propensity to generate an inordinate amount of data. During the generation steps, the generator does not take the time to search/scan all existing libraries for duplicate data. This would be too inefficient. One of the best methods to avoid creating too much duplicate data is to evaluate the existing geometry when it is to be released into the corporate library. Even though the name of the geometry and/or padstack may be duplicated from a previous generation, the actual measurements should be used to make sure that a duplicate padstack or geometry is not released.
As technology advances, graphical and textual editors are able to analyze and highlight any differences between two or more geometries. These difference comparators are important not only for evaluating duplicate data, but also for identifying any changes that a geometry may have after it has been regenerated from the same source. The reasons that there would be differences are that the source may have actually changed, manufacturing rules may have been modified or the geometry may have been modified after the creation. Some textual difference comparators exist today and are used for this purpose, but existing technology in this area often highlights differences where, functionally, they are equivalent. An example of this would be in analyzing two geometries stored in ASCII format, which would contain attribute lines that identify shapes on a specific layer. These attributes may be in a different order in the two geometries, causing the difference comparator to identify a difference, but the geometry is actually the same. Graphical difference comparators also become useful during the construction of the envelopes as well. If a user selects several MPNs for an envelope, and one of the packages causes the maximum extent to be too large and violate pad clearance rules, the comparator would be used to identify the offending MPN quickly and easily so it can be removed from the envelope. Also, the comparator becomes an integral part of geometry verification steps.
When verifying existing geometries only a subset of the rules can be checked against. One of the reasons for this is that pre-existing legacy geometry does not have any of the information associated with the actual toeprint, envelope or other source data. This means that the manufacturing rules cannot be checked for correct application. But clearance rules and recommended pad sizes can be checked. Additionally, if the manufacturer's part number is known and entered, a new geometry can be generated and then compared to the existing geometry as a verification step.
Advances in geometry generation technology see package editing capabilities allowing the user to edit the geometry after initial creation, but prior to generation into ECAD-specific formats, as well as storage of intermediate/common source formats (such as PinPak XML) so that entire geometry libraries can be regenerated easily.
Conclusion
Manual geometry creation methods, though still valid and reliable, are becoming too costly and time consuming in many organizations. The time it takes to create a new, high pin count package, verify and release it is taking too long and there are not enough PCB librarians to handle the workload. Many companies are turning to automated tools for geometry creation and with the availability of XML data sources these automated tools have become a viable addition to the PCB librarian's toolchest.
* Valor Parts Library.
Mark Heidorn, product marketing manager, may be contacted at Mentor Graphics Corp., 1811 Pike Rd, Longmont, CO 80501; (720) 494-1084; fax (720) 494-0457; e-mail: mark_heidorn@mentor.com; Web site: http://www.mentor.com.