Intermittent XFLASH behavior Topic is solved

Technical discussions around xCORE processors (e.g. xcore-200 & xcore.ai).
Post Reply
User avatar
Caleb
Experienced Member
Posts: 82
Joined: Thu Apr 04, 2013 10:14 pm
Contact:

Intermittent XFLASH behavior

Post by Caleb »

One product that we've made for a few years uses the L2 2-tile processor. We've made about 500 of these and they've been thus-far trouble-free. In the last batch of 15, there are 3 that exhibit intermittent problems performing XFLASH operations.

xflash -l always reports correctly: Devices L1[0..1]
xrun -dump-state always returns processor state

xflash operations that read/write flash sometimes fail - quickly with messages:
xrun: Cannot load image, XCore 1 is not enabled
Error: F03034 Failed to fully run flash inquisitor

When this occurrs, there are no transitions on the SPI bus signals to the flash IC.
Using --verbose doesn't give much more useful info. It does give the message "Will run flash inquisitor" before the failure message.

Any ideas how to debug this problem?


View Solution
Guest

Post by Guest »

Probable reasons for the error are listted in the following link:
http://www.xmos.com/support/knowledgeba ... bled-error

Hope this helps.
User avatar
Caleb
Experienced Member
Posts: 82
Joined: Thu Apr 04, 2013 10:14 pm
Contact:

Post by Caleb »

Hi, Yes this is a useful reference.

It seems now that the problem is related to power supply sequencing. We do ensure proper sequencing for normal operation but when the XTAG2 is plugged-in for programming, it defeats the sequencing due to leaking current from the XTAG2 to the powered-down circuit. We haven't experienced this problem in the past and in 2 of the 3 cases now it is only intermittent. In one case, programming never succeeds unless I hot-plug the XTAG2 or else plug it into the PC USB port after the device is powered-up.

This document is a checklist to for debugging not-running xcore device - indicating "XCore 0 is not enabled". In my case with the L2 device, it seems that somehow XCore 0 is enabled but not XCore 1. Power supplies, oscillator, PLL, RST_N...all are working and can run a thread on core 0 but will not execute the flash utilities because it detects core 1 is not enabled.

jangala wrote:Probable reasons for the error are listted in the following link:
http://www.xmos.com/support/knowledgeba ... bled-error

Hope this helps.
Guest

Post by Guest »

Caleb wrote:This document is a checklist to for debugging not-running xcore device - indicating "XCore 0 is not enabled". In my case with the L2 device, it seems that somehow XCore 0 is enabled but not XCore 1. Power supplies, oscillator, PLL, RST_N...all are working and can run a thread on core 0 but will not execute the flash utilities because it detects core 1 is not enabled.
Can you check if the mode pins of the devices are set accordingly?
User avatar
Caleb
Experienced Member
Posts: 82
Joined: Thu Apr 04, 2013 10:14 pm
Contact:

Post by Caleb »

I think perhaps I wasn't very clear in my last post. My problem is fixed as long as I plug-in the XTAG-2 after powering-up the L2-device. Capturing the core and I/O power supplies as they rise (storage oscilloscope), it's clear that power-up sequencing was violated when XTAG was connected at powerup.

As for the mode pins, well of course we can't probe under the dual-row QFN package. But, the devices boot properly. MODE0 and MODE4 are connected to GND, MODE1 connected to 3.3V, MODE2 and MODE3 are connected to xTRST. This was probably copied from the MC ref design PCB.

I see now that we have always violated powerup sequence requirements but only at the time of initial flash programming after assembly. It's just surprising that it's never been a problem for ~500 units - until now 3 out of a recent batch of 15 boards exhibit the problem. Hopefully this difference is inconsequential.

thanks, Caleb
jangala wrote:
Caleb wrote:This document is a checklist to for debugging not-running xcore device - indicating "XCore 0 is not enabled". In my case with the L2 device, it seems that somehow XCore 0 is enabled but not XCore 1. Power supplies, oscillator, PLL, RST_N...all are working and can run a thread on core 0 but will not execute the flash utilities because it detects core 1 is not enabled.
Can you check if the mode pins of the devices are set accordingly?
nicolass
Member
Posts: 9
Joined: Fri Aug 17, 2018 4:42 pm

Post by nicolass »

Guest wrote:Probable reasons for the error are listted in the following link:
http://www.xmos.com/support/knowledgeba ... bled-error

Hope this helps.
Hi I am having the issue where the xmos device is seen by the xtag and ide but on flashing it reports 'xcore 0 is not enabled'.

The link here seems to be dead though - does anyone have an updated link to this issue?
User avatar
mon2
XCore Legend
Posts: 1913
Joined: Thu Jun 10, 2010 11:43 am
Contact:

Post by mon2 »

Hi. Just raised the alert on the broken link(s) but if my memory is correct, the landing page was a summary of the following comments:

http://www.xcore.com/viewtopic.php?t=3713

In other words, please check the assembly process of your custom PCB. In most cases, it is related to the SMD assembly.

Also, is your power supply ok? Sequencing ok and in the proper order as demanded by the CPU datasheet? If in doubt, please post the relevant parts of the schematic for a quick review.

PS: The original URL should be corrected fairly quickly as well so check back.

Reference:
http://www.xcore.com/viewtopic.php?t=6873
Post Reply