IP Library Granted Patent US 9,390,210
Granted Patent B2
US 9,390,210 · App. 14/509,564 · Granted Jul 12, 2016

Logic absorption techniques for programmable logic devices

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 9,390,210
App. No.
14/509,564
Granted
Jul 12, 2016
Kind
B2
Abstract

Various techniques are provided to efficiently implement user designs in programmable logic devices (PLDs). In one example, a computer-implemented method includes receiving a design identifying operations to be performed by a programmable logic device (PLD). The computer-implemented method also includes synthesizing the design into a plurality of PLD components comprising a first logic block cascaded into a second logic block. In the computer-implemented method, the second logic block implements a multiplexer adapted to selectively pass a first multi-bit input signal received from the first logic block or a second multi-bit input signal. The computer-implemented method also includes further synthesizing the design to absorb the multiplexer into the first logic block.

Claims (38)

1. A method performed by a processor configured to comprising:

receiving, in the processor, a design identifying operations to be performed by a programmable logic device (PLD);

synthesizing, in the processor, the design into a plurality of PLD components comprising a first logic block cascaded into a second logic block, wherein the first logic block comprises a plurality of look-up tables (LUTs) to perform an operation to provide a multi-bit signal;

wherein the second logic block implements a multiplexer adapted to selectively pass the multi-bit signal;

further synthesizing in the processor, the design to absorb the multiplexer into the first logic block the further synthesizing comprising identifying at least one unused input of each LUT of the first logic block; and

generating configuration data to configure physical components of the PLD in accordance with the further synthesized design.

2. The computer-implemented method of claim 1 , wherein a first data signal is configured to alternate between a constant data value and its complement to selectively pass a first input signal or a second input signal.

3. The computer-implemented method of claim 1 , wherein the operation is a multi-bit addition operation performed on first and second data signals.

4. The computer-implemented method of claim 1 , wherein the first logic block further comprises a carry chain to perform the operation.

5. The computer-implemented method of claim 1 , wherein the first logic block comprises a plurality of logic cells;

each LUT is associated with a corresponding one of the logic cells.

6. The computer-implemented method of claim 1 , wherein: the multiplexer comprises a plurality of one-bit-wide multiplexers; and each LUT is a four-input LUT.

7. The computer-implemented method of claim 6 , wherein:

each one-bit-wide multiplexer has a fan-in size of two.

8. The computer-implemented method of claim 1 , further comprising:

programming the PLD with the configuration data.

9. A system comprising:

a processor; and

a memory adapted to store a plurality of computer readable instructions which when executed by the processor are adapted to cause the system to perform a computer-implemented method comprising:

receiving a design identifying operations to be performed by a programmable logic device (PLD),

synthesizing the design into a plurality of PLD components comprising a first logic block cascaded in to a second logic block the first logic block comprising a plurality of look-up tables (LUTs) to perform an operation to provide a first multi-bit input signal,

wherein the second logic block implements a multiplexer adapted to selectively pass the first multi-bit input signal received from the first logic block or a second multi-bit input signal, and

further synthesizing the design to absorb the multiplexer into the first logic block.

10. The system of claim 9 , wherein the operation is a multi-bit addition operation performed on first and second data signals.

11. The system of claim 9 , wherein the first logic block further comprises a carry chain to perform the operation.

12. The system of claim 9 , wherein:

the first logic block comprises a plurality of logic cells; and

each LUT is associated with a corresponding one of the logic cells.

13. The system of claim 9 , wherein:

the multiplexer comprises a plurality of one-bit-wide multiplexers; and each LUT is associated with a corresponding one of the logic cells.

14. The system of claim 9 , wherein the computer-implemented method further comprises:

generating configuration data to configure physical components of the PLD in accordance with the further synthesized design; and

programming the PLD with the configuration data.

15. A non-transitory machine-readable medium storing a plurality of machine-readable instructions which when executed by one or more processors of a computer system are adapted to cause the computer system to perform a computer-implemented method comprising:

receiving a design identifying operations to be performed by a programmable logic device (PLD),

synthesizing the design into a plurality of PLD components comprising a first logic block cascaded in to a second logic block the first logic block comprising a plurality of look-up tables (LUTs) to perform an operation to provide a first multi-bit input signal,

wherein the second logic block implements a multiplexer adapted to selectively pass the first multi-bit input signal received from the first logic block or a second multi-bit input signal, and

further synthesizing the design to absorb the multiplexer into the first logic block.

Assignments (4)
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 24, 2015
From: LATTICE SEMICONDUCTOR CORPORATION; SIBEAM, INC.; SILICON IMAGE, INC.; DVDO, INC.
To: JEFFERIES FINANCE LLC
Reel/Frame 035309/0142 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2014
From: CHATTERJEE, NILANJAN; RAJAPPAN, VENKATESAN; TANDYALA, MOHAN
To: LATTICE SEMICONDUCTOR CORPORATION
Reel/Frame 033913/0283 →