OpenCores
no use no use 1/1 no use no use
IDE UDMA issue
by STRAMI on Apr 13, 2012
STRAMI
Posts: 3
Joined: Apr 21, 2009
Last seen: Jul 1, 2015
Hi all,

A while ago I did a data recorder using compact flash. I did the recordings to the CF disk using UDMA-4 mode. The low level control was implemented in VHDL.

I now have a problem that all the new cards I buy dont work as cards I got a few years ago. When I try to transfer multiple sectors using UDMA, the CF card stops the transfer after every sector. I look at the waveforms for my working CF cards and there I see the cards transfer multiple sectors without releasing DMAARQ, on the newer cards however, the card first releases DMARDY (as it would when pausing a transfer) and then after 100ns, releasing DMAQRQ (according to the CF spec this means the device terminated the transfer).

Has anyone seen something like this before? Why does the newer CF cards not allow me to transfer multiple sectors using UDMA? If indeed the card terminates the transfer, do I need to set up things like the start LBA and number of sectors again?

Any help or ideas would be greatly appreciated.
Kind regards,
Randall
RE: IDE UDMA issue
by lfoss on Apr 13, 2012
lfoss
Posts: 4
Joined: Feb 21, 2010
Last seen: May 30, 2025
I wonder if you've just unearthed a bug in the new generation Flash Controller used in CFlash disks. There is a wide range of brands of CFlash but the internal controller cores tend to come from a limited handful of chipset makers.
RE: IDE UDMA issue
by STRAMI on Apr 17, 2012
STRAMI
Posts: 3
Joined: Apr 21, 2009
Last seen: Jul 1, 2015
Hi,

Now I have also started checking the device status and error registers to try and find a solution. From the error register at least the device does not report any errors (I was hoping it would).

From the status registers it appears as if the device "knows" it has to transfer [x] number of sectors. If I for instance attempt to transmit 10 sectors, the device will after each sector request more data until the 10th sector where the DRQ (data request bit) - in the status register is cleared.

Well my search for the solution or explanation continues.

Regards,
RE: IDE UDMA issue
by eakdemir on Apr 25, 2012
eakdemir
Posts: 1
Joined: Jul 21, 2008
Last seen: Aug 21, 2015
Hi Randall,

I have the same problem and I couldn't solve the problem yet.
I'm using Sandisk CF ULTRA and Sandisk Extreme IV.
CF ULTRA works fine but Extreme IV terminates during UDMA burst.
And as you mentioned firmwares of CFs are different.
Can you solve the problem?

Best Regards,

Emre
RE: IDE UDMA issue
by STRAMI on May 2, 2012
STRAMI
Posts: 3
Joined: Apr 21, 2009
Last seen: Jul 1, 2015
Hi Emre,

I have unfortunately not been able to find a solution yet. I am now trying to get into contact with Transcend (I've been using their industrial CF cards) to perhaps get some support. If I find something I'll post it here.

In the meantime I have tried a few different brands of CF cards and this morning in fact I got a Transcend Ultimate 600x 16GB. I've now tested it and it works just fine. I'll test a few more but my time on this is limited so perhaps we might just change all our CF cards to a type that "works".

Kind regards,
Randall
RE: IDE UDMA issue
by hujianhua on Mar 24, 2013
hujianhua
Posts: 1
Joined: Mar 5, 2010
Last seen: Feb 7, 2024
Hi Emre,

I have unfortunately not been able to find a solution yet. I am now trying to get into contact with Transcend (I've been using their industrial CF cards) to perhaps get some support. If I find something I'll post it here.

In the meantime I have tried a few different brands of CF cards and this morning in fact I got a Transcend Ultimate 600x 16GB. I've now tested it and it works just fine. I'll test a few more but my time on this is limited so perhaps we might just change all our CF cards to a type that "works".

Kind regards,
Randall


hi, Randall,
I got a same proble with the lexar 600x 16G CF card, do you find the solution yet.please give me some advices by hujianhua.jianhua@163.com , thanks very much.
regards,
hujianhua
no use no use 1/1 no use no use
© copyright 1999-2026 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.