[Open-graphics] YAPI (Yet Another Product Idea)

James Richard Tyrer tyrerj at acm.org
Mon Feb 5 11:35:23 EST 2007


Daniel Rozsnyó wrote:
> James Richard Tyrer wrote:
>> I was considering buying a small 1-2 GByte flash disk form my system so
>> I was looking over what was available and didn't find what I wanted.
>>
>> A system based on a CompactFlash memory card is very inexpensive.
>> However, I find that they are slower than a hard drive :-(.
>>
> 
> The slowness is due to PIO mode, you might want to get a newer revision
> ide-to-cf convertor, which has DMA support and an appropriate card.

So far I could only find them with DMA 0 which seems to be limited by 
the card speed.  DMA 0 is 16 MB/sec.  The fastest CF (133x) is 20 MB/s. 
  SDs come slightly faster at 22.5 MB/sec which is still slower than DMA 1.

>> The inexpensive ones are based on the IDE/ATA interface and have a
>> socket for 1 CF card.  It appears that not much is needed for this
>> interface.
> 
> Its only wiring :)

Perhaps some buffers.  But DMA is going to need a DMA controller, isn't it?

>> I suppose that it might be relevant to know how wide the data bus on the
>> IDE and CF are.  The IDE is 16 bit IIRC and IIUC CF flash is also 16
>> bit.  So, it appears obvious to me that the speed could be increased by
>> using the PCI or PCIe interface and using several cards in parallel
>> (i.e. striping the data).  With 32 bit PCI you could use 2 cards striped
>> in parallel and with 64 bit PCI you could use 4 cards striped in
>> parallel.  It would also be possible to use 2 banks (or 2 disks) the
>> same as memory so that 32 bit could use 4 cards.  Or, 2 disks with 2
>> banks each.
>>
>> Since this idea is so obvious, I should probably patent it ASAP. :-D
>>
>> It probably wouldn't need much besides a PCI controller to implement.

So, it is going to require a DMA controller and bus arbitration to be 
really fast.

>> IIUC, CF cards come in different speeds and (obviously) the speed would
>> depend on the speed of the cards being used, but it looks like with fast
>> enough cards (133x?) a 64 bit PCI (or a 32 bit with 2 disks) could beat
>> SCII 160 or with 2 banks it could beat SCII 320.
>>
>> This should considerably speed up a typical desktop Linux system if used
>> for swap.
>>
> 
> Buy a 4 port USB adapter and put there 4 usb sticks and run RAID0 :) or
> just 4 linux swaps (the kernel swaps to all of them in parallel).

Interesting idea.  But is this really going to run 4x what one port would?

> I'm currently using this on my diskless desktop (on onboard USB ports),
> with 1x256MB and its quite slow when it cames to swap. But I have no
> choice, coz it wont swap to file on NFS mount :/

So, basically, you would be a possible customer for this and you 
wouldn't need one that could beat SCSI 160; you would find IDE DMA 2 an 
improvement.

>> Perhaps SD cards are a better idea.

As stated above, they are available in 150x.

-- 
JRT


More information about the Open-graphics mailing list