This message is from the T13 list server.
This was taken care of in ATA-3 back in 1996. When the host asserts DMACK-
(goes into DMA mode), it is requires to negate CS0- and CS1- (this is the
"data port"). Remember that register addresses map into 32 addresses
defined by CS0, CS1, DA0, DA1, DA2. But when CS0- and CS1- are negated,
the device does not respond (those 8 addresses map into no known registers)
- and that has been the case since ATA-1.
So any ATA-3 or later host (which includes all UDMA hosts) shall act in a
way that cannot confuse any other device - no matter how any of the ATA
signals are redefined (other than the 5 address lines of course).
Jim
"Pat LaVarre"
<LAVARRE@iomeg To: <[EMAIL PROTECTED]>
a.com> cc:
Sent by: Subject: RE: [t13] Master and Slave speed
owner-forum@t1
3.org
10/07/2002
09:23 AM
This message is from the T13 list server.
> when DMACK is asserted by the host
> side, the address signals are "disabled" and not used.
Do the public specs carefully require DMACK to be
asserted with enough setup for a merely PIO 0 device
to know to ignore the address signals before the host
begins using them? And on the other end, do the specs
require the address signals to go quiet early enough
before DMACK is deasserted?
Curiously, lazily yours. Pat LaVarre
-----Original Message-----
From: Hale Landis [mailto:[EMAIL PROTECTED]]
Sent: Mon 10/7/2002 9:43 AM
To: [EMAIL PROTECTED]
Cc: Stephane Cattaneo; Alistair LIVESEY; [EMAIL PROTECTED]
Subject: Re: [t13] Master and Slave speed
This message is from the T13 list server.
On Mon, 07 Oct 2002 17:30:11 +0200, Stephane Cattaneo wrote:
>This message is from the T13 list server.
>Thanks for your answer. Anyway, let's say that my two devices
accept pio mode
>4 (a hdd capable to run up to udma mode 4 and a dvd player
capable to run up
>to pio mode 4), so the max speed for pio mode. (this is
normally the case for
>all device present in the market).
In this example you may use PIO mode 4 to talk to both devices
(for
both register r/w and for PIO data transfers). The DMA mode of
both
device need not match - the HDD can use UltraDMA mode 4 while
the DVD
can use MW or UltraDMA (it need not also use UltraDMA mode 4 is
the
point). Why is this true? Because when DMACK is asserted by the
host
side, the address signals are "disabled" and not used. While
DMACK is
asserted the device that is not selected shall ignore the
address and
IOR/IOW signals.
Warning (because if I don't say this Pat will correct me): There
are
some *VERY* old devices that do not support DMA and don't even
decode
the DMACK signal. These devices may do strange things unless the
host
keeps the address signals deasserted while DMACK is assested.
This
should not be a problem on any modern host (a host that supports
UltraDMA).
>Because the commands are sent in pio timings (mode 4 in this
case), I think
>that I can communicate in udma mode 4 with the hdd, and pio
mode 4 with the
>dvd player. Do you agree that the read and write with the hdd
will not
>perturb the dvd player ?
Yes.
>Same question when I use the same hdd, plus another hdd capable
to run up to
>mode 2 instead of a dvd player.
In this case you *SHALL* use PIO mode 2 when doing register r/w
and
PIO data transfers with both devices. But again if you use DMA
with
these two HDD you could use different DMA protocols and/or
modes.
*** Hale Landis *** www.ata-atapi.com ***