Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
16593 Discussions

Encryption or Obfuscation of OpenCL kernels

Altera_Forum
Honored Contributor II
1,736 Views

I've developed a couple of Kernels for a customer and would very much like to encrypt or at least obfuscate the kernel contents. Has anyone successfully done this? I've begun playing around with attempting to import 1st stage compile output files from one project to another but have so far been unsuccessful. Any ideas would be greatly appreciated.

0 Kudos
2 Replies
Altera_Forum
Honored Contributor II
678 Views

C:/intelFPGA_pro/17.0/quartus/bin64/encrypt_1735 --quartus --language=verilog | VHDL <file>. You can encrypt entire collection of kernel files in kernel_hdl starting from 17.0 tools. Then build the PR or flat version of the project by the Tcl script or in Quartus GUI. Our company has successfully done this IEEE_1735 encryption of IP merged with OpenCL flow.

0 Kudos
Altera_Forum
Honored Contributor II
678 Views

Forgot one more thing. You have to mark protected code sections with `pragma protect begin and `pragma protect end. Read Quartus handbook section on IEEE 1735 support and pragmas, but it turns out that the begin and end pragmas is all you need. Yet another undocumented feature ;).

0 Kudos
Reply