none
RAM memory mapping - Need clarification RRS feed

  • Question

  • Hello,

    Total RAM size is 512 MB.

    On my WEC7 device control panel, I'm seeing total memory as:

    Storage memory: 53792 KB
    Program memory: 376140 KB

    So, total size is : 419MB.

    My config.bib has following:

        SECTION_BASE     80000000      00001000     RESERVED
        ARGS             80001000      00001000     RESERVED
        RSVD             80002000      001BA000     RESERVED
        EMAC	     801BC000	   00009000	RESERVED 
        RSVD1	     801C5000	   0003B000	RESERVED
        FBUFFER	     95B00000	   00200000	RESERVED 
    	
        #define NK_START    80200000
        #define NK_SIZE     05E00000
        #define RAM_START   86000000 
        #define RAM_SIZE    0FB00000

    According to this, RAM_SIZE is 251MB.

    AFAIK, this is Program memory + Storage memory. Is my understanding is correct? If yes, why this difference? If no, what is the correct explanation for this?

    My image_cfg.h has following line:

    #define STATIC_MAPPING_RAM_SIZE             (384)
    

    And oemaddrtab_cfg.inc file has:

        g_oalAddressTable
    
        DCD 0x80000000, 0x00100000,	STATIC_MAPPING_RAM_SIZE   ; RAM image mapping; 0x80000000+384MB=0x98000000
        DCD 0x9B000000, 0xFC000000, 64						  ; 64 MB Peripheral device space (As per  datasheet)
        DCD 0x9F100000, 0x00000000, 1						  ;Mapping Boot region
        DCD 0x00000000, 0x00000000, 0                         ; Terminate table

    NK size:

    nk.bin: 51MB
    nk.nb0: 94MB

    Anybody please explain why I am getting 419MB of memory, and also please explain more about these memory mapping...

    Thanks :)


    Keshava G N,
    Member - Technical (Software),
    iWave Systems, Bangalore,
    http://iwavesystems.com ,
    mailto: keshavagnATiwavesystemsDOTcom .

    Thursday, June 12, 2014 1:47 PM

Answers

  • You have 512MB RAM, out of which you are reserving ~4MB for FB and other as per config.bib 

    You are reserving ~94 MB for kernel 

    128 MB is reserved for peripheral mapping so (512-128) = 384 MB of RAM is actually available to you as static mapping 

    As per config.bib free RAM available for user program is 251 MB this is fixed and un allocated ...

    Out of the allocated memory whole of the memory will not be used at the run time like the 128 MB reserved for I/O and memory for kernel 

    This free memory will get added and will give for user application

    --- misbah


    Please mark it as answer or vote as helpful if my reply helps.

    Project Leader

    T.E.S Electroni Solutions (Bangalore-India)

    www.tes-dst.com email-misbah.khan@tes-dst.com


    • Edited by Misbah Khan Monday, June 16, 2014 8:44 AM
    • Proposed as answer by Misbah Khan Monday, June 16, 2014 12:17 PM
    • Marked as answer by Keshava GN Tuesday, June 17, 2014 11:38 AM
    Friday, June 13, 2014 12:38 PM

All replies

  • You have 512MB RAM, out of which you are reserving ~4MB for FB and other as per config.bib 

    You are reserving ~94 MB for kernel 

    128 MB is reserved for peripheral mapping so (512-128) = 384 MB of RAM is actually available to you as static mapping 

    As per config.bib free RAM available for user program is 251 MB this is fixed and un allocated ...

    Out of the allocated memory whole of the memory will not be used at the run time like the 128 MB reserved for I/O and memory for kernel 

    This free memory will get added and will give for user application

    --- misbah


    Please mark it as answer or vote as helpful if my reply helps.

    Project Leader

    T.E.S Electroni Solutions (Bangalore-India)

    www.tes-dst.com email-misbah.khan@tes-dst.com


    • Edited by Misbah Khan Monday, June 16, 2014 8:44 AM
    • Proposed as answer by Misbah Khan Monday, June 16, 2014 12:17 PM
    • Marked as answer by Keshava GN Tuesday, June 17, 2014 11:38 AM
    Friday, June 13, 2014 12:38 PM
  • Out of the allocated memory whole of the memory will not be used at the run time like the 128 MB reserved for I/O and memory for kernel.

    This free memory will get added and will give for user application

    Whether this means that the RAM available = 251 MB + 128 MB + (94 MB - NK.bin size)?

    Please confirm.

    Thanks.


    Keshava G N,
    Member - Technical (Software),
    iWave Systems, Bangalore,
    http://iwavesystems.com ,
    mailto: keshavagnATiwavesystemsDOTcom .

    Friday, June 13, 2014 12:50 PM
  • RAM (available) = 251MB (fixed) + (128 MB - memory allocated for peripherals as mapped) + (94MB - memory occupied by NK)

    --- Misbah


    Please mark it as answer or vote as helpful if my reply helps.

    Project Leader

    T.E.S Electronic Solutions (Bangalore-India)

    www.tes-dst.com email-misbah.khan@tes-dst.com



    Monday, June 16, 2014 6:04 AM
  • Keshava,

    You replied to a post exactly the same which i explained here.

    With this i thing you got the answer to your question "Need Clarification" 

    Can you close this post.




    • Edited by Misbah Khan Tuesday, June 17, 2014 11:30 AM
    Tuesday, June 17, 2014 11:30 AM