J
Jon Slaughter
- Jan 1, 1970
- 0
Is it hard to design an interface that uses PCI(Express)? I want to create a
way to dump data(such as from a dac or just digital logic) into a pc's
memory and I want it to be fast as possible. Would using a PCI card be the
most direct and fastest way or are there comparable interfaces such as 1394
or even USB 2.0 that would be much easier? I recall a while back(several
years) seeing a tutorial on creating ISA interfaces and if I remember
correctly it wasn't to hard. Now that we have PCI and 1394 I'm wondering
which rought I should go. Right now I'm working with the parallel port and
its just going to be to slow for my eventual needs. I see that the PCI bus
can run about 500MB/s while USB 2.0 is about 60MB/s. I'd rather use the PCI
Bus if possible although firewire is about 100MB/s. I also see that
PCI-Express is about 1GB/s and AGP is around 2GB/s. (these are ofcourse the
maximum bandwidth available)
My pipe dream is to use some 1.5GS/s ADC's I got and try to use them to
design a pc based scope and/or logic analyzer. Probably to many technical
issues that will limit the performance and effectiveness but even if I could
get it to only operate at 1/100 that ability I would be happy(then I could
worry about redesigning it).
What I'm worried about is all the setup, initalization, and communication
procedures will just be to complex to dump data. USB 2 is nice but it seems
to limit real time transfers to about 60MHz for an 8-bit oscope which means
your probably getting a scope with a resolution of about 6MHz.
From what I remember, AGP has direct access to the memory and if its not to
difficult one could design a scope that uses the AGP slot and either get a
dual AGP MB or use a PCI video card for the video interface. Then one could
just dump the data to the memory directly.
http://www.dell.com/content/topics/global.aspx/vectors/en/2004_pciexpress?c=us&l=en&s=corp
Ofcourse I expect a lot of flames about the impossibility of this idea but
whether its practical or not is not important to me. Its not that I expect
to reach my goal but even if I get something that works decent would be
nice. (Hell, even if it works at all would probably make me happy)
Basicaly what I want is a way to use PC memory has storage for sorta a
digital storage oscope. The software side is not to diffcult but its getting
the information into memory to actually to something useful with it and I
want something a bit more than what the parallel port can do. USB 2.0 or
firewire seems like an easy way to go but if I can get 10x more bandwidth
from use a pci card then maybe its worth it if its not to much more
complicated?
Anyways, Let the flames begin.... although it would be appreciated if
someone actually has some useful comments. If you are going to say it is
impossible or virtually impossible then atleast have the decency to state
why. (If you think I cannot do it then that is a different store that I do
not want to hear. I'm hear to learn and I can still learn by *trying*)
Thanks,
Jon
way to dump data(such as from a dac or just digital logic) into a pc's
memory and I want it to be fast as possible. Would using a PCI card be the
most direct and fastest way or are there comparable interfaces such as 1394
or even USB 2.0 that would be much easier? I recall a while back(several
years) seeing a tutorial on creating ISA interfaces and if I remember
correctly it wasn't to hard. Now that we have PCI and 1394 I'm wondering
which rought I should go. Right now I'm working with the parallel port and
its just going to be to slow for my eventual needs. I see that the PCI bus
can run about 500MB/s while USB 2.0 is about 60MB/s. I'd rather use the PCI
Bus if possible although firewire is about 100MB/s. I also see that
PCI-Express is about 1GB/s and AGP is around 2GB/s. (these are ofcourse the
maximum bandwidth available)
My pipe dream is to use some 1.5GS/s ADC's I got and try to use them to
design a pc based scope and/or logic analyzer. Probably to many technical
issues that will limit the performance and effectiveness but even if I could
get it to only operate at 1/100 that ability I would be happy(then I could
worry about redesigning it).
What I'm worried about is all the setup, initalization, and communication
procedures will just be to complex to dump data. USB 2 is nice but it seems
to limit real time transfers to about 60MHz for an 8-bit oscope which means
your probably getting a scope with a resolution of about 6MHz.
From what I remember, AGP has direct access to the memory and if its not to
difficult one could design a scope that uses the AGP slot and either get a
dual AGP MB or use a PCI video card for the video interface. Then one could
just dump the data to the memory directly.
http://www.dell.com/content/topics/global.aspx/vectors/en/2004_pciexpress?c=us&l=en&s=corp
Ofcourse I expect a lot of flames about the impossibility of this idea but
whether its practical or not is not important to me. Its not that I expect
to reach my goal but even if I get something that works decent would be
nice. (Hell, even if it works at all would probably make me happy)
Basicaly what I want is a way to use PC memory has storage for sorta a
digital storage oscope. The software side is not to diffcult but its getting
the information into memory to actually to something useful with it and I
want something a bit more than what the parallel port can do. USB 2.0 or
firewire seems like an easy way to go but if I can get 10x more bandwidth
from use a pci card then maybe its worth it if its not to much more
complicated?
Anyways, Let the flames begin.... although it would be appreciated if
someone actually has some useful comments. If you are going to say it is
impossible or virtually impossible then atleast have the decency to state
why. (If you think I cannot do it then that is a different store that I do
not want to hear. I'm hear to learn and I can still learn by *trying*)
Thanks,
Jon