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

Programmable logic array integrated circuit incorporating a first-in first-out memory

Assignee: Altera Corp
•
Filing: 1996-05-06
•
Granted: 1998-05-26
•
Expires: 2016-05-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A programmable logic device integrated circuit incorporating a first-in, first-out memory block (250). First-in, first-out memory block (250) is coupled to a programmable interconnect array (213). Signals from the logic array blocks (LABs) (201) are connected to the control inputs of the first-in, first-out memory (250). In one embodiment, the programmable interconnect array (213) may be programmably coupled to the control inputs (259) of the first-in, first-out memory block. Status flag signals (276) from the first-in, first-out memory block (250) are programmably coupled to the programmable interconnect array (213). Data input (263) and data output (261) to first-in, first-out memory block (250) may be coupled to external, off-chip circuitry.

Inventors

  • 👤 Craig S. Lytle
  • 👤 Donald F. Faria

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 02:47
CPC Classifications
H; H03; H03K; H03K19/00; H03K19/02; H03K19/173; H03K19/177; H03K19/17704; G; G11; G11C; G11C19/00; H03K19/17724; H03K19/17728; H03K19/17736; H03K19/17748; H03K19/1776; H03K19/1778; G06; G06F; G06F5/00; G06F5/06; G06F5/10

Claims Analysis

Total Claims: 57
Claim 1
Independent Claim 78 words
A first-in, first-out memory block for a programmable logic device comprising: at least one random access memory; a first clock signal, programmably coupled to synchronize a logic block of said programmable logic device and said at least one random access memory; a read pointer latch, coupled to a read address input of said at least one random access memory; and a write pointer latch, coupled to a write address input of said at least one random access memory.
Claim 2
Dependent Claim 78 words
A first-in, first-out memory block for a programmable logic device comprising: at least one random access memory; a first clock signal, programmably coupled to synchronize a logic block of said programmable logic device and said at least one random access memory; a read pointer latch, coupled to a read address input of said at least one random access memory; and a write pointer latch, coupled to a write address input of said at least one random access memory.
Claim 3
Dependent Claim 46 words
The first-in, first-out memory block of claim 1 further comprising: a read control block, coupled to said read pointer latch and enabled by a control signal from a logic block of said programmable logic device; and a write control block, coupled to said write pointer latch.
Claim 4
Dependent Claim 40 words
The first-in, first-out memory block of claim 1 further comprising: a reset logic block, coupled to said write pointer latch and said read pointer latch, wherein said reset logic block resets said write pointer latch and said read pointer latch.
Claim 5
Dependent Claim 115 words
A first-in, first-out memory block for a programmable logic device comprising: at least one random access memory; a first clock input from a programmable interconnect array of said programmable logic device; a second clock input, programmably coupled to a logic block of said programmable logic device; an input latch, wherein an output of said input latch is coupled to a data input of said at least one random access memory; an output latch, wherein an input of said output latch is coupled to a data output of said at least one random access memory; and an input clock multiplexer, selectively coupling said first clock input or said second clock input to synchronize said input latch.
Claim 6
Dependent Claim 115 words
A first-in, first-out memory block for a programmable logic device comprising: at least one random access memory; a first clock input from a programmable interconnect array of said programmable logic device; a second clock input, programmably coupled to a logic block of said programmable logic device; an input latch, wherein an output of said input latch is coupled to a data input of said at least one random access memory; an output latch, wherein an input of said output latch is coupled to a data output of said at least one random access memory; and an input clock multiplexer, selectively coupling said first clock input or said second clock input to synchronize said input latch.
Claim 7
Dependent Claim 19 words
The first-in, first-out memory block of claim 4 wherein said input latch is programmably configurable as a leading-edge-triggered register.
Claim 8
Dependent Claim 19 words
The first-in, first-out memory block of claim 4 wherein said input latch is programmably configurable as an active-low latch.
Claim 9
Dependent Claim 20 words
The first-in, first-out memory block of claim 4 wherein said input latch is programmably configurable as a direct combinatorial bypass.
Claim 10
Dependent Claim 30 words
The first-in, first-out memory block of claim 4 further comprising: an output clock multiplexer, selectively coupling said first clock input or said second clock input to synchronize said output latch.
Claim 11
Dependent Claim 64 words
The first-in, first-out memory block of claim 4 further comprising: a tristate buffer, coupled to an output of said output latch, wherein an output of said tristate buffer is coupled to an input-output pad of said programmable logic device and said tristate buffer is controlled by an output enable signal, whereby said output enable signal also controls input-output blocks of said programmable logic device.
Claim 12
Dependent Claim 60 words
A first-in, first-out memory block for a programmable logic device comprising: a memory, storing data for said first-in, first-out memory block; and a flag logic block, generating a plurality of control flags indicating a status of said first-in, first-out memory block, wherein said plurality of control flags is programmably coupled to a programmable interconnect array of said programmable logic device.
Claim 13
Dependent Claim 60 words
A first-in, first-out memory block for a programmable logic device comprising: a memory, storing data for said first-in, first-out memory block; and a flag logic block, generating a plurality of control flags indicating a status of said first-in, first-out memory block, wherein said plurality of control flags is programmably coupled to a programmable interconnect array of said programmable logic device.
Claim 14
Dependent Claim 32 words
The first-in, first-out memory block of claim 10 wherein said flag logic block generates a FULL control flag, indicating memory locations are not available for storing data in said first-in, first-out memory.
Claim 15
Dependent Claim 38 words
The first-in, first-out memory block of claim 10 wherein said flag logic block generates an ALMOST FULL control flag, indicating less than a specified number of memory locations are available for storing data in said first-in, first-out memory.
Claim 16
Dependent Claim 36 words
The first-in, first-out memory block of claim 10 wherein said flag logic block generates an ALMOST EMPTY control flag, indicating more than a specified number of memory locations are storing data in said first-in, first-out memory.
Claim 17
Dependent Claim 26 words
The first-in, first-out memory block of claims 12 or 13 wherein said specified number of memory locations is user selectable by configuring said programmable logic device.
Claim 18
Dependent Claim 32 words
The first-in, first-out memory block of claim 10 wherein said flag logic block generates an EMPTY control flag, indicating memory locations are not used for storing data in said first-in, first-out memory.
Claim 19
Dependent Claim 31 words
The first-in, first-out memory block of claim 10 wherein said plurality of control flags may be programmably coupled through said programmable interconnect array to logic elements of said programmable logic device.
Claim 20
Dependent Claim 69 words
A programmable logic device comprising: a plurality of logic elements configurable to perform logical functions; a programmable interconnect array configurable to interconnect signals between said logic elements; and a first-in, first-out memory module comprising: a plurality of flags indicating status information of said first-in, first-out memory module, wherein said plurality of flags may be programmably coupled through said programmable interconnect array to drive logic of said programmable logic device.
Claim 21
Dependent Claim 69 words
A programmable logic device comprising: a plurality of logic elements configurable to perform logical functions; a programmable interconnect array configurable to interconnect signals between said logic elements; and a first-in, first-out memory module comprising: a plurality of flags indicating status information of said first-in, first-out memory module, wherein said plurality of flags may be programmably coupled through said programmable interconnect array to drive logic of said programmable logic device.
Claim 22
Dependent Claim 15 words
The programmable logic device of claim 17 wherein said first-in, first-out memory module is dual-ported.
Claim 23
Dependent Claim 46 words
The programmable logic device of claim 17 wherein said first-in, first-out memory module further comprises: a data input port through which external data is transferred into said first-in, first-out memory; and a data output port through which data is transferred from said first-in, first-out memory externally.
Claim 24
Dependent Claim 55 words
A programmable logic device comprising: a plurality of logic elements configurable to perform logical functions; a programmable interconnect array configurable to interconnect signals between said logic elements; and a first-in, first-out memory module, wherein one of said plurality of logic elements is programmably coupled to drive a control input of said first-in, first-out memory module.
Claim 25
Dependent Claim 55 words
A programmable logic device comprising: a plurality of logic elements configurable to perform logical functions; a programmable interconnect array configurable to interconnect signals between said logic elements; and a first-in, first-out memory module, wherein one of said plurality of logic elements is programmably coupled to drive a control input of said first-in, first-out memory module.
Claim 26
Dependent Claim 21 words
The programmable logic device of claim 20 wherein said one of said plurality of logic elements directly drives said control input.
Claim 27
Dependent Claim 27 words
The programmable logic device of claim 20 wherein said control input is an ENABLE WRITE control for controlling writing of data into said first-in, first-out memory module.
Claim 28
Dependent Claim 27 words
The programmable logic device of claim 20 wherein said control input is an ENABLE READ control for controlling reading of data from said first-in, first-out memory module.
Claim 29
Dependent Claim 25 words
The programmable logic device of claim 20 wherein said control input is a CLEAR control for resetting control logic within said first-in, first-out memory module.
Claim 30
Dependent Claim 59 words
A programmable logic device comprising: a programmable interconnect array configurable to interconnect signals between a plurality of configurable logic elements; and a first-in, first-out memory block, generating an ALMOST FULL flag, user-programmable to indicate a number of unoccupied memory locations in said first-in, first-out memory, wherein said ALMOST FULL flag may be programmably coupled to said programmable interconnect array.
Claim 31
Dependent Claim 59 words
A programmable logic device comprising: a programmable interconnect array configurable to interconnect signals between a plurality of configurable logic elements; and a first-in, first-out memory block, generating an ALMOST FULL flag, user-programmable to indicate a number of unoccupied memory locations in said first-in, first-out memory, wherein said ALMOST FULL flag may be programmably coupled to said programmable interconnect array.
Claim 32
Dependent Claim 25 words
The programmable logic device of claim 25 wherein said ALMOST FULL flag is FALSE when said number of unoccupied memory locations exceeds a user-selected value.
Claim 33
Dependent Claim 59 words
A programmable logic device comprising: a programmable interconnect array configurable to interconnect signals between a plurality of configurable logic elements; and a first-in, first-out memory block, generating an ALMOST EMPTY flag, user-programmable to indicate a number of occupied memory locations in said first-in, first-out memory, wherein said ALMOST EMPTY flag may be programmably coupled to said programmable interconnect array.
Claim 34
Dependent Claim 59 words
A programmable logic device comprising: a programmable interconnect array configurable to interconnect signals between a plurality of configurable logic elements; and a first-in, first-out memory block, generating an ALMOST EMPTY flag, user-programmable to indicate a number of occupied memory locations in said first-in, first-out memory, wherein said ALMOST EMPTY flag may be programmably coupled to said programmable interconnect array.
Claim 35
Dependent Claim 25 words
The programmable logic device of claim 27 wherein said ALMOST EMPTY flag is FALSE when said number of occupied memory locations exceeds a user-selected value.
Claim 36
Dependent Claim 28 words
The programmable logic device of claims 26 or 28 wherein said user-selected value is stored in said programmable logic device using electrically erasable programmable read only memory cells.
Claim 37
Dependent Claim 60 words
A programmable logic device comprising: a plurality of logic elements; a programmable interconnect array configurable to interconnect signals between said plurality of logic elements; a first-in, first-out memory, programmably coupled to said programmable interconnect array; and a clock signal, wherein at least one of said plurality of logic elements and said first-in, first-out memory are synchronized to said clock signal.
Claim 38
Dependent Claim 60 words
A programmable logic device comprising: a plurality of logic elements; a programmable interconnect array configurable to interconnect signals between said plurality of logic elements; a first-in, first-out memory, programmably coupled to said programmable interconnect array; and a clock signal, wherein at least one of said plurality of logic elements and said first-in, first-out memory are synchronized to said clock signal.
Claim 39
Dependent Claim 18 words
The programmable logic device of claim 30 wherein said clock signal is provided through said programmable interconnect array.
Claim 40
Dependent Claim 65 words
A programmable logic device comprising: a plurality of logic elements configurable for performing logical functions; a plurality of input-output blocks, wherein signals from said plurality of logic elements may be output through said plurality of input-output blocks; a programmable interconnect array configurable to interconnect signals between said plurality of logic elements; and; a first-in, first-out memory block, programmably coupled to said plurality of logic elements.
Claim 41
Dependent Claim 65 words
A programmable logic device comprising: a plurality of logic elements configurable for performing logical functions; a plurality of input-output blocks, wherein signals from said plurality of logic elements may be output through said plurality of input-output blocks; a programmable interconnect array configurable to interconnect signals between said plurality of logic elements; and; a first-in, first-out memory block, programmably coupled to said plurality of logic elements.
Claim 42
Dependent Claim 37 words
The programmable logic device of claim 32 further comprising: an output enable signal, whereby output from at least one of said plurality of input-output blocks and said first-in, first-out memory are controlled by said output enable signal.
Claim 43
Dependent Claim 26 words
The programmable logic device of claim 32 wherein said plurality of logic element are programmably coupled through said programmable interconnect array to said first-in, first-out memory.
Claim 44
Dependent Claim 24 words
The programmable logic device of claim 32 wherein signals from said programmable interconnect array are coupled to control inputs of said first-in, first-out memory.
Claim 45
Dependent Claim 23 words
The programmable logic device of claim 35 wherein one of said control inputs of said first-in, first-out memory is an enable read input.
Claim 46
Dependent Claim 23 words
The programmable logic device of claim 35 wherein one of said control inputs of said first-in, first-out memory is an enable write input.
Claim 47
Dependent Claim 22 words
The programmable logic device of claim 35 wherein one of said control inputs of said first-in, first-out memory is a clear input.
Claim 48
Dependent Claim 23 words
The programmable logic device of claim 35 wherein one of said control inputs of said first-in, first-out memory is a write clock input.
Claim 49
Dependent Claim 23 words
The programmable logic device of claim 35 wherein one of said control inputs of said first-in, first-out memory is a read clock input.
Claim 50
Dependent Claim 24 words
The programmable logic device of claim 32 wherein signals from said programmable interconnect array are coupled to address inputs of said first-in, first-out memory.
Claim 51
Dependent Claim 24 words
The programmable logic device of claim 32 wherein signals from said programmable interconnect array are coupled to data inputs of said first-in, first-out memory.
Claim 52
Dependent Claim 22 words
The programmable logic device of claim 32 wherein said first-in, first-out memory generates flag outputs programmably coupled to said programmable interconnect array.
Claim 53
Dependent Claim 69 words
The programmable logic device of claim 32 wherein a memory organization of said first-in, first-out memory is configurable in a first mode, having a first number of bits width and a second number of bits depth, and in a second mode, having a third number of bits width, half said first number of bits width, and a fourth number of bits depth, twice said second number of bits depth.
Claim 54
Dependent Claim 17 words
The programmable logic device of claim 32 wherein said programmable logic device is configurable by in-system programming.
Claim 55
Dependent Claim 100 words
A programmable logic device comprising: a plurality of logic elements configurable for performing logical functions; a plurality of input-output blocks, wherein signals from said plurality of logic elements may be output through said plurality of input-output blocks; a programmable interconnect array configurable to interconnect signals between said plurality of logic elements; and; a first-in, first-out memory, programmably coupled to said plurality of logic elements, wherein said first-in, first-out memory generates a plurality of control flags programmably coupled to said programmable interconnect array, and signals from said programmable interconnect array are programmably coupled to control inputs of said first-in, first-out memory.
Claim 56
Dependent Claim 100 words
A programmable logic device comprising: a plurality of logic elements configurable for performing logical functions; a plurality of input-output blocks, wherein signals from said plurality of logic elements may be output through said plurality of input-output blocks; a programmable interconnect array configurable to interconnect signals between said plurality of logic elements; and; a first-in, first-out memory, programmably coupled to said plurality of logic elements, wherein said first-in, first-out memory generates a plurality of control flags programmably coupled to said programmable interconnect array, and signals from said programmable interconnect array are programmably coupled to control inputs of said first-in, first-out memory.
Claim 57
Dependent Claim 20 words
The programmable logic device of claim 46 wherein said plurality of control flags includes at least one user-programmable control flag.

References Cited (Backward Citations)

US4617479A Cited
US4617479B1 Cited
US4706216A Cited
USRE34444E Cited
US5274600A Cited
US5260610A Cited
WO1995016993A1 Cited
US5406525A Cited
US5572148A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-05-25 2001-11-24 2002-05-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-05-25 2005-11-24 2006-05-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-05-25 2009-11-24 2010-05-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag