1. Field of the Invention
The present invention relates to a hybrid integrated circuit containing an FPGA portion and an ASIC portion. More particularly, this invention relates to an interface between the FPGA and the ASIC portions of a hybrid integrated circuit.
2. The Prior Art
A field programmable gate array (FPGA) may be programmed to execute a wide variety of logic functions, providing designers the ability to design circuits for specific applications. Other advantages of an FPGA are that the design time is short so it can be marketed much quicker and the design is such that can be changed easily. In an FPGA, however, many of the gates may go unused. An application-specific integrated circuit (ASIC), on the other hand, is designed only to perform certain specific tasks, and therefore does not result in wasted gates. However the design and testing phase of an ASIC is quite complex and expensive because an ASIC must be mask-programmed, and therefore the production of an ASIC only makes fiscal sense when the ASIC is to be produced in large quantities.
A hybrid integrated circuit (IC) provides some portion of the advantages of both designs. A hybrid IC includes both an FPGA and an ASIC portion. Of major concern in designing a hybrid IC is providing a suitable interface between the FPGA and ASIC portions of the IC. In order for the IC to perform its tasks properly, the FPGA and ASIC portions must be able to communicate effectively with each other. Conventionally, the interface has been designed to have the ASIC portion communicate with the FPGA portion, as will be described below, through the boundary between the FPGA portion and the ASIC portion using a plurality of connections between the edge of the ASIC portion and the edge of the FPGA portion.
In
Communication between the ASIC portion 12 and the FPGA portion 14 is accomplished by connecting the ASIC portion 12 to the boundary between the FPGA portion 14 and the ASIC portion 12 and the first level of horizontal or vertical routing resources to the boundary between the FPGA portion 14 and the ASIC portion 12. Signals are then sent from the ASIC portion 12 through the boundary between the FPGA portion 14 and the ASIC portion 12 and through the horizontal and vertical routing resources at the first hierarchial level (the routing resources positioned between each logic block 18). The signals then pass to the horizontal and vertical routing resources at the second hierarchial level (the routing resources between each logic block or cluster 20) and then the third hierarchial level (the routing resources between each logic block at this level).
The interfaces described have several drawbacks. First, these interfaces run at relatively slow speeds. This slow speed is exasperated by the relatively large distances between the logic modules and the interface. Second, routing congestion is common at the boundary between the FPGA portion 14 and the ASIC portion 12 in these types of designs. Alleviating this routing congestion using a routing resource requires that a significant amount of space be allocated for the routing resource between the FPGA portion 14 and the ASIC portion 12.
In addition to the routing and speed problems of the prior art interfaces, the fixed pin location and order for signals sent from the ASIC 12 portion to the FPGA 14 portion may cause FPGA place and route difficulties. Also, the asymmetrical number of I/O connections required for each side of the FPGA portion may also cause FPGA place and route difficulties.
Another drawback of these interfaces is that they require that both the FPGA portion 14 and the ASIC 12 portion be hardwired onto the IC 2 during the design phase. This prevents the use of interchangeable modules for the FPGA portion 14 and the ASIC portion 12.
Clearly, an interface between the FPGA and ASIC portions of a hybrid IC that 20 does not suffer from the drawbacks of the prior art is needed.
An interface design for a hybrid IC that utilizes dedicated interface tracks to allow signals to interface distributively with the logic blocks of the FPGA portion providing for faster and more efficient communication between the FPGA and ASIC portions of the hybrid IC.
According to a first embodiment of the present invention, a plurality of dedicated interface tracks are connected directly between the ASIC portion and each individual logic block at the lowest level of the FPGA portion of a hybrid IC. By providing a direct connection from the ASIC portion to individual logic blocks of the FPGA portion, the local routing resources may be bypassed. As a result, there is less congestion in the system.
According to a second aspect of the present invention, the dedicated interface tracks are connected directly between the ASIC portion to logic blocks at any level of the FPGA portion of a hybrid IC. Connection to the lowest level of logic blocks is accomplished using local routing resources. This design has the advantage of bypassing some of the local routing resources, easing congestion and increasing speed, but allowing some local routing resources to complete the connection to the logic blocks at the lowest level of the FPGA portion of the hybrid IC.
Those of ordinary skill in the art will realize that the following description of the present invention is illustrative only and not in any way limiting. Other embodiments of the invention will readily suggest themselves to such skilled persons.
According to a first embodiment of the present invention, a plurality of dedicated interface tracks are connected directly between the ASIC portion and each individual logic block at the lowest level of the FPGA portion of a hybrid IC. By providing a direct connection from the ASIC portion to individual logic blocks of the FPGA portion, the local routing resources may be bypassed. As a result, there is less congestion in the system.
According to a second aspect of the present invention, the dedicated interface tracks are connected directly between the ASIC portion to logic blocks at any level of the FPGA portion of a hybrid IC. This design has the advantage of bypassing some of the local routing resources, easing congestion and increasing speed, but allowing some local routing resources to complete the connection to the logic blocks at the lowest level of the FPGA portion of the hybrid IC.
One of ordinary skill in the art will recognize that the FPGA portion may have a hierarchial design made up of any number of levels, each level containing one or more blocks, each block possibly containing another level of blocks or, at the lowest level of the design, a logic module, configurable function generator, etc. Each level in the hierarchial design may then also contain local routing resources, allowing communication between each block but also allowing communication to a dedicated interface track if the designer so wishes.
A hierarchial FPGA architecture is depicted in
In
Signals from the FPGA portion 14 to the ASIC portion 12 are handled in the reverse direction. One interesting result of the design of the interface buffers depicted in
The FPGA-ASIC routing channel 28 depicted in
Connecting the dedicated interface tracks directly to each block 44 at the lowest level of the FPGA portion 14 results in less congestion and, therefore, higher speed communications through the integrated circuit. However, connection directly to each block 44 at the lowest level of the FPGA portion 14 requires a large number of direct interface tracks 24. Therefore, it may be desirable to connect a portion or all of the dedicated interface tracks 24 to blocks at a higher level of the hierarchial design and allow local routing resources to complete the connection. This will reduce the number of dedicated interface tracks 24 required on the IC. While this will also reduce the speed of the communications, it is still faster than the prior art interfaces and it avoids the routing congestion at the FPGA-ASIC boundary that occurs in the prior art.
In an alternative embodiment illustrated in HG. 7, a JTAG or other diagnostic 52 feature is depicted having a plurality of JTAG or diagnostic buffers 54. This feature is useful in testing the hybrid IC 2.
In another alternative embodiment illustrated in
In
While embodiments and applications of this invention have been shown and described, it would be apparent to those skilled in the art that many more modifications than mentioned above are possible without departing from the inventive concepts herein. The invention, therefore, is not to be restricted except in the spirit of the appended claims.
This application is a continuation of U.S. patent application Ser. No. 09/069,054, now issued as U.S. Pat. No. 7,389,487, filed Apr. 28, 1998, which is hereby incorporated by reference as if set forth herein.
Number | Name | Date | Kind |
---|---|---|---|
3473160 | Wahlstrom | Oct 1969 | A |
4433331 | Kollaritsch | Feb 1984 | A |
4642487 | Carter | Feb 1987 | A |
4700088 | Tubbs | Oct 1987 | A |
4758745 | Elgamal et al. | Jul 1988 | A |
4870302 | Freeman | Sep 1989 | A |
4873459 | El Gamal et al. | Oct 1989 | A |
4930097 | Ledenbach et al. | May 1990 | A |
4969121 | Chan et al. | Nov 1990 | A |
4999698 | Okuno et al. | Mar 1991 | A |
5015885 | El Gamal et al. | May 1991 | A |
5073729 | Greene et al. | Dec 1991 | A |
5083083 | El-Ayat et al. | Jan 1992 | A |
5107146 | El-Ayat | Apr 1992 | A |
5137393 | Fuhr et al. | Aug 1992 | A |
5172014 | El Ayat et al. | Dec 1992 | A |
5187392 | Allen | Feb 1993 | A |
5187393 | El Gamal et al. | Feb 1993 | A |
5191241 | McCollum et al. | Mar 1993 | A |
5198705 | Galbraith et al. | Mar 1993 | A |
5208491 | Ebeling et al. | May 1993 | A |
5224056 | Chene et al. | Jun 1993 | A |
5304860 | Ashby et al. | Apr 1994 | A |
5313119 | Cooke et al. | May 1994 | A |
5317698 | Chan | May 1994 | A |
5323069 | Smith, Jr. | Jun 1994 | A |
5338983 | Agarwala | Aug 1994 | A |
5347181 | Ashby et al. | Sep 1994 | A |
5367208 | El Gamal et al. | Nov 1994 | A |
5400262 | Mohsen | Mar 1995 | A |
5424589 | Dobbelaere et al. | Jun 1995 | A |
5440453 | Cooke et al. | Aug 1995 | A |
5451887 | El-Avat et al. | Sep 1995 | A |
5452231 | Butts et al. | Sep 1995 | A |
5457410 | Ting | Oct 1995 | A |
5469003 | Kean | Nov 1995 | A |
5504354 | Mohsen | Apr 1996 | A |
5526278 | Powell | Jun 1996 | A |
5581199 | Pierce et al. | Dec 1996 | A |
5594367 | Trimberger et al. | Jan 1997 | A |
5600265 | El Gamal et al. | Feb 1997 | A |
5654564 | Mohsen | Aug 1997 | A |
5671432 | Bertolet et al. | Sep 1997 | A |
5682107 | Tavana et al. | Oct 1997 | A |
5701091 | Kean | Dec 1997 | A |
5742181 | Rush | Apr 1998 | A |
5744979 | Goetting | Apr 1998 | A |
5744980 | McGowan et al. | Apr 1998 | A |
5760604 | Pierce et al. | Jun 1998 | A |
5761099 | Pedersen | Jun 1998 | A |
5801546 | Pierce et al. | Sep 1998 | A |
5808351 | Nathan et al. | Sep 1998 | A |
5815003 | Pedersen | Sep 1998 | A |
5815004 | Trimberger et al. | Sep 1998 | A |
5821776 | McGowan | Oct 1998 | A |
5825200 | Kolze | Oct 1998 | A |
5825201 | Kolze | Oct 1998 | A |
5825202 | Tavana et al. | Oct 1998 | A |
5825662 | Trimberger | Oct 1998 | A |
5828230 | Young | Oct 1998 | A |
5828538 | Apland et al. | Oct 1998 | A |
5831448 | Kean | Nov 1998 | A |
5835751 | Chen et al. | Nov 1998 | A |
5835998 | Pedersen | Nov 1998 | A |
5838167 | Erickson et al. | Nov 1998 | A |
5838584 | Kazarian | Nov 1998 | A |
5838954 | Trimberger | Nov 1998 | A |
5847441 | Cutter et al. | Dec 1998 | A |
5847577 | Trimberger | Dec 1998 | A |
5848005 | Cliff et al. | Dec 1998 | A |
5850151 | Cliff et al. | Dec 1998 | A |
5850152 | Cliff et al. | Dec 1998 | A |
5850564 | Ting et al. | Dec 1998 | A |
5859542 | Pedersen | Jan 1999 | A |
5859543 | Kolze | Jan 1999 | A |
5859544 | Norman | Jan 1999 | A |
5861761 | Kean | Jan 1999 | A |
5869979 | Bocchino | Feb 1999 | A |
5869981 | Agrawal et al. | Feb 1999 | A |
5870586 | Baxter | Feb 1999 | A |
5874834 | New | Feb 1999 | A |
5878051 | Sharma et al. | Mar 1999 | A |
5880492 | Duong et al. | Mar 1999 | A |
5880597 | Lee | Mar 1999 | A |
5880598 | Duong | Mar 1999 | A |
5883526 | Reddy et al. | Mar 1999 | A |
5883850 | Lee et al. | Mar 1999 | A |
5894565 | Furtek et al. | Apr 1999 | A |
5959466 | McGowan | Sep 1999 | A |
5991908 | Baxter et al. | Nov 1999 | A |
6150837 | Beal et al. | Nov 2000 | A |
6334207 | Joly et al. | Dec 2001 | B1 |
6791353 | Beal et al. | Sep 2004 | B1 |
6943583 | Andrews et al. | Sep 2005 | B1 |
7389487 | Chan et al. | Jun 2008 | B1 |
Number | Date | Country |
---|---|---|
0 415 542 | Jul 1990 | EP |
0 415 542 | Jul 1990 | EP |
0 746 104 | Apr 1996 | EP |
0 748 053 | Dec 1996 | EP |
0 889 593 | Jan 1999 | EP |
1 080 531 | Mar 2005 | EP |
06-275718 | Sep 1994 | JP |
9312638 | Jun 1993 | WO |
9528769 | Oct 1995 | WO |
9635261 | Nov 1996 | WO |
9635262 | Nov 1996 | WO |
9637047 | Nov 1996 | WO |
9813938 | Nov 1999 | WO |
9956394 | Nov 1999 | WO |
Entry |
---|
“ACT™ 1 Field Programmable Gate Arrays for ACT 1010 and ACT1020”, Actel Corporation, 1990, pp. 1-26, Mountain View, CA, USA. |
“A10M20A Mask Programmed Gate Array” Preliminary Report, Actel Corporation, Jan. 1992, pp. 1-195 to 1-223, Mountain View, CA, USA. |
“Array Architecture for ATG with 100% Fault Coverage”, Technical Paper, Actel Corporation, Jan. 1992, pp. 1-225 to 1-235, Mountain View, CA, USA. |
Klostermeyer H, “Die Schmelzkaseherstellung, Passage”, Schmelzkaseherstellung, 1989, pp. 98-99, XP 002042364, JOHA Leitfaden, Germany (Category A document, relevant to claim 1 and 21). |
A. Aggarwal et al., “Routing Architectures for Herarchical Field Programmable Gate Arrays,” IEEE International Conference on Computer Design: VLSI in Computers and Processors, pp. 475-478. |
M. Karjalainen et al., “Block Diagram Compilation and Graphical Editing of DSP Algorithms in the QuickSig System,” IEEE Circuits and Systems, pp. 1057-1060. |
L.R. Ashby, “Interface Techniques for Embedding Custom Mega Cells in a Gate Array,” IEEE Custom Integrated Circuits Conference, pp. 23.5.1-23.5.4. |
A. El Gamal, “An Architecture for Electrically Configurable Gate Arrays,” IEEE Journal of Solid-State Circuits, pp. 394-398. |
M. Agarwala, “An Architecture for a DSP Field-Programmable Gate Array,” IEEE Transactions on Very Large Scale Integration (VLSI) Systems, pp. 136-141. |
Number | Date | Country | |
---|---|---|---|
20080204074 A1 | Aug 2008 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09069054 | Apr 1998 | US |
Child | 12114143 | US |