Maker Pro
Maker Pro

Hands on PCI interface ...

G

Guest

Jan 1, 1970
0
Interfacing via ISA bus is very easy but slow and it is getting difficult to
find ISA based PCs.
USB bus easy to use but its packet stucture and therefore the latency is an
issue for some real-time applications.

So, I want to learn how to build and work/play with PCI interfaces. Can you
suggest what is the easiest and low-cost way of involving with the PCI bus
to learn with hands on experiments?
 
D

Dave Rooney

Jan 1, 1970
0
Nico said:
Interfacing via ISA bus is very easy but slow and it is getting difficult to
find ISA based PCs.
USB bus easy to use but its packet stucture and therefore the latency is an
issue for some real-time applications.

So, I want to learn how to build and work/play with PCI interfaces. Can you
suggest what is the easiest and low-cost way of involving with the PCI bus
to learn with hands on experiments?

Try PLX Technology, www.plxtech.com. They make PCI bus interface chips
and they have eval boards and reference design kits for their parts.
I have used their parts on several projects and been very satisfied.

Dave Rooney
 
A

Anders F

Jan 1, 1970
0
Dave Rooney said:
Try PLX Technology, www.plxtech.com. They make PCI bus interface chips
and they have eval boards and reference design kits for their parts.
I have used their parts on several projects and been very satisfied.

For production (not playing around) I'd also take a look at QuickLogic.
Another approach is a FPGA - and possibly som IP...

/Anders
 
J

Jonathan Kirwan

Jan 1, 1970
0
Interfacing via ISA bus is very easy but slow and it is getting difficult to
find ISA based PCs.

This is the reason I keep ISA bus based PCs around and working.
USB bus easy to use but its packet stucture and therefore the latency is an
issue for some real-time applications.

So, I want to learn how to build and work/play with PCI interfaces. Can you
suggest what is the easiest and low-cost way of involving with the PCI bus
to learn with hands on experiments?

Well, ponying up to PCI will not be cheap. First, you need to understand the
difference between reflection wave and incident wave -- PCI is reflection wave.
Second, there are very tight constraints implied by the technology. Your PCI
clock line must be 1.5" +/- 0.1" in length, signal lines are to be less than
2.5" (if memory serves), and you will often find weird serpentine clock lines to
meet that 1.5" requirement. Third, because of the loading requirements (at
33MHz, some 10pF total; at 66Mhz, 5pF), you will be using an ASIC. No discrete
logic with multiple loads on single lines, for example. Fourth, you will pay
much more dearly for instruments that can monitor and display PCI bus signals.
Fifth, PCI mandates plug-and-play and certain minimum register requirements and
the ability to assign block addresses, if needed.

You can get low cost ASICs. But the rest makes this not low-cost and there is a
high threshold of knowledge required, as well. PCI was almost designed from the
ground up to exclude basement developers.

Jon
 
N

Nico Coesel

Jan 1, 1970
0
Jonathan Kirwan said:
This is the reason I keep ISA bus based PCs around and working.


Well, ponying up to PCI will not be cheap. First, you need to understand the
difference between reflection wave and incident wave -- PCI is reflection wave.
Second, there are very tight constraints implied by the technology. Your PCI
clock line must be 1.5" +/- 0.1" in length, signal lines are to be less than
2.5" (if memory serves), and you will often find weird serpentine clock lines to

Most modern PCB design packages will tell you the length of a trace.
No real problem here.
meet that 1.5" requirement. Third, because of the loading requirements (at
33MHz, some 10pF total; at 66Mhz, 5pF), you will be using an ASIC. No discrete

ASIC? FPGA will do just fine, but the chips made by PLX are often
found as a universal piece of glue.
logic with multiple loads on single lines, for example. Fourth, you will pay
much more dearly for instruments that can monitor and display PCI bus signals.

??? The 96 channel / 100MHz logic analyzer I picked up on Ebay for US$
66 works very nice to monitor PCI signals.
Fifth, PCI mandates plug-and-play and certain minimum register requirements and
the ability to assign block addresses, if needed.

You can get low cost ASICs. But the rest makes this not low-cost and there is a
high threshold of knowledge required, as well. PCI was almost designed from the
ground up to exclude basement developers.

Creating a PCI implementation is difficult, but there are numerous
ways to get a PCI core or bridge (like the PLX chips). No need to
bother with tedious timing.
The PCI specification can be downloaded from several sites. It just
comes down to a proper PCB layout on the PCI side.

