As far as embedded systems, when you need an engine under the hood that
has significant performance, you have 3 basic options in today's market:
* MIPS
* PowerPC
* ARM
Yes, there are other options such as ColdFire, AVR, and such, but the
three above are the ones that can deliver full PC like capabilities in a
tiny box at reasonable commodity prices. If you don't need PC like
capabilities, then ColdFire, AVR, DragonBall, or other might be better for
you. It's too easy to go into over kill in your selection.
Each comes in various packages that add or subtract integrated peripheral
support such as embedded ethernet, LCD display, touch screen, serial, DSP,
crypto engines, etc. depending on the specific model you pick tailored for
embedded needs.
Each has commercial linux support available for compilers, kernel, and
custom device driver work. See MontiVista, Algorithmics, and Arabella to
name a few. Each has significant open source project support. See
Open Embedded for people doing ARM, linux-mips.org, and Yellow Dog for
PowerPC.
The popularity of these pojects waxes and wanes with the availability of
easy to hack consumer products. Most started with PDA and PDA like
devices. MicroSoft's first standard for WinCE on PDA platforms required
an SH3 or MIPS cpu, so that is what was available 5 years ago. MicroSoft
standardized on ARM/XScale for their PocketPC release, so that's what is
in the market now. However, the other chips are still big in the market.
All your laser printers are a pretty even mix of ARM, PowerPC, and MIPS,
and I know one major printer manufacturer uses Linux on all three hardware
platoforms as the embedded OS. One of the popularly modded WIFI units is
a MIPS device running Linux.
The things that need to factor into your decision are just these two
items:
* In the volume of product I want to make, which specific CPU model gives
me the peripheral support and horse power I need for the least dollars.
Every dollar counts in mass production, that's why there's nearly a
hundred variants of each CPU core.
* Given my development staff and budget, which CPU can I most effectively
support. Remember, you not only have to develop the product, but you have
to debug it when your customers break it.
Don't worry so much about linux. It's there, and it's pretty solid on
each of these platforms. Yes, it has it's quirks, but that's true even on
x86-32/64. All the core stuff that you really care about works. My
desktop at home is an SGI running Linux simply because I'm partial to MIPS
and SGI hardware. Every single app that I use on my x86 Linux PC at work
is functional on my MIPS desktop at home -- just more fun. :)
I don't know if I've helped you or confused you more... There's no wrong
choice here. It's really a matter of computing dollars and cents required
to accomplish your specific application.
Not that I'm stearing you away from Linux at all, you might wonder over to
some of the *BSD websites such as NetBSD and see what they are doing on
the various hardware too to help you get an objective picture of what the
open source world knows about making these platforms crank.
Regards,
-S-
On Thu, 31 May 2007, Juliano Pillati wrote:
Hello people,
I'm thinking in development hardware, but I don't choice yet what
microprocessor will be used. I think in ARM initially, because I can
use full linux on it. But are there MIPS too that is good option. So,
before I really do that choice, I would like that you help me with
some comparison or experince, prices, performance, clock (GHZ),
numbers of microprocessor produced of the world, linux suport, etc
between ARM vs MIPS.
I find on the web more projects with ARM, like as
http: //www.compulab.co.il , http://www.gumstix.com/ ,
http: //www.acmesystems.it/ , http://www.embeddedarm.com/ etc that are
projecs com only ARM. Are there too open hardware projects with
hardware, like as www.balloonboard.org and so one. I thinking are
there more development of linux + arm than linux + mips right ? I
would like any consideration, comments, urls, for better knowledge
about this.
Thanks,
juliano
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]