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

Field programmable pipeline array

Assignee: Xilinx Inc
•
Filing: 1995-10-04
•
Granted: 1997-07-15
•
Expires: 2015-10-04
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A programmable logic device (PLD) for implementing pipelined designs is described. A pipeline array of registers and function generators, comprises registers and function generators arranged along a line in a first direction, the first direction being a direction of propagation of data signals, and registers and function generators arranged along a line in a second direction, the second direction being a direction of propagation of carry signals and control signals. Each of said function generators is operatively connected by routing resources to at least two of the registers within the pipeline array. A synchronization ring of the PLD comprises shift registers, each of the shift registers being programmable such that its bit length can be adjusted from one bit to a predefined maximum number of bits. The synchronization ring surrounds and is operatively connected by routing resources to the pipeline array. An Input/Output (I/O) ring of the PLD comprises programmable logic resources for processing signals entering and exiting the PLD. The I/O ring surrounds and is operatively connected by routing resources to the synchronization ring.

Inventors

  • 👤 Robert G. Duncan

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 11:37
CPC Classifications
H; H03; H03K; H03K19/00; H03K19/02; H03K19/173; H03K19/177; H03K19/17736; H03K19/1774; H03K19/17744; H03K19/1778; H03K19/17796

Claims Analysis

Total Claims: 44
Claim 1
Independent Claim 81 words
A programmable logic device comprising a pipeline array of registers and function generators, wherein said registers and function generators associated with propagation of data are arranged along a line in a first direction and said registers and function generators associated with propagation of control signals are arranged along a line in a second direction orthogonal to the first direction, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array.
Claim 2
Dependent Claim 81 words
A programmable logic device comprising a pipeline array of registers and function generators, wherein said registers and function generators associated with propagation of data are arranged along a line in a first direction and said registers and function generators associated with propagation of control signals are arranged along a line in a second direction orthogonal to the first direction, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array.
Claim 3
Dependent Claim 29 words
The programmable logic device of claim 1 wherein said pipeline array further comprises registers and function generators associated with propagation of carry signals being arranged along the second direction.
Claim 4
Dependent Claim 54 words
The programmable logic device of claim 1 further comprising a synchronization ring comprising shift registers, each of said shift registers being programmable such that its bit length can be adjusted from one bit to a predefined maximum number of bits, said synchronization ring surrounding and operatively connected by routing resources to said pipeline array.
Claim 5
Dependent Claim 40 words
The programmable logic device of claim 3 further comprising an I/O ring comprising programmable logic resources for processing signals entering and exiting said programmable logic device, said I/O ring surrounding and operatively connected by routing resources to said synchronization ring.
Claim 6
Dependent Claim 16 words
The programmable logic device of claim 1 wherein said function generators are interposed between said registers.
Claim 7
Dependent Claim 138 words
A programmable logic device comprising: a pipeline array of registers and function generators, said registers and function generators arranged along a line in a first direction and along a line in a second direction orthogonal to the first direction, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array; a synchronization ring comprising shift registers, each of said shift registers being programmable such that its bit length can be adjusted from one bit to a predefined maximum number of bits, said synchronization ring surrounding and operatively connected by routing resources to said pipeline array; and an I/O ring comprising programmable logic resources for processing signals entering and exiting said programmable logic device, said I/O ring surrounding and operatively connected by routing resources to said synchronization ring.
Claim 8
Dependent Claim 138 words
A programmable logic device comprising: a pipeline array of registers and function generators, said registers and function generators arranged along a line in a first direction and along a line in a second direction orthogonal to the first direction, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array; a synchronization ring comprising shift registers, each of said shift registers being programmable such that its bit length can be adjusted from one bit to a predefined maximum number of bits, said synchronization ring surrounding and operatively connected by routing resources to said pipeline array; and an I/O ring comprising programmable logic resources for processing signals entering and exiting said programmable logic device, said I/O ring surrounding and operatively connected by routing resources to said synchronization ring.
Claim 9
Dependent Claim 16 words
The programmable logic device of claim 6 wherein said function generators are interposed between said registers.
Claim 10
Dependent Claim 28 words
The programmable logic device of claim 6 wherein said synchronization ring comprises one of said shift registers for each input to and output from said programmable logic device.
Claim 11
Dependent Claim 47 words
The programmable logic device of claim 6 wherein a plurality of said registers are dedicated data registers and a plurality of said dedicated data registers and said function generators form a data path such that data signals propagate in said first direction in said programmable logic device.
Claim 12
Dependent Claim 48 words
The programmable logic device of claim 6 wherein a plurality of said registers are dedicated carry registers and wherein a plurality of said dedicated carry registers and said function generators form a carry path such that carry signals propagate in said second direction in said programmable logic device.
Claim 13
Dependent Claim 30 words
The programmable logic device of claim 9 wherein said pipeline array further comprises a dedicated pipelined control path including dedicated control registers for propagating control signals in said second direction.
Claim 14
Dependent Claim 47 words
The programmable logic device of claim 11 wherein a portion of said pipeline array is programmed to implement pipelined memory, said pipelined memory addressing individual bits independently such that said pipelined memory can be written to in synchronization with said data signals and read from in parallel.
Claim 15
Dependent Claim 35 words
The programmable logic device of claim 11 wherein said plurality of function generators is programmed to implement a one-hot encoded state machine, said state machine supplying said control signals in synchronization with said data signals.
Claim 16
Dependent Claim 85 words
The programmable logic device of claim 6 wherein said function generators are dual function generators, each of said dual function generators comprising a first function generator and a second function generator, said first and said second function generators sharing a same set of said routing resources, said set of routing resources providing input signals to and output signals from said dual function generator, said input signals representing arithmetic operands and a carry in and said output signals representing an arithmetic result and a carry out.
Claim 17
Dependent Claim 220 words
A programmable logic device for implementing pipelined designs, said programmable logic device comprising: a pipeline array of registers and function generators, said registers and function generators arranged along horizontal and vertical axes of said programmable logic device, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array such that said function generators are interposed between said registers and such that at least two output signals from said function generators are stored in said registers; a synchronization ring comprising tapped shift registers, each of said tapped shift registers being programmable such that its bit length can be adjusted from one bit to a predefined maximum number of bits, said tapped shift registers for controlling the number of clock cycles a signal entering or exiting said pipeline array is to be delayed, said synchronization ring for synchronizing signals entering and exiting said pipeline array, said synchronization ring surrounding and operatively connected by routing resources to said pipeline array; and an I/O ring comprising programmable logic resources for processing signals entering and exiting said programmable logic device, said I/O ring for providing an interface between external package pins of said programmable logic device and said synchronization ring, said I/O ring surrounding and operatively connected by routing resources to said synchronization ring.
Claim 18
Dependent Claim 220 words
A programmable logic device for implementing pipelined designs, said programmable logic device comprising: a pipeline array of registers and function generators, said registers and function generators arranged along horizontal and vertical axes of said programmable logic device, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array such that said function generators are interposed between said registers and such that at least two output signals from said function generators are stored in said registers; a synchronization ring comprising tapped shift registers, each of said tapped shift registers being programmable such that its bit length can be adjusted from one bit to a predefined maximum number of bits, said tapped shift registers for controlling the number of clock cycles a signal entering or exiting said pipeline array is to be delayed, said synchronization ring for synchronizing signals entering and exiting said pipeline array, said synchronization ring surrounding and operatively connected by routing resources to said pipeline array; and an I/O ring comprising programmable logic resources for processing signals entering and exiting said programmable logic device, said I/O ring for providing an interface between external package pins of said programmable logic device and said synchronization ring, said I/O ring surrounding and operatively connected by routing resources to said synchronization ring.
Claim 19
Dependent Claim 48 words
The programmable logic device of claim 15 wherein input signals to said function generators are stored in said registers and wherein one of said output signals from said function generators is a sum value and one of said output signals from said function generators is a carry value.
Claim 20
Dependent Claim 55 words
The programmable logic device of claim 15 wherein said synchronization ring comprises one of said tapped shift registers for each input to and output from said programmable logic device, such that each signal entering and exiting said programmable logic device can be delayed from zero clock cycles to a predefined maximum number of clock cycles.
Claim 21
Dependent Claim 48 words
The programmable logic device of claim 17 wherein a plurality of said tapped shift registers are dedicated tapped control shift registers for forming a dedicated control path and wherein a plurality of said tapped shift register are dedicated tapped carry shift registers for forming a dedicated carry path.
Claim 22
Dependent Claim 49 words
The programmable logic device of claim 18 wherein a plurality of said registers are data registers and wherein a plurality of said data registers and a plurality of said function generators are oriented horizontally for forming a horizontal path along which data signals propagate in said programmable logic device.
Claim 23
Dependent Claim 35 words
The programmable logic device of claim 19 wherein a plurality of said registers are control registers and are oriented vertically for forming a vertical path along which control signals propagate in said programmable logic device.
Claim 24
Dependent Claim 46 words
The programmable logic device of claim 15 wherein a plurality of said registers are carry registers and wherein a plurality of said carry registers and said function generators are oriented vertically for forming a vertical path along which carry signals propagate in said programmable logic device.
Claim 25
Dependent Claim 42 words
The programmable logic device of claim 20 wherein a plurality of said function generators and said registers are programmed to implement pipelined memory, said control registers addressing individual bits independently and writing to said pipelined memory in synchronization with said data signals.
Claim 26
Dependent Claim 35 words
The programmable logic device of claim 20 wherein said plurality of function generators is programmed to implement a one-hot encoded state machine, said state machine supplying said control signals in synchronization with said data signals.
Claim 27
Dependent Claim 81 words
The programmable logic device of claim 15 wherein said function generators are dual function generators, each of said dual function generators comprising a first function generator and a second function generator, said first and said second function generators sharing a same set of said routing resources, said set of routing resources providing input signals to and output signals from said dual function generator, said dual function generator for outputting both an arithmetic sum and an arithmetic carry given said input signals.
Claim 28
Dependent Claim 151 words
An integrated circuit apparatus comprising: a pipeline array of registers and function generators, said registers and function generators arranged along horizontal and vertical axes of said integrated circuit apparatus, said function generators being interposed between said registers, said function generators being programmable to represent any Boolean function, each of said function generators being operatively connected by programmable routing resources to at least two of said registers within said pipeline array; a synchronization ring comprising tapped shift registers, each of said tapped shift registers being programmable such that its bit length can be adjusted from one bit to a predefined maximum number of bits, said synchronization ring surrounding and operatively connected by programmable routing resources to said pipeline array; and an I/O ring comprising programmable logic resources for processing signals entering and exiting said integrated circuit apparatus, said I/O ring surrounding and operatively connected by programmable routing resources to said synchronization ring.
Claim 29
Dependent Claim 151 words
An integrated circuit apparatus comprising: a pipeline array of registers and function generators, said registers and function generators arranged along horizontal and vertical axes of said integrated circuit apparatus, said function generators being interposed between said registers, said function generators being programmable to represent any Boolean function, each of said function generators being operatively connected by programmable routing resources to at least two of said registers within said pipeline array; a synchronization ring comprising tapped shift registers, each of said tapped shift registers being programmable such that its bit length can be adjusted from one bit to a predefined maximum number of bits, said synchronization ring surrounding and operatively connected by programmable routing resources to said pipeline array; and an I/O ring comprising programmable logic resources for processing signals entering and exiting said integrated circuit apparatus, said I/O ring surrounding and operatively connected by programmable routing resources to said synchronization ring.
Claim 30
Dependent Claim 29 words
The integrated circuit device of claim 25 wherein said synchronization ring comprises one of said tapped shift registers for each input to and output from said integrated circuit device.
Claim 31
Dependent Claim 110 words
The integrated circuit device of claim 25 wherein: a plurality of said registers are data registers and wherein a plurality of said data registers and said function generators form a data path such that data signals propagate horizontally in said integrated circuit device; a plurality of said registers are control registers and wherein a plurality of said control registers form a control path such that control signals propagate vertically in said integrated circuit device; and a plurality of said registers are carry registers and wherein a plurality of said carry registers and said function generators form a carry path such that carry signals propagate vertically in said integrated circuit device.
Claim 32
Dependent Claim 45 words
The integrated circuit device of claim 27 wherein a plurality of said function generators and said control registers are programmed to implement pipelined memory, said pipelined memory addressing individual bits independently such that said pipelined memory can be written in synchronization with said data signals.
Claim 33
Dependent Claim 39 words
The integrated circuit device of claim 27 wherein said plurality of function generators and said control registers are programmed to implement a one-hot encoded state machine, said state machine supplying said control signals in synchronization with said data signals.
Claim 34
Dependent Claim 82 words
The programmable logic device of claim 25 wherein said function generators are dual function generators, each of said dual function generators comprising a first function generator and a second function generator, said first and said second function generators sharing a same set of said routing resources, said set of routing resources providing input signals to and output signals from said dual function generator, said dual function generator programmable to output both an arithmetic sum and an arithmetic carry given said input signals.
Claim 35
Independent Claim 97 words
A method for implementing a pipelined operation in a PLD, the method comprising the steps of: receiving data samples, the data samples being stored in registers arranged along a first direction in a pipeline array of the PLD; receiving control signals, the control signals being stored in registers arranged along a second direction in the pipeline array of the PLD; performing an operation on the data samples using logic resources arranged along the first direction in the PLD; and synchronizing the control signals to the data samples such that operations are performed simultaneously on different data samples.
Claim 36
Independent Claim 97 words
A method for implementing a pipelined operation in a PLD, the method comprising the steps of: receiving data samples, the data samples being stored in registers arranged along a first direction in a pipeline array of the PLD; receiving control signals, the control signals being stored in registers arranged along a second direction in the pipeline array of the PLD; performing an operation on the data samples using logic resources arranged along the first direction in the PLD; and synchronizing the control signals to the data samples such that operations are performed simultaneously on different data samples.
Claim 37
Dependent Claim 134 words
A programmable logic device comprising: a pipeline array of registers and function generators, said registers and function generators arranged along a line in a first direction and along a line in a second direction orthogonal to the first direction, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array; dual function generators, each of said dual function generators comprising a first function generator and a second function generator, said first and said second function generators sharing a same set of said routing resources, said set of routing resources providing input signals to and output signals from said dual function generator, said input signals representing arithmetic operands and a carry in and said output signals representing an arithmetic result and a carry out.
Claim 38
Dependent Claim 134 words
A programmable logic device comprising: a pipeline array of registers and function generators, said registers and function generators arranged along a line in a first direction and along a line in a second direction orthogonal to the first direction, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array; dual function generators, each of said dual function generators comprising a first function generator and a second function generator, said first and said second function generators sharing a same set of said routing resources, said set of routing resources providing input signals to and output signals from said dual function generator, said input signals representing arithmetic operands and a carry in and said output signals representing an arithmetic result and a carry out.
Claim 39
Dependent Claim 54 words
The programmable logic device of claim 32 further comprising; a synchronization ring comprising shift registers, each of said shift registers being programmable such that its bit length can be adjusted from one bit to a predefined maximum number of bits, said synchronization ring surrounding and operatively connected by routing resources to said pipeline array.
Claim 40
Dependent Claim 40 words
The programmable logic device of claim 32 further comprising an I/O ring comprising programmable logic resources for processing signals entering and exiting said programmable logic device, said I/O ring surrounding and operatively coupled by routing resources to said pipeline array.
Claim 41
Dependent Claim 110 words
A programmable logic device for implementing a RAM wherein a pipelined data word is written to the RAM in serial and read out of the RAM in parallel, the programmable logic device comprising: a pipeline array of registers and function generators, wherein said registers and function generators associated with propagation of address signals are arranged along a line in a first direction and said registers and function generators associated with propagation of data signals are arranged along a line in a second direction orthogonal to the first direction, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array.
Claim 42
Dependent Claim 110 words
A programmable logic device for implementing a RAM wherein a pipelined data word is written to the RAM in serial and read out of the RAM in parallel, the programmable logic device comprising: a pipeline array of registers and function generators, wherein said registers and function generators associated with propagation of address signals are arranged along a line in a first direction and said registers and function generators associated with propagation of data signals are arranged along a line in a second direction orthogonal to the first direction, each of said function generators being operatively connected by routing resources to at least two of said registers within said pipeline array.
Claim 43
Dependent Claim 42 words
The programmable logic device of claim 35 further comprising: a write port address decoder for decoding an address of a bit of the pipelined data word, the bit of the pipelined data word being written to a register in a clock cycle.
Claim 44
Dependent Claim 37 words
The programmable logic device of claim 35 further comprising: a read port address decoder for decoding an address of the pipelined data word, the pipelined data word being read from the pipeline array in one clock cycle.

References Cited (Backward Citations)

US4414547A Cited
US4963770A Cited
US5023606A Cited
US5243238A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-07-14 2001-01-13 2001-07-15 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-07-14 2005-01-13 2005-07-15 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-07-14 2009-01-13 2009-07-15 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag