AnsweredAssumed Answered

low flash performance on K6x

Question asked by Peter Ruesch on Jul 16, 2015
Latest reply on Aug 13, 2015 by Peter Ruesch

Hi,

 

we are currently benchmarking several relevant controllers to evaluate if they fit our needs and how they compare.

First, we were really happy to have found the kinetis K65 has an internal L1 cache to boost its performance.

 

I did some benchmarking and the code execution performance from internal flash to get an idea of the real performance one can expect form plain code execution.

 

please find the resulting charts below which show the results of my benchmarking. The Y axis indicates the execution efficency. This is reduced by occuring waitstates of the internal flash.

the benchmark consists of running through a defined number of instructions and counting cpu cycles meanwhile. Increasing difference between instructions and cpu cycles indicate a bottleneck in code fetching from the internal flash.

 

my conclusion: ST has done sone good job on their ART-Cache. How can I get equally good results with a K65 Part?

The worst thing is, that the K65 L1 Cache could possibly limit the performance of the controller

 

What surprises me: even without prefetching and cache stuff enabled, the STM32F429 still outperforms the K65 even with activated caches in some circumstances.

 

st_vs_fs.png

 

please let me know your thoughts!

Outcomes