One or more aspects of the invention relate generally to interconnect pinout patterns for IC packaging and, more particularly, to an interconnect array formed at least in part using a repeated application of an interconnect pattern.
As integrated circuits have become more complex employing more and more pins in a limited area, mutual inductance between pins has increased. In fact, a complex integrated circuit die is conventionally coupled to a significantly larger package to couple such integrated circuit die to a printed circuit board (“PCB”), as the pin density of such die may be too great to directly couple the die to the PCB.
Interconnect arrays are laid out in a pattern selected to reduce power/ground loop inductance by minimizing the “loop” between I/O pins and power or ground pins. One type of pattern used to avoid power/ground loops is known as a “checkerboard pattern” of pins. A checkerboard pattern of pins alternates power and ground pins to reduce mutual inductance; however, the checkerboard pattern leaves no pins for I/O signals.
Accordingly, it would be desirable and useful to provide a pinout with low loop inductance and increased signal pin density.
One or more aspects of the invention relate generally to interconnects and, more particularly, to an interconnect array formed at least in part using a repeated application of an interconnect pattern.
An interconnect array uses at least in part a repeated application of an interconnect pattern (“tile”). The tile has eight I/O signal pins forming a perimeter array, a central pin that can be either a ground pin or an I/O power pin, and an offset ground pin. The I/O signal pins are associated with the same or multiple I/O banks. If the central pin is an I/O power pin, it is optionally associated with an I/O bank associated with one or more of the I/O signal pins.
Accompanying drawing(s) show exemplary embodiment(s) in accordance with one or more aspects of the invention; however, the accompanying drawing(s) should not be taken to limit the invention to the embodiment(s) shown, but are for explanation and understanding only.
In the following description, numerous specific details are set forth to provide a more thorough description of the specific embodiments of the invention. It should be apparent, however, to one skilled in the art, that the invention may be practiced without all the specific details given below. In other instances, well-known features have not been described in detail so as not to obscure the invention. For ease of illustration, the same number labels are used in different diagrams to refer to the same items; however, in alternative embodiments the items may be different.
There are many types of complex integrated circuits for which mutual inductance may be closely linked with pin density. General categories of these complex integrated circuits may include system-on-chip, processors, application specific integrated circuits (“ASICs”), and application specific standard products, among others. The terms “include” and “including” as used herein mean including without limitation. Examples of such integrated circuits include microprocessors, digital signal processors, communication integrated circuits including framers and cross-connects, programmable logic devices, memories, and graphic signal processors. One type of programmable logic device is a Field Programmable Gate Array (“FPGA”).
Interconnection (“pinout”) patterns for IC's are often described in terms of the number of I/O pins to the ground and power pins. It is often desirable to provide a large number of I/O pins in an FPGA to allow flexibility in user application. FPGAs often have several transceivers and other ports and it is desirable to not unduly limit how a user can configure the FPGA. Other types of ICs are often designed for a pre-determined interface and use a pin ratio of 6:1:1, which means a tile (a repeating pattern) of the interconnection pattern has six I/O pins, one power pin, and one ground pin. It is desirable to provide an interconnect pattern with higher I/O ratio for use with FPGAs.
It is generally desirable to minimize “inductance loops” in a packaged IC. An inductance loop is a current loop that has an undesirably high inductance, which can slow down operation of an IC. Inductance loops can form between ground pins and I/O pins, power pins and I/O pins, and power pins and ground pins. Generally, the closer together pins are, the lower the inductance between them. A conventional approach is to provide a “checkerboard” of I/O, ground, and power pins. However, this is inefficient because one usually does not need so many power pins, and provides a relatively low ratio of I/O pins.
For example, a CLB 102 can include a configurable logic element (“CLE”) 112 that can be programmed to implement user logic plus a single programmable interconnect element 111. A BRAM 103 can include a BRAM logic element (“BRL”) 113 in addition to one or more programmable interconnect elements 111. Typically, the number of interconnect elements included in a tile depends on the height of the tile. In the pictured embodiment, a BRAM tile has the same height as four CLBs, but other numbers (e.g., five) can also be used. A DSP tile 106 can include a DSP logic element (“DSPL”) 114 in addition to an appropriate number of programmable interconnect elements 111. An IOB 104 can include, for example, two instances of an input/output logic element (“IOL”) 115 in addition to one instance of the programmable interconnect element 111. As will be clear to those of skill in the art, the actual I/O pads connected, for example, to the I/O logic element 115 are manufactured using metal layered above the various illustrated logic blocks, and typically are not confined to the area of the I/O logic element 115.
In the pictured embodiment, a columnar area near the center of the die (shown shaded in
Some FPGAs utilizing the architecture illustrated in
Note that
FPGA 100 may be a V
IC 201 is coupled to package 203 via solder bumps 202. Solder bumps 202 may be configured or otherwise laid out using repeated application of an interconnect pattern. More particularly, in an embodiment an asymmetric tile may be used to provide a layout of interconnect locations, as described below in additional detail. By asymmetric tile, it is meant that perimeter of the tile is irregular, though two symmetrical tiles may be used to form the perimeter of the asymmetric tile. In the example below, a 3×3 tile and a 1×1 tile in combination form the asymmetric tile and thus the perimeter of the asymmetric tile. Package 203, which may be made of an organic or inorganic material as is known, is coupled to PCB 205 via BGA 204. BGA 204 may be a fine-pitch BGA. BGA 204 may be laid out in accordance with tiling with a tile, as described herein below in additional detail. PCB 205 may be a line card or daughter card coupled to a backplane, motherboard, or other larger PCB 207 via connector topology 206. Connector topology 206 may be configured using one or more tiles as described below herein in additional detail. Moreover, it should be appreciated that a multi-chip module can be coupled to a PCB using one or more tiles for connector topology. Furthermore, a PCB-to-mezzanine card application may be coupled using a connector topology having one or more tiles.
Though the above description with reference to
For purposes of clarity by way of example and not limitation, these connectivity locations shall be hereinafter referred to as “pins.” Moreover, by way of example and not limitation, a power pin can provide Vcc, internal Vcc (“VCCINT,” also known as Vdd), auxiliary VCC (“VCCAUX,” also known as VA), VCCO) VddIO or other power supply. For purposes of convenient discussion, a power pin will generally be referred to as a “Vcc pin,” regardless of what actual power (e.g., VCCINT, VCCAUX) is provided by the pin.
The tile 300 has no power connectivity location in embodiments where the center connectivity location 301 is a ground connectivity location. This is achieved by “borrowing” power from an adjacent tile in an interconnect pattern made of repeated tiles. More particularly, a “bank” of pins has a particular number of associated I/O pins. I/O pins are often connected to a transmission line in the package/IC having a characteristic impedance of fifty ohms, for example, which is desirable to transmit high-frequency signals (generally, signals greater than 200 MHz). In some conventional ICs, banks have sixty-four I/O pins, in others, such as some FPGAs, the number of I/Os per bank is variable. Embodiments of the invention allow banks to have a number of I/O pins not equal to sixty-four, such as banks having twenty or forty I/O pins, while maintaining a high I/O:power:ground ratio. This provides increased design flexibility, which is especially desirable in configurable ICs, such as FPGAs, and in custom ICs, such as ASICs.
Power pins and ground pins are often connected to low-impedance lines so as to avoid power droop and signal distortion, such as slower rise time or duty cycle distortion. Fortunately, while I/O paths have to support very high data rates, often up to several gigahertz (GBps), power and ground paths, which operate essentially at zero hertz (“DC”), do not. Alternating current (“AC”) shunts that do not conduct DC are used to provide a low-impedance path for high-frequency signals between power and ground pins between tiles. For example, a capacitor having a capacitance between about 0.10 micro-Farads and about 2.2 micro-Farads between a power pin and a ground pin allows the center connectivity location 301 to be either a power pin or a ground pin by providing a low-impedance path from the signal pins 303 to a power pin in a different tile within the I/O bank.
Suitable capacitors are fabricated in package 203 shown in
Connectors other than pins may be laid out in accordance with one or more of tiles 300. Tile 300 is a tile that is capable of tiling a plane area, which may be applied where one tile is offset from another tile for repeated application to tile an area. Notably, there may be boundary conditions for a finite plane, where the interconnect pattern of tile 300 is not maintained or is truncated, as described below in additional detail. Providing a central connectivity location that can be either a ground pin or a power pin provides greater flexibility in filling a plane area with tiles. Similarly, there is greater flexibility in defining the shape of a bank boundary within the plane area. This provides additional advantages, such as a reduced layer count on a system board.
Pins 303 surround pin 301 forming an array 309, which is a portion of tile 300. Array 309, for purposes of clarity by way of example and not limitation, may be thought of as a square or a rectangle. An additional pin, such as a ground pin 302, is part of tile 300 and is located adjacent to, though external to, perimeter array 309. Ground pin 302 may be located at any of eight possible corner locations around the square or rectangular perimeter array of the tile. The tile is then repeated over and over (“stepped”) to define portions of the pinout array.
For example, an alternative location of ground pin 302 is illustratively shown with a dashed box 308 in
Tile 300 when put together with other such tiles 300 may be used to fill a plane to provide a pinout array, or a portion of a pinout array. Tiles are often combined to form a step pattern (see
By maintaining an 8:2 ratio, inductance of signal pins 303 next to central pin 301 and ground pin 302 may be maintained at or below a threshold value, sometimes referred to as a worst-case inductance value. Notably, the percentage of decrease in inductance from a nominal value for an array scales according to pitch of the array. Though there are many more refined equations for determining mutual inductance (“MI”), a first order approximation may be obtained from Equation (1):
MI=L*h^2/(s^2+h^2) (1)
where “s” is the distance between pins, “h” is the distance to a ground plane, and “L” is inductance. For simplicity, “h” may be assumed to be the distance to a ground pin. By using the tile 300, mutual inductance to ground pin 302 and central pin 301 from signal pins is minimized. For example, if all signals in a bank transition to either a logic high or logic low level on the same clock cycle, then such reduction in mutual inductance may be approximately one half that of a traditional FPGA pinout array architecture, which may have signal pins that are several millimeters (i.e., several pitch/grid steps) away from a ground pin.
Keeping signal pins within one pitch/grid distance of the ground pin 302 or the central pin 30 enhances stability. For example, simultaneous switching noise (“SSN”) may be reduced in comparison to a traditional FPGA pinout array architecture. More particularly, distance of signal pins from ground pin 302 and central pin 301 may be controlled with tiling to reduce ground bounce and Vcc bounce due to simultaneous switching events. Simultaneous switching events, and more particularly a subset of SSN, includes simultaneous switching output (“SSO”).
At least three important advantages arise from the tile 300 having a center connectivity location that can be either a ground pin or a power pin. First, a higher ratio of I/O:power:ground pins can be achieved. Similar tiles, in which the center connectivity location is restricted to a power pin, results in more power pins in a bank than may be necessary. In a particular pinout array for an FPGA, a 10% increase in the number of I/O pins was achieved using an embodiment of the invention, compared to a similar pinout array wherein the central pin of a tile similar to
Second, allowing the center connectivity location of a tile to be either a ground pin or a power pin, including a power pin from a different I/O bank, provides greater freedom in defining both the size and the shape of I/O banks in a pinout array. The tiles can be configured so that I/O pins from multiple banks are within a single tile, for example, or that the center connectivity location can be a power pin “borrowing” power from another I/O bank, even from an I/O bank that does not have an associated I/O pin in the tile.
Third, it allows power pins, other than those providing I/O bank power, to be arranged in a central checkerboard pattern with ground pins. This is desirable because it concentrates the low-impedance routes through the package in the center of the package, which is typically below the IC. In other words, the IC “footprint” overlies the checkerboard pattern. Each power pin in the checkerboard pattern is “surrounded” by four ground pins, which lowers the inductance loop by essentially providing four parallel ground return paths. Providing power/ground pins in a checkerboard pattern avoids power droop by reducing loop inductance of power/ground pins.
The versatility provided by the tiles of the pinout array 500 also allow the definition of high-aspect-ratio banks (e.g., banks B14, B16, B15, B13, and B21) along the edges 502, 504, 506, 508 of the pinout array 500. This is highly desirable because it allows the PCB (see
For a high-aspect-ratio I/O bank, two signal layers in the PCB may be sufficient. The signal environment is much more uniform than spreading signals in a single bank into many layers of the PCB. In some conventional applications, the PCB uses six or eight signal layers, such as when I/O banks are irregular or “deep” (extending from near the edge of the pinout array to near a central checkerboard section, like a slice of pie). Often, I/O signal lines are critical, and specially controlling the impedance of I/O signal lines in a reduced number of layers in the PCB provides cost savings.
Tile 514 is another tile in which the center connectivity location is a ground pin, but the eight I/O signal pins are from different banks, in this case, banks zero, four, and eleven. Similarly, tile 516 has I/O signal pins from various banks (banks twelve, fourteen, and sixteen), and the center connectivity location is an I/O bank power pin associated with the same I/O bank (I/O bank sixteen) that at least one of the I/O signal pins in the tile 516 is associated with. Finally, tile 518 has I/O pins from multiple I/O banks (banks twelve and eighteen), and the center connectivity location is an I/O bank power pin that is associated from a different bank (bank fourteen) than any of the I/O signal pins in the tile 518.
With reference to
The noise voltage 602 of the 6:1:1 S
The package switching noise arises from a variety of events occurring in normal operation of a packaged complex IC, as discussed above in reference to
It is generally desirable to keep switching noise as low as possible, and
While the foregoing describes exemplary embodiment(s) in accordance with one or more aspects of the invention, other and further embodiment(s) in accordance with the one or more aspects of the invention may be devised without departing from the scope thereof, which is determined by the claim(s) that follow and equivalents thereof. Claim(s) listing steps do not imply any order of the steps. Trademarks are the property of their respective owners.
Number | Name | Date | Kind |
---|---|---|---|
5691949 | Hively et al. | Nov 1997 | A |
5740069 | Agrawal et al. | Apr 1998 | A |
5817533 | Sen et al. | Oct 1998 | A |
5883525 | Tavana et al. | Mar 1999 | A |
6175158 | Degani et al. | Jan 2001 | B1 |
6198635 | Shenoy et al. | Mar 2001 | B1 |
6396136 | Kalidas et al. | May 2002 | B2 |
6567969 | Agrawal et al. | May 2003 | B1 |
6738279 | Kablanian | May 2004 | B1 |
6762366 | Miller et al. | Jul 2004 | B1 |
6875921 | Conn | Apr 2005 | B1 |
7095107 | Ramakrishnan et al. | Aug 2006 | B2 |
7122751 | Anderson et al. | Oct 2006 | B1 |
7138820 | Goetting et al. | Nov 2006 | B2 |
7233168 | Simkins | Jun 2007 | B1 |
7239173 | Voogel | Jul 2007 | B1 |
7345507 | Young et al. | Mar 2008 | B1 |
7501341 | Von Herzen | Mar 2009 | B1 |
20050077634 | Seaman et al. | Apr 2005 | A1 |
Entry |
---|
U.S. Appl. No. 11/123,526, filed May 5, 2005, Von Herzen. |
Wheeler, Richard, “Switching Noise in VLSI Packages,” pp. 1-28, downloaded on May 4, 2005 from http://www.wheeler.com/technology/vlsipresentation1/index.htm (1 of 2) [Dec. 17, 2001 6:11:28 PM]. |
Wheeler, Richard, “Modeling Simultaneous Switching Noise (SSO) in the X-axis Direction of VLSI Packages and PCB's,” pp. 1-50, downloaded on May 4, 2005 from http://www.wheeler.com/technology/vlsipresentation2/index.htm (1 of 3) [Dec. 17, 2001 6:13:12 PM]. |