← Back to Patent Explorer
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
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

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 11:36
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.

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag