Claims Analysis
Total Claims: 30
Claim 1
Independent Claim
112 words
An FPGA with RAM comprising: a plurality of logic blocks arranged in rows and columns; a plurality of RAM blocks dedicated to the RAM function and arranged in columns, said RAM blocks having address ports and data ports; an interconnect structure comprising conductive lines arranged in rows; a set of vertical lines for carrying only address signals, each line in the set of vertical lines programmably driving said address ports of a column of more than one of said RAM blocks; means for connecting said logic blocks to said interconnect structure; means for connecting said vertical lines to said interconnect structure; and means for connecting said address ports to said vertical lines.
Claim 2
Dependent Claim
112 words
An FPGA with RAM comprising: a plurality of logic blocks arranged in rows and columns; a plurality of RAM blocks dedicated to the RAM function and arranged in columns, said RAM blocks having address ports and data ports; an interconnect structure comprising conductive lines arranged in rows; a set of vertical lines for carrying only address signals, each line in the set of vertical lines programmably driving said address ports of a column of more than one of said RAM blocks; means for connecting said logic blocks to said interconnect structure; means for connecting said vertical lines to said interconnect structure; and means for connecting said address ports to said vertical lines.
Claim 3
Dependent Claim
16 words
An FPGA with RAM as in claim 1 further comprising: means for segmenting said vertical lines.
Claim 4
Dependent Claim
18 words
An FPGA with RAM as in claim 2 wherein some of said means for segmenting are bidirectional buffers.
Claim 5
Dependent Claim
18 words
An FPGA with RAM as in claim 2 wherein some of said means for segmenting are pass transistors.
Claim 6
Dependent Claim
26 words
An FPGA with RAM as in claim 3 wherein said bidirectional buffers segment a line into line segments, each segment being adjacent to a RAM block.
Claim 7
Dependent Claim
38 words
An FPGA with RAM as in claim 1 wherein some of said RAM blocks comprise dual port RAMs having two address ports and at least two data ports, all such address ports being accessible by said vertical lines.
Claim 8
Dependent Claim
23 words
An FPGA with RAM as in claim 1 wherein each of said RAM blocks can be configured to a plurality of length-to-width ratios.
Claim 9
Dependent Claim
18 words
An FPGA with RAM as in claim 1 wherein each of said RAM blocks spans four logic blocks.
Claim 10
Dependent Claim
98 words
An FPGA with RAM as in claim 2, further comprising: a group of vertical data lines for carrying only data signals, each group programmably driving said data ports of a column of more than one of said RAM blocks; means for connecting said data lines to said interconnect structure; means for connecting said data ports to said data lines; and means for segmenting said data lines; wherein a first one of said RAM blocks is connectable to different ones of said data lines from a second one of said RAM blocks vertically adjacent to said first RAM block.
Claim 11
Dependent Claim
77 words
An FPGA with RAM as in claim 9 wherein a first one of said group of data lines driving said first RAM block can be connected without utilizing said interconnect structure to a different one of said group of data lines driving said second RAM block such that a signal driving a given data port in said first RAM block does not conflict with a signal driving the same given data port in said second RAM block.
Claim 12
Dependent Claim
164 words
An FPGA with RAM blocks comprising: a plurality of logic blocks arranged in rows and columns; a plurality of general interconnect lines; a plurality of RAM blocks each comprising: a plurality of RAMs dedicated to the RAM function, each being addressed by a dedicated address bus and accessed by at least one dedicated data bus, and being enabled by at least one enable line; and means for connecting each line in each of said address bus and said data bus to at least one of said general interconnect lines; and means for programmably connecting each enable line, each line in each of said address bus and said at least one data bus in one of said RAM blocks to a corresponding line in another of said RAM blocks, whereby a larger RAM is formed having a programmable configuration; said data bus in one of said RAM blocks being connected to a data bus in another of said RAM blocks through a tristatable bidirectional connector.
Claim 13
Dependent Claim
164 words
An FPGA with RAM blocks comprising: a plurality of logic blocks arranged in rows and columns; a plurality of general interconnect lines; a plurality of RAM blocks each comprising: a plurality of RAMs dedicated to the RAM function, each being addressed by a dedicated address bus and accessed by at least one dedicated data bus, and being enabled by at least one enable line; and means for connecting each line in each of said address bus and said data bus to at least one of said general interconnect lines; and means for programmably connecting each enable line, each line in each of said address bus and said at least one data bus in one of said RAM blocks to a corresponding line in another of said RAM blocks, whereby a larger RAM is formed having a programmable configuration; said data bus in one of said RAM blocks being connected to a data bus in another of said RAM blocks through a tristatable bidirectional connector.
Claim 14
Dependent Claim
56 words
An FPGA as in claim 11 in which said means for programmably connecting each enable line, each line in each of said address bus and said at least one data bus in one of said RAM blocks to a corresponding line in another of said RAM blocks comprises a bidirectional buffer for making each programmable connection.
Claim 15
Dependent Claim
56 words
An FPGA as in claim 11 in which said means for programmably connecting each enable line, each line in each of said address bus and said at least one data bus in one of said RAM blocks to a corresponding line in another of said RAM blocks comprises a pass gate for making each programmable connection.
Claim 16
Dependent Claim
77 words
An FPGA as in claim 11 in which said means for programmably connecting each enable line, each line in each of said address bus and said at least one data bus in one of said RAM blocks to a corresponding line in another of said RAM blocks comprises at least one bidirectional buffer for making a corresponding at least one programmable connection, and at least one pass transistor for making a corresponding at least one programmable connection.
Claim 17
Dependent Claim
52 words
An FPGA as in claim 14 in which said at least one bidirectional buffer comprises bidirectional buffers for connecting all lines which provide input signals to one of said RAMs and said at least one pass transistor comprises pass transistors for connecting all lines which provide output from one of said RAMs.
Claim 18
Dependent Claim
27 words
An FPGA as in claim 11 in which said at least one enable line is a plurality of enable lines providing input signals to a decoder 132!.
Claim 19
Dependent Claim
211 words
An FPGA with RAM blocks comprising: a plurality of logic blocks arranged in rows and columns; a plurality of general interconnect lines; a plurality of RAM blocks each comprising: a plurality of RAMs dedicated to the RAM function, each being addressed by an address bus and accessed by at least one data bus, and being enabled by at least one enable line; and means for connecting each line in each of said address bus and said data bus to at least one of said general interconnect lines; and means for programmably connecting each enable line, each line in each of said address bus and said at least one data bus in one of said RAM blocks to a corresponding line in another of said RAM blocks, whereby a larger RAM is formed having a programmable configuration, wherein: said data bus in one of said RAM blocks is connected to a data bus in another of said RAM blocks through a tristatable bidirectional connector; said at least one enable line is a plurality of enable lines providing input signals to a decoder; and said decoder comprises a plurality of multiplexers each controlled by one of said enable lines, said multiplexers each receiving a plurality of multiplexer input signals having a selectable value.
Claim 20
Dependent Claim
211 words
An FPGA with RAM blocks comprising: a plurality of logic blocks arranged in rows and columns; a plurality of general interconnect lines; a plurality of RAM blocks each comprising: a plurality of RAMs dedicated to the RAM function, each being addressed by an address bus and accessed by at least one data bus, and being enabled by at least one enable line; and means for connecting each line in each of said address bus and said data bus to at least one of said general interconnect lines; and means for programmably connecting each enable line, each line in each of said address bus and said at least one data bus in one of said RAM blocks to a corresponding line in another of said RAM blocks, whereby a larger RAM is formed having a programmable configuration, wherein: said data bus in one of said RAM blocks is connected to a data bus in another of said RAM blocks through a tristatable bidirectional connector; said at least one enable line is a plurality of enable lines providing input signals to a decoder; and said decoder comprises a plurality of multiplexers each controlled by one of said enable lines, said multiplexers each receiving a plurality of multiplexer input signals having a selectable value.
Claim 21
Dependent Claim
19 words
An FPGA as in claim 17 in which said multiplexer input signals are each stored in a memory cell.
Claim 22
Dependent Claim
112 words
An FPGA with RAM comprising: a plurality of logic blocks arranged in rows and columns; a plurality of RAM blocks dedicated to the RAM function and arranged in columns, said RAM blocks having address ports and data ports; an interconnect structure comprising conductive lines arranged in rows; a set of vertical lines for carrying only data signals, each line in the set of vertical lines programmably driving said data ports of a column of more than one of said RAM blocks; means for connecting said logic blocks to said interconnect structure; means for connecting said vertical lines to said interconnect structure; and means for connecting said data ports to said vertical lines.
Claim 23
Dependent Claim
112 words
An FPGA with RAM comprising: a plurality of logic blocks arranged in rows and columns; a plurality of RAM blocks dedicated to the RAM function and arranged in columns, said RAM blocks having address ports and data ports; an interconnect structure comprising conductive lines arranged in rows; a set of vertical lines for carrying only data signals, each line in the set of vertical lines programmably driving said data ports of a column of more than one of said RAM blocks; means for connecting said logic blocks to said interconnect structure; means for connecting said vertical lines to said interconnect structure; and means for connecting said data ports to said vertical lines.
Claim 24
Dependent Claim
16 words
An FPGA with RAM as in claim 19 further comprising: means for segmenting said vertical lines.
Claim 25
Dependent Claim
18 words
An FPGA with RAM as in claim 20 wherein some of said means for segmenting are bidirectional buffers.
Claim 26
Dependent Claim
18 words
An FPGA with RAM as in claim 20 wherein some of said means for segmenting are pass transistors.
Claim 27
Dependent Claim
26 words
An FPGA with RAM as in claim 21 wherein said bidirectional buffers segment a line into line segments, each segment being adjacent to a RAM block.
Claim 28
Dependent Claim
38 words
An FPGA with RAM as in claim 19 wherein some of said RAM blocks comprise dual port RAMs having two address ports and at least two data ports, all such data ports being accessible by said vertical lines.
Claim 29
Dependent Claim
23 words
An FPGA with RAM as in claim 19 wherein each of said RAM blocks can be configured to a plurality of length-to-width ratios.
Claim 30
Dependent Claim
18 words
An FPGA with RAM as in claim 19 wherein each of said RAM blocks spans four logic blocks.