AnsweredAssumed Answered

Use of RAM beyond 64KB in K60 controller with MQX 4.2.0

Question asked by Dinesh Sonagra on Feb 9, 2016
Latest reply on Feb 16, 2016 by Dinesh Sonagra

Dear Friends,

 

We are developing new application using K60 controller (internal RAM 128KB) and MQX 4.2.0. The software development tool is CodeWarrior Basic edition. Accordingly, Codewarior config file is also set for 128KB RAM (ram (RW): ORIGIN = 0x1FFF0000, LENGTH = 0x00020000  /* SRAM - RW data */ ).

 

While development, till RAM usage below 64KB, things were all right and system is working OK..

 

Now as we have expanded our software features, it is requiring RAM beyond 64KB.

 

We have tried to create the segment in RAM as below.

 

 

MEMORY
{
vectorrom  (RX): ORIGIN = 0x00000000, LENGTH = 0x00000400
cfmprotrom  (R): ORIGIN = 0x00000400, LENGTH = 0x00000020
rom        (RX): ORIGIN = 0x00000420, LENGTH = 0x0007FBE0  /* Code + Const data */

  my_ram        (RW): ORIGIN = 0x1FFF0000, LENGTH = 0x00010000  /* SRAM - RW data */

ram (RW): ORIGIN = 0x20000000, LENGTH = 0x0000FA00  /* SRAM - RW data */

/* kernel space starts after RAM variables (Location of MQX Kernel data + MQX heap) */
end_of_kd  (RW): ORIGIN = 0x2000FFF0, LENGTH = 0x00000000

/* Boot stack reused by MQX Kernel data */
bstack      (RW): ORIGIN = 0x2000FA00, LENGTH = 0x00000200  /* Boot stack */
end_bstack  (RW): ORIGIN = 0x2000FC00, LENGTH = 0x00000000  /* Boot stack end address requires 4B alignment */
}

SECTIONS

{

    __INTERNAL_SRAM_BASE  = 0x20000000;

    __INTERNAL_SRAM_SIZE  =  0x0000FA00;

 

 

...

...

...

 

.my_section

    {

        __my_section_start = .;

. = ALIGN (0x4);

;;;;;;;;;;; additional variables are defined here...

    } > my_ram      

 

On running this application, we have found that RTCS (ethernet communication) has stopped functioning.

 

What could be the reason ? can any one has came across such a situation ?

Outcomes