← Back to Patent Explorer
US5455525A Expired / Lapsed US ⏱️ 0.0 years remaining

Hierarchically-structured programmable logic array and system for interconnecting logic elements in the logic array

Assignee: Xilinx Inc
•
Filing: 1993-12-06
•
Granted: 1995-10-03
•
Expires: 2013-12-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A structured logic array is divided into hierarchical levels. At a highest level (the chip level), blocks are interconnected by a system of chip busses. A block interface couples each block to the chip bus system to allow the blocks to communicate with each other. At a lower level, each block includes sectors, each sector being coupled to a block bus system by a sector interface. The block bus system interconnects the sectors in each block to allow the sectors to communicate with each other. The block bus system is also coupled to the block interface to allow signals to be transferred between the block bus system and the chip bus system. At a lowest level, each sector includes a plurality of logic elements. The logic elements are interconnected by a sector bus system. The sector bus system is coupled to the sector interface to allow for the transfer of signals between the sector bus system and the block bus system.

Inventors

  • 👤 Walford W. Ho
  • 👤 Chao-Chiang Chen
  • 👤 Yuk Y. Yang

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 18:34
CPC Classifications
H; H03; H03K; H03K19/00; H03K19/02; H03K19/173; H03K19/177; H03K19/1778; H03K19/17792; H03K19/17704

Claims Analysis

