S12X programming speed

By TOYSKOFIDIS N. : May 8, 2018 at 02:39 AM (02:39 hours)
Staff: Takao Y. : 6 comments

Hi
I am using mc9s12xdt512 and mc9sxeq512 controllers.

Both of them have 16MHz crystal and xdt512 has PLL filter for 40MHz bus frequency
Compiler, codewarrior 5.2
Debugger, multilink universal and multilink FX.

Windows 10 PC.

I have an issue with the programming speed.
I do not know if this is pemicro or codewarrior issue, I just hope that someone at pemicro could help me.

By "programming speed" I mean the time that needs codewarrior to programm the firmware to controller.

For mc9s12xdt512 with crystal 16MHz, the programming speed is 16kB per second, while with crystal 29MHz is 21kB per second.

For mc9s12xeq512, it is even worst. The programming speed with crystal 16MHz is only 10kB per second.

The problem is that for large firmwares (almost 512kB), the programming time is way too long and slows down the debugging procedure.

Especially for mc9s12xeq512, the programming time is unacceptable long.

I suppose that there is way to speed up the programming procedure.

As far as I understand, during programming procedure, the PLL is OFF and this is the reason of the slow programming times.

I have made some measures with the following pemicro algorithms for cyclon pro.

- Freescale_9S12XDP512_1x16x256k_512k_Linear_16k_page.12P
- Freescale_9S12XDP512_1x16x256k_512k_Linear_16k_page_pll.12P

The algorithm with the PLL, activates the PLL and gives 25MHz bus frequency, reducing the programming time by 20 seconds.

So, my question is, if there is a way to tell codewarrior to activate the PLL when programming the firmware (using the miltilinks) in order to reduce the programming time?

Or is there any other way the reduce programming speed?

Note that both multilink universal and multilink FX give the same programming speed.

I have a picture that shows the programming speed but I cannot find a way to attach it.

Thank you

Greetings,

It is not a surprise that the Multilink Universal and Multilink Universal FX has the same programming speed because the device you are trying to program is being bottlenecked by the BDM protocol. Non-BDM devices like ARM JTAG will have much bigger improvement.

What you can do is replace the non-PLL algorithm with the PLL algorithm by renaming it. Codewarrior will try to find the algorithm by name so just match the non-PLL algorithm.


Takao Yamada

Hi Yamada

Thank you for your response.
I have searched Codewarrior installed folder but I cannot understand where is the algorithm. Could you please tell me were can I find it?

Greetings,

I just remembered and realized that PEmicro algorithms are not being used in CW5.1 and 5.2 and you will not be able to switch. You are stuck with slow speed. Only if you use our PROG12Z to flash program will you be able to take advantage of the PLL boost.


Takao Yamada

Hi Yamada.

I am not sure what do you mean.
Do you mean that I have to use PROG12Z to flash program to program the firmware and then load the symbols with codewarrior?
Or do you mean something else?

Thank you

Greetings,

Something else. What I am saying is that you cannot use combination of Codewarrior and PROG12Z. And the PLL algorithms only work in PROG12Z. So you are stuck using Codewarrior for the time-being until you are done with debugging. Then you can use just PROG12Z for faster flash programming.


Takao Yamada