IP Library Granted Patent US 7,193,436
Granted Patent B2
US 7,193,436 · App. 11/108,927 · Granted Mar 20, 2007

Fast processing path using field programmable gate array logic units

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,193,436
App. No.
11/108,927
Granted
Mar 20, 2007
Kind
B2
Abstract

The described embodiments relate to the general area of Field Programmable Gate Arrays (FPGAs), and, in particular, to the architecture and the structure of the building blocks of the FPGAs. Proposed logic units, as separate units or a chain of units, which are mainly comprised of look-up tables, multiplexers, and latches, implement different mathematical and logical functions. Having two outputs, the embodiments of the logic unit can operate in a split mode and perform two separate logic and/or arithmetic functions at the same time. Chains of the proposed logic units, wherein every other unit is clocked by one of the two half clock cycles and utilizes local interconnections instead of traditional routing channels, add to efficiency and speed, and reduce required real estate.

Claims (42)

1. A field programmable gate array (FPGA) logic head, comprising:

two 3-input look-up tables, six data input ports, four control signals, two data output ports, two latches, two dynamic (standard) multiplexers, and seven hard-wired (programmable) multiplexers; and

a configuration, wherein:

3-input look-up tables, in a split mode, are capable of being used as separate look-up tables, with or without latched outputs;

latches are capable of being used either as separate latches or as one flip-flop;

3-input look-up tables are capable of forming a 4-input look-up table, wherein the 4-input look-up table can be utilized separately, in connection with a latch, or in connection with a flip-flop;

a combination of a 3-input look-up table and a latch is capable of being utilized as a unit in a cascade chain of such units, where every other latch in the chain latches the output of its corresponding look-up table for one half of a clock cycle and the other latches of the chain latch the outputs of their corresponding look-up tables for the other half of the clock cycle;

a combination of the 4-input look-up table and a latch is capable of being utilized as a unit in a cascade chain of such units, where every other latch in the chain latches the output of its corresponding look-up table for one half of a clock cycle and the other latches of the chain latch the outputs of their corresponding look-up tables for the other half of the clock cycle; and

a grouping of a combinational logic and a latch of the logic head is capable of being utilized as a unit in a cascade chain of such units, where every other latch in the chain latches the output of its corresponding combinational logic for one half of the clock cycle and the other latches of the chain latch the outputs of their corresponding combinational logic for the other half of the clock cycle.

2. The logic head of claim 1 , wherein three of the data inputs are shared by the two 3-input look-up tables.

3. The logic head of claim 1 , wherein the latches are two D-latches and each D-latch remains in latched mode at a different half cycle of the clock.

4. The logic head of claim 1 , wherein the control signals are clock, synchronous reset, asynchronous reset, and synchronous load.

5. The logic head of claim 1 , wherein each segment of a split logic head is a part of a separate cascade chain, or both segments of a split logic head are parts of a same cascade chain, and wherein the two split segments of any logic head, participating in the same chain, are capable of either being consecutively arranged or separated from each other within the chain.

6. A field programmable gate array (FPGA), comprising:

two n-input look-up tables, two registers, and multiple multiplexers; and

a configuration, wherein:

n-input look-up tables, in a split mode, are capable of being used as separate combinatorial logic gates, with or without registered outputs;

registers are capable of being used separate from the look-up tables;

registers are capable of being used in combination to form a flip-flop;

the two n-input look-up tables are capable of forming one (n+1)-input look-up table, wherein the (n+1)-input look-up table can be utilized separately, in connection with a register, or in connection with the flip-flop;

a combination of an n-input look-up table and a register is capable of being utilized in a cascade chain of such combinations, where every other register in the chain stores the output of its corresponding look-up table for one half of a clock cycle and the other registers of the chain store the outputs of their corresponding look-up tables for the other half of the clock cycle; and

a grouping of a combinational logic and a register of the logic head is capable of being utilized in a cascade chain of such groupings, where every other register in the chain stores the output of its corresponding combinational logic for one half of the clock cycle and the other registers of the chain store the outputs of their corresponding combinational logic for the other half of the clock cycle.

7. The FPGA of claim 6 , wherein the registers are two D-latches and the flip-flop is a D flip-flop.

8. The FPGA of claim 6 , wherein there are n to 2n inputs, n of which are capable of being shared by both n-input look-up tables, and wherein there are four control signals for clocking, asynchronous and synchronous resetting, and loading.

9. The FPGA of claim 6 , wherein one of the two registers stores its input data at a high half cycle of the clock and the other stores its input data at a low half cycle of the clock.

10. The FPGA of claim 6 , wherein one split part of the FPGA may be used in a registered mode and the other part in a non-registered mode.

11. The FPGA of claim 6 , wherein the FPGA may be used for its look-up tables, for its registers, for its look-up tables and registers but separately, or for a combination of its look-up tables and registers.

