Hello @zp001,
The cache is a topic on its own.
But basically, if the cache is disabled, the core will need to read the flash instead of the cache, and that is slower.
The cache can be invalidated by address after each write to the flash.
There is this API of the low-level Cache_Ip driver.
Cache_Ip_InvalidateByAddr();
So, you can keep the cache enabled, but invalidate the part of it that has been reprogrammed.
Regards,
Daniel