Save a big ammount of samples SPIFI (LPC4370)

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

Save a big ammount of samples SPIFI (LPC4370)

826 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by rodri on Mon May 02 14:35:30 MST 2016
Hi,

my intention is to save a big ammount (up to 4Gbit) of samples into a flash memory. I'm using HSADC at 8Msps, that is generating arround 32MBps. For doing it, i want to use SPIFI as a Quad SPI interface, and map it into four '1Gbit' flash memories.

For that, I must use more than one Chip Select lines (using GPIOs if it is possible). I was reading the user manual but I did not found any limitation (aparently). I don't understand if SPIFI allows this operation mode.

Do you know if it is possible? Is there any app note?

thanks
Labels (1)
0 Kudos
Reply
6 Replies

753 Views
lpcware
NXP Employee
NXP Employee
bump
0 Kudos
Reply

753 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by rodri on Wed May 11 09:39:35 MST 2016

Quote:
I see no reason why is should not be possible to deactivate the SPIFI pin and use it as GPIO + use 3 more GPIOs to have a manual slave select



Sorry, chip select must be going low and high on every operation. GPIO is slow in comparison with SPIFI CS. So the sollution I'm thinking is to Map CS to every Memory device using a CMOS switch controlled by GPIOs.

0 Kudos
Reply

753 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by rodri on Mon May 09 01:33:28 MST 2016
Ok, thanks for your answer! I will keep in mind!

Last short question:
Is there any lib that allows to write to a flash memory but independently of wich model of Flash device is? I only found libs that are compatible with a short list of devices, without functions that allows me to define how to make the reads/writes, or modify the Opcodes. (or maybe I'm so noob haha). And where can I find examples?

Thanks for all!

regards
0 Kudos
Reply

753 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by metraTec on Mon May 09 00:20:14 MST 2016

Quote:
After boot, code Is it transfered to RAM at 0x14000000, right? then if I want to write to Flash Memory, how I should proceed? I must respect the code zone?



This can be the case, depends on the startup code. Code can be executed from SPIFI directly.

You can only write to Flash if the code, at least the writing one, is in RAM. You should not use the area of flash where the code resides. It would be destroyed so it would be one time use firmware ;)

Also keep in mind: Flash is erased page wise so start the data on some pages after code (in case it grows later) and let it start on a page boundary.
0 Kudos
Reply

753 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by rodri on Wed May 04 12:01:23 MST 2016
Hi metraTec, thanks for your answer!


Quote:
Is this really necessary? How about 1 flash with 4GBit?


Yes it is a better sollution. I'm doing my final year project and the idea is to test the scalability of my design, so in this case 1Gb chips is enough and cheaper.
EDIT: I think 43xx only support up to 128MByte memories, that is 1Gb.


Quote:
I see no reason why is should not be possible to deactivate the SPIFI pin and use it as GPIO + use 3 more GPIOs to have a manual slave select.
Is this what you needed to know?



Yes thank you. First I'm going to make tests with the link2 flash memory only.


Quote:
You are using the LPC4370? You know the interface is used to execute code? This chip has no internal flash memory.
This means: You have to link the code so it is executed from RAM! Because you use the SPIFI interface for something else.



After boot, code Is it transfered to RAM at 0x14000000, right? then if I want to write to Flash Memory, how I should proceed? I must respect the code zone?
sorry, I'm very lost with SPIFI

Thanks for all

regards!
0 Kudos
Reply

753 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by metraTec on Wed May 04 01:03:37 MST 2016
First of all some questions:
Is this really necessary? How about 1 flash with 4GBit?
You are using the LPC4370? You know the interface is used to execute code? This chip has no internal flash memory.
This means: You have to link the code so it is executed from RAM! Because you use the SPIFI interface for something else.

Now the question itself:
I see no reason why is should not be possible to deactivate the SPIFI pin and use it as GPIO + use 3 more GPIOs to have a manual slave select.

Is this what you needed to know?

I don't think there is any matching app note for the reason of missing internal flash.


Have a nice day
0 Kudos
Reply