iMXRT1064 with external Flash as non XIP

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

iMXRT1064 with external Flash as non XIP

1,506 Views
anujtanksali
Contributor II

Hello,

I am using iMXRT1064 controller with Emwin graphical library. I have a lot of images in my application so wanted to use an external flash for storing the images. 

Is there any facility in iMXRT1064 device which can directly access serial flash as non XIP.

My code will execute from internal flash and access the external flash for images. 

I do not want to build a separate binary file for images which i will have to program it in external flash first then i can access the images from internal flash through code in internal flash

Is it possible using iMXRT1064? 

If yes then is there any example for it?

Regards,

Anuj

Labels (1)
Tags (1)
0 Kudos
13 Replies

1,262 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Anuj Tanksali,

Thank you for your interest in NXP Semiconductor products and for the opportunity to serve you.
1) Is it possible using i.MX RT1064?
-- Yes, it's available to access the external flash which connects the FlexSPI1 interface of the i.MX RT1064, in the SDK library, it contains the flexspi demo project which presents send data and operate the external Nor flash and Hyperflash connected with FLEXSPI, please refer to them for details.

Have a great day,
TIC

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,262 Views
anujtanksali
Contributor II

Hello jeremyzhou‌,

Thank you for the reply.

I wanted to use the following concept below in iMXRT1064

pastedImage_1.png

This section above is taken from MCUXpresso 11.1 user guide.

The list above does not mention iMXRT1064 device but the device IS25WP064A mentioned for iMXRT1050 is the same used on iMXRT1064 EVK board. 

I accessed folder MCUXpressoIDE_11.1.0_3209\ide\Examples\Flashdrivers\NXP\iMXRT on my PC but driver for IS25WP064A using

iMXRT1064 is not listed.

Can i use the same driver MIMXRT1050-EVK_IS25WP064A.cfx for my device  IS25WP064A using iMXRT1064?

Can i use this for storing images in IS25WP064A and accessing the images from iMXRT1064 internal flash?

Thanks

Regards

Anuj

0 Kudos

1,262 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Anuj Tanksali

Thanks for your reply.
1) Can I use the same driver MIMXRT1050-EVK_IS25WP064A.cfx for my device  IS25WP064A using iMXRT1064?
-- No, I'm afraid not.
2) Can I use this for storing images in IS25WP064A and accessing the images from the iMXRT1064 internal flash?
-- It's available to store images in IS25WP064A and access the images from the iMXRT1064 internal flash. In essence, these flash drivers file utilize the FlexSPI driver which is as same as the flexspi in the SDK library to implement the flash operations, like erase, program, etc.

TIC

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,262 Views
anujtanksali
Contributor II

Hello jeremyzhou‌,

1) I am not sure why the driver is specific to iMXRT1050. The driver to access the IS25WP064A device should be generic right?

2) Can i port the driver available for iMXRT1050 to iMXRT1064. The readme file for driver with iMXRT1050 specifies that the board files need to be updated then i can build the driver for different board.

3) Is there a .cfx driver available on iMXRT1064? If not then will it be available in future?

If the above driver is not available or cannot be ported then In this case I will have to manually store the images in the external flash first, then i can access the images.  I maybe will have to create a different project to write all the images in external flash. Is my understanding correct?

Thanks,

Regards

Anuj

0 Kudos

1,262 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Anuj Tanksali

Thanks for your reply.
1) I am not sure why the driver is specific to iMXRT1050. The driver to access the IS25WP064A device should be generic right?
-- Yes.
2) Can I port the driver available for iMXRT1050 to iMXRT1064? The readme file for a driver with iMXRT1050 specifies that the board files need to be updated then I can build the driver for different boards.
-- No, I'm afraid not.
3) Is there a .cfx driver available on iMXRT1064? If not then will it be available in the future?
-- Yes, however, it doesn't provide its source code there.
4) I think you'd better write all the images to the external flash manually.

TIC

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,262 Views
anujtanksali
Contributor II

Hello jeremyzhou

Thank you for you reply.

1) If a .cfx driver is available for IS25WP064A on iMXRT1064 then can you share it?

2) If manual option is to be used then i am not sure how to do it. I use emwin graphical library and convert the images to .c files using bitmap converter from emwin. Can the emwin functions where the API is going to be called to access a particular image data directly in external flash for i will have to copy the data from external flash to an array and emiwn api will refer to that array to display the image.

Regards,

Anuj

0 Kudos

1,262 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Anuj Tanksali

Thanks for your reply.

1) If a .cfx driver is available for IS25WP064A on iMXRT1064 then can you share it?
-- No, I'm afraid not.
2) Maybe you can consider the SD card to store the images if the number of images are a lot.

TIC

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,262 Views
anujtanksali
Contributor II

Hello jeremyzhou‌,

I don't have an sd card on my hardware currently. So I have to use the external flash only.

Regards,

Anuj

0 Kudos

1,262 Views
anujtanksali
Contributor II

Hello jeremyzhou‌,

How can i map my images to external flash in code so that i can directly access them from code running in internal flash.

I think using __attribute or #pragma directive we can map to external memory locations. If yes then how?

suppose i have a const array a[]={1,2,3} which i want to map to external flash location 6000 how do i do it.

I am using emwin graphical library and using functions setBMP, setbitmap etc to set the images on screen.

I plan to keep the the bmp's in external flash.

Thanks

Regards,

Anuj

0 Kudos

1,262 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Anuj,

Thanks for your reply.
1) I think using __attribute or #pragma directive we can map to external memory locations. If yes then how?
-- In the theory, it's possible. However, it's hard to do make it, as it needs to customize the programming algorithm of the IDE, and mostly of IDEs even don't provide the source code of the programming algorithm.
So I'd like to suggest you write the images to external via utilizing the file system (likes LittleFS FLASH filesystem ) in the demo project which runs in the internal flash, whereafter, the images are able to be loaded freely via the file system.

Have a great day,
TIC

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,262 Views
anujtanksali
Contributor II

Hello jeremyzhou‌,

Thank you for your reply.

I don't want to use file system. How do i implement it without file system.

Do you have any example code which demonstrates this?

Thanks

Regards,

Anuj

0 Kudos

1,262 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Anuj,

Thanks for your reply.

1) Do you have any example code which demonstrates this?
-- As aforementioned, it's available to access the external flash which connects the FlexSPI1 interface of the i.MX RT1064. In the SDK library, it contains the flexspi demo project which presents send data and operate the external Nor flash and Hyperflash connected with FLEXSPI, please refer to them for details.

Have a great day,
TIC

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,262 Views
anujtanksali
Contributor II

Hello jeremyzhou‌,

Thank you for the reply,

If i map the arrays which i want in external flash by using __attribute or #pragma directives and suppose by some means I write the object file of the array created in external flash, will i be able to access the array in external flash directly by referring to array name from internal flash. 

I suppose this is possible. Can you please confirm. 

Regards,

Anuj

0 Kudos