Recently one of my friends faced very strange problem. He had the MicroBlaze CPU in his design running with 50MHz clock speed. He also had external SDRAM module and his application was executing out of external SDRAM memory. During first few benchmark tests he realized that it takes about 24 clock cycles to access memory :( This means that cool embedded 50MHz MicroBlaze CPU runs slower than poor external8MHz AVR. After my advice he enabled the cache within MicroBlaze, but application execution speed did not increased significantly.
As he described later, this was one of hand-on samples from EDK. May be the sample is not optimized for performance and very simplified, but net performance of 2MHz processor is not even close to advertised by Xilinx :(
Could any one give any comment on that?
Regards, Vladimir S. Mirgorodsky