Re: PCI FPGA Dev Board Suggestions



nico@xxxxxxxxxxx (Nico Coesel) wrote:

"Kunal" <kunals.spam.account@xxxxxxxxx> wrote:

PCIE is killing of PCI66 very rapidly

This is a good point.

Is this an academic application? If so some vendors like ourselves
have University discount schemes.

This is for university research, and we're basically looking for the
easiest and cheapest way to get about 600-800 Mbits of data onto a PC
without resorting to National Instruments cards (including their FPGA
product).

We're certainly not closed to the idea of using PCIe, although it
would require purchasing new computers.

It seems that most FPGA PCI boards are tailored to embedded
applications; since our application is a relatively simple one (where
the complexity is in transferring the data from FPGA to PC), this
seems a bit overkill.

Nevertheless, we're still exploring our options (in fact, a Spartan
chip could work, but we'd need the higher-end sizes, since we need to
process roughly 512 channels of data; this would require quite a bit
of the FPGA's resources).

A design consisting of multiple Spartan FPGAs is far cheaper than one
big Virtex. Still, 100MB/s is not something that is easely transferred
through the old style PCI33 or PCI66 bus. You'll find other devices
also demand bandwidth and you'll want bus-mastering as well.

An easier way to design such a beast is moving to PCI Express PCs and
use a PLX PCI express to PCI33 bridge chip. Now you have a dedicated
PCI33 bus you can use without having to concern yourself with other
devices which reside on the same bus. Perhaps you can even get by
using a less strictly timed PCI implementation since you also have
full control over all signal integrity issues.

The driver is another problem. If you can find a device which does
almost what you want, you can try to mimic it and use drivers that
come with Windows. Back when I had to do my first PCI design, I simply
emulated a 16550 style UART to exchange data at a low rate. Windows
knew how to talk to it so I could move on without having to wait for
the software people to come up with a driver.

I just got another idea on the mimic thing: If you let your fpga
design mimic a network card (an NE2000 or Realtek as long as the
drivers can deal with bus mastering), you can put your data into UDP
packets (maybe one port per stream??). All you need to do in your
application software is listen to the proper network socket. No need
to write a driver. With some care, your software and hardware will run
on any platform instantly.

--
Reply to nico@nctdevpuntnl (punt=.)
Bedrijven en winkels vindt U op www.adresboekje.nl
.



Relevant Pages

  • Re: [PATCH/RFT 0/13] x86: unify vmlinux.lds
    ... Disabling lock debugging due to kernel taint ... # Bus options (PCI etc.) ... # Generic Driver Options ...
    (Linux-Kernel)
  • aic7xxx problem on sparc64 (2.6)
    ... PCI: Probing for controllers. ... PCI0: Bus running at 33MHz ... Uniform Multi-Platform E-IDE driver Revision: ... CMD646: IDE controller at PCI slot 0000:01:03.0 ...
    (Linux-Kernel)
  • Re: Nvidia MCP55 Machine reboots on ixgb driver load
    ... There are some serious hardware compatibility issues with the ixgb mixing it with other cards on the same PCI-X bus, ... loading the driver with debug does not appear to produce ... 02:00.0 PCI bridge: NEC Corporation uPD720400 PCI Express - PCI/PCI-X Bridge ... ACPI: Power Button ...
    (Linux-Kernel)
  • EXT3 causes system crash using dvgrab...
    ... the grabbing proceedure quits with a "bus error". ... PCI: PCI BIOS revision 2.10 entry at 0xfb5a0, ... PCI Interrupt Link enabled at IRQ 10 ... Serial driver version 5.05c with HUB-6 MANY_PORTS MULTIPORT ...
    (comp.os.linux.development.system)
  • Sound stopped working a month ago!
    ... bus master, 66MHz, fast devsel, latency 64 ... bus: PCI ... driver: intel-rng ... deviceId: 244e ...
    (comp.os.linux.misc)