RAM Cache

This probably not so much an enhancement request for the Arduino boards, but maybe more suggestion for an addon shield.

I thought about building a webcam that is capable of delivering high resolution images through the Ethernet shield. For this purpose I figure out, it must store the images on some storage medium or RAM.

Since MMC cards and Flash media (like USB sticks) only have a limited number of write cycles, and given that they are not really very fast, I would like to ask if anyone knows about a RAM extension board. Just like that board from Sparkfun:

But with a real high capacity RAM chip instead of classical storage media where I can create, say, a huge ringbuffer...

If 32K or 64K is enough then have a look at this thread:-
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1254559844

I guess it all depends on the camera and what exactly you are trying to implement with it. It really comes down to whether you want moving pictures or still images. If its stills then get enough ram to cover the resolution of the sensor and accept the speed restrictions on something like serial or spi bus. You might be able to get away with moving images if you choose your sensor carefully and use ROI (region of interest) where it doesn't actually clock out the full sensor just the area you want to see, like 128x128.

From what I've seen so far, all of the arduino based sensors are stills based spi/uart, where it doesn't matter so much on being able to process the images in reatime, unfortunately I don't think the arduino processor is fast enough to cope with full res. moving images.

I'm just wondering though, as you have the ethernet shield why you can't just stream the camera output to directly to the ethernet port and a receiving program? it would make more sense unless you have to clock the whole sensor out in one go?

Since MMC cards and Flash media (like USB sticks) only have a limited number of write cycles ...

The SD specification includes a section on what is referred to as "wear leveling". The idea here is that on write, the sector shall be remapped to a different physical location on the media.

We can't really be certain that every SD card manufacturer lives up to this "requirement", but I would expect high end cards to do so.

For this sort of application, you're probably off spending $100 for a more capable basic board than trying to cram add-ons on an arduino. Something like a leopardboard (http://designsomething.org/leopardboard/default.aspx) About $100 gets you an ARM9 with 128MB ram, 256MB flash, ethernet, SD card slot, and a VGA camera (with a bunch of other camera modules, up to 5MP, supported. (wow.)

Probably not a beginners system to program, though. Someone should make it run Processing.

(Heard about it at TI's "MCU Day" event. No personal experience. Maybe it does run Processing.)