Piru wrote:
Some say they are probably burning much of their cycles running a JIT compiler to handle those instruction differences I mentioned between CF and 68K.
Possibly. However, accoding to jdiffend it should be at least twice as fast as 060@75, by just using the stock emulation library (no JIT). That just doesn't add up... :-)
Lie, bigger lie, benchmark by the manufacturer...
Those benchmarks were for the CPU running native code for the interrupt handlers with 68k applications.
People say it's running at 020 speeds... hmmmm... and it's in a machine with an 020. Makes you wonder doesn't it? Was the Coldfire even doing the work?
Perhaps they are running 100% emulation which would be the slowest. They probably couldn't get enough compatibility to run the OS with the stock emulation library. Which is why I said you need the OS source so you can rewrite it.
I worked on a project based on the 64180 where illegal instructions were used to replace instruction sequences that were commonly generated by a C compiler and the slowdown was about 20% on it so I don't doubt the manufacturer's estimates. However, if the exec also has to use the lib it will be slower... I think the slowdown was 50%. That's why I said the OS had to be Coldfire native code.
Even if some of the OS has been converted to native code, if certain parts aren't you might start stacking interrupts or have other unpredictable interaction between hardware and software.
Remember, any instruction that is native to the Coldfire runs at 266MHz. That's actually most of the 68k instruction set and addressing modes. Then you have, oh... say a penalty of 20+ instructions when you hit one that isn't. But remember... the 4e is partially superscaler so it gets around 1 instruction / clock cycle or better. Even if it takes 20 clocks to emulate 1 instruction it's still going to avarage out to faster than an 020.
I noticed Oli posted that the V5 core was ready for release in 2002. I'd guess HP offered big bucks to have an exclusive on it for several years.