Embedded memory for field programmable gate array
AssigneeXilinx, Inc.
InventorThomas A. Kean
Life of this patent
Estimating the term…
Loading patent…
AssigneeXilinx, Inc.
InventorThomas A. Kean
Estimating the term…
A programmable logic device has a configuration memory which is partitioned so that it includes at least one subarray available through the programmable interconnect of the user configurable logic to be used as user memory. Subarrays of the configuration memory have independent access logic coupled with them, and coupled to the user logic array so that they may be used independently as user memories. Subarray memory access logic is provided for each subarray of memory elements, and connected to the logic cell array, and optionally to the plurality of input/output cells on the device, including a subarray decoder used for selecting addressed memory elements in the corresponding subarray in response to address signals and control signals supplied across the interconnect structures of the logic cell array, and a subarray I/O path used to provide input and output data signals between the interconnect structures of the logic cell array and addressed memory elements in the subarray. Thus, each subarray of memory elements, its corresponding subarray decoder and subarray I/O path, are independently configurable in the programmable logic device for use as user memory.
A programmable logic device, comprising:
A programmable logic device, comprising:
A programmable logic device, comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
No related US applications are recorded in the indexed filing history.
Structural details of configuration resources: for memories
Arranged in matrix form: structural details of routing resources
Structural details of routing resources: for input/output signals
Pulse technique
Term ended 23 Oct 2016 (estimated)
USPTO file history isn’t available for this patent, so only indexed dates are shown.
1. Field of the Invention
The present invention relates to integrated circuits, and more particularly to field programable logic devices, such as field programmable gate arrays (FPGAs) having programble core logic, configuration memory for programming the core logic, logic for programming the configuration memory, and interfaces to external pads and pins.
2. Description of Related Art
FIG. 1 shows an FPGA chip and the relationships among external pads, the FPGA user logic structures and the configuration memory according to the prior art.
FIG. 2 shows a structural relationship between a pad, a pad driver, a portion of FPGA core logic, and the FPGA configuration memory, showing a configuration memory subarray according to the present invention.
FIG. 3 illustrates the layout of one example FPGA architecture in which the configuration memory is partitioned into a plurality of subarrays according to the present invention.
The detailed description of a preferred embodiment of the invention is illustrated with respect to FIGS. 2 through 6.
FIG. 2 shows on structural relationship between pads 31, a programmable switch 34, the FPGA user configurable logic 39 (including interconnect resources not shown), and the configuration memory 38, according to the invention. Programmable switch 34 can access both the configuration memory 38 and the user logic 39. Programmable switch 34 can send and receive data to and from user logic 39 as indicated by the bidirectional bus 35 and can also send and receive data from configuration memory 38 as indicated by bidirectional bus 36. FIG. 2 illustrates that the underlying configuration memory 38 controls the pad drivers 33, the programmable switch 34 and the user logic 39. The configuration memory 38 also controls programmable interconnect points in the interconnect structure within the user logic of the FPGA (not shown in this diagram). The pads 31 and pad drivers 33 connect to programmable switch 34. Connections which programmable switch 34 can make include:
1. apply an input signal from a pad 31 to a line of bus 35 to the FPGA user logic 39, thereby allowing a user to apply an input signal to the FPGA user logic;