This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Difference Between RAM execution and Flash execution?

Other Parts Discussed in Thread: TMS320F28027

Hey, guys i just want to know what is the difference if a program is running on RAM execution or Flash execution?

  • Hi,

    RAM is 0 wait state memory where as flash is programmable wait state (depends on operating frq) memory with pre-fetch mechanism. So for non-linear code one could see better performance when code running from RAM vs Flash.

    Regards,

    Vivek Singh
  • Let us know if you have any further queries on this.
  • i have some doubts, but not on this anymore...
    if i want to make use of the function "DELAY_US", and i want to be very precise on this, i have to run this function on RAM? how can i run only this function on RAM? or i need to run my whole code for this? i already have my application and i noticed that when i run it from CCS (first time after loading it) the Delay is very precise, but then when i disconnect from my pc and run it the delay becomes very very imprecise. why this happen?

    and other question that i have is: im trying to learn the arquitecture and whole peripherals of the launchpadxl-f28027, (tms320f28027), but im confused about some information that it seems no appears in documentation, it says that device can work at 60Mhz clock source, even in the ADC document for this device they make some examples of cycles with 60Mhz clock- When i read the driver peripheral library (section clock) it says that the internal oscilators are maximun 10Mhz, so that means the 60Mhz is with an externall source of clock? im asking this because in the documentation i didnt found anything that says to me in explicit way "YES, the 60Mhz is with an external source of clock".

    other thing that generates this confusion to me its because in the pre-programmed example of this launchpad (temperature measurement), that i use some times as a "guide" they configure the SCI module for a 60Mhz, CPU_freq. and then they use a function from CLK API to set the OSC1 (INTOSC1), as clock source (i understand this is the same SYSCLK no?) but this clk is 10MHz "nominal". so i must understand that the "CPU_freq" is different than the SYSCLK?

    thank you for your answer. regards.
  • Conde,

    As you ran it from RAM, when you disconnected the MCU from PC, this happened. Try FLASH execution.

    The internal Oscillator is 10 MHz. But a PLL multiplies it to 60MHz (SYSCLK). Refer to "Clocking" in device datasheet.