Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS6820248 B1
Publication typeGrant
Application numberUS 10/075,178
Publication date16 Nov 2004
Filing date14 Feb 2002
Priority date14 Feb 2002
Fee statusPaid
Publication number075178, 10075178, US 6820248 B1, US 6820248B1, US-B1-6820248, US6820248 B1, US6820248B1
InventorsAndy H. Gan
Original AssigneeXilinx, Inc.
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Method and apparatus for routing interconnects to devices with dissimilar pitches
US 6820248 B1
Abstract
Method for configuring a routing program for routing connections between an integrated circuit device and an embedded core is described. More particularly, horizontal and a vertical pitch are obtained for the integrated circuit device and the embedded core. A horizontal or a vertical pitch is selected from the embedded core to define pitch for the integrated circuit device to accommodate difference in pitch between the two. Additionally, an integrated circuit having interconnect layers using this compromise pitch are described.
Images(5)
Previous page
Next page
Claims(28)
What is claimed is:
1. A method for configuring a routing program for routing connections between an integrated circuit device and an embedded core, comprising:
obtaining a first horizontal pitch and a first vertical pitch for one of the integrated circuit device and the embedded core;
obtaining a second horizontal pitch and a second vertical pitch for the other of the integrated circuit device and the embedded core, the first vertical pitch and the second vertical pitch being different;
inputting a first connection layer input to the routing program, the first connection layer input including the first vertical pitch and a horizontal direction; and
inputting a second connection layer input to the routing program, the second connection layer input including the second horizontal pitch and a vertical direction.
2. The method of claim 1 wherein the one of the integrated circuit device and the embedded core is a programmable logic device.
3. The method of claim 2 wherein the other of the integrated circuit device and the embedded core is a microprocessor core.
4. The method of claim 3 wherein the programmable logic device is a field programmable gate array.
5. The method of claim 4 wherein the field programmable gate array and the microprocessor core are formed as separate integrated circuits which are interconnected, the field programmable gate array having a first plurality of metal layers, the microprocessor core having a second plurality of metal layers, at least one layer of the first plurality of metal layers having the first horizontal pitch and the first vertical pitch, and at least one layer of the second plurality of metal layers having the second horizontal pitch and the second vertical pitch.
6. A method for configuring a routing program for routing to an integrated circuit device having an embedded core, comprising:
providing a first horizontal pitch and a first vertical pitch for one of the integrated circuit device and the embedded core;
providing a second horizontal pitch and a second vertical pitch for the other of the integrated circuit device and the embedded core, the first horizontal pitch and the second horizontal pitch being different;
inputting a first connection layer input to the routing program, the first connection layer input including the first horizontal pitch and a vertical direction; and
inputting a second connection layer input to the routing program, the second connection layer input including the second vertical pitch and a horizontal direction.
7. The method of claim 6 wherein the one of the integrated circuit device and the embedded core is a programmable logic device.
8. The method of claim 7 wherein the other of the integrated circuit device and the embedded core is a microprocessor core.
9. The method of claim 8 wherein the programmable logic device is a field programmable gate array.
10. The method of claim 9 wherein the field programmable gate array and the microprocessor core are formed as separate integrated circuits which are interconnected, the field programmable gate array having a first plurality of metal layers, the microprocessor core having a second plurality of metal layers, at least one layer of the first plurality of metal layers having the first horizontal pitch and the first vertical pitch, and at least one layer of the second plurality of metal layers having the second horizontal pitch and the second vertical pitch.
11. An integrated circuit device, comprising:
a first device coupled to a second device;
the first device comprising a first horizontal pitch and a first vertical pitch;
the second device comprising a second horizontal pitch and a second vertical pitch; and
at least one interconnect layer for coupling the first device and the second device, the interconnect layer comprising a set of pitches selected from:
(i) the first vertical pitch and the second horizontal pitch; and
(ii) the first horizontal pitch and the second vertical pitch.
12. The integrated circuit device of claim 11 further comprising a plurality of logic blocks for interconnecting the first device and the second device.
13. The integrated circuit of claim 12 wherein the first device is a programmable logic device.
14. The integrated circuit of claim 13 wherein the programmable logic device is a field programmable gate array.
15. The integrated circuit of claim 13 wherein the second device is a microprocessor core.
16. The integrated circuit of claim 15 wherein the microprocessor core is embedded in the programmable logic device.
17. The integrated circuit of claim 16 wherein the programmable logic device comprises more metal interconnect layers than the microprocessor core.
18. The integrated circuit of claim 11 wherein the second device comprises a plurality of pins for interconnection thereto.
19. The integrated circuit of claim 11 wherein the interconnect layer was routed using a routing program having as inputs the set of pitches.
20. The integrated circuit of claim 19 wherein the set of pitches is divided for input to the routing program, wherein one pitch in the set of pitches is for one metal layer and the other pitch in the set of pitches is for another metal layer.
21. A system, comprising:
an external memory circuit having one or more configuration data output terminals; and
a programmable logic device (PLD), the PLD comprising:
a programmable logic portion having a first vertical pitch and a first horizontal pitch;
an internal configuration memory having one or more configuration data input terminals coupled to the configuration data output terminals of the external memory circuit, and further having output terminals coupled to the programmable logic portion of the PLD;
an embedded core having a second vertical pitch and a second horizontal pitch, wherein the first vertical pitch and the second vertical pitch are different; and
a first interconnect layer coupled between the programmable logic portion of the PLD and the embedded core, the first interconnect layer having a set of pitches selected from:
(i) the first vertical pitch and the second horizontal pitch; and
(ii) the first horizontal pitch and the second vertical pitch.
22. The system of claim 21, wherein the external memory circuit comprises one of a group of integrated circuits comprising: an EEPROM, an EPROM, and a PROM.
23. The system of claim 21, wherein the programmable logic portion of the PLD is a field programmable gate array (FPGA).
24. The system of claim 21, wherein the embedded core is a microprocessor.
25. The system of claim 21, wherein the interconnect layer was routed using a routing program having as an input the set of pitches.
26. The system of claim 25, wherein the PLD comprises a second interconnect layer coupled between the programmable logic portion of the PLD and the embedded core.
27. The system of claim 26, wherein the set of pitches is divided for input to the routing program, wherein one pitch in the set of pitches is used for the first interconnect layer and the other pitch in the set of pitches is used for the second interconnect layer.
28. The system of claim 21, wherein the first horizontal pitch and the second horizontal pitch are also different.
Description
FIELD OF THE INVENTION

The present invention relates generally to routing for devices with different pitch, and more particularly to routing of a core embedded in a programmable logic device where the core comprises a different pitch than the programmable logic device.

BACKGROUND OF THE INVENTION

Programmable logic devices exist as a well-known type of integrated circuit that may be programmed by a user to perform specified logic functions. There are different types of programmable logic devices, such as programmable logic arrays (PLAs) and complex programmable logic devices (CPLDs). One type of programmable logic devices, called a field programmable gate array (FPGA), is very popular because of a superior combination of capacity, flexibility and cost.

An FPGA typically includes an array of configurable logic blocks (CLBs) surrounded by a ring of programmable input/output blocks (IOBs). The CLBs and IOBs are interconnected by a programmable interconnect structure. The CLBs, IOBs, and interconnect structure are typically programmed by loading a stream of configuration data (bitstream) into internal configuration memory cells that define how the CLBs, IOBs, and interconnect structure are configured. The configuration bitstream may be read from an external memory, conventionally an external integrated circuit memory EEPROM, EPROM, PROM, and the like, though other types of memory may be used. The collective states of the individual memory cells then determine the function of the FPGA.

A recent development in FPGA technology involves providing FPGAs comprising a plurality of what are known as “standard cells.” These “standard cells” are provided inside an FPGA as functional blocks and have a set height. Notably, the term “standard cell” is not to imply that any standard, de facto or otherwise, exists, as standard cell size may vary from company to company. So, for example, logic blocks, such as a flip-flop, a NAND gate, and an inverter, among other well-known logic circuits, each will lay out with a same height, but may have different lengths. This height is conventionally dependent on pitch of a company's integrated circuit process for one or more interconnect or metal layers. A standard cell may be made up of several logic blocks, each with a same height, but possibly with different lengths. Thus, each standard cell will have a same height but may have varying lengths. Standard cells may be assembled for providing interconnectivity logic or “glue logic.” Thus, an FPGA may be connected to an embedded device to carry out complex tasks.

However, an embedded device or core may not have the same layout pitch as an FPGA. Moreover, FPGA exclusive routing over an embedded core further complicates routing to an embedded core. A placement and routing database used by a routing program creates routing for connecting an FPGA to an embedded core. However, non-equivalent pitch between such an FPGA and embedded core causes design rule violations. These design rule violations heretofore were addressed by manual re-routing. However, checking a design for such violations and manually re-routing can delay production by one or more months depending on complexity and number of connections between the FPGA and embedded core.

Accordingly, it would be desirable and useful to provide a layout rules for implementation in a placement and routing database that would reduce design rule violations owing to differences in pitch between an FPGA and an embedded core.

SUMMARY OF THE INVENTION

An aspect of the present invention is a method for configuring a routing program for routing connections between an integrated circuit device and an embedded core. More particularly, a first horizontal pitch and a first vertical pitch is obtained for one of the integrated circuit device and the embedded core, and a second horizontal pitch and a second vertical pitch is obtained for the other of the integrated circuit device and the embedded core, where the first vertical pitch and the second vertical pitch are not equal. A first connection layer input, including, but not limited to, the first vertical pitch and a horizontal direction, is provided to the routing program, and a second connection layer input, including, but not limited to, the second horizontal pitch and a vertical direction, is provided to the routing program.

An aspect of the present invention is an integrated circuit device comprising a first device coupled to a second device. The first device comprises a first horizontal pitch and a first vertical pitch. The second device comprises a second horizontal pitch and a second vertical pitch. At least one interconnect layer is for coupling the first device and the second device. The interconnect layer comprises a set of pitches selected from: (i) the first vertical pitch and the second horizontal pitch, and (ii) the first horizontal pitch and the second vertical pitch.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above recited features, advantages and objects of the present invention are attained and can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to the embodiments thereof which are illustrated in the appended drawings.

It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the present invention may admit to other equally effective embodiments.

FIG. 1 is a block diagram of an exemplary embodiment of an integrated circuit comprising an FPGA, standard cells for glue logic and a microprocessor core in accordance with one or more aspects of the present invention.

FIG. 2 is a block diagram of an exemplary embodiment of integrated circuit device cores are formed on a semiconductor wafer of the prior art.

FIGS. 3A and 3B are line diagrams of respective exemplary portions of interconnect layers from the FPGA and the microprocessor core of FIG. 1.

FIG. 4 is a cross-sectional diagram of exemplary portions of the FPGA and the microprocessor core of FIG. 1.

FIG. 5 is a line diagram of an exemplary portion of an interconnect layer from the FPGA of FIG. 1 in accordance with an aspect of the present invention.

FIG. 6 is a cross-sectional diagram of an exemplary portion of the FPGA and the microprocessor core of FIG. 1.

FIG. 7 is a flow diagram of an exemplary embodiment of a process in accordance with one or more aspects of the present invention

DETAILED DESCRIPTION OF THE DRAWINGS

In the following description, numerous specific details are set forth to provide a more thorough understanding of the present invention. However, it will be apparent to one of skill in the art that the present invention may be practiced without one or more of these specific details. In other instances, well-known features have not been described in order to avoid obscuring the present invention.

Referring to FIG. 1, there is shown a block diagram of an exemplary embodiment of an integrated circuit 100 comprising an FPGA 10 and a microprocessor core 20 in accordance with one or more aspects of the present invention. Over FPGA 10 and microprocessor core 20 is grid 14. Grid 14 is shown to indicated that a plurality of metal interconnect lines are used for connecting FPGA 10 circuitry to microprocessor core 20 circuitry. As mentioned above, standard cells 19 may be used to provide glue logic to connect FPGA circuitry 10 and microprocessor core 20 circuitry. Vias or contacts 16 are formed to provide interconnection to desired locations of such circuitry and grid 14. Notably, grid 14 may comprise a plurality of interconnect layers, as described below in more detail.

Microprocessor core 20 comprises a plurality of pins 28. Because pins may be longer than contact pads as indicated by vias 16, there is more longitudinal variability for locating vias 16 to contact such pins 28. Though pins 28 are shown as having a longitudinal or horizontal orientation, they may have a latitudinal or vertical orientation or a combination of both. However, for purposes of clarity of explanation, a horizontal orientation is described.

In an embedded process, a plurality of microprocessor cores 20 is formed on a wafer 25, as shown in the block diagram of FIG. 2. Accordingly, there may be a region 15 between a microprocessor core 20 and an FPGA 10, as shown in FIG. 1, as FPGA 10 may be formed with a different process flow than microprocessor core 20. Region 15 may comprise standard cells 19 formed of one or more logic blocks 18.

FPGA 10 is built proximal to microprocessor core 20 on a same wafer 25 or other substrate member upon which microprocessor core 20 is located. However, owing to differences in processes, microprocessor core 20 may have a different pitch for one or more of its interconnect layers than that of FPGA 10. So, for example, suppose microprocessor core 20 was designed for a 0.13 micron process technology and laid out for a 0.57 micron horizontal and vertical pitch for its interconnect layers. And, suppose for example that FPGA 10 was designed for a 0.18 micron process technology and laid out for a 0.66 micron horizontal pitch and a 0.60 micron vertical pitch. Accordingly, automatic routing from microprocessor core 20 to FPGA 10 would be impracticable owing to design rule violations. To reduce such design rule violations with automatic routing, a neutral or compromise pitch set is employed.

Continuing the above example, reference is made to FIGS. 3A and 3B, where shown are line diagrams of respective exemplary portions of 30 and 31 of interconnect layers from FPGA 10 and microprocessor core 20, respectively, of FIG. 1. Grid portion 30 comprises vertical conductive lines 11 and horizontal conductive lines 12. Spacing between vertical conductive lines 11 is horizontal pitch H1, and spacing between horizontal conductive lines 12 is vertical pitch V1. Grid portion 31 comprises vertical conductive lines 21 and horizontal conductive lines 22. Spacing between vertical conductive lines 21 is horizontal pitch H2, and spacing between horizontal conductive lines 22 is vertical pitch V2. Continuing the above example, H1 and V1 are 0.66 microns and 0.60 microns, respectively, and H2 and V2 are each 0.57 microns.

Referring to FIG. 4, there is shown a cross-sectional diagram of exemplary portions of FPGA 10 and microprocessor core 20 of FIG. 1. FPGA 10 is shown with five interconnect layers 41, 42, 43, 44 and 45, though fewer or more interconnect layers may be used. Microprocessor core 20 is shown with three interconnect layers 51, 52 and 53, though fewer or more interconnect layers may be used. Region 15 may comprise standard cells or a filler material, such as a dielectric, or a combination thereof.

Vias 16 are shown connecting pins 28 to conductive lines 11 and 12. Notably, pins 28 are conventionally connected to at least one of lines 21 and 22, though not shown here for purposes of clarity. Moreover, spacing or vertical pitch of pins 28 is V2, as shown in FIG. 1.

As shown, a compromise pitch is used for interconnect layers 42 and 44, namely, V2, which is the vertical pitch used for microprocessor core 20 conductive lines 22 and pins 28. However, interconnect layers 41, 43 and 45 use a horizontal pitch H1 from FPGA 10 layout. In this manner, interconnect layers 42 and 44 are on vertical pitch V2 with pins 28 for connection thereto. This facilitates connecting to pins 28 without off-line line routing, namely, routing in between conductive lines, and thus reduces likelihood of design rule spacing violations. Moreover, if pins 28 form a bus, multiple vias 16 may be used to connect to pins 28 to provide bus connectivity.

Notably, FPGA 10 retains horizontal pitch H1 for layers 41, 43 and 45. This facilitates not violating design rules for FPGA 10. Moreover, as conductive lines of interconnect layers 41, 43 and 45 are not parallel with conductive lines of interconnect layers 42 and 45, vias 16 may couple conductive lines 11 and 12 without violating design rules.

Referring to FIG. 5, there is shown a line diagram of an exemplary portion 50 of an interconnect layer from FPGA 10 in accordance with an aspect of the present invention. Conductive lines 12 have a vertical pitch of V2, and conductive lines 11 have a horizontal pitch of H1. However, depending on orientation of pins 28 of FIG. 1, H1 may need to be substituted for H2. Thus, the present invention may be used to provide a pitch set (V1, H2) for FPGA 10. Moreover, if both vertically and horizontally oriented pins are present, then a plurality of interconnect layers of one pitch set (V1, H2) are used for the vertically oriented pins, and another plurality of interconnect layers of another pitch set (V2, H1) are used for the horizontally oriented pins.

Notably, substitution of either V1 or H1 with V2 or H2 for FPGA 10 layout and routing is used for interconnect layers, namely, layers for interconnecting microprocessor core 20 to FPGA 10. Though these interconnect layers may be used for FPGA location to FPGA location connectivity, other layers not used for interconnecting FPGA 10 to microprocessor core 20 may be present.

Referring to FIG. 6, there is shown a cross-sectional diagram of an exemplary portion of FPGA 10 and microprocessor core 20 in accordance with one or more aspects of the present invention. Metal layers 46, 47 and 48 are shown above interconnect layer 45. Metal layers 46, 47 and 48 comprise pitches H1 and V1. Use of FPGA 10 native pitches for non-interconnect layers to microprocessor core 20 facilitates automatic routing without design rule spacing violation.

Input to a conventional automatic routing program is done for each layer. With renewed reference to FIG. 5, inputs for an automatic routing program for each interconnect layer shown for FPGA 10 are set forth in Table I.

TABLE I
Layer Ref.
No. Pitch Direction
41 H1 Vertical
42 V2 Horizontal
43 H1 Vertical
44 V2 Horizontal
45 H1 Vertical

Referring to FIG. 7, there is shown a flow diagram of an exemplary embodiment of a process 70 in accordance with one or more aspects of the present invention. At step 71, pitch from a first device is obtained or determined. At step 72, pitch from a second device is obtained. At step 73, pitch from the first device and pitch from the second device are provided to a database accessible by a routing program. And, at step 74, the routing program is run using the pitch from the first device and the second device.

Though exemplary pitches were described above, it should be understood that the present invention is not so limited. Conventionally, horizontal and vertical pitches vary depending at least in part on lithography. However, it should be appreciated that the present invention scales with lithography, and thus the present invention may be employed in semiconductor processes for embedding a core device into another device where both devices are designed to be manufactured using submicron lithographic processes.

While foregoing is directed to the preferred embodiment of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow. For example, though the present invention is described in terms of an FPGA and embedded processor core, it should be understood that constructs other than an FPGA and an embedded processor core may be used, including, but not limited to, combinations formed from at least two of a programmable logic device, a memory, an Application Specific Integrated Circuit, an Application Specific Standard Product, a Digital Signal Processor, a microprocessor, a microcontroller, and the like.

All trademarks are the respective property of their owners.

Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US475898528 Mar 198619 Jul 1988Xilinx, Inc.Microprocessor oriented configurable logic element
US48556697 Oct 19878 Aug 1989Xilinx, Inc.System for scan testing of logic circuit networks
US50724184 May 198910 Dec 1991Texas Instruments IncorporatedSeries maxium/minimum function computing devices, systems and methods
US514262513 Jan 198925 Aug 1992Minolta Camera Kabushiki KaishaOne-chip microcomputer including a programmable logic array for interrupt control
US5274570 *16 Apr 199328 Dec 1993Mazda Motor CorporationIntegrated circuit having metal substrate
US531111427 Oct 199210 May 1994Seeq Technology, IncorporatedApparatus and method for full-duplex ethernet communications
US533926210 Jul 199216 Aug 1994Lsi Logic CorporationMethod and apparatus for interim, in-situ testing of an electronic system with an inchoate ASIC
US534718129 Apr 199213 Sep 1994Motorola, Inc.Interface control logic for embedding a microprocessor in a gate array
US536137311 Dec 19921 Nov 1994Gilson Kent LIntegrated circuit computing device comprising a dynamically configurable gate array having a microprocessor and reconfigurable instruction execution means and method therefor
US54574103 Aug 199310 Oct 1995Btr, Inc.Architecture and interconnect scheme for programmable logic circuits
US54732673 Feb 19955 Dec 1995Sgs-Thomson Microelectronics LimitedProgrammable logic device with memory that can store routing data of logic data
US550094317 May 199519 Mar 1996Motorola, Inc.Data processor with rename buffer and FIFO buffer for in-order instruction completion
US550473815 Apr 19942 Apr 1996Seeq Technology Inc.Apparatus and method for full-duplex ethernet communications
US553760111 Jul 199416 Jul 1996Hitachi, Ltd.Programmable digital signal processor for performing a plurality of signal processings
US554364029 Sep 19956 Aug 1996National Semiconductor CorporationLogical three dimensional interconnections between integrated circuit chips using a two dimensional multi-chip module
US555078218 May 199427 Aug 1996Altera CorporationProgrammable logic array integrated circuits
US55527227 Jun 19953 Sep 1996Xilinx, Inc.Mask registor for a configurable cellular array
US557493012 Aug 199412 Nov 1996University Of HawaiiComputer system and method using functional memory
US557494215 Feb 199612 Nov 1996Intel CorporationHybrid execution unit for complex microprocessor
US558174517 Dec 19933 Dec 1996Fujitsu LimitedData processing device
US560084527 Jul 19944 Feb 1997Metalithic Systems IncorporatedIntegrated circuit computing device comprising a dynamically configurable gate array having a microprocessor and reconfigurable instruction execution means and method therefor
US56529042 Jun 199529 Jul 1997Xilinx, Inc.Non-reconfigurable microprocessor-emulated FPGA
US567135513 Sep 199623 Sep 1997Predacomm, Inc.Reconfigurable network interface apparatus and method
US57059385 Sep 19956 Jan 1998Xilinx, Inc.Programmable switch for FPGA input/output signals
US573225020 Jan 199724 Mar 1998Intel CorporationComputer system
US57376315 Apr 19957 Apr 1998Xilinx IncReprogrammable instruction set accelerator
US574040427 Sep 199314 Apr 1998Hitachi America LimitedDigital signal processor with on-chip select decoder and wait state generator
US574217929 Dec 199521 Apr 1998Dyna Logic CorporationHigh speed programmable logic architecture
US574218010 Feb 199521 Apr 1998Massachusetts Institute Of TechnologyDynamically programmable gate array with multiple contexts
US57489797 Jun 19955 May 1998Xilinx IncReprogrammable instruction set accelerator using a plurality of programmable execution units and an instruction page table
US57520357 Jun 199512 May 1998Xilinx, Inc.Method for compiling and executing programs for reprogrammable instruction set accelerator
US57606077 Jul 19972 Jun 1998Xilinx, Inc.System comprising field programmable gate array and intelligent memory
US58095177 Jun 199515 Sep 1998Canon Kabushiki KaishaIn an information processing apparatus
US583540510 Apr 199710 Nov 1998Lattice Semiconductor CorporationApplication specific modules in a programmable logic device
US58748344 Mar 199723 Feb 1999Xilinx, Inc.Field programmable gate array with distributed gate-array functionality
US58897883 Feb 199730 Mar 1999Motorola, Inc.Wrapper cell architecture for path delay testing of embedded core microprocessors and method of operation
US589296129 Aug 19976 Apr 1999Xilinx, Inc.Field programmable gate array having programming instructions in the configuration bitstream
US591461626 Feb 199722 Jun 1999Xilinx, Inc.FPGA repeatable interconnect structure with hierarchical interconnect lines
US591490214 Jul 199822 Jun 1999Tanisys Technology, Inc.Synchronous memory tester
US59330233 Sep 19963 Aug 1999Xilinx, Inc.FPGA architecture having RAM blocks with programmable word length and width and dedicated address and data lines
US597025427 Jun 199719 Oct 1999Cooke; Laurence H.Integrated processor and programmable data path chip for reconfigurable computing
US601140713 Jun 19974 Jan 2000Xilinx, Inc.Field programmable gate array with dedicated computer bus interface and method for configuring both
US602075526 Sep 19971 Feb 2000Lucent Technologies Inc.Hybrid programmable gate arrays
US60264814 Nov 199715 Feb 2000Xilinx, Inc.Microprocessor with distributed registers accessible by programmable logic device
US609609124 Feb 19981 Aug 2000Advanced Micro Devices, Inc.Dynamically reconfigurable logic networks interconnected by fall-through FIFOs for flexible pipeline processing in a system-on-a-chip
US61540515 Nov 199828 Nov 2000Vantis CorporationTileable and compact layout for super variable grain blocks within FPGA device
US616316626 May 199919 Dec 2000Altera CorporationProgrammable logic device with selectable schmitt-triggered and threshold-triggered buffers
US617299012 Nov 19979 Jan 2001Xaqti CorporationMedia access control micro-RISC stream processor and method for implementing the same
US617854130 Mar 199823 Jan 2001Lsi Logic CorporationPLD/ASIC hybrid integrated circuit
US618116321 Jan 199930 Jan 2001Vantis CorporationFPGA integrated circuit having embedded SRAM memory blocks and interconnect channel for broadcasting address and control signals
US621169725 May 19993 Apr 2001ActelIntegrated circuit that includes a field-programmable gate array and a hard gate array having the same underlying structure
US62429457 Jun 20005 Jun 2001Xilinx, Inc.Field programmable gate array with mask programmable I/O drivers
US627245116 Jul 19997 Aug 2001Atmel CorporationSoftware tool to allow field programmable system level devices
US62790455 Oct 199821 Aug 2001Kawasaki Steel CorporationMultimedia interface having a multimedia processor and a field programmable gate array
US628262729 Jun 199828 Aug 2001Chameleon Systems, Inc.Integrated processor and programmable data path chip for reconfigurable computing
US6301696 *30 Mar 19999 Oct 2001Actel CorporationFinal design method of a programmable logic device that is based on an initial design that consists of a partial underlying physical template
US63432073 Nov 199829 Jan 2002Harris CorporationField programmable radio frequency communications equipment including a configurable if circuit, and method therefor
US635333110 Jul 20005 Mar 2002Xilinx, Inc.Complex programmable logic device with lookup table
US635698710 Mar 199912 Mar 2002Atmel CorporationMicroprocessing device having programmable wait states
US63895586 Jul 200014 May 2002Altera CorporationEmbedded logic analyzer for a programmable logic device
US643473516 Dec 199913 Aug 2002Lsi Logic CorporationMethod for programming an FPGA and implementing an FPGA interconnect
US646017221 Jun 20001 Oct 2002Semiconductors Investigacion Diseno, S.A. (Sidsa)Microprocessor based mixed signal field programmable integrated device and prototyping methodology
US646700914 Oct 199815 Oct 2002Triscend CorporationConfigurable processor system unit
US648334225 May 200119 Nov 2002Lattice Semiconductor CorporationMulti-master multi-slave system bus in a field programmable gate array (FPGA)
US650794211 Jul 200014 Jan 2003Xilinx , Inc.Methods and circuits for testing a circuit fabrication process for device uniformity
US65105483 Aug 200121 Jan 2003Xilinx, Inc.Method for providing pre-designed modules for programmable logic devices
US651878721 Sep 200011 Feb 2003Triscend CorporationInput/output architecture for efficient configuration of programmable input/output cells
US651975330 Nov 199911 Feb 2003Quicklogic CorporationProgrammable device with an embedded portion for receiving a standard circuit design
US65221679 Jan 200118 Feb 2003Xilinx, Inc.User configurable on-chip memory system
US6532572 *14 Mar 200111 Mar 2003Lsi Logic CorporationMethod for estimating porosity of hardmacs
US653950815 Mar 200025 Mar 2003Xilinx, Inc.Methods and circuits for testing programmable logic
US65419914 May 20011 Apr 2003Xilinx Inc.Interface apparatus and method for testing different sized ball grid array integrated circuits
US65781748 Jun 200110 Jun 2003Cadence Design Systems, Inc.Method and system for chip design using remotely located resources
US658799519 Apr 20001 Jul 2003Koninklijke Philips Electronics N.V.Enhanced programmable core model with integrated graphical debugging functionality
US658800616 Dec 19991 Jul 2003Lsi Logic CorporationProgrammable ASIC
US6601227 *27 Jun 200129 Jul 2003Xilinx, Inc.Method for making large-scale ASIC using pre-engineered long distance routing structure
US6604228 *26 Oct 20005 Aug 2003Altera CorporationTechnique of fabricating integrated circuits having interfaces compatible with different operating voltage conditions
US6611951 *29 Jun 200126 Aug 2003Lsi Logic CorporationMethod for estimating cell porosity of hardmacs
US20010049813 *29 Jun 19986 Dec 2001Chun ChanIntegrated circuit incorporating a power mesh
US2003006292228 Sep 20013 Apr 2003Xilinx, Inc.Programmable gate array having interconnecting logic to support embedded fixed logic circuitry
USRE3436324 Jun 199131 Aug 1993Xilinx, Inc.Configurable electrical circuit having configurable logic elements and configurable interconnects
EP0375275A214 Dec 198927 Jun 1990BOMORO Bocklenberg & Motte GmbH & Co. KGVehicle door latches
EP0905906A215 Sep 199831 Mar 1999Lucent Technologies Inc.Hybrid programmable gate arrays
EP1235351A114 Nov 200028 Aug 2002Matsushita Electric Industrial Co., Ltd.Programmable logic device and programming method
WO1993025968A110 Jun 199323 Dec 1993Frederick C FurtekA modular computer based on reconfigurable logic
Non-Patent Citations
Reference
1Andre' Dehon, "DPGA-Coupled Microprocessors: Commodity ICs For The Early 21st Century," IEEE, Feb. 1994, pp. 31-39, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
2Andre′ Dehon, "DPGA-Coupled Microprocessors: Commodity ICs For The Early 21st Century," IEEE, Feb. 1994, pp. 31-39, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
3Cary D. Snyder and Max Baron; "Xilinx's A-to-Z-System Platform"; Cahners Microprocessor; The Insider's Guide to Microprocessor Hardware; Microdesign Resources; Feb. 6, 2001; pp. 1-5.
4Christian Iseli et al., "AC++ Compiler for FPGA Custom Execution Units Synthesis," 1995, pp. 173-179, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
5Christian Iseli et al., "Beyond Superscaler Using FPGA's," IEEE, Apr. 1993, pp. 486-490, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
6Christian Iseli et al., "Spyder: A Reconfigurable VLIW Processor Using FPGA's," IEEE, Jul. 1993, pp. 17-24, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
7G. Maki et al., "A Reconfigurable Data Path Processor," IEEE, Aug. 1991, pp. 18-4.1 to 18-4.4, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
8International business Machines, "PowerPC 405 Embedded Processor Core User Manual," 1996, 5th Ed., pp. 1-1 to X-16, International Business Machines, 1582 Rout 52, Bkdg. 504, Hopewell Junction, NY 12533-6531.
9International Business Machines, "Processor Local Bus" Architecture Specifications, 32-Bit Implementation, Apr. 2000, First Edition, V2.9, p. 1-76, IBM Corporation, Department H83A, P.O. Box 12195, Research Triangle Park, NC 27709.
10Jacob Davidson, "FPGA Implementation of Reconfigurable Microprocessor," IEEE, Mar. 1993, pp. 3.2.1-3.2.4, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
11Michael I. Wirthlin et al., "The Nano Processor: A Low Resource Reconfigurable Processor," IEEE, Feb. 1994, pp. 23-30, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
12Osama T. Albaharna, "Area & Time Limitations of FPGA-Based Virtual Hardware," IEEE, Apr. 1994, pp. 184-189, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
13P.C. French et al., "A Self-Reconfiguring Processor,"; IEEE, Jul. 1993, pp. 50-59, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
14Ralph D. Wittig et al., Onechip: An FPGA Processor with Reconfigurable Logic, Apr. 17, 1996, pp 126-135, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
15Sayfe Kiaei et al., "VLSI Design of Dynamically Reconfigurable Array Processor-Drap" IEEE, Feb. 1989, pp. 2484-2488, V3.6, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
16U.S. patent application Ser. No. 09/858,732, Schulz, filed May 15, 2001.
17U.S. patent application Ser. No. 09/861,112, Dao et al., filed May 18, 2001.
18U.S. patent application Ser. No. 09/917,304, Douglass et al., filed Jul. 27, 2001.
19U.S. patent application Ser. No. 09/968,446, Douglass et al., filed Sep. 28, 2001.
20U.S. patent application Ser. No. 09/991,410, Herron et al., filed Nov. 16, 2001.
21U.S. patent application Ser. No. 09/991,412, Herron et al., filed Nov. 16, 2001.
22U.S. patent application Ser. No. 10/001,871, Douglass et al., filed Nov. 19, 2001.
23U.S. patent application Ser. No. 10/043,769, Schulz, filed Jan. 9, 2002.
24Vason P, Srini, "Field Programmable Gate Array (FPGA) Implementation of Digital Systems: An Alternative to ASIC," IEEE, May 1991, pp. 309-314, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
25William B. Andrew et al., "A Field Programmable System Chip Which Combines FPGA & Asic Circuitry," IEEE, May 16, 1999, pp. 183-186, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
26William S. Carter, "The Future of Programmable Logic and Its Impact on Digital System Design," Apr. 1994, IEEE, pp. 10-16, IEEE, 3 Park Avenue, 17th Floor, New York NY 10016-5997.
27Xilinx, Inc., "The Programmable Logic Data Book," 1994, Revised 1995, pp 2-107 to 2-108, Xilinx, Inc., 2100 Logic Drive, San Jose, CA. 95124.
28Xilinx, Inc., "The Programmable Logic Data Book," 1994, Revised 1995, pp 2-109 to 2-117, Xilinx, Inc. 2100 Logic Drive, San Jose CA. 95124.
29Xilinx, Inc., "The Programmable Logic Data Book," 1994, Revised 1995, pp 2-9 to 2-18; 2-187 to 2-199, Xilinx, Inc., 2100 Logic Drive, San Jose, CA. 95124.
30Xilinx, Inc., "The Programmable Logic Data Book," 1994, Revised 1995, Xilinx, Inc., 2100 Logic Drive, San Jose, CA. 95124.
31Xilinx, Inc., "The Programmable Logic Data Book," 2000, Ch. 3 pp 3-1 to 3-117, Xilinx, Inc. 2100 Logic Drive, San Jose, CA 95124.
32Xilinx, Inc., "The Programmable Logic Data Book," 2000, Ch. 3, pp 3-7 to 3-17; 3-76 to 3-87, Xilinx, Inc., 2100 Logic Dr., San Jose, CA. 95124.
33Xilinx, Inc., "The Programmable Logic Data Book," Jan. 27, 1999, Ch. 3, pp 3-1 to 3-50, Xilinx, Inc., 2100 Logic Drive, San Jose, CA 95124.
34Xilinx, Inc., Virtex II Platform FPGA Handbook, Dec. 6, 2000, v1.1, pp 33-75, Xilinx, Inc., 2100 Logic Drive, San Jose, CA. 95124.
35Yamin Li et al., "Aizup-A Pipelined Processor Design & Implemetnation on Xilinx FPGA Chip," IEEE, Sep. 1996, pp 98-106, 98-106, IEEE, 3 Park Avenue, 17th Floor, New York, NY 10016-5997.
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US7007264 *2 May 200328 Feb 2006Xilinx, Inc.System and method for dynamic reconfigurable computing using automated translation
US707315421 May 20024 Jul 2006Altera CorporationApparatus and methods for interconnect zones and associated cells in integrated circuits
US788532011 Sep 20038 Feb 2011Xilinx, Inc.MGT/FPGA clock management system
US20140175565 *3 Mar 201426 Jun 2014Tela Innovations, Inc.Integrated Circuit Cell Library for Multiple Patterning
CN1881223B6 Apr 200612 May 2010Lsi罗吉克公司Integrated circuit with relocatable processor hardmac
Classifications
U.S. Classification326/38, 716/128, 716/117
International ClassificationG06F17/50
Cooperative ClassificationG06F17/5077
European ClassificationG06F17/50L2
Legal Events
DateCodeEventDescription
16 May 2012FPAYFee payment
Year of fee payment: 8
15 May 2008FPAYFee payment
Year of fee payment: 4
14 Feb 2002ASAssignment
Owner name: XILINX, INC., CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GAN, ANDY H.;REEL/FRAME:012617/0231
Effective date: 20020213
Owner name: XILINX, INC. 2100 LOGIC DRIVESAN JOSE, CALIFORNIA,
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GAN, ANDY H. /AR;REEL/FRAME:012617/0231