LPC microcontroler with larger memory

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

LPC microcontroler with larger memory

567 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by pgr on Mon Aug 25 05:45:42 MST 2014
Hi,

I would like to know if NXP have plan to release new microcontroler with larger memory, both Flash and RAM ?

STM32 goes up to 2MB Flash and 256KB RAM, Freescale >Kinetis goes up to 1MB Flash and 256KB RAM.
While NXP LPC goes up to 1MB Flash and 136KB RAM (or 264KB without Flash).

Thanks in advance for your informations
Labels (1)
0 Kudos
4 Replies

486 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by MarcVonWindscooting on Tue Nov 11 15:12:49 MST 2014
The same for me: I never chose an MCU with bigger FLASH because I needed more FLASH, but because I needed more SRAM  |(

But hey, open source guys, thanks to the abundance in FLASH memory, you can put the source code into FLASH besides the executable, haha!

Another hassle is splitting up SRAM into non-contiguous regions. That makes LD-scripts so much harder and full SRAM nearly impractical (to me at least). A very notable exception is LPC15xx with contiguous SRAM for all SRAM sizes, although parts of the RAM can be shut down at runtime.
0 Kudos

486 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by MikeSimmonds on Sat Nov 08 06:25:09 MST 2014
I would like to add my vote for more (lots) of internal sram (with execute permission).
Would only need enough flash to hold a bootloader to copy from external SPI(FI) device.
[Do I understand correctly the FLASH and SRAM blocks compete for die space?]

E.g 32K (by 4K) Flash + All the sram that will fit on the silicon (contiguous).

Regards, Mike



0 Kudos

486 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by pgr on Tue Aug 26 23:42:52 MST 2014
Hi Pacman,

You are right I don't need more than 2MB flash but I need more RAM, and I would like to keep the internal flash. If you look at what NXP have done the chip with the largest RAM has not internal Flash. A chip with around 2MB flash and 512KB or even 1MB RAM would be perfect.

0 Kudos

486 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by Pacman on Tue Aug 26 18:20:28 MST 2014
I would like to vote for more on-chip SRAM.
SRAM is much more valuable than on-chip flash memory. I could do fine with just 8KB Flash, if I had 512KB SRAM, because adding external flash memory (NAND, NOR, SD/MMC, SPI or SPIFI based) is much easier than adding external SDRAM or even external SRAM.

Why, in my opinion, SRAM is more important:
1: Flash memory is already at 1MB.
2: You can load the program from external memories.
3: If you're driving a LCD display, or you're capturing images using a camera, you need a lot of SRAM
4: You can execute code quicker in SRAM.
5: It's possible to compress your code and data that you're storing in the flash memory, and then decompress it into SRAM when your microcontroller starts up.
6: Usually, you can optimize your code and data, so it doesn't use much flash memory.

-But that said... If I want to run an Objective-C program on my Cortex-M microcontroller, I would need around 800K flash memory (a bit more than 700K for libobjc).

...All that said... I think you can rest assured that NXP is constantly planning improvements.
-So my personal guess (without knowing anything about the internal plans, as I am an outsider), would be that we can expect increases both for flash memory and SRAM. You didn't ask "when can we expect that...", so I don't think I'll try and answer that question. ;)

Do you need more flash memory ? -Please let us know why (if it's not a secret); maybe there is a different approach to what you're trying to do.
You may have a bunch of libraries that you're building into your application, if so, I recommend reducing those libraries where you can. One thing I prohibit in my own sources, is the use of the printf family. It's simply not welcome, not even as a guest. - So if I want to send some strings via a serial interface, I just send plain text strings and numbers (decimal or hexadecimal). It uses very little space, compared to what printf & friends needs.
Also, I don't use malloc. If I really need memory allocation, I've written my own. It's quick, small and precise.
0 Kudos