On Oct 27, 2011, at 3:09 PM, Cameron Kaiser wrote:
I love the
Coldfire, but it's probably because of my 68k fetish. Really
nice stuff, but even the Coldfire+ isn't keeping up with ARM development so
well these days.
I've never worked with the ColdFire, but because of my interest in Alpha
Micros I've always been curious (near the end of the 68K Alpha Micro phase
there were ColdFire-based servers produced -- I presume with some sort of
emulation layer for those instructions not supported on ColdFire that were
on, say, the '040). How was it to work with compared to a "stock" 68020 or
'030?
Well, you're using the past tense; they're still very much alive and well, though
generally highly integrated as opposed to standalone processors. Some of the more modern
ones have some nice additional MAC (multiply-accumulate) instructions with an
extended-range accumulator for e.g. light DSP work. Unfortunately, those MAC instructions
are all A-line instructions, so you can't use A-line words to force a trap to the
illegal instruction handler (which is how the 68K Mac system did its toolbox calls).
It's an "assembly-compatible" 68K variant, which means the opcodes have been
shuffled around to optimize silicon area in the decoder, but all the mnemonics are still
there aside from a few bits of functionality they decided were unnecessary or extremely
seldom-used. Early Coldfires didn't have separate user and supervisor stack pointers
like the real 68K, but modern ones all do and I never had to work with any without.
It's not object-code compatible with the 68K, but reassembling generally does the
trick and most of the SPRs are pretty much the same.
It also certainly runs less power than the original parts. The newest Coldfire+ line is
designed for super-low power operation, so it runs a handful of ?A at sleep and just a few
mA (up to a few hundred, depending on how fast you run) in run mode. It's good for
"semi-pro" hobbyist work, i.e. if you have a project that you like enough to
make a proper PCB and get it professionally assembled (unless you're just that good at
putting on BGAs, which is at least possible with a heat gun), but I honestly think
it's a lot easier to get good mileage out of an ARM, especially with cheap open-source
dev tools.
- Dave