Arne Georg Gleditsch wrote:
Peter Stuge <peter@stuge.se> writes:
Arne Georg Gleditsch wrote:
The unrv2b uncompression algorithm appears to behave very badly in the absence of a proper cache. But why does this improve when the algorithm runs out of RAM?
Could ROM accesses be a factor?
Yes, at least in the sense that running from ROM means we're running from an uncached memory region. I assume you'd notice much the same running from uncached DRAM as well. copy_and_run is one of the few things that run after cache-as-ram has been disabled but before our code has been copied to proper DRAM, so it is especially sensitive regarding code footprint.
I have thought about this a while back and have wanted to make a change. Disabling CAR should fixup the stack etc but for performance reasons we should setup/leave ROM and RAM caching enabled on the BSP. If you are interested in looking at that I think it would be great. Marc -- Marc Jones Senior Firmware Engineer (970) 226-9684 Office mailto:Marc.Jones@amd.com http://www.amd.com/embeddedprocessors