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

CONF_DONE failure when trying to verify MAX 10 with Encrypted POF

mgarrison
Beginner
1,225 Views

I am using a MAX 10 device and encrypting the bitstream.  When creating programming files without "allow encrypted POF only", I can verify the programmed bitstream in the programmer, but when I do select "allow encrypted POF only", I cannot.  I get the 209014 CONF_DONE failure error when I try to verify.  I am not selecting the "verify protect" option.

 

There is a nice article explaining this error occurs when trying to reprogram a device without erasing it first (https://www.intel.com/content/www/us/en/support/programmable/articles/000087097.html).  So it seems this also affects verification too?  Even though I tell it to not protect verify??  This happens in both Quartus Lite 18 and 22.

 

How does one verify the bitstream when enforcing encrypted POF?

0 Kudos
13 Replies
NurAiman_M_Intel
Employee
1,165 Views

Hi,


Thank you for contacting Intel community.


By referring to Table 11 under software requirement in AN 556, to enable design security feature when using Quartus Lite, you need to obtain a license. Do you have the license?

https://www.intel.com/content/www/us/en/docs/programmable/683269/current/using-the-design-security-features-in-fpgas.html


Regards,

Aiman


0 Kudos
mgarrison
Beginner
1,154 Views

Of course, otherwise I wouldn't be able to generate the encrypted bitstream at all or even see the options mentioned.

0 Kudos
NurAiman_M_Intel
Employee
1,073 Views

Hi,


-Try to program the .ekp file first, then program the encrypted pof.

-You need to fully erase the device before program.


Regards,

Aiman


0 Kudos
mgarrison
Beginner
1,059 Views

I tried programming EKP and POF separately instead of together.  I still cannot verify the CFM.

0 Kudos
NurAiman_M_Intel
Employee
989 Views

Hi,


Can you try to follow below steps;


  1. Use Quartus Prime to create the encrypted POF file and an EKP file
  2. Use Quartus Prime Programmer to combine the EKP and encrypted POF in the following way

a.      Check the “Enable real-time ISP” option in the programmer GUI

b.      Rather than saving the combined POF with “save as” dialog, use the “File->Create JAM, JBC” to get a JBC that includes everything


Regards,

Aiman


0 Kudos
mgarrison
Beginner
973 Views

Well, this is interesting.  Enabling Real-Time ISP mode does allow it to verify (either with POF or JBC).  But, the verify takes 5 minutes to complete!  This is unacceptably long for a production environment.  Normal verify on POF's for this same device (without verify protect) take about 20 seconds.  Do you have any other ideas on how to address this?

0 Kudos
mgarrison
Beginner
936 Views

Further updates:

- Switching to a USB-Blaster II improves the operation time significantly. It's now down to 15-30 seconds to verify instead of 5 minutes.  The 5 minute time was achieved with an original USB-Blaster.  15-30 seconds is fine, but our production programming uses original USB-Blasters currently.

- Running a verify cycle using JBC file with Real-time ISP off does actually work without error, but still takes 5 minutes with original USB-Blaster. It seems you can do verify with POF only in real-time ISP, but with JBC it can be normal ISP or real-time ISP.

- As an aside, when using JBC file, a Program/Configure operation seems to also do a verify right after, though this does not occur when doing POF programming.  I see this is part of the JBC file creation settings. (I have never used JBC file prior to now.)  Combined JBC program & verify cycle using original USB-Blaster takes over 6 minutes!!  Combined JBC cycle with USB-Blaster II is under 2 minutes.

0 Kudos
NurAiman_M_Intel
Employee
874 Views

Hi,


USB Blaster II is expected to be faster as it support 24MHz JTAG clock, USB Blaster only support 6MHz.


Real time ISP is much slower than normal configuration.

Try to slow down the JTAG frequency to 6M without enable real-time ISP to configure MAX 10. 


Regards,

Aiman


0 Kudos
mgarrison
Beginner
867 Views

Thank you. Is there another way get verify to work without using real time ISP or the JBC mode?  Both of these are way too slow on our USB-Blaster cables. It seems like the error in normal configuration is just a bug, since there are other ways to make it work.

0 Kudos
NurAiman_M_Intel
Employee
791 Views

Hi,


I apologize for the late response as I was on emergency leave. I got some feedback from internal team as below;


There is verification issue during programming. Can you used Quartus 21.1standard? Lite version might not have the fix.


Also, can I know if verify is consistent fail or intermittent? What is the failing rate?


Also, please check this out it might help to verify successfully.

https://www.intel.com/content/www/us/en/docs/programmable/683865/current/programming-ekp-file-and-encrypted-pof.html


Regards,

Aiman




0 Kudos
mgarrison
Beginner
777 Views

Hi, I do not have license for standard. Plus, production uses the standalone programming tool. It needs to work there too.

 

It consistently fails every time.

 

I did try programming EKP and POF separately, which did not change the behavior.

 

Thanks.

0 Kudos
NurAiman_M_Intel
Employee
686 Views

Hi,


Can you provide me your .sof file? or your design in .qar file? You can provide them through forum email for privacy purpose.


Regards,

Aiman


0 Kudos
NurAiman_M_Intel
Employee
631 Views

We do not receive any response from you to the previous 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


0 Kudos
Reply