PCI Card Development

This is the place for any magazine-related discussions that don't fit in any of the column discussion boards below.
Post Reply
Quasar
Posts: 3
Joined: Tue Apr 26, 2005 1:01 am
Contact:

PCI Card Development

Post by Quasar » Tue Apr 26, 2005 8:33 am

Hey everyone, I'm working on a project and I came across the problem of building a PCI card from scratch, I need the card to control motors in real-time so I'll be using PIC microcontrollers, but the problem is that the PIC microcontrollers work at 8MHz while the PCI bus works at 33MHz, I thought of using some register banks which can act as a buffer but I couldn't find anything like that when I searched online, also I'm not sure what essential parts I need to have in the card, and all I can find online are expensive development kits which I can't get, if anybody can give me some tips I'd appreciate it a lot. Thank you.

hp
Posts: 245
Joined: Sat Aug 09, 2003 1:01 am
Location: Friendswood, TX
Contact:

Re: PCI Card Development

Post by hp » Tue Apr 26, 2005 8:36 pm

Ack, must you use the pci bus directly? How about using a commercial pci to serial chipset. That would probably make life alot easier for the microcontroller. Either that or use a usb host controller chipset and use one of the new PIC18s with full speed usb.<p>Harrison

Quasar
Posts: 3
Joined: Tue Apr 26, 2005 1:01 am
Contact:

Re: PCI Card Development

Post by Quasar » Tue Apr 26, 2005 9:48 pm

I'm not sure how the PCI to serial or the USB host controller will make a difference, the PIC I chose still has to run at 8MHz, aren't there any register banks out there with 33MHz/8MHz capability?

hp
Posts: 245
Joined: Sat Aug 09, 2003 1:01 am
Location: Friendswood, TX
Contact:

Re: PCI Card Development

Post by hp » Tue Apr 26, 2005 10:17 pm

How fast do you have to control these motors? Would 115kbps from a serial port work? If so you could use the pci to serial port idea noted above. If you really need more bandwidth then use the usb idea in which you would include a usb host controller on your pci card, then connect one of the controller's ports straight to your PIC's usb port.<p>Example:<p>PCI Bus > Serial Controller > PIC's Serial Port
or
PCI Bus > USB Host Controller > PIC's onboard USB<p>Of course you could still go the pci -> buffer -> pic idea, but I personally don't think its worth it unless you really need the full pci bus speed to control your motors.<p>Harrison<p>[ April 26, 2005: Message edited by: hp ]</p>

Quasar
Posts: 3
Joined: Tue Apr 26, 2005 1:01 am
Contact:

Re: PCI Card Development

Post by Quasar » Wed Apr 27, 2005 4:40 am

Actually I think I do need the whole PCI bus speed and bandwidth since the application is highly time-critical, besides I need it to be as cost-effective and simple as possible so I can't include any extra controllers I don't need

User avatar
philba
Posts: 2050
Joined: Tue Nov 30, 2004 1:01 am
Location: Seattle
Contact:

Re: PCI Card Development

Post by philba » Wed Apr 27, 2005 8:57 am

To the original question - maybe some sort of FIFO would work.<p>However, I'm having a hard time imagining what kind of an application needs 33 mhz for machine control. You'll be hard pressed to drive it at that speed anyway. I've heard of people claiming a need for 1 mhz but that seems to be pretty excessive. You can get pretty amazing performance out of the parallel port.<p>The cost of additional controllers issue doesn't make sense to me either. when you are done designing and debugging the PCI board, you will have more cost into it than if you added an rs232 driver and/or optoisolators. Personally, I'd use the parallel port - the interface is fast, cheap, simple and reliable.

User avatar
haklesup
Posts: 2934
Joined: Thu Aug 01, 2002 1:01 am
Location: San Jose CA
Contact:

Re: PCI Card Development

Post by haklesup » Wed Apr 27, 2005 10:40 am

Just because the PCI bus runs at 33Mhz doesn't mean that the output of the PCI bridge chip needs to go that fast. The rate of signals at the output of the PCI chip is largely determined by the software that is used to address the chip. <p>PCI timing is nothing like ISA where the interface was more like a register.<p>Have you looked into the many PCI development boards available to hardware developers. They usually come with code libraries and ready to modify drivers. Often they already have microcontrollers and flash memory on the devel board and areas for breadboarding additional circuits. Minimal reinventing of the wheel with these kits.<p>There are many to choose from and you should look for one without too many extra stuff you don't need unless the price is right.<p>The PC world is starting to move toward PCIx so if you are developing a product you want to have a long lifetime, you may want to research that a bit before settling on plain brown PCI.

Post Reply

Who is online

Users browsing this forum: No registered users and 12 guests