[sebhc] Re: Great Idea for IDE MORE!! STATUS -- More Ideas ..

Robin England robin.england at dial.pipex.com
Sat Sep 23 16:15:24 CDT 2006


Hi all

The IDE interface is actually well documented and is extremely easy to 
interface to. I speak as an electronics engineer who works for a data 
recovery company. The only really tricky thing to do is implement support 
for DMA in your interface. However given the speed of the H8 / H89 you will 
only ever need PIO mode.

Commands to the drive are always 8 bits, only data transfers are 16 bits. A 
few years ago I successfully designed and implemented a design based on 
latches (as per your earlier post) to allow direct IDE to 8-bit 
microcontroller interface in a CPLD and it works fine.

There are a few drive-specific issues that exist due to the different 
interpretations that drive manufacturers have made on the ATA standards. 
Usually these involve things like having to issue a software reset or 
recalibrate command after power on or in certain circumstances. Also it is 
possible (and sometimes necessary) to load various drive registers before 
attempting data access to ensure correct operation. Most modern IDE (PATA) 
drives these days assume LBA addressing mode at power up but older drives 
assumed CHS addressing which can often cause confusion. Because hard drives 
are electromechanical devices, often relatively huge delays (e.g. 10,000 ms) 
can be the norm before the drive reports on ready. But, you can use the BSY 
and DRQ and DRDY bits in the control register to verify drive status.

The standards documents for ATA can be found at: -

http://www.t13.org

I would be happy to offer advice on this project should you have any 
specific IDE related questions. I'm not so knowledgeable on the H8 / H89 
side myself but I do own two H89 machines (hard-sectored drives only).

Regards
Robin


----- Original Message ----- 
From: "Lee Hart" <leeahart at earthlink.net>
To: <sebhc at sebhc.org>
Sent: Saturday, September 23, 2006 7:20 PM
Subject: Re: [sebhc] Re: Great Idea for IDE MORE!! STATUS -- More Ideas ..


> dwight elvey wrote:
>> What is the problem with going from a 8 bit bus to a 16 bit device?
>> You just need an extra port and an extra latch going both ways.
>> This is not rocket science to add this simple hardware. The entire
>> world of IDE devices are then open to you.
>
> I agree. This is fairly straightforward to do. It takes about twice as 
> many chips, but they are relatively inexpensive. As you say, then you have 
> a "normal" 16-bit interface to the IDE, so the documentation on how to 
> talk to an IDE device will apply. Or, you could reverse-engineer someone's 
> IDE device software driver, if you were desperate enough :-)
>
> The skeptic in me says that the published specs for IDE devices are 
> probably obscure, incomplete and inaccurate. If it were me, I'd build a 
> little logic analyzer to capture the 16-bit words going back/forth between 
> a PC and its IDE drive when I did a read or write. Then, I would program 
> the Z80 to send exactly those commands, in the same order, REGARDLESS of 
> what the published specs say!
> --
> Ring the bells that still can ring
> Forget the perfect offering
> There is a crack in everything
> That's how the light gets in    --    Leonard Cohen
> --
> Lee A. Hart, 814 8th Ave N, Sartell MN 56377, leeahart_at_earthlink.net
> --
> Delivered by the SEBHC Mailing List

--
Delivered by the SEBHC Mailing List



More information about the Sebhc mailing list