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

JTAG chain doesn't recognized error on Max10 FPGA

RON6
Beginner
1,399 Views

When enabling AES encryption on Max10 FPGA and trying to reconfigure it with a non-encrypted programming the JTAG chain was not recognized since.

The FPGA device continues to work, but it's impossible to conduct any operation using JTAG by Intel Quartus Programmer app.

This unexpected behavior is not consistent (after programing the FPGA with encrypted configuration) but once it happens the FPGA becomes unusable, considering it's impossible to program it again (with or without a key).

A partial successful JTAG communication has been made once the comm frequency has been lowered to 50-100Khz (using JTAG bluster II). The programmer operations have started but briefly terminated during the process.

 

The given setup:

  • Intel Max10M50DA & Max10M16SA FPGA devices.
  • JTAG Intel Bluster II & I.
  • Dual-Image configuration mode
  • Encrypted .pof only has been enabled.

 

 Please instruct us with:

  1. How to recover the "blocked" device - enable JTAG chain recognition and reprogram the device.
  2. We"ll appreciate a detailed how-to program a new configuration with a different key or no-key to a FPGA device which already has an encrypted configuration on it.

Thank you for your support

0 Kudos
5 Replies
NurAiman_M_Intel
Employee
1,363 Views

Hi,


Thank you for contacting Intel community.


Can you try to lower down the TCK frequency to 16MHz or lower? by using USB Blaster II.

https://www.intel.com/content/www/us/en/docs/programmable/683719/current/changing-the-tck-frequency.html


Regards,

Aiman


0 Kudos
NurAiman_M_Intel
Employee
1,361 Views

Hi,


If you try to configure an encrypted MAX 10 FPGA with an unencrypted programming file, the configuration process will fail because the device requires the correct encryption key to decrypt and apply the configuration data.


If you are using encrypted pof, then you will need to always include .ekp to program with POF as the erase function will always erase the key and bitstream.


Regards,

Aiman


0 Kudos
RON6
Beginner
1,309 Views

Hi Aiman,

 

Thank you for your reply and suggestions.

Unfortunately modifying the JTAG frequency to 6Mhz didn't restore communication.

 

Following intel guides in the following link -   

https://www.intel.com/content/www/us/en/docs/programmable/683865/current/encryption-in-internal-configuration.html

In case an unencrypted programming file is used on encrypted MAX10, the configuration should fail. Though the jtag should keep working, so another configuration attempt can be made.

 

My configuration included encrypted POF and enable the feature 'only encrypted .pof' only.

 

After reading the following link - 

https://www.intel.com/content/www/us/en/docs/programmable/683865/current/generating-pof-using-convert-programming.html

"""

CAUTION:
Intel® MAX® 10 FPGA device becomes permanently locked if you enabled JTAG secure mode in the POF file and POF is encrypted with the wrong key. You must instantiate the internal JTAG interface for you unlock the external JTAG when the device is in JTAG Secure mode.
"""

Is it possible on the above scenario the 'JTAG secure' feature has been activated although the user left this option disabled on Quartus gui?

 

Regards

0 Kudos
NurAiman_M_Intel
Employee
1,231 Views

Hi,


Per my previous response, if  you are using encrypted pof, then you will need to always use the key to program with POF. Or the other solution is you will need to deprogram.


Regards,

Aiman



0 Kudos
NurAiman_M_Intel
Employee
1,166 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