Community
cancel
Showing results for 
Search instead for 
Did you mean: 
scott2j6
Beginner
136 Views

Quartus Programmer (quartus_pgmw.exe) 15.1 build 185 Failure to Function on First Attempt

Hey Everyone!

First Time Posting Here, So I am sorry if it is on the wrong board.

I am using Quartus Prime 2 15.1.0 Build 185 10/21/2012 SJ Lite Edition (No Patches Installed)

Dealing with a weird Programming issue...

For whatever reason, When I program the device (MAX10 FPGA), it usually fails on the first attempt, but will pass on the second attempt.

I have tried multiple (custom designed boards) and I don't think it is a hardware issue. 

I have tried multiple different programming options:
Program/Config (Only)
Program/Config & Verify
Program/Config & Verify & Blank Check

It doesnt really seem to matter. 

Anyone have a similar experience?

Spec Info:
Programmer - USB Blaster (verified working)
Device - 10M02SCE144
2021-02-11 13_39_25-ATSMain_JTS2.xls  [Compatibility Mode] - Excel.png2021-02-11 13_41_55-Quartus Prime Programmer Lite Edition - [Chain1.cdf]_.png2021-02-11 13_43_09-CopNetServerLibrary.png

0 Kudos
12 Replies
sstrell
Moderator
121 Views

I usually do an auto detect (click the button) before trying to program any device.  I've found that the enumeration of the JTAG chain is not often done correctly when starting the Programmer, so doing an Auto Detect (and choosing to overwrite the .cdf if asked) does the trick.  If the auto detect asks you to choose a device, you don't necessarily have to choose your exact device because the device will get set correctly once you select your programming file.

JohnT_Intel
Employee
106 Views

Hi,


I would recommend you to disable the "blank" check as the Quartus programming will always performed full erase before programming. This will resolved the issue regarding the 1st programming failure.


scott2j6
Beginner
97 Views

Hi sstrell, 

Thanks for the response.

Unfortunately, I dont think this is the same issue because I am able to program the board on every 2nd attempt without rerunning the programmer software.

Example:
Attempt1 = Failure.
Attempt2 = Pass.
Attempt3 = Failure.
Attempt4 = Pass.

And the cycle will continue. 

scott2j6
Beginner
96 Views

Hi JohnT_Intel,

Thanks for the response.

I have tried everything from leaving blank check unchecked, leaving verify unchecked, ect.

Nothing was successful to get the board to program on the first attempt.

I know an erase is done automatically, but the only two scenarios that I can get a successful programming are:

1) run the programming step 2 times.
2) run the erase operation and then the programming. 


Frustrating for sure.

JohnT_Intel
Employee
88 Views

Hi,


Could you provide the log message when you left the "blank" and "verify" unchecked?


scott2j6
Beginner
69 Views

Hey JohnT_Intel,

Attached is a text file of the message log and a screenshot showing the verify and blank check were unchecked.

Strange it verifies regardless? 

 

JohnT_Intel
Employee
54 Views

Hi,


From the screenshot, you do not tick on the "verify" features but the Quartus still performed verify. May I know if you have another system to try and see if you are facing the same issue?


scott2j6
Beginner
35 Views

Hey John,

I have actually tried this on at least 4 other pc's (2 development computers with full Quartus Installed, 2 quality control computers with bare minimum install) and its behaved the same way. 

Is there perhaps a setting in the Quartus 2 application that would change how the programmer interacts with the .pof file? 

Thanks for your time

scott2j6
Beginner
29 Views

Hey John,

I think I was able to figure it out.... well sort of.

Under the Device Settings, I had the option 'Verify Protect' enabled.

scott2j6_0-1613683634820.png


After disabling it, I have been able to program successfully every time. 

I have tried gathering more information about this setting, but I haven't found much to enlighten me on why this setting was causing my issues.

Do you happen to know anything about this?

Thanks for your time

JohnT_Intel
Employee
27 Views

Hi,


This is a security features in Max 10 device which prevent CFM from being read back by user. Please refer to https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/max-10/ug_m10_config.pdf Chapter 2.2.2.4


scott2j6
Beginner
22 Views

Hi,

Thanks for the link.

That still doesn't really explain the reason I encountered issues programming the board though. 
Does it?

Thanks for your time.

JohnT_Intel
Employee
13 Views

Hi,


The reason is that the verify feature is disable and Quartus Programmer is trying to verify the CFM.