Processor Update

We took another hard look at processors for the system and came to the conclusion that the FreeScale MPC5200 is a good choice. While it is true that its clocks are inaccurate for audio, it is a powerful and versatile processor that gives us a lot of design room. We have done some experiments with an external audio clock (see my next post) and have convinced ourselves that we can correct (replace) the inaccurate clocks without too much difficulty.

The MPC5200 is a powerful processor. It runs at 528MHz and has an integrated floating point unit. For audio processing, this is overkill. There are many ARM based processors that lack floating point that can handle audio processing (mp3 decodes and whatnot). However, we have decided to go with a processor that has ample processing power because we believe that DigiSpeaker is a platform that will take on many different purposes in the future. To embed a marginally powerful system in the walls and ceilings of homes for the next 20 years is probably a bad idea. It is clear that home entertainment is going to require more power, not less, in the future.

The MPC5200 is not the only powerful processor out there. We took a hard look at the EP9302 from Cirrus and the MX31 from FreeScale. Both are ARM based processors with integrated floating point units. The MX31 is a little more expensive than the MPC5200 and the EP9302 is way cheaper. However, in each case, we found that the processors were not as versatile as the MPC5200. For instance, the EP9302 can produce very accurate audio clocks, but it can't do it while still supporting USB. The MX31 can also produce accurate audio clocks, but it doesn't have an integrated Ethernet controller so that would have to be added to the cost of goods. Another processor that looks pretty good is the LPC3180 from NXP. However, it lacks I2S interfaces. Minus the inaccurate clocks problem, we have yet to find features that we could not easily add to our MPC5200 design.

Fast. Integrated FPU. Large and varied set of peripherals. Moderate price. Native Linux support. For now, MPC5200 is a good choice. We can reconsider that decision when/if NXP adds I2S to the LPC3180 and/or FreeScale makes an MX31 with integrated Ethernet.