Field programmable gate array having access to orthogonal and diagonal adjacent neighboring cells
AssigneeAtmel Corporation
InventorsFrederick C. Furtek, Martin T. Mason, Robert B. Luking
Life of this patent
Estimating the term…
Abstract
A field programmable gate array (FPGA) comprising a matrix of programmable logic cells, a bus network of local and express bus lines, and a system of perimeter I/O pads is disclosed. Logic cells are directly connected to neighboring nearest cells, including diagonally and orthogonally adjacent cells, and are also connected to local bus lines. Such direct cell-to-cell connections allow both directions of signal propagation. I/O pads connect to cells at the perimeter of the matrix and to the bus network. Preferably, I/O pads are connectable to more than one cell and more than one row or column of bus lines, and each perimeter cell can be connected to any of several I/O pads.
Claims18
A field programmable gate array (FPGA), comprising:
- a matrix of rows and columns of programmable logic cells interconnectable to each other and to input and output terminals of the circuit, each logic cell in the matrix having up to four immediately adjacent orthogonal nearest neighbor logic cells in the same row or column as that logic cell and up to four immediately adjacent diagonal nearest neighbor logic cells located along either of two diagonals of logic cells including that logic cell, each logic cell having direct cell-to-cell input connections to at least one of its immediately adjacent orthogonal nearest neighbor logic cells and also having direct cell-to-cell input connections to at least one of its immediately adjacent diagonal nearest neighbor logic cells, each logic cell further having direct cell-to-cell output connections to the same set of nearest neighbor logic cells as its direct cell-to-cell input connections, each logic cell having first means for selecting one of said orthogonal direct cell-to-cell input connections and second means for selecting one of said diagonal direct cell-to-cell input connections.
A field programmable gate array (FPGA), comprising:
- a matrix of rows and columns of programmable logic cells, each logic cell in the matrix having up to four immediately adjacent diagonal nearest neighbor logic cells located along either of two diagonals of logic cells including that logic cell, each logic cell having direct cell-to-cell input connections and direct cell-to-cell output connections to each of its diagonal nearest neighbor logic cells, each logic cell having means for selecting only from said diagonal direct cell-to-cell connections, and
- a bus network including horizontal and vertical bus lines distributed along the rows and columns of cells, each logic cell having selective bus connections to at least one horizontal bus line and at least one vertical bus line.
A field programmable gate array (FPGA), comprising:
- a matrix of rows and columns of programmable logic cells connectable to each other,
- a set of input/output terminals connectable to outermost logic cells of the matrix, each input/output terminal being connectable directly to cell inputs of an immediately adjacent logic cell and two diagonally adjacent logic cells, at least some of said outermost logic cells of the matrix being connectable to more than one input/output terminal including an immediately adjacent terminal and at least one diagonally adjacent terminal.
A field programmable gate array (FPGA), comprising:
- a plurality of input/output terminals,
- a plurality of programmable logic cells interconnectable to each other and to said input/output terminals, and
- means for connecting each of a plurality of said input/output terminals through direct connections to more than one logic cell, and
- means for connecting each of a plurality of said logic cells through direct connections to more than one input/output terminal,
- wherein said means for connecting each terminal to more than one logic cell and said means for connecting each logic cell to more than one terminal includes signal lines connecting each of a plurality of said terminals through an input buffer to cell inputs of plurality of logic cells.
A field programmable gate array (FPGA), comprising:
- a plurality of input/output terminals,
- a plurality of programmable logic cells interconnectable to each other and to said input/output terminals, and
- means for connecting each of a plurality of said input/output terminals through direct connections to more than one logic cell, and
- means for connecting each of a plurality of said logic cells through direct connections to more than one input/output terminal,
- wherein said means for connecting each terminal to more than one logic cell and said means for connecting each logic cell to more than one terminal includes, for each terminal, signal lines connecting cell outputs from a plurality of logic cells through a multiplexer and an output buffer to that terminal.
A field programmable gate array (FPGA), comprising:
- a plurality of input/output terminals,
- a plurality of programmable logic cells interconnectable to each other and to said input/output terminals, and
- means for connecting each of a plurality of said input/output terminals through direct connections to more than one logic cell, and
- means for connecting each of a plurality of said logic cells through direct connections to more than one input/output terminal,
- wherein each of a plurality of said terminals is connectable by signal lines via a set of switches to one or more bus lines of said bus network.
A field programmable gate array (FPGA), comprising:
- a plurality of input/output terminals,
- a plurality of programmable logic cells interconnectable to each other and to said input/output terminals, and
- means for connecting each of a plurality of said input/output terminals through direct connections to more than one logic cell, and
- means for connecting each of a plurality of said logic cells through direct connections to more than one input/output terminal,
- wherein each of a plurality of said input/output terminals are connectable to a bus network without passing through a cell and
- wherein an output buffer associated with each input/output terminal is selectively dynamically enabled by a logic cell output.
Dependencies are inferred from the claim text.