Patent US2772945A successfully refreshed from Google Patents.
Patent US5469003A successfully refreshed from Google Patents.
US5469003A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Hierarchically connectable configurable cellular array
Assignee: Xilinx Inc
•
Filing: 1993-11-05
•
Granted: 1995-11-21
•
Expires: 2013-11-05
Abstract
Abstract An field programmable gate array (FPGA) of cells arranged in rows and columns is interconnected by a hierarchical routing structure. Switches separate the cells into blocks and into blocks of blocks with routing lines interconnecting the switches to form the hierarchy. Also, select units for allowing memory bits to be addressed both individually and in large and arbitrary groups are disclosed. Further a control store for configuring the FPGA is addressed as an SRAM and can be dynamically reconfigured during operation.
Inventors
- 👤 Thomas A. Kean
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-02 21:40
CPC Classifications
H; H03; H03K; H03K19/00; H03K19/02; H03K19/173; H03K19/1733; H03K19/1737; G; G06; G06F; G06F30/00; G06F30/30; G06F30/34; H03K19/177; H03K19/17704; H03K19/17748; H03K19/17752; H03K19/17756; H03K19/17758
Claims Analysis
Total Claims: 36
Claim 1
Independent Claim
117 words
An hierarchically-scalable cellular array comprising: a plurality of cells; a first routing resource for interconnecting each cell to its adjacent neighboring cells, said first routing resource including a first plurality of lines having a length n, where n is a predetermined distance; a second routing resource including a second plurality of lines having a length N×n where N>1, said second routing resource connecting said cells into blocks of cells and interconnecting said blocks of cells; and a third routing resource including a third plurality of lines having a length N m ×n where n≧2 and where N m ×n≦T, the total length of said cellular array, said third routing resource interconnecting groups of said blocks of cells.
Claim 2
Dependent Claim
117 words
An hierarchically-scalable cellular array comprising: a plurality of cells; a first routing resource for interconnecting each cell to its adjacent neighboring cells, said first routing resource including a first plurality of lines having a length n, where n is a predetermined distance; a second routing resource including a second plurality of lines having a length N×n where N>1, said second routing resource connecting said cells into blocks of cells and interconnecting said blocks of cells; and a third routing resource including a third plurality of lines having a length N m ×n where n≧2 and where N m ×n≦T, the total length of said cellular array, said third routing resource interconnecting groups of said blocks of cells.
Claim 3
Dependent Claim
13 words
The cellular array of claim 1 wherein n is approximately one cell width.
Claim 4
Dependent Claim
10 words
The cellular array of claim 1 wherein N is 4.
Claim 5
Dependent Claim
10 words
The cellular array of claim 3 wherein m is 2.
Claim 6
Dependent Claim
10 words
The cellular array of claim 3 wherein m is 3.
Claim 7
Dependent Claim
28 words
The cellular array of claim 1 further including a fourth routing resource including a fourth plurality of lines having a length N r ×n where r≧3, and r=m+1.
Claim 8
Dependent Claim
125 words
A programmable logic structure comprising: an array of cells arranged in rows and columns; a plurality of switches, said plurality of switches partitioning said array into a first plurality of cell blocks, wherein each cell includes: four input lines for providing four input signals to said cell, each of said input lines coupled to an adjacent cell or switch; and four output lines for providing four output signals from said cell, each of said output lines coupled to an adjacent cell or switch, wherein said array further includes four intermediate, directed input lines for providing an additional four input signals to said cell, wherein each intermediate input line provides signals to the cells in either a row or a column of one of said blocks.
Claim 9
Dependent Claim
125 words
A programmable logic structure comprising: an array of cells arranged in rows and columns; a plurality of switches, said plurality of switches partitioning said array into a first plurality of cell blocks, wherein each cell includes: four input lines for providing four input signals to said cell, each of said input lines coupled to an adjacent cell or switch; and four output lines for providing four output signals from said cell, each of said output lines coupled to an adjacent cell or switch, wherein said array further includes four intermediate, directed input lines for providing an additional four input signals to said cell, wherein each intermediate input line provides signals to the cells in either a row or a column of one of said blocks.
Claim 10
Dependent Claim
40 words
The logic structure of claim 7 wherein said array further includes a plurality of flyover lines, each flyover line coupled between two of said plurality of switches, wherein said plurality of flyover lines determines a second plurality of cell blocks.
Claim 11
Dependent Claim
290 words
In an integrated circuit having a two-dimensional array of logic cells, a switch comprising: a set of multiplexers, each of which receives a plurality of input signals and provides an output signal; for each multiplexer, multiplexer control means for causing said multiplexer to select one of said input signals to provide said output signal, said input signals being taken from the following wires: a wire extending to the west from said switch and having a length approximately equal to a first multiple of said length of one of said cells; a wire extending to the east from said switch and having a length approximately equal to said first multiple of said length of one of said cells; a wire extending to the west from said switch and having a length approximately equal to a second multiple of said length of one of said cells; and a wire extending to the east from said switch and having a length approximately equal to said second multiple of said length of one of said cells; said output signals being placed on the following wires: a wire extending to the west from said switch and having a length approximately equal to a first multiple of said length of one of said cells; a wire extending to the east from said switch and having a length approximately equal to said first multiple of said length of one of said cells; a wire extending to the west from said switch and having a length approximately equal to a second multiple of said length of one of said cells; and a wire extending to the east from said switch and having a length approximately equal to said second multiple of said length of one of said cells.
Claim 12
Dependent Claim
290 words
In an integrated circuit having a two-dimensional array of logic cells, a switch comprising: a set of multiplexers, each of which receives a plurality of input signals and provides an output signal; for each multiplexer, multiplexer control means for causing said multiplexer to select one of said input signals to provide said output signal, said input signals being taken from the following wires: a wire extending to the west from said switch and having a length approximately equal to a first multiple of said length of one of said cells; a wire extending to the east from said switch and having a length approximately equal to said first multiple of said length of one of said cells; a wire extending to the west from said switch and having a length approximately equal to a second multiple of said length of one of said cells; and a wire extending to the east from said switch and having a length approximately equal to said second multiple of said length of one of said cells; said output signals being placed on the following wires: a wire extending to the west from said switch and having a length approximately equal to a first multiple of said length of one of said cells; a wire extending to the east from said switch and having a length approximately equal to said first multiple of said length of one of said cells; a wire extending to the west from said switch and having a length approximately equal to a second multiple of said length of one of said cells; and a wire extending to the east from said switch and having a length approximately equal to said second multiple of said length of one of said cells.
Claim 13
Dependent Claim
16 words
The switch of claim 9 wherein said first multiple is 1 and second multiple is 4.
Claim 14
Dependent Claim
16 words
The switch of claim 9 wherein said first multiple is 4 and second multiple is 16.
Claim 15
Dependent Claim
16 words
The switch of claim 9 wherein said first multiple is 16 and second multiple is 64.
Claim 16
Dependent Claim
72 words
The switch of claim 9 wherein said multiplexers further receive input signals taken from the following wires: a wire extending to the west from said switch and having a length approximately equal to a third multiple of said length of one of said cells; and a wire extending to the east from said switch and having a length approximately equal to said third multiple of said length of one of said cells.
Claim 17
Dependent Claim
21 words
The switch of claim 13 wherein said first multiple is 1, said second multiple is 4, and said third multiple is
Claim 18
Dependent Claim
22 words
The switch of claim 13 wherein said first multiple is 4, said second multiple is 16, and said third multiple is 64.
Claim 19
Dependent Claim
169 words
A programmable integrated circuit comprising: a two-dimensional array of logic cells, each cell comprising means for generating as an output signal a selected logic function of a plurality of logic cell input signals; a plurality of switches, said switches positioned so as to group said cells into cell blocks; each cell including: four short input wires for providing four of said input signals, said four short input wires carrying output signals from the cells or the switches which comprise nearest neighbors on four sides of said cell; four medium input wires for providing four of said input signals, said four medium input wires extending in four compass directions between switches which define a cell block in which said cell is positioned, wherein a plurality of said medium input wires are simultaneously accessable by said cell; and four short output wires for providing said output signal, said four short output wires carrying output signals to the cells or the switches which comprise nearest neighbors on four sides of said cell.
Claim 20
Dependent Claim
169 words
A programmable integrated circuit comprising: a two-dimensional array of logic cells, each cell comprising means for generating as an output signal a selected logic function of a plurality of logic cell input signals; a plurality of switches, said switches positioned so as to group said cells into cell blocks; each cell including: four short input wires for providing four of said input signals, said four short input wires carrying output signals from the cells or the switches which comprise nearest neighbors on four sides of said cell; four medium input wires for providing four of said input signals, said four medium input wires extending in four compass directions between switches which define a cell block in which said cell is positioned, wherein a plurality of said medium input wires are simultaneously accessable by said cell; and four short output wires for providing said output signal, said four short output wires carrying output signals to the cells or the switches which comprise nearest neighbors on four sides of said cell.
Claim 21
Dependent Claim
45 words
The programmable integrated circuit of claim 16 wherein each of said medium input wires carries a signal from a switch in one of the four compass directions to said cell and to other cells positioned between two of said switches making up said cell block.
Claim 22
Dependent Claim
21 words
The programmable integrated circuit of claim 17 wherein said medium wires are approximately four times the length of said short wires.
Claim 23
Dependent Claim
137 words
A programmable logic structure comprising: an array of cells; a plurality of switches arranged to group said cells into cell blocks such that for each cell block at least one west switch is positioned to the west of that block, and at least one east switch is positioned to the east of that block; a neighbor wire connecting from an output of said west switch to an input of the nearest cell east of said west switch; a flyover wire connecting from an output of said west switch to an input of said east switch; a neighbor wire connecting from an output of said east switch to an input of the nearest cell west of said east switch; and a flyover wire connecting from an output of said east switch to an input of said west switch.
Claim 24
Dependent Claim
137 words
A programmable logic structure comprising: an array of cells; a plurality of switches arranged to group said cells into cell blocks such that for each cell block at least one west switch is positioned to the west of that block, and at least one east switch is positioned to the east of that block; a neighbor wire connecting from an output of said west switch to an input of the nearest cell east of said west switch; a flyover wire connecting from an output of said west switch to an input of said east switch; a neighbor wire connecting from an output of said east switch to an input of the nearest cell west of said east switch; and a flyover wire connecting from an output of said east switch to an input of said west switch.
Claim 25
Dependent Claim
140 words
A programmable logic structure of claim 19 wherein said plurality of switches is further arranged such that for each cell block at least one north switch is positioned to the north of that block, and at least one south switch is positioned to the south of that block, wherein said programmable logic structure further comprises: a neighbor wire connecting from an output of said north switch to an input of the nearest cell south of said north switch; a south flyover wire connecting from an output of said north switch to an input of said south switch; a short wire connecting from an output of said south switch to an input of the nearest cell north of said south switch; and a north flyover wire connecting from an output of said south switch to an input of said north switch.
Claim 26
Dependent Claim
378 words
A programmable logic structure as in claim 20 in which each of said cells comprises a plurality of smaller cells, each of said smaller cells being defined by: a plurality of switches, said switches arranged to group said smaller cells into smaller cell blocks such that for each smaller cell block at least one west switch is positioned to the west of that block, at least one east switch is positioned to the east of that block, at least one north switch is positioned to the north of that block, and at least one south switch is positioned to the south of that block; said smaller cells being connected to said switches by: a neighbor wire connecting an output of said west switch to an input of the nearest smaller cell east of said west switch; a neighbor wire connecting an output of the nearest smaller cell east of said west switch to an input of said west switch; an east flyover wire connecting from an output of said west switch to an input of said east switch; a neighbor wire connecting from an output of said east switch to an input of the nearest smaller cell west of said east switch; and a neighbor wire connecting an output of the nearest smaller cell west of said east switch to an input of said east switch; a west flyover wire connecting from an output of said east switch to an input of said west switch; a neighbor wire connecting from an output of said north switch to an input of the nearest smaller cell south of said north switch; a neighbor wire connecting an output of the nearest smaller cell south of said north switch to an input of said north switch; a south flyover wire connecting from an output of said north switch to an input of said south switch; a neighbor wire connecting from an output of said south switch to an input of the nearest smaller cell north of said south switch; and a neighbor wire connecting an output of the nearest smaller cell north of said south switch to an input of said south switch; a north flyover wire connecting from an output of said south switch to an input of said north switch.
Claim 27
Dependent Claim
114 words
An input/output structure for a programmable logic device having a plurality of logic cells comprising: a plurality of pads, each pad connected to an external pin of said programmable logic device; a plurality of I/O buffers, each I/O buffer connected to one of said plurality of pads, each I/O buffer including a switch for connecting said I/O buffer to at least one of said plurality of logic cells, wherein said switch forms part of a hierarchial interconnect structure receiving input signals both from wires from neighboring cells and wires from other switches and providing output signals to both wires in neighboring cells and wires leading to other switches; and means for controlling said switch.
Claim 28
Dependent Claim
114 words
An input/output structure for a programmable logic device having a plurality of logic cells comprising: a plurality of pads, each pad connected to an external pin of said programmable logic device; a plurality of I/O buffers, each I/O buffer connected to one of said plurality of pads, each I/O buffer including a switch for connecting said I/O buffer to at least one of said plurality of logic cells, wherein said switch forms part of a hierarchial interconnect structure receiving input signals both from wires from neighboring cells and wires from other switches and providing output signals to both wires in neighboring cells and wires leading to other switches; and means for controlling said switch.
Claim 29
Independent Claim
102 words
A method for routing signals in a programmable logic structure comprising the steps of arranging an array of cells in rows and columns; partitioning said array into a plurality of cell blocks with a plurality of switches; coupling each input line associated with each cell to an adjacent cell or switch; coupling each output line associated with each cell to said adjacent cell or switch; providing an additional four directed, intermediate input lines for each cell, wherein each directed intermediate input line provides signals to the cells in either a row or a column of one of said plurality of cell blocks.
Claim 30
Independent Claim
102 words
A method for routing signals in a programmable logic structure comprising the steps of arranging an array of cells in rows and columns; partitioning said array into a plurality of cell blocks with a plurality of switches; coupling each input line associated with each cell to an adjacent cell or switch; coupling each output line associated with each cell to said adjacent cell or switch; providing an additional four directed, intermediate input lines for each cell, wherein each directed intermediate input line provides signals to the cells in either a row or a column of one of said plurality of cell blocks.
Claim 31
Dependent Claim
26 words
The method of claim 23 further including the step of providing a plurality of flyover lines, each flyover line coupling two of said plurality of switches.
Claim 32
Dependent Claim
35 words
The method of claim 24 further including the step of providing a signal from a first cell to a second cell, wherein said providing includes transferring said signal via at least one intermediate input line.
Claim 33
Dependent Claim
21 words
The method of claim 25 wherein said step of providing further includes transferring said signal via at least one flyover line.
Claim 34
Dependent Claim
63 words
The method of claim 23 further including the steps of: sending a signal via a first path including a plurality of switching units, said first path paralleling a direct, second path; using logic gates to detect whether said signal travels the full length of said first path; and if said signal travels said full length, then placing said signal on said second path.
Claim 35
Dependent Claim
133 words
A routing device in a programmable logic device comprising: a plurality of cells providing a first path, wherein each cell includes: means for receiving a plurality of input signals and providing an output signal; a plurality of memory bits associated with said means for receiving; and a first logic gate for providing a trigger signal determined by the state of said plurality of memory bits; a second path not including cells, said second path paralleling said first path; a second logic gate coupled to the output terminals of the first logic gates to detect whether said signal travels the full length of said first path; and means for determining whether a signal is provided on said first path or on said second path, said means for determining controlled by said second logic gate.
Claim 36
Dependent Claim
133 words
A routing device in a programmable logic device comprising: a plurality of cells providing a first path, wherein each cell includes: means for receiving a plurality of input signals and providing an output signal; a plurality of memory bits associated with said means for receiving; and a first logic gate for providing a trigger signal determined by the state of said plurality of memory bits; a second path not including cells, said second path paralleling said first path; a second logic gate coupled to the output terminals of the first logic gates to detect whether said signal travels the full length of said first path; and means for determining whether a signal is provided on said first path or on said second path, said means for determining controlled by said second logic gate.
References Cited (Backward Citations)
US5047983A
Cited
US4706216A
Cited
US4758985A
Cited
US5187393A
Cited
US4930107A
Cited
US5003200A
Cited
US4973956A
Cited
US5243238A
Cited
US5015883A
Cited
US5073729A
Cited
US5144166A
Cited
US5338984A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1998-11-20 | 1999-05-22 | 1999-11-21 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2002-11-20 | 2003-05-22 | 2003-11-21 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2006-11-20 | 2007-05-22 | 2007-11-21 | $7700.00 | Window Closed / Lapsed |