Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
21017 Discussions

Program EKP and encrypted POF separately as JAM

dieterich
Beginner
786 Views

I have a MAX10 FPGA that I want to program using the encrypted bitstream feature. I have the following use case:

  • Initial programming of the FPGA with key + firmware (key stays confidental)
  • Ability to roll out updates in field with only the firmware

I am using the JAM STAPL Player v2.5 to program the MAX10 on the carrier board. Before the encrypted bitstream feature I would convert the pof to a jam file and just use `jam -aPROGRAM firmware.jam`. Now I have an EKP file and an encrypted POF.

Naively, I would have expected the following to work:

  • Convert both EKP and the encrypted POF to separate JAM files.
  • Flash the key `jam -aKEY_PROGRAM key.jam`
    Programming Max 10 FPGA non-volatile security key(s)...
    Successfully programmed non-volatile security key(s)
    DONE
    Exit code = 0... Success
  • Flash the encrypted POF converted to JAM: `jam -aPROGRAM firmware.jam`
    configuring SRAM device(s)...
    full-chip erasing Max 10 FPGA device(s) ...
    programming Max 10 FPGA DSM block ...
    performing operation on MAX 10 FPGA CFM0 block at sector 4 ...
    performing operation on MAX 10 FPGA CFM0 block at sector 5 ...
    performing operation on MAX 10 FPGA UFM block at sector 1 ...
    performing operation on MAX 10 FPGA UFM block at sector 2 ...
    DONE
    Exit code = 0... Success​

However, this does not work: the FPGA is not responding. I assume this is because when programming the firmware.jam, the player performs a full-chip erase, thus deleting the key. What does work is when I integrate the EKP into the POF and convert the resulting JAM. However, I want to keep the EKP confidential.

How can I program the firmware JAM without erasing the key?

0 Kudos
4 Replies
Farabi
Employee
771 Views

Hello,


There is instruction for programming ekp and pof separately using Quartus programmer, but there is no support for similar method for JAM player.


link : https://www.intel.com/programmable/technical-pdfs/683865.pdf

Chapter 3.8.3.1


regards,

Farabi


0 Kudos
dieterich
Beginner
768 Views

Thank you for your reply.

I want to be able to program the FPGA from our embedded ARM system (for in-field updates), so I'm not able to use quartus programmer. Are there any other alternatives to program the pof on an embedded system?

0 Kudos
Farabi
Employee
746 Views

Hello,


You can use JAM player, but this sw got limitation which you can't program the key and image separately. Only Quartus programmer can do this.

JAM player can program key+image together.


regards,

Farabi


0 Kudos
Farabi
Employee
722 Views

Hello,


We do not receive any response from you to the previous question/reply/answer that I have provided. This thread will be transitioned to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you.


regards,

Farabi


0 Kudos
Reply