XIP flash boot option IMXRT 1064

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

XIP flash boot option IMXRT 1064

1,747 Views
Alberto_isorna
Contributor II

 

Hello,

My company just started the IMXRT development, in the Migration Guide from i.MX RT1060 to i.MX RT1064 I found the following message:

"Do not try the XIP boot by FlexSPI with external XIP flash, but you can still connect the external flash
through the FlexSPI interface, which can be used to save data or other functions except boot."

I have the following questions:

  1. Is not posible to boot from external flash with the IMXRT1064?
  2. Is it possible to boot from SD card?
  3. I have a very large program, with Images etc. How could I use the external Hyperflash in order to fit the program and store data? Is there any manuals, guides...? I'm a bit lost in this topic 

Thanks in advance, best regards, 

Alberto. 

0 Kudos
3 Replies

1,735 Views
mjbcswitzerland
Specialist V

Hi

The i.MX RT 1064 boots from its internal QSPI flash at address 0x70000000 (serial NOR boot). External QSPI flash boot is not supported.

It can boot from an SD card (eMMC/MMC) - see section 9.6.4 of 1064 user's manual.

Once booted the i.MX RT 1064 can run code also from external QSPI flash.

If your code size (without images) is less that 4MBytes you can locate the code in the internal QSPI flash and then use a file system in external QSPI flash to load your images to, where they an also be accessed from.

The uTasker project includes options to do this and also to install a boot loader in the internal QSPI flash which then allows loading and running complete applications in external QSPI flash (XiP or on-the-fly decrypted XiP). Therefore if you require an immediate and complete solution to keep all code and images in external QSPI flash (including clone and IP protection) this is available. See references below:

- i.MX RT 1064: https://www.utasker.com/iMX/RT1064.html
- Boot loader concept including XiP on-the-fly decryption, clone protection or AES256 protected RAM execution.
-- Boot Loader concept flow chart: https://www.utasker.com/docs/iMX/Loader.pdf and usage reference https://www.utasker.com/docs/iMX/uTaskerLoader_TestDrive.pdf
-- Serial Loader features: https://www.utasker.com/docs/uTasker/uTaskerSerialLoader.pdf
-- Building the loader with MCUXpress: https://www.utasker.com/docs/iMX/MCUXpresso.pdf (and video guide https://youtu.be/p_eUGo6GypY ) - the guide document explains how to use with any application (eg. SDK) and to enabling its operation with On-The-Fly decryption in 5 minutes
-- Building the loader with IAR: https://www.utasker.com/docs/iMX/IAR.pdf (and video guide https://youtu.be/XPCwVndP99s )
-- Building the loader with VisualStudio and GCC: https://www.utasker.com/docs/iMX/GCC.pdf (and video guide https://youtu.be/0UzLLSXABK8 )
Video Guide to encrypting NXP SDK examples to run from XiP memory using on-the-fly decryption and uploading with the µTasker loader: https://www.youtube.com/watch?v=5iT7KP691ls&list=PLWKlVb_MqDQEOCnsNOJO8gd3jDCwiyKKe&index=10
Video Guide to encrypting NXP SDK examples to run at optimal speed in internal RAM and uploading with the µTasker loader:
https://www.youtube.com/watch?v=fnfLQ-nbscI&list=PLWKlVb_MqDQEOCnsNOJO8gd3jDCwiyKKe&index=11
Video Guide for Embedded Artist OEM Module for i.MX RT 1062 showing precise secured application operation analysis: https://youtu.be/o7hQbOqhJoc

 

Regards

Mark
[uTasker project developer for Kinetis and i.MX RT]
Contact me by personal message or on the uTasker web site to discuss professional training, solutions to problems or product development requirements

 

0 Kudos

1,728 Views
Alberto_isorna
Contributor II

Hi, 

First of all thanks in advance for all the information is much clearer now.

My problem is that I'm using eiq with tensorflow lite with a big model .h file of around 100Mbytes. 

How can store this file in the SD card and load the model from there while running in the flash?

Is better if I run everything in the SDcard? If you have any documents feel free to share.

Best redards,

Alberto. 

0 Kudos

1,722 Views
mjbcswitzerland
Specialist V

Hi

SD card boot/operation is limited to 32MByte according to the documentation.

If you have a 100MByte file you can still store it on the SD card and read it from your code (via FAT) when needed. If you have 100MByte QSPI flash you can still put your complete code there: QSPI will be faster than SD card.

Regards

Mark
[uTasker project developer for Kinetis and i.MX RT]
Contact me by personal message or on the uTasker web site to discuss professional training, solutions to problems or product development requirements

 

0 Kudos