This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Deciding the SRAM requirement

Hi,

I want to select a new ARM controller for my project. I am thinking of going for LPC2103 which is having 32KB of FLASH and 8KB of SRAM. My code size will be less than 32KB, but I am not sure if the SRAM of size 8KB be enough. So, I have following queries.

1. What are the criteria for for selecting the controller with correct SRAM?
2. Do the manufacturers take care of this? (because I have observed that as the FLASH size on a controller increases, SRAM size on the controller also increases)
3. What is SRAM exactly used for on the controllers? (Building cache memory is one of the uses I know. What are the other uses?)

Regards,
Sagar J.

Parents
  • I am thinking of going for LPC2103

    It's a rather old MCU. I think you'll be better off picking one of the newer Cortex-M based MCU's.

    What are the criteria for for selecting the controller with correct SRAM?

    That's easy. You just pick an MCU that has enough SRAM for your application. So the question becomes: "How much SRAM does my application need?"

    What is SRAM exactly used for on the controllers?

    It's used for storing the variables in your program. In some applications, you'll also allocate some RAM for things like DMA buffers and vector tables.

Reply
  • I am thinking of going for LPC2103

    It's a rather old MCU. I think you'll be better off picking one of the newer Cortex-M based MCU's.

    What are the criteria for for selecting the controller with correct SRAM?

    That's easy. You just pick an MCU that has enough SRAM for your application. So the question becomes: "How much SRAM does my application need?"

    What is SRAM exactly used for on the controllers?

    It's used for storing the variables in your program. In some applications, you'll also allocate some RAM for things like DMA buffers and vector tables.

Children
  • Thanks Mike Kleshov! Your answers were very helpful.
    It's a rather old MCU. I think you'll be better off picking one of the newer Cortex-M based MCU's.
    The reason I am going for a low end ARM controller is because I have some constraints regarding the cost of my project. Also, I will be using only a few features of the controller. But as you are saying that LPC2103 is an old MCU, I will think of some controller from LPC213x series.

    It's used for storing the variables in your program. In some applications, you'll also allocate some RAM for things like DMA buffers and vector tables.
    I did some R&D on my another project which uses another LPC ARM controller. Though that I came to know the use of SRAM for storing variables. Although, info about allocating for buffers and vector tables was new to me and found it useful.

    Thanks again!

  • Hey Mike,

    I just went the features and pricing some of the Cortex-M processors. Prices are well in my range, rather I found those cheaper than the LPC213x series. Thanks for guiding me towards ARM Cortex-M series.