|
Web-Based Collaborative IC Package Design
|
|
It is unnecessary to implement large, expensive and sophisticated software to improve collaboration between the IC designer and the package designer. Moreover, the integration of database and Web servers now makes it relatively straightforward to implement a package search engine over the Internet.
|
By Steve DiBartolomeo, Artwork Conversion Software Inc., Santa Cruz, Calif.
As IC's increase in complexity, the collaboration between the IC designer and the package designer becomes more important. Unless the two disciplines coordinate early in the design flow, it is possible to complete a chip that cannot be packaged at all or one that will require an extremely expensive package.
Since most IC manufacturers outsource both the design and the assembly of the package to subcontractors, communication is no longer a matter of walking down the hall; the package designer often works on the other side of the Pacific Ocean.
The Internet has made it possible to send massive amounts of data back and forth, quickly and easily, but data alone is not communication.
This paper describes new applications and approaches that are designed specifically to aid both the package engineer and the chip designer working together on the packaging of IC's.
Search Engine
If possible, use an existing package for a new die design to avoid the expense and delay of creating a new package with the associated tooling charges.
Though many packaging foundries have placed drawing files for packages on their servers, none have provided a search engine to enable their customers to select viable candidates, based on relevant criteria.
This will soon change as the integration of database and Web servers now makes it relatively straightforward to implement a package search engine.
The Database
About a year ago, we implemented an Internet-based tool for selecting packages from a list of existing ones. First we built a simple table of over 600 existing packages with the following entries:
1. Package Drawing Number
2. Package Type
3. Number of Pins or Balls
4. Die Paddle Size
5. Nominal Power Dissiplation
This information was placed in a simple ASCII table (See Figure 1).
|
|
Figure 1. This simple database for packages can be easily searched and extended.
|
Database Browser
We wrote a simple database browser in Visual Basic. The package browser makes a connection to the server each time it is started and downloads the database index. This is very fast, since the index is only about 80 Kb (Figure 2).
|
|
Figure 2. The package database browser with all packages in the database selected
|
Downloading the index at start up insures that any changes made to the list of packages are instantly available worldwide. The package browser looks much like an Excel spreadsheet, a familiar interface.
Originally, it was simpler to build a client VB application, as all users for this project were running Windows. Today we are rewriting this application using 100% server-side programming so that any browser on any operating system works.
|
|
Figure 3. By applying the filter, the number of packages displayed were reduced to those that meet the required criteria.
|
Candidate List
To narrow the list of candidate packages for a specific chip, the designer enters constraints. For example:
1. We want a plastic quad flat pack (PQFP).
2. We need 32 I/O, 4 power and 4 ground pins.
3. Our die is 5.5 x 5.0 mm square.
Entering this information into the pulldown menu and text boxes and clicking on "Apply" causes the browser to search through the list of packages that meet the criteria (Figure 3). The browser updates the display, and the designer can see that there are five potential candidates out of the 600 packages in the database: three 44 pin packages and two 64 pin packages (Figure 4).
|
|
Figure 4. After applying the filter criteria, only five out of 600 packages are listed. For a PDF view of the package, highlight it, and click "View." To download the DWG file of the package, click "Download."
|
By highlighting one of the listed packages and clicking on "View," the server sends a PDF file of the package drawing. It displays in seconds as most of the PDF files are in the 60-100 KB size. Since we need only 40 pins we can ignore the 64-pin packages.
To choose between the three 44-pin packages we would examine a drawing of each to understand the differences; most likely these are internal. To download the AutoCAD .dwg file for one of the packages the designer highlights it and clicks on "Download." Each package drawing is between 300- and 400 KB, so it also downloads quickly.
Programming talent is a limited commodity these days, but this package "server" is easy to implement. It doesn't require any database expertise, since the entire list of drawings is stored in an ASCII file.
Maintaining the database is simple: When a new part becomes available it is added to the list; when a part becomes obsolete, it is removed from the list. The entire database is stored on a single directory and is accessed using a basic ftp server.
Enhancements
If you have the need and the expertise, of course, you can expand this quickly and easily. For example, you can limit who browses your database by adding user name and password protection to the ftp server. (This is supported in the VB application.) You can also add additional fields to the database index in order to give the user more information about each part. (Figure 5 shows the overall block diagram of the package server.)
Finally, one may wish to add format translators so that users who can't read AutoCAD's .dwg file format can still access the data. For example, it would be easy to add a button requesting GDSII stream data, a format IC engineers can load into their layout tools, launching an on-the-fly conversion to GDSII.
|
|
Figure 5. Designers can access the entire package database, which is stored on a single directory, using a basic ftp server.
|
|