I'm trying to optimize code execution speed a little and I've found some differences between cache configuration used in Atmel SDK and Linux.
First difference is in exlusive/non-exclusive mode. As far as I understand Atmel SDK uses exclusive mode (https://github.com/atmelcorp/atmel-soft ... che_l2cc.c line 416):
Code: Select all
/* Set exclusive mode */ l2cache_set_exclusive();
It looks like linux4sam uses non-exclusive mode for L1 and L2 cache and this configuration gives better efficiency.
So my question is - how L1 and L2 should be configured? Why code in Atmel SDK uses exclusive mode? Is it correct to have different modes in L1 and L2 cache?