milkv-duo/duo-arduino

CPU Runs Very slow without I-Cache

Opened this issue · 0 comments

Hi,

I've just recently discovered that, despite the CPU runs at 594 MHz (not 700...) it is very slow, performs like a 16 MHz CPU.
This is because the I-Cache is not enabled and the code runs from the internal DDR RAM.

I've found the way how the I-Cache and the D-Cache can be enabled in the XuanTie-C906 User Manual, see Chapter 16.3.1. = "cache enabling example".
https://occ-intl-prod.oss-ap-southeast-1.aliyuncs.com/resource/XuanTie-OpenC906-UserManual.pdf

Warning, with the enabled I-Cache and D-Cache some synchronization might be required, especially when using DMA.

I think at least the I-Cache should be enabled by default in the Arduino framework.

br.
nvitya