views:

243

answers:

5

I'm new to the embedded development world and am looking to get my very first board.

After some research, I realize that there aren't many choices with FPUs. This is important in my project as I'm going to be doing quite a bit of floating point computations.

I found the Mini2440 which seems to run on the ARM920T core. This particular unit is perfect for my needs (decent price, all the right I/O ports, and a touch screen to boot) but it seems that it doesn't have an FPU. I don't know how big of a penalty I'd be paying for FP emulation, so I'm unsure of whether to pull the trigger on this one.

That said:

  • Can someone please confirm whether this product (Mini2440) has an FPU or not?
  • My project will do image capture and analysis. Does anyone have any experience with running things like OpenMP on such platforms?
  • Please suggest any other similar boards in the ≤ $200 price range that have an FPU.
  • This world is new to me. Any other advice or things I should be aware of is much appreciated.
+5  A: 

Did you look at the BeagleBoard ? Its ARM CPU has VFP for floating point and also NEON for SIMD floating point. Cost is around $200.

Paul R
Looks like a nice piece of hardware but the lack of a touchscreen is a deal-breaker as buying a separate one makes it a little too expensive. Any other ones that you know?
ALF3130
Armkits.com has a similar board, Devkit8000, with the same processor and a touchscreen for around $300.
DoxaLogos
+5  A: 

Fixed Point math can do nearly everything Floating point can and ARM processors with their shift optimization love fixed point. I haven't had a FPU in so long that coding Fixed Point is second nature to me. And even better, Fixed math quite often is more accurate.

In short, don't write off a board because it doesn't have an FPU. :)

Michael Dorgan
Thanks for your answer. Do you know of any resources that might help me with fixed-point math and embedded development?
ALF3130
On embedded development, not really. I'm a game programmer and have been working on limited systems since my first day. My best resource is still my coworkers.The best page I found in a brief search is not wikipedia nor the other top 3 finds, go figure. http://wiki.nycresistor.com/wiki/GB101:Fixed_point_mathhas code that looks pretty similiar to what I learned with. Later, you can put a lot of the shifts within template classes and let it do the thinking for you.
Michael Dorgan
Fantastic, thanks so much Michael!
ALF3130
+2  A: 

I can't give you 100% confirmation, but I'm 99% sure that board's processor doesn't have an FPU; in that target market, it would be mentioned explicitly in the processor datasheets if it were present.

As an answer to a side-question: We were recently doing a bit of benchmarking that ended up comparing performance with an FPU to performance with compiler floating-point emulation without the FPU. Ended up with about a 100x difference in speed.

So, yes, it works -- but no, you don't want to do that for more than very occasional computations. As Michael notes, using fixed-point math is a much more attractive option for computations on embedded processors that don't have FPUs.

Brooks Moses
Thanks for giving me an idea of how bad performance can get. I guess I'll go with the Mini2440 and learn more about fixed-point math, then.
ALF3130
+1  A: 

No touchscreen, not sure why that matters, the beagleboards serial port is screwy but you still get a terminal, or go with a hawkboard which is also omap based, half the price and designed a little better, has ethernet so you can vnc in and get a full gui without double or tripling the price on a lcd touchscreen.

Instead of going with floating point arm, use the on chip (omap) dsp for that. TI float is superior to IEEE in so many ways.

dwelch
+1  A: 

Try the Samsung S3C6410 with FPU. And the Witech OK6410 board with Samsung S3C6410 cpu and 4.3" LCD, $139 only

Jon