The fastest way to get started with PCI is using a PLX chip.
 
J

Jonathan Kirwan

Jan 1, 1970
0
Creating a PCI implementation is difficult, but there are numerous
ways to get a PCI core or bridge (like the PLX chips). No need to
bother with tedious timing.
The PCI specification can be downloaded from several sites. It just
comes down to a proper PCB layout on the PCI side.

The fastest way to get started with PCI is using a PLX chip.

It's just not a hobbyist thing, frankly. The ISA is dirt easy and anyone can do
it.

Jon
 
R

Rene Tschaggelar

Jan 1, 1970
0
Jonathan said:
It's just not a hobbyist thing, frankly. The ISA is dirt easy and anyone can do
it.

Thanks for the hardware intro.
How about writing a driver ? There won't be single
stepping through code I'm afraid...

Rene
 
A

Andrew Holme

Jan 1, 1970
0
Nico said:
Interfacing via ISA bus is very easy but slow and it is getting
difficult to find ISA based PCs.
USB bus easy to use but its packet stucture and therefore the latency
is an issue for some real-time applications.

So, I want to learn how to build and work/play with PCI interfaces.
Can you suggest what is the easiest and low-cost way of involving
with the PCI bus to learn with hands on experiments?

http://www.fpga4fun.com/PCI.html
 
L

Lasse Langwadt Christensen

Jan 1, 1970
0
Jonathan said:
It's just not a hobbyist thing, frankly. The ISA is dirt easy and anyone can do
it.

Jon

AFAIK the PLX chips have a rather straight-forward backend bus, and I think some
of them can even do PCI to ISA if you really want to, so apart from the requirement that
you need to have a decent PCB if you want it to work reliably it shouldn't
be that difficult and PLX most likely have an app-note on how the PCB should look.

-Lasse
 
S

Steve

Jan 1, 1970
0
Interfacing via ISA bus is very easy but slow and it is getting difficult to
find ISA based PCs.

For the sake of argument... ISA boards are still very available in the
industrial market, and I think will be for many years. Cost is an issue
there, however. Since you are looking to learn, it is a good entry level
bus. Agreed, ISA is not exactly up to date technology.
USB bus easy to use but its packet stucture and therefore the latency is an
issue for some real-time applications.

So, I want to learn how to build and work/play with PCI interfaces. Can you
suggest what is the easiest and low-cost way of involving with the PCI bus
to learn with hands on experiments?

Nico, you didn't say what your price point is.

Someone else prove me wrong, but this is the lowest cost PCI proto board
I've seen. $150 USD. But wait -- there's more -- it includes USB, too.
It is CPLD based, so in theory you can use it for some other purposes
as well.... not as many options available as with a full FPGA, but a good
trade for the cost.

http://www.altera.com/products/devkits/altera/kit-maxii-1270.html

Thanks, Steve
 
J

John Larkin

Jan 1, 1970
0
Thanks for the hardware intro.
How about writing a driver ? There won't be single
stepping through code I'm afraid...


We wrote a little DOS app that makes PCI bios calls. It can find a PCI
board and drag it down into a hole in the 640K-1M real address space
where you can bang the registers all you want. Works under DOS or
Win9x.

I wonder if there are any equivalent true-Windows programs.

John
 
J

Jonathan Kirwan

Jan 1, 1970
0
AFAIK the PLX chips have a rather straight-forward backend bus, and I think some
of them can even do PCI to ISA if you really want to, so apart from the requirement that
you need to have a decent PCB if you want it to work reliably it shouldn't
be that difficult and PLX most likely have an app-note on how the PCB should look.

There is still a high learning curve if something does NOT work as you expect it
to. You need the tools and the knowledge.

Of course, if everything works right out of the box, so to speak, then no
problem. But then reality does impinge.

I still do NOT consider PCI development to be hobbyist stuff.

Jon
 
A

Andras Tantos

Jan 1, 1970
0
Thanks for the hardware intro.
How about writing a driver ? There won't be single
stepping through code I'm afraid...

You might want to take a look at this:

http://h-storm.tantos.homedns.org/hc_pci.htm

I've made this card exactly for this application: to allow myself to
interface to a modern PC without fighting with the PCI bus every time. It is
basically a simple ISA-like PCI bridge. You can attach a douther-card on top
of it and add whaterver circuit you like. You don't even need a driver if
you can go without interrupts.

Regards,
Andras Tantos
 
K

keith

Jan 1, 1970
0
This is the reason I keep ISA bus based PCs around and working.


Well, ponying up to PCI will not be cheap. First, you need to understand the
difference between reflection wave and incident wave -- PCI is reflection wave.

You really don't have to get into it in that detail unless you're pushing
the envelope.
Second, there are very tight constraints implied by the technology. Your
PCI clock line must be 1.5" +/- 0.1" in length,

2.5" +- /1", though that isn't generally a problem. For a product, sure.
signal lines are to be less than 2.5" (if memory serves),

Must be less than .75", IIRC. They really need to be as short as
possible. 2.5" likely *won't* work. Stubs are badness!
and you will often find weird
serpentine clock lines to meet that 1.5" requirement.

Yes, almost always (2.5").
Third, because of
the loading requirements (at 33MHz, some 10pF total; at 66Mhz, 5pF), you
will be using an ASIC. No discrete logic with multiple loads on single
lines, for example.

Yes, and the receivers aren't typical CMOS. Many FPGAs have PCI I/O.
Either is a bad plan for one-off designs though. As mentioned before in
this thread, PLX bridges are the way to go. They have PCI<->ISA brifges
that work quite well. There are also PCI said:
Fourth, you will pay much more dearly for
instruments that can monitor and display PCI bus signals.

Not really true. There are some relatively cheap bus monitors. If one
sticks to a known bridge design a scope is all that's needed. I got a
PLX-9054 based card running with no more than a scope.
Fifth, PCI mandates plug-and-play and certain minimum register
requirements and the ability to assign block addresses, if needed.

Another reason to go with a known design. ;-)
You can get low cost ASICs.

Not ASICs. ASSPs (Application Specific Standard Products).
But the rest makes this not low-cost and
there is a high threshold of knowledge required, as well. PCI was
almost designed from the ground up to exclude basement developers.

Designed to exclude? Are you implying that they intentionally raised the
entry bar? That's some charge! There is a reason for complication. It
makes life simpler. ;-)
 
K

keith

Jan 1, 1970
0
There is still a high learning curve if something does NOT work as you expect it
to. You need the tools and the knowledge.

It's not *that* difficult. The design kits have all the information
needed.
Of course, if everything works right out of the box, so to speak, then no
problem. But then reality does impinge.

I still do NOT consider PCI development to be hobbyist stuff.

It's certainly within the upper-end hobbyist's realm. ...at least with
the PLX bridge chips or prototype cards.
 
C

Christopher X. Candreva

Jan 1, 1970
0
If anyone actually wants to play with ISA design, I have a 16 bit ISA proto card
gathering dust. It's a JDR Microdevices PDS-611:

http://www.jdr.com/interact/item.asp?itemno=PDS-611

All docs available, for sale for $41.44 (or half of whatever JDR wants that
day) plus shipping from New York.

-Chris
 
J

Jonathan Kirwan

Jan 1, 1970
0
It's certainly within the upper-end hobbyist's realm. ...at least with
the PLX bridge chips or prototype cards.

There, I may agree.

Jon
 
P

Paul Burke

Jan 1, 1970
0
Nico said:
So, I want to learn how to build and work/play with PCI interfaces. Can you
suggest what is the easiest and low-cost way of involving with the PCI bus
to learn with hands on experiments?

Like most other people, I'd recommend PLX, it's cheap enough especially
for simple targets (no bus mastering). You probably won't understand the
PCI bus much more after you've done it though- you are insulated from
all that if you just follow the reference design.

For drivers, TVicH co0mes to mind, it's shareware, so you get a bother
screen until you buy it, but it's reasonably cheap.

Paul Burke
 
A

Andras Tantos

Jan 1, 1970
0
Can you let me know where I can get a PCI to
ISA card?

Modern computer with PCI only, need to plug
in an ISA card.

Rich

Generic cards are hard to come by and probably wouldn't work. There can only
be one PCI-to-ISA bridge in a system and that's usually in the chipset
(nowdays it is the bridge towards the LPC bus). PLX has a board with the
PCI9052 that has an ISA bus slot on it (the PCI 9052RDK-LITE for $299) but
that's far from being a universal solution.

Regards,
Andras Tantos
 
Top