Community
cancel
Showing results for 
Search instead for 
Did you mean: 
KLohr
Novice
520 Views

Working on encryption with max 10 device. Having problems programming .ekp & .pof separately

I programmed the .ekp with no problem, but every time I try to program the .pof, it fails. Also, don't understand from the ug_m10_config.pdf section 3.8.3.1 #9."Check only the functional block that need to be updated at child level for CFM and UFM. Do not check operation at the parent level when using Programmer GUI." What does this mean? I think I've tried every combination of boxes checked in the programmer mene

0 Kudos
14 Replies
Vicky1
Employee
268 Views

Hi,

May I know the following details?

  1. Quartus tool Edition(Lite/Std/Pro) & version used
  2. Device used(FPGA)

Thanks,

Vicky

KLohr
Novice
268 Views

Quartus Prime Version 18.1.0 Build 625 09/12/2018 SJ Lite Edition

FPGA DEVICE 10M16SAU169I7G

Additionally, since I didn't want to lock up my PCB with the 10M16 on it, I decided to go back to the Altera 10M08 Eval board and do some testing with that. I'm having a problem using the DEVICE 10M08SAE144C8GES on that board programming the part as described in section 3.8.3.2 ug_m10_config.pdf Integrate the .ekp into .pof Programming. I converted the file using the key in the example. I programmed the key and the file both together and now the device doesn't work and I can't program it any longer. I'm happy to send you any files that might help understand my issues.

 

KLohr
Novice
268 Views

screen shots:

KLohr
Novice
268 Views

image.png

KLohr
Novice
268 Views

image.png

KLohr
Novice
268 Views

aiu_fpga_encrypted.map :

BLOCK START ADDRESS END ADDRESS

 

ICB 0x00000000 0x000007FF

UFM 0x00000800 0x0001CFFF

CFM0 0x0001D000 0x0004E7FF (0x000462A0)

 

 

Max 10 Setting:

 

EPOF: ON

Verify protect: ON

Watchdog value: Not activated

POR: Instant ON

IO Pullup: OFF

SPI IO Pullup: OFF

 

 

 

Notes:

 

- Data checksum for this conversion is 0x035D1876

 

- All the addresses in this file are byte addresses

Vicky1
Employee
268 Views

Hi,

Actually for Quartus lite edition, you need to request the license to enable the encryption option from the SSLC (Self Service Licensing Center). Refer the Note under Table 11. from link below,

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

Refer the below link for Intel SSLC,

 https://fpgasupport.intel.com/Licensing/license/index.html

Here, provide details like , need of encryption feature license, host id or NIC, number of licenses whether fixed or floating type needed etc. 

 

" I converted the file using the key in the example. I programmed the key and the file both together and now the device doesn't work and I can't program it any longer." - - - Refer the'Encryption and Decryption' from link below,

https://www.intel.com/content/www/us/en/programmable/documentation/sss1393988509894.html#sss13980722...

 

please let me know if it has helped to resolve your issue.

Regards,

Vicky

KLohr
Novice
268 Views

We also have a standard and pro license, but our customer does not. I noticed from the configuration guide it said "the key is part of the ICB settings stored in the internal flash" I am using the UFM. How much memory do the ICB settings take in the UFM? I noticed from the .map file it said "ICB 0x00000000 0x000007FF" Does it use that entire area? Is that byte addresses or 32bit addresses?

 

Thanks,

KLohr
Novice
268 Views

Sorry, just noticed the addresses in the map file are byte addresses.

 

KLohr
Novice
268 Views

Are you sure about this licensing issue max 10 devices? From the an556 it doesn't mention max10 devices. I never got any warnings from the quartus software. I wonder if my issue is that I was trying to use the UFM at 0x000 to 0x403 and it sounds like that is used by the ICB.

Vicky1
Employee
268 Views

Hi,

"Are you sure about this licensing issue max 10 devices?" ---- Check the old thread about MAX 10,

https://forums.intel.com/s/question/0D50P000045aENR/generating-encrypted-bitstream-pof-ekp-files-for...

Actually, in your case Quartus might be set the environmental variable to Standard/Pro edition or you may have floating license.

 

" I converted the file using the key in the example. I programmed the key and the file both together and now the device doesn't work and I can't program it any longer." - - - Refer the'Encryption and Decryption' from link below," ----- May I know any update ?

Thanks,

Vicky

 

KLohr
Novice
268 Views

I was able to finally configure and program the device encrypted by moving my initialized UFM from 0x000 to 0x1000. Apparently I was overwriting the key and ICB stored at 0x000. My concern now is , our customer wants to program the CFM with the encrypted FPGA program during mfg, then calibrate the device and program the UFM at a later time (without changing the encrypted CFM). 

Before encryption, we have been doing this by converting the intel hex file and then programming the UFM only with the programmer. I can't seem to do this without affecting the stored key and ICB at 0x000 to 0x7FF?

If you have any insight into this, I would appreciate some feedback.

KLohr
Novice
268 Views

Ok, I was able to finally program an encrypted FPGA with initialized UFM by moving our lookup table (that was in the UFM) to an area above the key and ICB area (0x000 to 0x7FF). We moved our lookup table to 0x1000. However, Our customer wants to program the CFM with the encrypted FPGA program during mfg, then calibrate the device and program the UFM at a later time (without changing the main FPGA program in CFM). Before using encryption, we have been doing this by converting the intel hex file and then programming the UFM only later with the programmer. I don't seem to be be able to do this now that my CFM is encrypted?

Vicky1
Employee
268 Views

Hi,

It may not be available due to encryption but I am not sure about it.

Thanks,

Vicky

Reply