Get email delivery of the Cadence blog featured here
When wire bonding, the most common situation remains a single wire from pin to finger. There may be die to die connections as you step down from one die to the next in a stacked die situation (sometimes called a stitch bond, where the wire is tacked down to the intermediate pins, but the wire isn’t actually broken), or you may bond a set of pins to a power or ground ring.
But, what happens if you need to create multiple bond wires between a pin and a bond finger? Whether it is for current-carrying capacity, redundancy, or some other reason, it happens. Multi-bond fingers are just for single wires from multiple die pins!
When such a situation arises, it can be very tempting to turn a simple layout process into a complex one. Adding the wires individually, manually spacing them apart on each end. Is there a better way? With the Cadence® SiP tool, there absolutely is! In this posting, we’ll talk about the two most common flows to accomplish this task, depending on the exact arrangement you need.
So, you have a bond finger that is longer than its neighbors so that it can accommodate a set of bond wires coming from the three dies stacked atop each other. In this case, you need to add the three-wire bonds from the three dies, which you can do with the Wire Bond Edit application mode.
From the Wire Bond Edit app mode, select the die pins you wish to bond to a single finger. Remember that you can use the control key to add to the currently-selected elements. With the die pins selected, access the right mouse menu and select the Add Wire Bond option. In the options tab, as shown below, aside from picking your larger bond finger-sized to hold all the wires, you want to enable the Allow multiple wires to finger option in the wire group.
This option tells the tool to group neighboring pins on the same net, allowing all their wires to go to a single, common bond finger to be placed. This will be reflected immediately on your cursor after checking the option.
You will notice that, currently, the bond finger is aligned with the wire coming off of a single one of the die pads. This is rarely the correct rotation for the finger. You’d rather it be aligned either orthogonal to the side of the die you’re bonding, or you want it to average the wire angles out so that the finger is aligned with a theoretical “average” wire. In this case, under the finger group, select the alignment style Average Wire Angle to use this calculated average wire as the reference. This doesn’t impact your snap point for the finger, of course, which you can still choose between the origin, inner edge, or outer edge for placing on the guide path.
Once configured, simply move your cursor back into the canvas for placement. The bond finger, complete with all of its bond wires, will push and shove the surrounding bond pattern to your spacing requirements as if it were a single bond.
Because the order of the wire tack points to the finger will be driven by the angle they come into the pad, the wires will initially all connect to the center connection point on the finger (expert note: if you’re designing variants for the die stack, you might even want to leave all the wires connected to the center).
To spread the wires evenly and maximize the spacing between the endpoints, go to the Route – Wire Bond – Tack Point Move command (command name: wirebond tack point). Here, use the Auto spread all wires on pad option, then click on the bond finger. The wire ends will reposition in sorted order, being sure to keep any wires from crossing over others. This is normally desirable to allow for optical verification of the bond pattern during assembly.
Once the wires are spread, your work is done. You can repeat this for any sets of pins that need to go to a common substrate finger pad. As you push and shove the bond shell, the wire end points on the finger will keep their relative placements.
The above flow easily handles die stack scenarios. If you have a large pin that requires a specific number of bond wire connection between it and its substrate finger, however, it can be tedious to add the wires individually, one at a time, and then use the auto spread command. Auto spread is a pad-based operation, meaning you would need to first spread the wire ends on the die pad before repeating the process on the bond finger.
Instead, consider using the Add Non-Standard Wire Bond command. This feature is there to create wire bonds and patterns that may not be as typical as those done with the Add Wire Bond command. Adding 10 wires from a single pin to a single finger/shape fits that description quite well. At least, it does for most designers – it might be all in a day’s work for you!
The non-standard bonding command, interface below, allows for defining wires between objects not typically bonded to (e.g. directly to the end of a routed cline, to a via, or to a shape not on a power/ground net). It also creates regular arrays of wire patterns described above.
The key component of defining the multi-wire pattern is to know how many rows and columns of wires you need, and the spacing between wires in the same row and same column. Any wires in the pattern which extend beyond the pad’s boundary cannot, of course, be created.
After configuring the rows and columns, set the reference point for the pattern on each side. Typically, this will be from pad center to pad center, but if you are bonding to a shape, you may want to give an offset from the inner edge of the shape. This is just one example.
Options tab configured, it becomes a matter of click on pin, click on finger, done! You’ll see the entire pattern of wires created, perfectly spaced and aligned. Should your design have a set of pins needing this type of redundancy, continue picking them in pairs until the design is complete.
That’s all there is to it. Of course, a finger wired in this way will push and shove like any other if you need to, however, to keep the wire lengths all the same, use caution when relocating the finger. You may need to change the reference points on the pin or the finger after you’re finished.
Having created all your wire arrays, nobody will blame you if you want to admire your work. Where better to do that than in the 3D display, where you can even look for potential conflicts with neighboring wires and fingers?