Intellectual property core protection for integrated circuits
AssigneeXilinx, Inc.
InventorStephen M. Trimberger
Life of this patent
Estimating the term…
Abstract
A method of using an integrated circuit (IC) can include reading a device code from a selected IC, calculating a measure of randomness from a plurality of values specified within the device code, and comparing the measure of randomness to a randomness criterion. A determination can be made as to whether the selected IC is compromised according to the comparison. An intellectual property (IP) protection method can include determining a list of controlled IP cores within a bitstream specifying a circuit design, creating a bitstream identifier within the bitstream that is associated with the list of controlled IP cores, and determining a count specifying a number of integrated circuits loaded with the bitstream.
Claims15
A method of intellectual property protection, the method comprising:
- using a processor, creating a bitstream identifier within a bitstream specifying a circuit design, wherein the bitstream identifier is associated with a list of controlled intellectual property cores;
- reading a device code from an integrated circuit prior to loading the bitstream into the integrated circuit;
- generating a key from the bitstream identifier and the device code;
- modifying the bitstream to specify a security circuit block configured to compare the key to an internal key subsequent to loading the modified bitstream into the integrated circuit;
- and
- loading the modified bitstream into the integrated circuit.
An intellectual property protection system, comprising:
- a first system configured to generate a circuit design, wherein the first system determines a list of controlled intellectual property cores within a bitstream specifying the circuit design, and creates a bitstream identifier within the bitstream;
- a second system, coupled to the first system, configured to determine a count specifying a number of integrated circuits loaded with the bitstream;
- and
- a third system, coupled to the second system, configured to determine usage of each controlled intellectual property core on the list according to the count and the list of controlled intellectual property cores using the bitstream identifier;
- wherein the second system is further configured to:
- for each integrated circuit in which the bitstream is to be loaded,
- read a device code from the integrated circuit prior to loading the bitstream into the integrated circuit;
- generate a key from the bitstream identifier and the device code;
- modify the bitstream to specify a security circuit block configured to compare the key to an internal key subsequent to loading the modified bitstream into the integrated circuit;
- and
- load the modified bitstream into the integrated circuit.
Dependencies are inferred from the claim text.