12. The FPGA of claim 6 , wherein each part of a split FPGA is a segment of a separate cascade chain, or both parts of the split FPGA are segments of a same cascade chain, and wherein the two parts of any FPGA participating in the same chain are capable of either being consecutively arranged or separated from each other.

13. The FPGA of claim 6 , wherein a combination of the (n+1)-input look-up table and a register may be utilized in a cascade chain of such combinations, where every other (n+1)-input look-up table in the chain is connected to the register of the FPGA that is clocked by the high half cycle of the clock and the other (n+1)-input look-up tables in the chain are connected to the corresponding registers of the FPGAs that are clocked by the low half cycle of the clock.

14. A field programmable gate array (FPGA), comprising:

a means for functioning as two separate n-input combinatorial logic gates, as one (n+1)-input combinatorial logic gate, or as both;

a means for latching the outputs of the n-input combinatorial logic gates, the (n+1)-input combinatorial logic gate, or both;

a means for forming a flip-flop;

a means for operating is a split mode wherein the FPGA is partitioned into two separate n-input combinatorial logic gates that are capable of being utilized with or without latched outputs;

a means for utilizing the (n+1)-input combinatorial logic gate with or without latched output or in combination with the flip-flop; and

a means for latching the output of an n- or the (n+1)-input combinatorial logic gate for either of the two half cycles of a clock pulse.

15. The FPGA of claim 14 , wherein the registers are two D-latches and the flip-flop is a D flip-flop.

16. The FPGA of claim 14 , wherein there are n to 2n inputs, n of which are capable of being shared by the n-input look-up tables, and wherein there are four control signals for clocking, asynchronous and synchronous resetting, and loading.

17. The FPGA of claim 14 , wherein one of the two latches stores its input data at a high half cycle of the clock and the other latch stores its input data at a low half cycle of the clock.

18. The FPGA of claim 14 , wherein one split part of the FPGA may be used in a registered mode and the other part in a non-registered mode.

19. The FPGA of claim 14 , wherein the FPGA may be used for its look-up tables, for its latches, for its look-up tables and latches but separately, or for a combination of its look-up tables and latches.

20. The FPGA of claim 14 , wherein each part of a split FPGA is a segment of a separate cascade chain, or both parts of a split FPGA are segments of same cascade chain, and wherein the two parts of any FPGA participating in the same chain are capable of either being consecutively arranged or reside separated from each other within the chain.

Assignments (10)
SECURITY INTEREST Recorded May 21, 2019
From: LATTICE SEMICONDUCTOR CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 049980/0786 →
RELEASE OF SECURITY INTEREST Recorded May 21, 2019
From: JEFFERIES FINANCE LLC
To: LATTICE SEMICONDUCTOR CORPORATION; SILICON IMAGE, INC.; SIBEAM, INC.; DVDO, INC.
Reel/Frame 049827/0326 →
SECURITY INTEREST Recorded Mar 18, 2015
From: LATTICE SEMICONDUCTOR CORPORATION; SIBEAM, INC.; SILICON IMAGE, INC.; DVDO, INC.
To: JEFFERIES FINANCE LLC
Reel/Frame 035223/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2015
From: LATTICE SEMICONDUCTOR LIMITED
To: LATTICE SEMICONDUCTOR CORPORATION
Reel/Frame 035101/0559 →
MERGER Recorded Apr 9, 2012
From: SILCONBLUE TECHNOLOGIES LTD.
To: LATTICE SEMICONDUCTOR LIMITED
Reel/Frame 028011/0951 →
CHANGE OF NAME Recorded Mar 16, 2012
From: KLP INTERNATIONAL LTD.
To: SILICONBLUE TECHNOLOGIES LTD.
Reel/Frame 027877/0708 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2006
From: KILOPASS TECHNOLOGY, INC.
To: KLP INTERNATIONAL LTD.
Reel/Frame 017945/0678 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2006
From: WANG, MAN; ZAIN, SUHAIL
To: KILOPASS TECHNOLOGY INC.
Reel/Frame 017937/0157 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR: "ZAIN, SUHAIL" TITLE: "FAST PROCESSING PATH USING FIELD PROGRAMMABLE GATE ARRAY LOGIC UNITS" PREVIOUSLY RECORDED ON REEL 016490 FRAME 0519. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR: "ZAIN, SHUHAIL" TITLE: "FAST PROCESSING PATH USING FIELD PROGRAMMABLE GATE ARRAY LOGIC UNIT". Recorded Sep 15, 2005
From: WANG, MAN; SUHAIL, ZAIN
To: KILOPASS TECHNOLOGIES, INC.
Reel/Frame 016542/0960 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2005
From: WANG, MAN; ZAIN, SHUHAIL
To: KILOPASS TECHNOLOGIES, INC.
Reel/Frame 016490/0519 →