Method for programming complex PLD having more than one function block type
First Claim
1. A computer implemented method for configuring a programmable logic device to implement a logic function, the programmable logic device including a first type of function block and a second type of function block the method comprising the steps of:
- mapping portions of the logic function into the first type of function block providing a first speed and into the second type of function block providing a second speed, wherein the first speed is greater than the second speed;
identifying portions of the logic function which are not mapped in the first type of function block and which qualify for implementation in the first type of function block; and
if the first type of function block includes sufficient unassigned resources to implement a selected identified qualified portion, then mapping the selected identified qualified portion into the first type of function block.
3 Assignments
0 Petitions
Accused Products
Abstract
A method for programming programmable logic devices (PLDs) having multiple function block types to implement a logic function, whereby the logic function is mapped into one of the function block types before being mapped into the remaining function block types. In one embodiment, a PLD containing both "fast" function blocks (FFBs) and "high density" function blocks (HDFBs) are programmed such that the FFBs are programmed prior to the HDFBs. This method maximizes the overall speed of an implemented logic function.
-
Citations
20 Claims
-
1. A computer implemented method for configuring a programmable logic device to implement a logic function, the programmable logic device including a first type of function block and a second type of function block the method comprising the steps of:
-
mapping portions of the logic function into the first type of function block providing a first speed and into the second type of function block providing a second speed, wherein the first speed is greater than the second speed; identifying portions of the logic function which are not mapped in the first type of function block and which qualify for implementation in the first type of function block; and if the first type of function block includes sufficient unassigned resources to implement a selected identified qualified portion, then mapping the selected identified qualified portion into the first type of function block. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer implemented method for configuring a programmable logic device to implement a logic function, the programmable logic device including a first type of function block and a second type of function block, the method comprising the steps of:
-
mapping portions of the logic function into the first type of function block providing a first speed and into the second type of function block providing a second speed, wherein the first speed is greater than the second speed; identifying portions of the logic function which are not mapped in the first type of function block and which qualify for implementation in the first type of function block; mapping the identified qualified portions of the logic function into the first type of function block until the first type of function block is fully utilized; and mapping any remaining identified qualified portions of the logic function into the second type of function block. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer implemented method for configuring a programmable logic device to implement a logic function, the programmable logic device including a first type of function block and a second type of function block, the method comprising the steps of:
-
mapping portions of the logic function into the first type of function block providing first speed and into the second type of function block providing a second speed, wherein the first speed is greater than the second speed; identifying portions of the logic function which are mapped into the second type of function block and which qualify for implementation in the first type of function block; unmapping the identified qualified portions from the second type of function block; and mapping the unmapped identified qualified portions into the first type of function block. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification