A doubt for the memory setting of OS in Smart DSP

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

A doubt for the memory setting of OS in Smart DSP

2,667 Views
Augustmilia
Contributor I

After we generated a new StartCore project(MSC8156) in code warrior,

we checked the lcf file, and found that by default the os_kernel_text were assigned to DDR.

I have a doubt about it:

Is the OS binary code be stored in os_kernel_text, and all the OS instructions will be read here?

If it is so, why not move it to M3? it will be more faster

Thank you very much

Labels (1)
Tags (1)
0 Kudos
Reply
4 Replies

1,579 Views
CrasyCat
Specialist III

Hello

 

I assume you are using CodeWarrior for StarCore V10.1.5. Am I right?

 

SDOS code is stored in sections  .oskernel_text_run_time, .oskernel_text_run_time_critical, .oskernel_text_initialization.

These sections are all allocated in DDR in the default .l3k file.

 

This is just an example of how to link a SDOS application and it leaves more space available in fast memory for application code.

For sure you can move the sections over to M3 if you wish.

 

CrasyCat

0 Kudos
Reply

1,579 Views
Augustmilia
Contributor I

Dear CrasyCat,

Thank you very much for your reply.

We're using Codewarrior for Start CoreV10.0, and the memory link file is .lcf

There are about 272K memory used in DDR for the os_kernel_text, I think this might be the SDOS code.

Are all the SDOS instructions be gotten from here?

And, if we move it to the M3, how much effiency will be increased? can you estimate? or is there any example which put the SDOS code to M3?

Thank you very much

 

0 Kudos
Reply

1,579 Views
CrasyCat
Specialist III

Hello

 

I do not have any performance data available when SDOS code is placed in M3.

 

SDOS code is allocated in sections  .oskernel_text_run_time, .oskernel_text_run_time_critical, .oskernel_text_initialization, which are all allocated in MMU segment os_kernel_text_descriptor.

 

CrasyCat

1,579 Views
J2MEJediMaster
Specialist I

Accesses to M3 memory take about 54 core cycles. Accesses to DDR memory take about 91-95 core cycles. Moving items to M3 memory can improve performance. (No, I don't have any numbers regarding specific code configurations.) The trade-off is that the more of SDOS that you pack into M3 memory, the less room you have for your time-critical algorithms. It's a balancing act, as you know.

 

---Tom