MIMXRT1176 doesn't run properly from an external flash.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

MIMXRT1176 doesn't run properly from an external flash.

439 Views
john71
Senior Contributor I

We have a board with MIMXRT1176. When it runs from SRAM (in MCUXpresso IDE ) it's OK. All works properly. When it's configured to run from FlexSpi_1 or FlexSpi_2 - break point hits the main, goes into the first function and after several lines crushes (as depicted below). When we examine the flash (from address 30000000 or 60000000) it shows that all downloaded properly. How can we cope with the problem?

 

P.S. Sometimes it crushes before the main.

 

problem.png

0 Kudos
3 Replies

352 Views
MultipleMonomials
Contributor III

Hmm, I have seen errors like this when there are signal integrity issues with the flash.  Causes I've seen for this have been:

  • Having the frequency set higher in the boot header than what your board is able to support.
    • This can happen if you run code intended for the MIMXRT106x on an MIMXRT105x because these chips use different values for the speed enumeration in the boot header
  • Bodge wires attached to the flash lines from testing (causing capacitance and interference)
  • Incorrect DQS pin setup -- if the flash does not provide a DQS pin, the DQS pad needs to not be connected to anything on the board
0 Kudos

320 Views
john71
Senior Contributor I

Thank you for your help. Checking...

Well...Indeed the DQS pin was connected so we left it floating. Also reduced the frequency.

.serialClkFreq = kFlexSpiSerialClk_30MHz,

Still can't run it properly.

But I've noticed something strange.

On power up I see no clock on the flesh clock pin. There is no reference from micro controller to the flesh chip on power up. 

I tried BOOT_MODE pins - 00 and 01 - the same result.

0 Kudos

292 Views
MultipleMonomials
Contributor III

hmm... if there really wasn't a clock, I don't think it would be able to boot into the application at all, no?  I suspect something might be up with your probing setup, such as a logic analyzer with too high capacitance or too low sample rate.

0 Kudos