Secure exchange of IP cores
First Claim
Patent Images
1. A method comprising:
- configuring a trusted loader on a target device;
disabling external partial reconfiguration access after said configuring, wherein said target device includes an internal configuration access port that is accessible to said trusted loader for partially programming said target device;
accessing a communications network by said trusted loader and submitting a request for an encrypted IP core from an IP core vendor via said communications network by the trusted loader;
downloading said encrypted IP core from said IP core vendor directly to said target device by said trusted loader via said communications network without passing through a user development system, said target device comprises a programmable device;
generating a decrypted IP core by decrypting said encrypted IP core by said trusted loader;
determining a location in which to place said decrypted configuration bitstream by said trusted loader; and
programming said decrypted IP core into said target device at said location by said trusted loader;
wherein said programming of said target device with said decrypted IP core partially reconfigures said target device via said internal configuration access port.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system are disclosed. The system includes a trusted loader. The method includes downloading an IP core from a vendor to a target device. The IP core is received in an encrypted form at the target device, which can be, for example, a programmable logic device.
63 Citations
20 Claims
-
1. A method comprising:
-
configuring a trusted loader on a target device; disabling external partial reconfiguration access after said configuring, wherein said target device includes an internal configuration access port that is accessible to said trusted loader for partially programming said target device; accessing a communications network by said trusted loader and submitting a request for an encrypted IP core from an IP core vendor via said communications network by the trusted loader; downloading said encrypted IP core from said IP core vendor directly to said target device by said trusted loader via said communications network without passing through a user development system, said target device comprises a programmable device; generating a decrypted IP core by decrypting said encrypted IP core by said trusted loader; determining a location in which to place said decrypted configuration bitstream by said trusted loader; and programming said decrypted IP core into said target device at said location by said trusted loader; wherein said programming of said target device with said decrypted IP core partially reconfigures said target device via said internal configuration access port. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method comprising:
-
creating a skeleton design, wherein said skeleton design is created using a functional representation of an IP core; generating a first bitstream, said first bitstream representing said skeleton design, wherein said skeleton design comprises a gap, said gap is defined by a size and a geometry; downloading said first bitstream from a configuration storage unit to a programmable logic device; accessing a communications network and requesting an IP core from an IP core vendor via said communications network; downloading a second bitstream from a vendor directly to said programmable device in response to said request, wherein said second bitstream represents an IP core; programming said IP core into said skeleton design by causing said programmable device to insert said second bitstream into said first bitstream; downloading a third bitstream from a trusted framework agent to said programmable logic device, wherein; said third bitstream represents another IP core, said another IP core is configured to implement a trusted loader, said trusted loader performs the accessing, requesting, and programming; and disabling external partial reconfiguration access to the programmable logic device after said downloading of said third bitstream, wherein said programmable logic device includes an internal configuration access port that is accessible to said trusted loader for partially programming said target device.
-
Specification