Get email delivery of the Cadence blog featured here
Hello, all. As we push towards the next major update to the 17.4 release, the team here at Cadence is very busy! We hope you’ll be as excited by the new updates, enhancements, and bug fixes as we are. But until then, there is still plenty of capability within the Allegro Package Designer tool that you might not know is there.
Today, we’re going to talk about another 3D format available for export. Everyone is familiar with STEP models (you might even generate them from your completed package layouts for reference on the PCB), and I’m confident that you’ve used the 3D canvas and viewer available with the layout tool.
Did you know, though, that you can also export a 3D DXF file from your wire bond package layout? Interested to know more? Keep reading!
I’m talking about the OLP export tool. OLP is short for Offline Programming; it’s a common practice for developing the programming instructions for a machine – in this case, a wire bonder – but, it could be any of the machines or robots on an assembly line. Using OLP, your bonding specialist develops the program to drive the bonding machine, simulating the program to make sure that the capillary won’t damage existing wires as it adds the next set, and even tweaking things based on the results.
All of this is very important. It’s not desirable to just try out the program and “see if it works” on real parts, as we know. Not only is it slow, that’s also going to be expensive.
To develop the program, a bonding engineer needs to know the details he’s working with. That means the accurate heights of all the dies in all stacks in your layout. He must know the size and depth of any cavities. The location and layer (in case they are inside a stadium-style cavity) of the bond fingers and rings are also important. Finally, he needs the original profile definitions that you’ve used for your design and simulation.
This is where Allegro Package Designer’s Wire Bond OLP tool enters. After enabling the “wirebond_olp_beta” environment variable, it is found under the File - Export menu:
the command was designed based on work with the bonding machine providers. From this command, you may export (you guessed it) full 3D DXF files. These are one of the outputs which are used by the bond engineer during programming.
The tool will also generate the wire profile definition file for you. For those of you creating complex packages with both front and back-side bonding, two separate files are output. As you know, the bonding operations are going to be unique for the front and backside bonding; the package must be flipped over before doing the back bonding.
That’s a good question. Why is the DXF format used for this part of the flow? First and foremost, the format is flexible and understood by a wide variety of tools inside and outside the EDA domain. It is relatively compact, being an ASCII text file, yet retains the ability to accurately describe the 3D geometry elements of the bond wires, dies, spacers, interposers, and cavities. AND it has a hierarchy, so you can see each die as a component in the layout. Handy!
When exporting from the OLP interface, what do you get, and how does that compare to what you see in the 3D Canvas launched from within Allegro Package Designer? With any 3D format, you can always see a “2D” view if you just look straight down from the top. In this case, the APD canvas and DXF file can look very similar:
So, it should be no surprise that in 3D, they also look very similar:
Knowing that the wire bond OLP tools can read DXF, then, it makes a convenient format for exchanging data. Beyond that, since the Allegro tools have a DXF import interface, if the bonding engineer makes changes that he needs to communicate back to the layout engineer, that is a much simpler process.
The profile definitions, included as an XML file format, allows the bonding programmer a jumpstart. If those profiles are known-good, certified profiles from the bonding machine vendors, their work is simple. If not, they might need to validate that how you’ve described the loops is physically possible to create.
The two pieces, together, have everything needed to complete the programming. There is not even the need for a layer conversion file for the DXF creation in this case, as the layers required to be export are known – you need all (and only) the elements involved in the bond shell implementation. There’s no need for internal routing layers, the BGA ball pads, or other data. Taking this step out of the mix and providing a consistent, clean layer mapping takes on more pieces out of the puzzle. Your bonding engineer is always going to get the same data, organized in the same manner.
Now that we’ve discussed how to generate this file, it’s time to ask that question. Do you use this interface? Are there other flows that you see the 3D DXF format being critical for use in – whether it’s to simplify the exchange of information or to provide additional context over the 2D DXF data of the traditional File - Export - DXF tool?
With IC Packaging, interposers, and 3DIC design taking such an important role in today’s and tomorrow’s systems, be sure to let us know all your ideas. What will help you may help all other users of the tool, as well!