Re: Using PLD or FPGA for ISA bus board with DMA

From: KR Williams (krw_at_att.biz)
Date: 04/25/04


Date: Sun, 25 Apr 2004 11:28:42 -0400

In article <44b0ca4e.0404242059.3b82c9e8@posting.google.com>,
assaf_sarfati@yahoo.com says...
> <ISA> wrote in message news:<40895aaf$0$20662$afc38c87@news.optusnet.com.au>...
> > I'm planning to build an ADC board with onboard buffer with DMA transfer
> > from onboard buffer to computer's memory.
> > Where can I find an ISA bus board design example with DMA functionality
> > using PLD or FPGA ?
> > What would be the max paractical speed to transfer data from ISA bus to PC's
> > memory?
>
> ISA was never designed for DMA, unless you consider the 8-bit 8237 on the
> motherboard. Both ISA and the 8237 are very much obsolete, and even if
> present on current chipsets, they have probably not been verified for
> correct operation for generations (chip generations, that is).

THere are three forms of ISA DMA. The 8237 DMA registers only
address one. ISA can also busmaster (HOLD/ HOLDA/, IIRC). IBM
had a series of modem/sound cards that did ISA busmastering. It
worked rather well, though the drivers had to copy into buffers
below the 16MB line.

> Unless entirely impossible, I'd suggest designing a PCI board; there are
> many interface chips available, and most of them include some sort of DMA.
> Best of all, the PCI bus was designed to use DMA as its basic data-transfer
> method (it's not called DMA; it's called Master transaction in PCI-speak).

I wouldn't disagree with this assessment. ISA is dead, and may
it stay dead. ;-)
 
> Designing a board around a PCI interface chip not too bad; the chip makers
> have lots of guides, app notes and possibly even evaluation cards available;
> PCI is doable using 2 signal and 2 power planes - even (if you are very
> careful) only 2 signal planes. OTOH, you can't wire-wrap or protoype one
> very easily.

You won't meet spec without the internal planes. It might work,
but might not. I'd never go below 2S2P for a PCI card, which
throws it out of the range of the hobbyist.
>
> If going the PCI route, I'd recommend learning at least the PCI basics,
> since it's very different from ISA, or any single-processor async bus
> (which ISA basically is).

-- 
  Keith 


Relevant Pages

  • Re: direct memory access
    ... No, 1 ISA, 5 PCI and 1 AGP. ... PCI and AGP might be shared. ... >>> If you don't see the Advanced tab, either your hardware doesn't>> support DMA or the DMA settings are incorrect in the BIOS. ... [[With some IDE drivers/Busmastering drivers, DMA cannot be>> enabled through the device manager, but only through the driver>> settings. ...
    (microsoft.public.windowsxp.help_and_support)
  • Re: Using PLD or FPGA for ISA bus board with DMA
    ... > THere are three forms of ISA DMA. ... > had a series of modem/sound cards that did ISA busmastering. ... However, none of this was widely used, and even when there was no PCI, ... many ISA DMA cards wouldn't work in all "PC Compatible" systems. ...
    (comp.arch.embedded)
  • Re: Using PLD or FPGA for ISA bus board with DMA
    ... > I'm planning to build an ADC board with onboard buffer with DMA transfer ... > Where can I find an ISA bus board design example with DMA functionality ... the PCI bus was designed to use DMA as its basic data-transfer ... Designing a board around a PCI interface chip not too bad; ...
    (comp.arch.embedded)
  • Re: Using PLD or FPGA for ISA bus board with DMA
    ... > I'm planning to build an ADC board with onboard buffer with DMA transfer ... > from onboard buffer to computer's memory. ... ISA is trivial. ...
    (comp.arch.embedded)
  • Re: DMA APIs gumble grumble
    ... 32-bit mask should that fail. ... 32-bit SAC addressing is done more efficiently than DAC addressing. ... DAC interfaces to the PCI DMA API for when "you really really want DAC ...
    (Linux-Kernel)