XTIDE controller now available

Dave McGuire mcguire at neurotica.com
Mon Oct 5 16:10:13 CDT 2009


On Oct 5, 2009, at 3:39 PM, Geoffrey Reed wrote:
>> What am I not understanding about the need for this product?  I  
>> have about
>> a half-dozen 8-bit ISA IDE controllers, mostly Seagate branded.   
>> Didn't
>> think they were particularly rare.
>
> From what this sounds like it is able to talk to large capacity IDE  
> drives,
> presumedly 16-bit IDE drives.  The older XT ide controllers by  
> seagate (that
> I had) were limited to a handful of drives that could do 8-bit wide  
> data
> transfers and were very limited capacity wise.

   The big difference here is LBA vs. C/H/S addressing.  Recall that  
the IDE interface is a clone of the register-level programming  
interface of the ancient WD1010 MFM hard disk controller chip family,  
whose registers are 8 bits wide.  There's a register for the starting  
sector number (256 sectors), a register for the low byte of the  
cylinder address and two bits of another register for the high part  
of the cylinder address (meaning it tops out at 1024 cylinders), and  
half of a register for the head number (meaning 16 heads).

   1024 cylinders * 16 heads * 256 sectors * 512 bytes/sector = 2GB

   I don't know where any supposed 520MB limit comes from; if someone  
can enlighten me there, I'd appreciate it.

   LBA (Logical Block Addressing) mode takes a large, flat linear  
address space of blocks with no notion of cylinders, heads, or  
sectors.  It's 28 bits wide, topping out at about 137GB.  IDE  
interfaces take that word of bits, break it up into little pieces,  
and sprinkle them across the former cylinder/head/sector registers  
(and pieces of registers) in a very kludgy and inefficient way.  They  
take the LBA address and put the first 8 bits into the sector  
register, the middle 16 bits into the cylinder number register (yes,  
using it as a 16-bit register!), and the high four bits go into the  
head and device select register.

   Ugly, ugly, ugly.

   New kludges were devised to exceed this ~137GB plateau  
(obviously), but I don't know how they work offhand because I've  
never designed with them.

   Anyway, early BIOSs don't know how to deal with this, which is one  
of the things that makes this XTIDE controller special.

             -Dave

-- 
Dave McGuire
Port Charlotte, FL




More information about the cctech mailing list