Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Most CF Cards Fail DMA Transfers

Posted by kdawson on Sat Jul 12, 2008 03:28 PM
from the it's-all-in-the-controller dept.
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.
+ -
story

Related Stories

[+] Embedded Linux On a High Speed Camera 91 comments
destructor writes: "Linuxdevices has an interesting article on a High Speed Gated Intensified Camera that "combines a fast gated micro-channel plate (MCP) image intensifier, a CMOS image sensor, and an embedded computer based on an Axis Communications ETRAX RISC processor running Embedded Linux." The camera (Elphel Model 303) itself is network operable and can be used for capturing images of explosions, lightning bolts, etc. Link found via. megarad.com."
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Creative (Score:4, Insightful)

    by negRo_slim (636783) on Saturday July 12 2008, @03:36PM (#24165937) Homepage
    Reminds me of the infamous Soundblaster crackle... Which in this thread [creative.com] is being discussed around X-Fi hardware. Even though I can remember the very first Live!'s giving me and my friends the problem years ago. I don't recall the exact details of the situation but I believe it was an improper PCI implementation.
    • Re:Creative (Score:4, Informative)

      by 77Punker (673758) <{ude.tniophgih} {ta} {40rcneps}> on Saturday July 12 2008, @03:48PM (#24165995)

      It's pretty fascinating how the company that appears to be the market leader is also the worst in terms of actually delivering a good sound card. Then again, maybe it shouldn't surprise me since they're also the biggest liars. I got bitten twice.

      NEVER AGAIN

      • Re: (Score:3, Informative)

        Of course, the only reason Creative are the market leader is because they bought out and killed off anyone who looked like they might actually be a viable competitor...
        • Re: (Score:3, Interesting)

          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.

              • by djdavetrouble (442175) on Saturday July 12 2008, @07:41PM (#24167653) Homepage

                I upgraded from onboard audio to an X-Fi Fatal1ty. My Kill to Death ratio went up by about 25% within a few days.

                NEVER underestimate the power of.... Celebrity Endorsement !

                Get the Fatal1ty mousepad to go up another percent.

  • I have been using a Lexar 300x UDMA CF card for a while in my camera (which supports UDMA) without any problems. I also know many people are using the Sandisk UDMA cards without problems as well. Both were also certified to work with my camera (Nikon D300) by Nikon.
    • by LanceUppercut (766964) on Saturday July 12 2008, @03:49PM (#24166003)

      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 would not be possible to get the performance the camera gets if it did not use DMA mode. It may be that it uses 1K blocks like the article says they used for a workaround. The cards also work fine in UDMA capable external readers, otherwise I would be seeing a ton of messages in the camera forums I frequent. Sandisk and Lexar UDMA CF cards are frequently used with the new cameras that can support it and are widely used by professional photographers.

        Also, the article said that the Sandisk card they tried worked. They did not mention anything about Lexar but did mention problems with Transcend, which is not certified for my camera.
      • I can't vouch for cameras, but I created a CF-based hard drive to boot my Windows XP tablet PC using one of these [addonics.com]. It has two CF slots, and my tablet's IDE controller supports UDMA. In Windows, you can check what UDMA/PIO mode your disks are in by clicking the Advanced Settings tab on the IDE adapter's property page in Device Manager.

        The first device I tried was the cheapest UDMA CF card I could get my hands on (233x 16gb Ritek), and after a few disk driver errors, it dropped out of UDMA mode and the laptop

        • I wonder how often voltage (5V vs. 3.3V) is a factor in UDMA problems...
          Like the previous poster, I use a Transcend CF card to run XP and Ubuntu on a laptop. I recently "upgraded" to the 16GB 300x version, since it was supposed to run at UDMA5. I wrote the review here [newegg.com].

          Short story: According to Transcend, the card has to run at 3.3V in order to run in UDMA5 mode. I'm also using that Addonics 2-card CF-to-IDE adapter, and it doesn't offer voltage choices, so I'm stuck at 5V and the slower speeds -- au
  • by Gothmolly (148874) on Saturday July 12 2008, @03:48PM (#24165991)

    What's next, some USB mice fail at implementing the USB 2.0 standard? Or some random printer which claims to support PCL really doesn't?

    Geesh, talk about a slow news day.

  • by kennyj449 (151268) on Saturday July 12 2008, @03:49PM (#24165997)

    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.

    • Re: (Score:3, Informative)

      I can at least vouch that the Lexar UDMA card works as advertised in my UDMA capable camera. Fake CF cards are a big problem. Avoid buying CF cards on Ebay and only buy from reputable dealers or you might get a fake Chinese card and have nothing but trouble.
  • by Migraineman (632203) on Saturday July 12 2008, @04:46PM (#24166365)
    I've been struggling with CF cards in embedded applications, and I can verify that they don't always comply with the interface specs. I've gone through at least a half-dozen different CF card brands, and all display some form of misbehavior if they're put on an IDE chain with another device. By themselves they work fine, but add a CD-ROM or a hard drive, and the system will fail with either bus timeouts or stalled transfers. My suspicion is that the CF card vendors are playing games with performance metrics in photography apps, and in those environments they can bend the spec because there's exactly zero chance of another device being installed on the interface.

    As far as I can tell (without a bus analyzer,) there's something hinky happening during device auto-detection and initialization. Many times, the CF card will be detected as the Master device, but no Slave device will be detected. Swap to a different brand CF card, and the symptom will change - both devices will auto-detect, but the IDE bus will throw timeout errors during boot. Swapping in just about any not-a-CF-card device, and everything is fine.
    • by riflemann (190895) <riflemannNO@SPAMbb.cactii.net> on Saturday July 12 2008, @09:49PM (#24168681)

      A while ago I built my mythtv frontend, (based off a T-Online vision s100 box) and elected to use a CF card for storage within the unit - the box is entirely free of moving parts, so CF made sense.

      I bought one of those IDE to CF adapters off ebay, and found that when I turned on DMA, the IDE bus would basically lock up, and pretty much end up useless.

      After a lot of fiddling and digging around, I discovered that the adapter did not connect the required pins for DMA transfers to work. Old-skool CF never had DMA, so this extra pin is only a recent addition to the standard.
      Anyway, I soldered in a short wire to hook up this pin, and now I get respectable dma transfers.

      The moral of the story - it might not be the CF card that is causing DMA failure, but the adapter it's hooked into.

  • In the article I was only describing CF working in "true IDE" mode, inside the cameras thy usually do not use it, so do not care much about the problem I've got. But it is important if you try to connect the camera with a simple adapter instead of the HDD
    • I guess FTP isnt good enough for you?

    • Re: (Score:3, Insightful)

      I haven't seen a digital camera that requires separate drivers in ages. My own camera is detected as a USB hard drive - XP, Vista, and Ubuntu alike - and it's more than four years old.
      • Re:Good work (Score:4, Informative)

        by baxissimo (135512) on Saturday July 12 2008, @04:06PM (#24166105)

        I think the OP was tricked into thinking that the crappy software that came with the camera was actually required to use the camera. The instructions that come with these cameras do tend to make it sound like installing the software is a mandatory step, and fail to mention that you can just access the pictures using Explorer. I guess they want to get their little bit of AdWare on your system. Or maybe they really are worried that Aunt Tillie doesn't know how to use Explorer.

    • Just about every camera I've looked at recently has a bog standard mini-USB connector and didn't require custom software to see the camera's contents as a drive, at least not with OSX.

        • Re: (Score:3, Informative)

          "disclaimer: only tested on OS X, not tested on animals, no DLLs were harmed in the making of this message, age 45 and older excluded, milage may vary depending on driving conditions, poster assumes slashdot readers are capable of understanding the concept of 'context', emoticons are optional and may require a surcharge."

    • Re: (Score:3, Informative)

      Compact flash is/was the standard on the high end. SD is making some inroads, but for a long time, fancy cameras had CF slots and that was your choice.

    • Re:Compact Flash (Score:5, Informative)

      by Sen.NullProcPntr (855073) on Saturday July 12 2008, @04:34PM (#24166273)
      I'm guessing size is the main factor, according to Wiki [wikipedia.org] SD has already maxed out at 32GB while CF has a theoretical max of 137GB. You need a lot of storage space for video.
    • Re:Compact Flash (Score:5, Informative)

      by AndreyFilippov (550131) on Saturday July 12 2008, @04:57PM (#24166433) Homepage
      Two of the reasons wewrw already mentioned: 1 - I've got IDE interface "for free" in from the processor chip, just needed connector. 2 - CF cards are higher capacity. 3 - I can download CF and ATA specs from the Internet, while SD (when I checked it) was much more difficult to get.
              • Re: (Score:3, 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.