Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
Announcements
Need Forum Guidance? Click here

Search our FPGA Knowledge Articles here.
19218 Discussions

How to boot and decrypt RBF for Arria 10 using non-volatile key (Fuse) ?

AALDH1
Novice
326 Views

hello

i can boot and decrypt RBF if i program the ekp file (voltile key ), but i need it to decrypt using the fuse which i already programed to the board.

thanks for your help.

0 Kudos
4 Replies
ShafiqY_Intel
Employee
206 Views

Hi AALDHI1,

 

When you mention boot, is it related to Arria 10 SOC ARM booting?

May I know how do you program the ekp file for non-volatile key?

 

and also, can you describe how you program. boot and decrypt the ekp forvolatile (the success one)?

 

Thanks

AALDH1
Novice
206 Views

yes i am using HPS , after i generated the ekp file i convert it to .jam file and programed it using this command "quartus_jli -c 1 key.jam -aKEY_program"

but the system after i boot it up keep resting unitle i program the voltile key using "quartus_jli -c 1 key.jam -aKEY_CONFIGURE " then it will decrypt the RBF and will boot the Linux kernel .

 

 

ShafiqY_Intel
Employee
206 Views

Hi AALDH1,

 

May I know which USB blaster you are using?

 

There two things you can try here:

 

1.Can you try to performed “quartus_jli -c 1 key.jam -aKEY_VERIFY”. 

This to unsure the FPGA key is programmed correctly. Refer to table 16 in AN556,

https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/an/an556.pdf#page=25

 

 

2.May I know how do you generate the rbf file? I suspect that the rbf file generation is setting it to volatile key.

For 20nm FPGA (Arria 10), both volatile and non-volatile key can exist in a device.  User can choose which key to use by setting the option bits in encrypted configuration file through the Convert Programming File tool or the Qcrypt tool. 

I suspect your issue, it is always trying to read the key from volatile. you need to change the option bit that it is reading the key from non-volatile key. Refer to table 4 in AN556,

https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/an/an556.pdf#page=5

 

I hope this will help.

 

 

Thanks

AALDH1
Novice
206 Views

Thank you for help .

Reply