Total Claims: 37
Claim 1
Independent Claim 93 words
A hierarchically-structured programmable logic array, comprising: a plurality of sectors, each sector comprising: a plurality of logic cells; and a sector bus system for interconnecting said logic cells within said sector; a block bus system disposed externally to said sectors; and an interface for selectively coupling the plurality of sector bus systems to said block bus system, said interface having a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 2
Dependent Claim 93 words
A hierarchically-structured programmable logic array, comprising: a plurality of sectors, each sector comprising: a plurality of logic cells; and a sector bus system for interconnecting said logic cells within said sector; a block bus system disposed externally to said sectors; and an interface for selectively coupling the plurality of sector bus systems to said block bus system, said interface having a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 3
Dependent Claim 57 words
The programmable logic array of claim 1, wherein said interface comprises: a multiplexer having a plurality of multiplexed ports coupled to at least one of said sector bus systems, and a de-multiplexed port; and a bi-directional driver having a first port coupled to said de-multiplexed port, and a second port selectively coupled to said block bus system.
Claim 4
Dependent Claim 105 words
The programmable logic array of claim 1, wherein at least one of said sectors comprises: a plurality of logic cells arranged in rows and columns; a sector bus system comprising: at least one sector row bus disposed between two rows of said logic cells, and selectively coupled to the logic cells in said two rows; and at least one sector column bus disposed between two columns of said logic cells, and selectively coupled to the logic cells in said two columns; and means for selectively coupling at least a portion of said sector row bus to at least a portion of said sector column bus.
Claim 5
Dependent Claim 214 words
A hierarchically-structured programmable logic array, comprising: a plurality of sectors arranged in rows and columns, each sector comprising: a plurality of logic cells; and a sector bus system for interconnecting said logic cells within said sector; at least one block row bus disposed between two rows of said sectors, and adjacent to each of the sectors in said two rows such that said block row bus is accessible to each of the sectors in said two rows, and at least one block column bus disposed between two columns of said sectors, and adjacent to each of the sectors in said two columns, such that said block column bus is accessible to each of the sectors in said two columns, said block row bus and said block column bus forming at least a portion of a block bus system; means for selectively coupling at least a portion of said block row bus to at least a portion of said block column bus; and an interface for selectively coupling the plurality of sector bus systems to said block bus system, said interface having a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 6
Dependent Claim 214 words
A hierarchically-structured programmable logic array, comprising: a plurality of sectors arranged in rows and columns, each sector comprising: a plurality of logic cells; and a sector bus system for interconnecting said logic cells within said sector; at least one block row bus disposed between two rows of said sectors, and adjacent to each of the sectors in said two rows such that said block row bus is accessible to each of the sectors in said two rows, and at least one block column bus disposed between two columns of said sectors, and adjacent to each of the sectors in said two columns, such that said block column bus is accessible to each of the sectors in said two columns, said block row bus and said block column bus forming at least a portion of a block bus system; means for selectively coupling at least a portion of said block row bus to at least a portion of said block column bus; and an interface for selectively coupling the plurality of sector bus systems to said block bus system, said interface having a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 7
Dependent Claim 57 words
The programmable logic array of claim 4, wherein said interface comprises: a multiplexer having a plurality of multiplexed ports coupled to at least one of said sector bus systems, and a de-multiplexed port; and a bi-directional driver having a first port coupled to said de-multiplexed port, and a second port selectively coupled to said block bus system.
Claim 8
Dependent Claim 105 words
The programmable logic array of claim 4, wherein at least one of said sectors comprises: a plurality of logic cells arranged in rows and columns; a sector bus system comprising: at least one sector row bus disposed between two rows of said logic cells, and selectively coupled to the logic cells in said two rows; and at least one sector column bus disposed between two columns of said logic cells, and selectively coupled to the logic cells in said two columns; and means for selectively coupling at least a portion of said sector row bus to at least a portion of said sector column bus.
Claim 9
Dependent Claim 175 words
A hierarchically-structured programmable logic array, comprising: a plurality of blocks; a chip bus system disposed external to said blocks; and a block interface for selectively coupling said blocks to said chip bus system; wherein at least one of said blocks comprises: a plurality of sectors arranged in rows and columns, each sector comprising: a plurality of logic cells; and a sector bus system for interconnecting said logic cells within said sector; a block bus system, coupled selectively to said block interface, comprising: at least one block row bus, disposed between and external to two rows of said sectors, accessible to each of the sectors in said two rows; and at least one block column bus, disposed between and external to two columns of said sectors, accessible to each of the sectors in said two columns; means for coupling at least a portion of said block row bus to at least a portion of said block column bus; and a sector interface for selectively coupling the plurality of sector bus systems to said block bus system.
Claim 10
Dependent Claim 175 words
A hierarchically-structured programmable logic array, comprising: a plurality of blocks; a chip bus system disposed external to said blocks; and a block interface for selectively coupling said blocks to said chip bus system; wherein at least one of said blocks comprises: a plurality of sectors arranged in rows and columns, each sector comprising: a plurality of logic cells; and a sector bus system for interconnecting said logic cells within said sector; a block bus system, coupled selectively to said block interface, comprising: at least one block row bus, disposed between and external to two rows of said sectors, accessible to each of the sectors in said two rows; and at least one block column bus, disposed between and external to two columns of said sectors, accessible to each of the sectors in said two columns; means for coupling at least a portion of said block row bus to at least a portion of said block column bus; and a sector interface for selectively coupling the plurality of sector bus systems to said block bus system.
Claim 11
Dependent Claim 45 words
The programmable logic array of claim 7, wherein said sector interface has a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 12
Dependent Claim 45 words
The programmable logic array of claim 7, wherein said block interface has a K number of lower level ports coupled to said block bus systems, and an N number of higher level ports coupled to said chip bus system, where N is less than K.
Claim 13
Dependent Claim 111 words
The programmable logic array of claim 7, wherein at least one of said sectors comprises: a plurality of logic cells arranged in rows and columns; a sector bus system comprising: at least one sector row bus disposed between and external to two rows of said logic cells, and selectively coupled to the logic cells in said two rows; and at least one sector column bus disposed between and external to two columns of said logic cells, and selectively coupled to the logic cells in said two columns; and means for selectively coupling at least a portion of said sector row bus to at least a portion of said sector column bus.
Claim 14
Dependent Claim 45 words
The programmable logic array of claim 10, wherein said sector interface has a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 15
Dependent Claim 45 words
The programmable logic array of claim 10, wherein said block interface has a K number of lower level ports coupled to said block bus systems, and an N number of higher level ports coupled to said chip bus system, where N is less than K.
Claim 16
Dependent Claim 175 words
A hierarchically-structured programmable logic array, comprising: a plurality of blocks; a chip bus system disposed external to said blocks; and a block interface for selectively coupling said blocks to said chip bus system; wherein at least one of said blocks comprises: a plurality of sectors, each sector comprising: a plurality of logic cells arranged in rows and columns; a sector bus system comprising: at least one sector row bus disposed between two rows of said logic cells, and selectively coupled to the logic cells in said two rows; and at least one sector column bus disposed between two columns of said logic cells, and selectively coupled to the logic cells in said two columns; and means for selectively coupling at least a portion of said sector row bus to at least a portion of said sector column bus; a block bus system disposed external to said sectors, said block bus system selectively coupled to said block interface; and a sector interface for selectively coupling the plurality of sector bus systems to said block bus system.
Claim 17
Dependent Claim 175 words
A hierarchically-structured programmable logic array, comprising: a plurality of blocks; a chip bus system disposed external to said blocks; and a block interface for selectively coupling said blocks to said chip bus system; wherein at least one of said blocks comprises: a plurality of sectors, each sector comprising: a plurality of logic cells arranged in rows and columns; a sector bus system comprising: at least one sector row bus disposed between two rows of said logic cells, and selectively coupled to the logic cells in said two rows; and at least one sector column bus disposed between two columns of said logic cells, and selectively coupled to the logic cells in said two columns; and means for selectively coupling at least a portion of said sector row bus to at least a portion of said sector column bus; a block bus system disposed external to said sectors, said block bus system selectively coupled to said block interface; and a sector interface for selectively coupling the plurality of sector bus systems to said block bus system.
Claim 18
Dependent Claim 45 words
The programmable logic array of claim 13, wherein said sector interface has a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 19
Dependent Claim 45 words
The programmable logic array of claim 13, wherein said block interface has a K number of lower level ports coupled to said block bus systems, and an N number of higher level ports coupled to said chip bus system, where N is less than K.
Claim 20
Dependent Claim 550 words
An array of elements, comprising: a plurality of elements arranged in rows and columns; a plurality of non-segmented row busses, each disposed adjacent to at least one row of said elements, each row bus selectively coupled to an input and an output of each of the elements to which the row bus is adjacent; a plurality Of non-segmented column busses, each disposed adjacent to at least one column of said elements, each column bus selectively coupled to an input and an output of each of the elements to which the column bus is adjacent; and means for selectively coupling at least one of said row busses to at least one of said column busses; wherein the output of any of said elements may be coupled to the input of any of said elements using no more than one row bus, one column bus, and a single coupling between a row bus and a column bus; and wherein at least one of said elements comprises: a first, second, third and fourth multiplexers, each multiplexer having MUX input ports for receiving input signals, and a MUX output port for transmitting a MUX output signal; a first, second, third and fourth programmable inverters, each having an input port, an output port, and a control port, the input port of each of said programmable inverters coupled to the MUX output port of a corresponding one of said multiplexers, each of said programmable inverters responding to a control signal at its control port to provide at its output port an output signal which is either equivalent to the MUX output signal received at the input port, or is an inverted version of the MUX output signal received at the input port; a first NAND gate having inputs and an output the inputs of said first NAND gate coupled to the outputs of said first and second programmable inverters; a second NAND gate having inputs and an output, the inputs of said second NAND gate coupled to the outputs of said third and fourth programmable inverters; a first XOR gate having inputs and an output, the inputs of said first XOR gate coupled to the outputs of said first and second programmable inverters; a second XOR gate having inputs and an output, the inputs of said second XOR gate coupled to the outputs of said third and fourth programmable inverters; a first inverter having an input and an output, the input of said first inverter coupled to the output of said first NAND gate; a second inverter having an input and an output, the input of said second inverter coupled to the output of said second NAND gate; a fifth multiplexer having input ports and an output port, the input ports of said fifth multiplexer coupled to the outputs of said first NAND gate, said first XOR gate, and said first inverter; a sixth multiplexer having input ports and an output port, the input ports of said sixth multiplexer coupled to the outputs of said second NAND gate, said second XOR gate, and said second inverter; and a third NAND gate having inputs and an output, the inputs of said third NAND gate coupled to the outputs of said fifth and sixth multiplexers, the output of said third NAND gate representing an output of said element.
Claim 21
Dependent Claim 550 words
An array of elements, comprising: a plurality of elements arranged in rows and columns; a plurality of non-segmented row busses, each disposed adjacent to at least one row of said elements, each row bus selectively coupled to an input and an output of each of the elements to which the row bus is adjacent; a plurality Of non-segmented column busses, each disposed adjacent to at least one column of said elements, each column bus selectively coupled to an input and an output of each of the elements to which the column bus is adjacent; and means for selectively coupling at least one of said row busses to at least one of said column busses; wherein the output of any of said elements may be coupled to the input of any of said elements using no more than one row bus, one column bus, and a single coupling between a row bus and a column bus; and wherein at least one of said elements comprises: a first, second, third and fourth multiplexers, each multiplexer having MUX input ports for receiving input signals, and a MUX output port for transmitting a MUX output signal; a first, second, third and fourth programmable inverters, each having an input port, an output port, and a control port, the input port of each of said programmable inverters coupled to the MUX output port of a corresponding one of said multiplexers, each of said programmable inverters responding to a control signal at its control port to provide at its output port an output signal which is either equivalent to the MUX output signal received at the input port, or is an inverted version of the MUX output signal received at the input port; a first NAND gate having inputs and an output the inputs of said first NAND gate coupled to the outputs of said first and second programmable inverters; a second NAND gate having inputs and an output, the inputs of said second NAND gate coupled to the outputs of said third and fourth programmable inverters; a first XOR gate having inputs and an output, the inputs of said first XOR gate coupled to the outputs of said first and second programmable inverters; a second XOR gate having inputs and an output, the inputs of said second XOR gate coupled to the outputs of said third and fourth programmable inverters; a first inverter having an input and an output, the input of said first inverter coupled to the output of said first NAND gate; a second inverter having an input and an output, the input of said second inverter coupled to the output of said second NAND gate; a fifth multiplexer having input ports and an output port, the input ports of said fifth multiplexer coupled to the outputs of said first NAND gate, said first XOR gate, and said first inverter; a sixth multiplexer having input ports and an output port, the input ports of said sixth multiplexer coupled to the outputs of said second NAND gate, said second XOR gate, and said second inverter; and a third NAND gate having inputs and an output, the inputs of said third NAND gate coupled to the outputs of said fifth and sixth multiplexers, the output of said third NAND gate representing an output of said element.
Claim 22
Dependent Claim 391 words
A logic cell, comprising: a first, second, third and fourth multiplexers, each multiplexer having MUX input ports for receiving input signals, and a MUX output port for transmitting a MUX output signal; a first, second, third and fourth programmable inverters, each having an input port, an output port, and a control port, the input port of each of said programmable inverters coupled to the MUX output port of a corresponding one of said multiplexers, each of said programmable inverters responding to a control signal at its control port to provide at its output port an output signal which is either equivalent to the MUX output signal received at the input port, or is an inverted version of the MUX output signal received at the input port; a first NAND gate having inputs and an output, the inputs of said first NAND gate coupled to the outputs of said first and second programmable inverters; a second NAND gate having inputs and an output, the inputs of said second NAND gate coupled to the outputs of said third and fourth programmable inverters; a first XOR gate having inputs and an output, the inputs of said first XOR gate coupled to the outputs of said first and second programmable inverters; a second XOR gate having inputs and an output, the inputs of said second XOR gate coupled to the outputs of said third and fourth programmable inverters; a first inverter having an input and an output, the input of said first inverter coupled to the output of said first NAND gate; a second inverter having an input and an output, the input of said second inverter coupled to the output of said second NAND gate; a fifth multiplexer having input ports and an output port, the input ports of said fifth multiplexer coupled to the outputs of said first NAND gate, said first XOR gate, and said first inverter; a sixth multiplexer having input ports and an output port, the input ports of said sixth multiplexer coupled to the outputs of said second NAND gate, said second XOR gate, and said second inverter; and a third NAND gate having inputs and an output, the inputs of said third NAND gate coupled to the outputs of said fifth and sixth multiplexers the output of said third NAND gate representing an output of said logic cell.
Claim 23
Dependent Claim 391 words
A logic cell, comprising: a first, second, third and fourth multiplexers, each multiplexer having MUX input ports for receiving input signals, and a MUX output port for transmitting a MUX output signal; a first, second, third and fourth programmable inverters, each having an input port, an output port, and a control port, the input port of each of said programmable inverters coupled to the MUX output port of a corresponding one of said multiplexers, each of said programmable inverters responding to a control signal at its control port to provide at its output port an output signal which is either equivalent to the MUX output signal received at the input port, or is an inverted version of the MUX output signal received at the input port; a first NAND gate having inputs and an output, the inputs of said first NAND gate coupled to the outputs of said first and second programmable inverters; a second NAND gate having inputs and an output, the inputs of said second NAND gate coupled to the outputs of said third and fourth programmable inverters; a first XOR gate having inputs and an output, the inputs of said first XOR gate coupled to the outputs of said first and second programmable inverters; a second XOR gate having inputs and an output, the inputs of said second XOR gate coupled to the outputs of said third and fourth programmable inverters; a first inverter having an input and an output, the input of said first inverter coupled to the output of said first NAND gate; a second inverter having an input and an output, the input of said second inverter coupled to the output of said second NAND gate; a fifth multiplexer having input ports and an output port, the input ports of said fifth multiplexer coupled to the outputs of said first NAND gate, said first XOR gate, and said first inverter; a sixth multiplexer having input ports and an output port, the input ports of said sixth multiplexer coupled to the outputs of said second NAND gate, said second XOR gate, and said second inverter; and a third NAND gate having inputs and an output, the inputs of said third NAND gate coupled to the outputs of said fifth and sixth multiplexers the output of said third NAND gate representing an output of said logic cell.
Claim 24
Dependent Claim 87 words
The logic cell of claim 17, further comprising: a fifth programmable inverter having an input port, an output port, and a control port, the input port of said fifth programmable inverter coupled to the output of said third NAND gate, said fifth programmable inverter responding to a control signal at its control port to provide at its output port an output signal which is either equivalent to a signal received at its input port, or is an inverted version of the signal received at its input port.
Claim 25
Dependent Claim 177 words
A hierarchically-structured programmable logic array, comprising: a plurality of blocks arranged in rows and columns; a chip bus system comprising: at least one chip row bus, disposed between and external to two rows of said blocks, accessible to each of the blocks in said two rows; and at least one chip column bus, disposed between and external to two columns of said blocks, accessible to each of the blocks in said two columns; means for coupling at least a portion of said chip row bus to at least a portion of said chip column bus; and a block interface for selectively coupling said blocks to said chip bus system; wherein each of said blocks comprises: a plurality of sectors, each sector comprising: a plurality of logic cells; and a sector bus system for interconnecting said logic cells within said sector; a block bus system disposed external to said sectors, said block bus system selectively coupled to said block interface; and a sector interface for selectively coupling the plurality of sector bus systems to said block bus system.
Claim 26
Dependent Claim 177 words
A hierarchically-structured programmable logic array, comprising: a plurality of blocks arranged in rows and columns; a chip bus system comprising: at least one chip row bus, disposed between and external to two rows of said blocks, accessible to each of the blocks in said two rows; and at least one chip column bus, disposed between and external to two columns of said blocks, accessible to each of the blocks in said two columns; means for coupling at least a portion of said chip row bus to at least a portion of said chip column bus; and a block interface for selectively coupling said blocks to said chip bus system; wherein each of said blocks comprises: a plurality of sectors, each sector comprising: a plurality of logic cells; and a sector bus system for interconnecting said logic cells within said sector; a block bus system disposed external to said sectors, said block bus system selectively coupled to said block interface; and a sector interface for selectively coupling the plurality of sector bus systems to said block bus system.
Claim 27
Dependent Claim 45 words
The programmable logic array of claim 19, wherein said sector interface has a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 28
Dependent Claim 45 words
The programmable logic array of claim 19, wherein said block interface has a K number of lower level ports coupled to said block bus systems, and an N number of higher level ports coupled to said chip bus system, where N is less than K.
Claim 29
Dependent Claim 111 words
The programmable logic array of claim 19, wherein at least one of said sectors comprises: a plurality of logic cells arranged in rows and columns; a sector bus system comprising: at least one sector row bus disposed between and external to two rows of said logic cells, and selectively coupled to the logic cells in said two rows; and at least one sector column bus disposed between and external to two columns of said logic cells, and selectively coupled to the logic cells in said two columns; and means for selectively coupling at least a portion of said sector row bus to at least a portion of said sector column bus.
Claim 30
Dependent Claim 45 words
The programmable logic array of claim 22, wherein said sector interface has a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 31
Dependent Claim 45 words
The programmable logic array of claim 22, wherein said block interface has a K number of lower level ports coupled to said block bus systems, and an N number of higher level ports coupled to said chip bus system, where N is less than K.
Claim 32
Dependent Claim 132 words
The programmable logic array of claim 19, wherein at least one of said blocks comprises: a plurality of sectors arranged in rows and columns, each sector comprising: a plurality of logic cells; and a sector bus system for interconnecting said logic cells within said sector; a block bus system, coupled selectively to said block interface, comprising: at least one block row bus, disposed between and external to two rows of said sectors, accessible to each of the sectors in said two rows; and at least one block column bus, disposed between and external to two columns of said sectors, accessible to each of the sectors in said two columns; and means for coupling at least a portion of said block row bus to at least a portion of said block column bus.
Claim 33
Dependent Claim 45 words
The programmable logic array of claim 25, wherein said sector interface has a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 34
Dependent Claim 45 words
The programmable logic array of claim 25, wherein said block interface has a K number of lower level ports coupled to said block bus systems, and an N number of higher level ports coupled to said chip bus system, where N is less than K.
Claim 35
Dependent Claim 111 words
The programmable logic array of claim 25, wherein at least one of said sectors comprises: a plurality of logic cells arranged in rows and columns; a sector bus system comprising: at least one sector row bus disposed between and external to two rows of said logic cells, and selectively coupled to the logic cells in said two rows; and at least one sector column bus disposed between and external to two columns of said logic cells, and selectively coupled to the logic cells in said two columns; and means for selectively coupling at least a portion of said sector row bus to at least a portion of said sector column bus.
Claim 36
Dependent Claim 45 words
The programmable logic array of claim 28, wherein said sector interface has a K number of lower level ports coupled to said sector bus systems, and an N number of higher level ports coupled to said block bus system, where N is less than K.
Claim 37
Dependent Claim 45 words
The programmable logic array of claim 28, wherein said block interface has a K number of lower level ports coupled to said block bus systems, and an N number of higher level ports coupled to said chip bus system, where N is less than K.

References Cited (Backward Citations)

US4268908A Cited
US4870302A Cited
US4642487A Cited
US4866508A Cited
US5175865A Cited
US4847612A Cited
US4942319A Cited
US5243238A Cited
US5144166A Cited
US5296759A Cited
US5260610A Cited
US5260611A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-10-02 1999-04-03 1999-10-03 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-10-02 2003-04-03 2003-10-03 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-10-02 2007-04-03 2007-10-03 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag