Method for generating a secure macro element of a design for a programmable IC
First Claim
1. A method for including a macro in a programmable IC, comprising the steps of:
- a) generating a macro bitstream;
b) providing said macro bitstream to a user;
c) generating a user circuit description; and
d) combining said macro bitstream and said user circuit description to generate a complete bitstream for programming the programmable IC.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of generating and using a secure macro element for configuring programmable ICs is provided. The method provides a bitstream to a user, rather than providing a user-editable macro. Compilation software is provided to the user that combines the data from a "macro bitstream" (the bitstream comprising the macro data description) and the data from the user'"'"'s own circuits to create the complete bitstream. The compilation software reserves the relevant portions of the complete bitstream for the macro, and does not assign user circuits to the areas controlled by those portions of the bitstream. In one embodiment of the invention, the user specifies a physical location on the programmable IC for the macro, so the macro data is optionally placed in a different location in the complete bitstream than in the macro bitstream. In another embodiment, the macro bitstream and the complete bitstream represent the same programmable IC architecture, but not the same device, so they are of similar formats but different lengths.
63 Citations
38 Claims
-
1. A method for including a macro in a programmable IC, comprising the steps of:
-
a) generating a macro bitstream; b) providing said macro bitstream to a user; c) generating a user circuit description; and d) combining said macro bitstream and said user circuit description to generate a complete bitstream for programming the programmable IC. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for using a macro for a programmable IC, comprising the steps of:
-
a) generating a user circuit description for a user design; b) receiving a macro bitstream; c) specifying that the macro be included in the user design; and d) producing a complete bitstream for a programmable IC by combining said circuit description and said macro bitstream. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A method for generating a macro bitstream for inclusion in a complete bitstream for programming a programmable IC, comprising the steps of:
-
a) creating bitstream data representing a macro; b) placing said bitstream data representing said macro into one or more portions of a macro bitstream; and c) completing said macro bitstream by filling the remaining portions of said macro bitstream with data at least some of which will be omitted from the complete bitstream. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. A method for providing macro data for inclusion in a complete bitstream for programming a programmable IC, comprising the steps of:
-
a) creating bitstream data representing a macro; b) placing said bitstream data representing said macro into one or more portions of a macro bitstream; c) generating a macro placeholder to reserve for the macro both an area of the programmable IC and the related portion of the complete bitstream; and d) providing said macro bitstream and said macro placeholder to a user.
-
-
38. A method for including a macro in a programmable IC, comprising the steps of:
-
a) generating a macro bitstream; b) encrypting said macro bitstream; c) providing said encrypted macro bitstream to a user; d) generating a user circuit description; and e) combining said encrypted macro bitstream and said user circuit description to generate a complete bitstream for programming the programmable IC.
-
Specification