User programmable integrated circuit interconnect architecture and test method
First Claim
1. In an integrated circuit, an electrically programmable interconnect architecture, comprising:
- a plurality of modules placed in an array, the modules having connection nodes,a plurality of sets of wiring channels, at least some of said sets of wiring channels having at least one wiring channel comprising at least two wiring segments and wherein at least one of said wiring segments is connected to at least one of said connection nodes,a plurality of two-terminal, normally-open, electrically-programmable elements, each of said elements located between selected ones of said wiring segments comprising one of said channels, said programmable elements being characterized by a high impedance before programming and being selectively programmable by the user in order to create a permanent bidirectional low impedance electrical connection between wire segments.
1 Assignment
0 Petitions
Reexaminations
Accused Products
Abstract
A user-programmable interconnect architecture, which may be used for logic arrays for digital and analog system design, is disclosed. In one embodiment, a plurality of logic cells or modules in a matrix are connected by vertical and horizontal wiring channels. The wiring channels may in turn be programmed by the user to interconnect the various logic cells to implement the required logic function. The wiring channels comprise wiring segments connected by normally open programmable elements situated at the intersection of any two segments to be connected. Sensing circuitry and wiring may be included to allow 100% observability of internal circuit nodes, such as module outputs, from an external pad interface.
-
Citations
23 Claims
-
1. In an integrated circuit, an electrically programmable interconnect architecture, comprising:
-
a plurality of modules placed in an array, the modules having connection nodes, a plurality of sets of wiring channels, at least some of said sets of wiring channels having at least one wiring channel comprising at least two wiring segments and wherein at least one of said wiring segments is connected to at least one of said connection nodes, a plurality of two-terminal, normally-open, electrically-programmable elements, each of said elements located between selected ones of said wiring segments comprising one of said channels, said programmable elements being characterized by a high impedance before programming and being selectively programmable by the user in order to create a permanent bidirectional low impedance electrical connection between wire segments. - View Dependent Claims (2, 3, 4)
-
-
5. A user-programmable array logic circuit, comprising:
-
a plurality of logic modules placed on a substrate, the logic modules each having connection nodes, a plurality of first wiring channels running in a first direction, at least one of which is connected to at least one of said connection nodes, a plurality of second wiring channels running in a second direction and disposed in a layer electrically isolated from the layer containing said first wiring channels, intersecting said first wiring channels at intersections, a two-terminal, electrically-programmable, normally-open element joining at least one of the intersection wiring channels, said element being selectively programmable by the user in order to create a permanent bidirectional low-impedance electrical connection between intersecting wiring channels. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A programmable array logic circuit, comprising:
-
a plurality of logic modules placed in any array, said logic modules each having connection nodes, a plurality of sets of wiring channels, at least one of said wiring channels is connected to at least one of said connection nodes, each set of wiring channels having at least one wiring channel comprising at least two wiring segments, at least one said wiring channels being in a direction substantially non-parallel to other ones of said wiring channels, the wiring segments of at least one of the wiring channels being joined in series by series-pass transistors, at least two of said wiring segments of each wiring channel being joined in series by a normally-open, electrically programmable element, at lest two of said wiring segments that intersect each other being connected by programmable elements, programming circuitry connected to said series-pass transistors capable of selectively biasing said series-pass transistors to cause them to conduct or not to conduct.
-
-
16. In a programmable array logic circuit comprising a plurality of logic modules placed in an array, said logic modules each having connection nodes, a plurality of sets of wiring channels, at least one of said wiring channels connected to at least one of said connection nodes, each set of wiring channels having at least one wiring channel comprising at least two wiring segments, the wiring segments of at least one of the wiring channels being joined in series by series-pass transistors, at least two of said wiring segments of each wiring channel being joined in series by a normally-open, electrically programmable element, at least two of said wiring segments that intersect each other being connected by programmable elements, programming circuitry connected to the control elements of said series-pass transistors capable of selectively biasing said series-pass transistors to cause them to conduct or not to conduct, a method of programming a selected programmable element, comprising the steps of:
-
(a) preselecting a group of series-pass transistors to be biased to conduct such that a first complete current path will exist from a source of a first potential to one end of said selected programmable element and a second complete current path will exist from a source of a second potential to the other end of said selected programmable element when said preselected series-pass transistors are biased, (b) biasing said group of series-pass transistors to conduct, and (c) applying said first potential to the end of said first current path furthest from said programmable element and applying said second potential to the end of said second current path furthest from said programmable element, in order to program said selected programmable element not bypassed by a conducting series-pass transistor, thereby creating a permanent bi-directional low-impedance electrical connection between wiring segments at the location of said selected programmable element.
-
-
17. A method of programming preselected one of a plurality of programmable elements, each of said programmable elements being located between two adjacent wiring segments in series in a selected wiring channel, selected ones of said programmable elements being connected in parallel with a series-pass transistor, comprising the steps of:
-
(a) biasing to conduct all series-pass transistors in a portion of the wiring channel that includes the adjacent selected wiring segments, with the exception of the transistor connected in parallel with said preselected programmable element, (b) applying a programming voltage between the ends of said selected wiring channel portion in order to cause a sufficiently high voltage to appear across the preselected programmable element to cause it to be programmed. - View Dependent Claims (19)
-
-
18. A method of programming a preselected programmable element at the intersection of two wire segments of two selected intersecting wiring channels, comprising the steps of:
-
(a) biasing to conduct all series-pass transistors joining each wire segment in each said selected wiring channel, (b) applying a programming voltage between said intersecting wiring channels in order to cause a sufficiently high voltage to appear across the preselected programmable element to cause it to be programmed.
-
-
20. In an integrated circuit, an electrically programmable interconnect architecture, comprising:
-
a plurality of modules placed in an array, the modules having connection nodes, a plurality of sets of wiring channels, each set of wiring channels having at least one wiring channel comprising at least two wiring segments and wherein at least one of said wiring segments is connected to one of said connection nodes, a plurality of normally-open, electrically-programmable elements, each of said elements located between selected ones of said wiring segments, said programmable elements being characterized by a high impedance before programming and being selectively programmable by the user in order to creat a bidirectional low-impedane electrical connection between wiring segments, series-pass transistors connected between selected ones of said wiring segments, each of said series-pass transistors having a control element, selection circuitry connected to said control elements of each of said series-pass transistors. - View Dependent Claims (21)
-
-
22. means for selectively applying a programming voltage to selected ones of said wiring segments.
-
23. In an integrated circuit, an electrically-programmable interconnect architecture, comprising:
-
a plurality of function modules, having connection nodes, a plurality of wiring channels, selected ones of said wiring channels being arranged as at least two wiring segments, at lease one of said wiring segments being connected to one of said connection nodes, a plurality of electrically-programmable elements, connected between selected ones of said wiring segments, series-pass means, connected in parallel with selected ones of said electrically-programmable elements, for temporarily causing electrical connections between said wiring segments to which they are connected, selection means for providing signals to said series-pass means, to cause a said series-pass means to temporarily conduct.
-
Specification