Patent US5671432A successfully refreshed from Google Patents.
US5671432A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Programmable array I/O-routing resource
Assignee: Cadence Design Systems Inc
•
Filing: 1995-06-02
•
Granted: 1997-09-23
•
Expires: 2015-06-02
Abstract
Abstract A programmable array having programmable logic cells, a programmable interconnect network and a programmable I/O system. Two I/O interfaces are provided for respective logic cells about the perimeter of the array. The I/O interfaces comprise input, output and enable paths. Each of these paths has an associated multiplexer. An I/O routing network is positioned about the perimeter of the array. Conductors connecting the I/O interface multiplexers to the programmable interconnect network also intersect, and can be programmably connected to, buses of the I/O routing network.
Inventors
- 👤 Allan Robert Bertolet
- 👤 Kenneth Ferguson
- 👤 Scott Whitney Gould
- 👤 Eric Ernest Millham
- 👤 Ronald Raymond Palmer
- 👤 Brian Worth
- 👤 Terrance John Zittritsch
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-06 13:37
CPC Classifications
H; H03; H03K; H03K19/00; H03K19/02; H03K19/173; H03K19/177; H03K19/17736; H03K19/1733; H03K19/1737; H03K19/17704
Claims Analysis
Total Claims: 41
Claim 1
Independent Claim
247 words
A programmable array having a plurality of programmable logic cells arrayed therein, said programmable array further comprising: a programmable interconnect network, the programmable interconnect network comprising a first plurality of buses wherein selected buses in the first plurality of buses are connectable to ones of the plurality of logic cells, the first plurality of buses including a plurality of switches, at least some switches of the plurality of switches for programmably providing signals between buses of the first plurality of buses; and a first I/O interface associated with a corresponding one of the plurality of logic cells, the first I/O interface comprising: a data output path for carrying array output signals to an I/O terminal corresponding to the first I/O interface; a data input path for carrying array input signals from the I/O terminal corresponding to the first I/O interface; a first multiplexer having an output connected to said data output path, said first multiplexer further having a plurality of inputs; a second multiplexer having an input connected to said data input path, said second multiplexer further having a plurality of outputs; and first and second I/O signal buses, the first I/O signal bus being connected between one of the switches of the first plurality of buses and one of the plurality of inputs of the first multiplexer, the second I/O signal bus being connected between one of the switches of the first plurality of buses and one of the plurality of outputs of the second multiplexer.
Claim 2
Dependent Claim
247 words
A programmable array having a plurality of programmable logic cells arrayed therein, said programmable array further comprising: a programmable interconnect network, the programmable interconnect network comprising a first plurality of buses wherein selected buses in the first plurality of buses are connectable to ones of the plurality of logic cells, the first plurality of buses including a plurality of switches, at least some switches of the plurality of switches for programmably providing signals between buses of the first plurality of buses; and a first I/O interface associated with a corresponding one of the plurality of logic cells, the first I/O interface comprising: a data output path for carrying array output signals to an I/O terminal corresponding to the first I/O interface; a data input path for carrying array input signals from the I/O terminal corresponding to the first I/O interface; a first multiplexer having an output connected to said data output path, said first multiplexer further having a plurality of inputs; a second multiplexer having an input connected to said data input path, said second multiplexer further having a plurality of outputs; and first and second I/O signal buses, the first I/O signal bus being connected between one of the switches of the first plurality of buses and one of the plurality of inputs of the first multiplexer, the second I/O signal bus being connected between one of the switches of the first plurality of buses and one of the plurality of outputs of the second multiplexer.
Claim 3
Dependent Claim
56 words
The programmable array of claim 1 further comprising: a plurality of I/O routing buses, said plurality of I/O routing buses running proximate said first I/O interface, at least one of said plurality of I/O routing buses being programmably connectable to at least one of the first and second I/O signal buses of the first I/O interface.
Claim 4
Dependent Claim
42 words
The programmable array of claim 2 further comprising a programmable element connected between the at least one of said plurality of I/O routing buses and the at least one of the first and second I/O signal buses of the first I/O interface.
Claim 5
Dependent Claim
21 words
The programmable array of claim 2 wherein the plurality of I/O routing buses runs generally along a perimeter of the array.
Claim 6
Dependent Claim
110 words
The programmable array of claim 1 wherein said first I/O interface further comprises: an enable path for providing enable signals to said data output path such that said array output signals can be controllably provided to the I/O terminal corresponding to the first I/O interface; a third multiplexer having an output connected to said enable path of the first I/O interface, said third multiplexer further having a plurality of inputs; and a third I/O signal bus, the third I/O signal bus being connected between one of the switches of said first plurality of buses and one of the plurality of inputs of the third multiplexer of the first I/O interface.
Claim 7
Dependent Claim
52 words
The programmable array of claim 5 wherein the first I/O signal bus of said first I/O interface is connected to one of the plurality of outputs of the second multiplexer of the first I/O interface and to one of the plurality of inputs of the third multiplexer of the first I/O interface.
Claim 8
Dependent Claim
52 words
The programmable array of claim 5 wherein the second I/O signal bus of the first I/O interface is connected to one of the plurality of inputs of the first multiplexer of the first I/O interface and to one of the plurality of inputs of the third multiplexer of the first I/O interface.
Claim 9
Dependent Claim
52 words
The programmable array of claim 5 wherein the third I/O signal bus of the first I/O interface is connected to one of the plurality of inputs of the first multiplexer of the first I/O interface and to one of the plurality of outputs of the second multiplexer of the first I/O interface.
Claim 10
Dependent Claim
32 words
The programmable array of claim 5 wherein the first, second and third I/O signal buses are all connected to each of the first, second, and third multiplexers of the first I/O interface.
Claim 11
Dependent Claim
48 words
The programmable array of claim 9 wherein the corresponding one of the plurality of logic cells includes: a first conductor connected to an input of the first multiplexer of the first I/O interface; and a second conductor connected to the data input path of the first I/O interface.
Claim 12
Dependent Claim
35 words
The programmable array of claim 1 wherein the first I/O signal bus of the first I/O interface is connected to one of the plurality of outputs of the second multiplexer of the first I/O interface.
Claim 13
Dependent Claim
35 words
The programmable array of claim 1 wherein the second I/O signal bus of the first I/O interface is connected to one of the plurality of inputs of the first multiplexer of the first I/O interface.
Claim 14
Dependent Claim
48 words
The programmable array of claim 1 wherein the corresponding one of the plurality of logic cells includes: a first conductor connected to an input of the first multiplexer of the first I/O interface; and a second conductor connected to the data input path of the first I/O interface.
Claim 15
Dependent Claim
242 words
The programmable array of claim 1 wherein the programmable interconnect network further comprises a second plurality of buses wherein selected buses in the second plurality of buses are connectable to the ones of the plurality of logic cells, the second plurality of buses including a second plurality of switches, at least some switches of the second plurality of switches for programmably providing signals between buses of the second plurality of buses, wherein the programmable array further comprises: a second I/O interface associated with the corresponding one of the plurality of logic cells, the second I/O interface comprising: a data output path for carrying array output signals to an I/O terminal corresponding to the second I/O interface; a data input path for carrying array input signals from the I/O terminal corresponding to the second I/O interface; a first multiplexer having an output connected to said data output path, said first multiplexer further having a plurality of inputs; a second multiplexer having an input connected to said data input path, said second multiplexer further having a plurality of outputs; and first and second I/O signal buses, the first I/O signal bus being connected between one of the switches of the second plurality of buses and one of the plurality of inputs of the first multiplexer, the second I/O signal bus being connected between one of the switches of the second plurality of buses and one of the plurality of outputs of the second multiplexer.
Claim 16
Dependent Claim
109 words
The programmable array of claim 14 wherein the second I/O interface further comprises: an enable path for providing enable signals to said data output path such that said array output signals can be controllably provided to the I/O terminal corresponding to the second I/O interface; a third multiplexer having an output connected to said enable path of the second I/O interface, said third multiplexer having a plurality of inputs; and a third I/O signal bus, the third I/O signal bus being connected between one of the switches of said second plurality of buses and one of the plurality of inputs of the third multiplexer of the second I/O interface.
Claim 17
Dependent Claim
94 words
The programmable array of claim 15 wherein the corresponding one of the plurality of logic cells includes: a first conductor connected to an input of one of the first and third multiplexers of the first I/O interface and connected to an input of one of the first and third multiplexers of the second I/O interface; and a second conductor connected to an input of one of the first and third multiplexers of the first I/O interface and connected to an input of one of the first and third multiplexers of the second I/O interface.
Claim 18
Dependent Claim
46 words
The programmable array of claim 16 wherein the corresponding one of the plurality of logic cells includes: a third conductor connected to the data input path of the first I/O interface; and a fourth conductor connected to the data input path of the second I/O interface.
Claim 19
Dependent Claim
60 words
The programmable array of claim 14 further comprising: a plurality of I/O routing buses, said plurality of I/O routing buses running proximate said first and second I/O interfaces, at least one of said plurality of I/O routing buses being programmably connectable to at least one of the first and second I/O signal buses of the first and second I/O interfaces.
Claim 20
Dependent Claim
43 words
The programmable array of claim 18 further comprising programmable elements connected between the at least one of the plurality of I/O routing buses and the at least one of the first and second I/O signal buses of the first and second I/O interfaces.
Claim 21
Dependent Claim
21 words
The programmable array of claim 18 wherein the plurality of I/O routing buses runs generally along a perimeter of the array.
Claim 22
Dependent Claim
129 words
An I/O and interconnect system for a programmable array having a plurality of programmable logic cells, the I/O and interconnect system comprising: an I/O terminal; an I/O interface corresponding to said I/O terminal, said I/O interface including a first multiplexer connected thereto; a general interconnect network for interconnecting the plurality of programmable logic cells, the general interconnect network comprising a first plurality of parallel interconnect buses, the first plurality of parallel interconnect buses including a first extended bus connected to the first multiplexer of the I/O interface; and a plurality of perimeter buses, said plurality of perimeter buses running along a perimeter of the array, at least one of the plurality of perimeter buses being programmably connectable to the extended bus of the first plurality of parallel interconnect buses.
Claim 23
Dependent Claim
129 words
An I/O and interconnect system for a programmable array having a plurality of programmable logic cells, the I/O and interconnect system comprising: an I/O terminal; an I/O interface corresponding to said I/O terminal, said I/O interface including a first multiplexer connected thereto; a general interconnect network for interconnecting the plurality of programmable logic cells, the general interconnect network comprising a first plurality of parallel interconnect buses, the first plurality of parallel interconnect buses including a first extended bus connected to the first multiplexer of the I/O interface; and a plurality of perimeter buses, said plurality of perimeter buses running along a perimeter of the array, at least one of the plurality of perimeter buses being programmably connectable to the extended bus of the first plurality of parallel interconnect buses.
Claim 24
Dependent Claim
66 words
The programmable array of claim 21 wherein the I/O interface further includes: an output path, wherein the first multiplexer has an output connected to said output path; an input path; a second multiplexer, wherein the second multiplexer has an input connected to said input path; an output enable path; and a third multiplexer, wherein the third multiplexer has an output connected to said output enable path.
Claim 25
Dependent Claim
86 words
The programmable array of claim 22 wherein the first plurality of parallel interconnect buses further includes second and third extended buses, the second extended bus being connected to an output of the second multiplexer of the I/O interface, the third extended bus being connected to an input of the third multiplexer of the I/O interface, selected buses of the plurality of perimeter buses being programmably connectable to a selected one of the first, second and third extended buses of the first plurality of parallel interconnect buses.
Claim 26
Dependent Claim
35 words
The programmable array of claim 23 wherein at least one of the plurality of programmable logic cells includes a direct connect output conductor connected to an input of the first multiplexer of the I/O interface.
Claim 27
Dependent Claim
32 words
The programmable array of claim 24 wherein at least one of the plurality of programmable logic cells includes a direct connect input conductor connected to the input path of the I/O interface.
Claim 28
Dependent Claim
39 words
The programmable array of claim 25 wherein each of the first, second and third extended buses of the first plurality of parallel interconnect buses is connected to each of the first, second and third multiplexers of the I/O interface.
Claim 29
Dependent Claim
45 words
The programmable array of claim 21 further comprising a programmable pass gate connected between the at least one of the plurality of perimeter buses and the first extended bus of the first plurality of parallel interconnect buses such that the buses can be programmably connected.
Claim 30
Dependent Claim
59 words
The programmable array of claim 27 wherein the plurality of perimeter buses includes a plurality of programmable switches connected therein such that a signal received from a first bus of said plurality of perimeter buses can be programmably provided to a second bus of said plurality of perimeter buses using at least one of said plurality of programmable switches.
Claim 31
Dependent Claim
74 words
The programmable array of claim 28 wherein the at least one of the plurality of programmable switches comprises a programmable switching repeater having four ports, each port being connected to a different bus of said plurality of perimeter buses such that a signal received at a first one of said ports of the programmable switching repeater can be programmably buffered and redriven to a second one of said ports of the programmable switching repeater.
Claim 32
Dependent Claim
28 words
The programmable array of claim 29 wherein the plurality of programmable switches comprises a plurality of generally regularly spaced programmable switching repeaters within said plurality of perimeter buses.
Claim 33
Dependent Claim
40 words
The programmable array of claim 28 wherein the array is quadrilateral in shape such that the perimeter of the array comprises four corners and wherein some of the plurality of programmable switches are positioned at each of said four corners.
Claim 34
Dependent Claim
36 words
The programmable array of claim 21 wherein the plurality of perimeter buses includes a plurality of repeaters connected therein, at least some of said plurality of repeaters for redriving signals within the plurality of perimeter buses.
Claim 35
Dependent Claim
211 words
A programmable array having a plurality of logic cells arranged in rows and columns therein including a plurality of perimeter logic cells, and a programmable interconnect network for interconnecting logic cells of the plurality of logic cells, the programmable interconnect network comprising a plurality of buses, at least some of the plurality of buses being generally associated with, and connectable to, respective ones of the plurality of logic cells, said programmable array further comprising: a routing network disposed at the perimeter of the array, said routing network comprising a plurality of buses; a plurality of I/O interfaces about the perimeter of the array, such that each of a portion of the plurality of perimeter logic cells has two I/O interfaces corresponding thereto; a plurality of first conductors for programmably connecting at least some of the plurality of I/O interfaces to corresponding logic cells about the perimeter of the array; a plurality of second conductors for programmably connecting the at least some of the plurality of I/O interfaces to corresponding ones of the plurality of buses of the programmable interconnect network; and a plurality of programmable connections for programmably connecting at least some of the plurality of buses of the routing network to at least some of the plurality of second conductors.
Claim 36
Dependent Claim
211 words
A programmable array having a plurality of logic cells arranged in rows and columns therein including a plurality of perimeter logic cells, and a programmable interconnect network for interconnecting logic cells of the plurality of logic cells, the programmable interconnect network comprising a plurality of buses, at least some of the plurality of buses being generally associated with, and connectable to, respective ones of the plurality of logic cells, said programmable array further comprising: a routing network disposed at the perimeter of the array, said routing network comprising a plurality of buses; a plurality of I/O interfaces about the perimeter of the array, such that each of a portion of the plurality of perimeter logic cells has two I/O interfaces corresponding thereto; a plurality of first conductors for programmably connecting at least some of the plurality of I/O interfaces to corresponding logic cells about the perimeter of the array; a plurality of second conductors for programmably connecting the at least some of the plurality of I/O interfaces to corresponding ones of the plurality of buses of the programmable interconnect network; and a plurality of programmable connections for programmably connecting at least some of the plurality of buses of the routing network to at least some of the plurality of second conductors.
Claim 37
Dependent Claim
31 words
The programmable array of claim 33 wherein each of the at least some of the plurality of I/O interfaces comprises: an output path; an input path; and an output enable path.
Claim 38
Dependent Claim
130 words
The programmable array of claim 34 further comprising: a first multiplexer connected to the output enable path of each of the at least some of the plurality of I/O interfaces, the first multiplexer for programmably selecting signals from a first and second conductor corresponding to the respective I/O interface; a second multiplexer connected to the output path of each of the at least some of the plurality of I/O interfaces, the second multiplexer for programmably selecting signals from a first and second conductor corresponding to the respective I/O interface; and a third multiplexer connected to said input path for programmably applying a signal from said input path of each of the at least some of the plurality of I/O interfaces to a respective one of the plurality of second conductors.
Claim 39
Dependent Claim
34 words
The programmable array of claim 35 further comprising fixed logic inputs to at least one of the first and second multiplexers of each of the at least some of the plurality of I/O interfaces.
Claim 40
Dependent Claim
42 words
The programmable array of claim 33 wherein the routing network comprises a plurality of programmable switches, at least some of the plurality of programmable switches being programmable to provide signals between respective ones of the plurality of buses of the routing network.
Claim 41
Dependent Claim
21 words
The programmable array of claim 33 wherein the routing network comprises sixteen buses disposed about the entire perimeter of the array.
References Cited (Backward Citations)
USRE34363E
Cited
US4617479A
Cited
US4774421A
Cited
US4617479B1
Cited
US4609986A
Cited
US4642487A
Cited
US4896296A
Cited
US4757477A
Cited
US4758745B1
Cited
US4758745A
Cited
US4924440A
Cited
US5105388A
Cited
US5329460A
Cited
US5231588A
Cited
US5233539A
Cited
US5140193A
Cited
US5055718A
Cited
US5073729A
Cited
US5144166A
Cited
US5245227A
Cited
US5255221A
Cited
US5245583A
Cited
US5221865A
Cited
US5329180A
Cited
US5282271A
Cited
US5208491A
Cited
US5319254A
Cited
US5317698A
Cited
US5424589A
Cited
US5311080A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2000-09-22 | 2001-03-24 | 2001-09-23 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2004-09-22 | 2005-03-24 | 2005-09-23 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2008-09-22 | 2009-03-24 | 2009-09-23 | $7700.00 | Window Closed / Lapsed |