Most CF Cards Fail DMA Transfers
Anomalyst writes "In his quest to create an open source video camera, Andrey Filippov of elphel.com has determined that most Compact Flash devices, although claiming to be DMA capable, do not perform Direct Memory Access transfers correctly. This means successful movement of data to and from the device takes much more time with DMA disabled." The culprit appears to be the controller chip packaged with most of the CF cards Filippov tried. We last visited Elphel and their work on open source digital cameras in 2002. Filippov gave a Tech Talk at Google last year.
I can vouch from personal experience with their engineers that their cards rated for 30MB/s or higher all support UDMA 4 or higher, and I've done tests of my own to verify this. Not all ExtremeIII cards support UDMA though; the ones that don't specify a speed of 30MB/s are instead rated for 20MB/s, which can be quite easily achieved using PIO6 (although less efficiently.) These cards might support UDMA, but since there's no *need* for it, there are no guarantees.
Also, I'm pretty sure Lexar cards rated for UDMA do perform as advertised. I can't vouch for other manufacturers. Additionally, be wary of fake cards (ebay is especially prone to fake card sales) as they're never going to perform to your expectations.
How do you know that it indeed works in a full-fledged UDMA mode and not in some half-assed workaround mode, used specifically because of the problems in question existing in the cards' controllers. Did you reverse engineer the camera's firmware?
It's like the difference between an onboard video setup and a "real" one. People who need more features always have to pay a little more for them.
Something interesting to note is that I can't get anything approaching the speed of the Addonics IDE-CF apapter out of any USB CF adapter I could find. They generally run fast, just not as fast.
Strangely Hard drives connected through a USB adapter run slower than those connected through the IDE interface. Hmm, this couldn't have anything to do with USB, could it? </sarcasm>
Basically what I'm saying this isn't really interesting if you know USB is crap for data transfer, which I thought most people here knew. Though if you didn't already know this, I can see why you thought it interesting.
Yes, I know Eagle. But it can not handle the the designs we have, and it is still not a free software. So - we'll have to wait.
Elphel would put some $50K in the pool (if there was one) to buy a serious PCB CAD software no make it GPL-ed.