Dear all, I've searched on Googles, but I can't find exact answers for my question. What I really want to do is to install a PCI cpu card on my desktop PC's PCI slots. The OS on PCI cpu card is one of embedded Linux systems, and Linux on my desktop PC. And the most important, I wish the PCI cpu card can be used by my desktop Linux directly through PCI bus. So I have to ensure that the two computers can communicate through PCI bus. Is it possible to achieve this? I know most PCI cpu cards are installed on a PCI passive backplane, not on a desktop PCI bus. So is it possible? And if it's possible, is there any solution already? Or how can I start to write a device driver? For example, how the I/O is done on both sides, or else. Thanks in advance.
Embedded linux on a PCI cpu card?
On the PCI card, put some dual port RAM between the PCI controller and the embedded processor. The main processor writes the input parameters and after that the function request code to the dual port RAM. The embedded processor polls for a new function code, executes the request and returns the result to the dual port RAM and sets the status into DP-RAM. The original (PC) processor detects the change of the status and extracts the result.
To speed up the detection of request and response, interrupts can be used both ways to alert the other processor.
Paul
This seems to be a kind of clustering.
If you purchase a slot CPU that is not intended to be used as the main PCI bus master of a passive PCI bus, but as a part of a multiple CPU PCI system (I suppose the hardware needs to be different) it should come with some documentation on how multiple CPUs on the system are to communicate.
-Michael
As PCI support bus master DMA (and the cache systems support "invalidate"), the CPUs should be able to mutually access (part of) "their" RAM chips (if the hardware is designed to present it in some address range).
-Michael
Probably your PCI board have a non-transparent PCI-to-PCI bridge so you can communicate between the two CPU through it. I suggest you to discover the model of your bridge and search on google for a driver and to search information about TCP/IP on the PCI-bus. As the last resort you can write your own driver for the bridge.
Bye. Stefano.
Thanks for all replies. The CPU card I interested is as follows:
From a quick reading of the datasheet it seems that this board can be used only as a PCI-master (i.e. it has a transparent PCI bridge). So I think you cannot install it on a desktop pc, but you have to get a passive PCI backplane.
Bye, Stefano.
Thanks for your reply. I finally give up this idea. I think I should get a single board computer with IEEE-1394, and connect two computers via IEEE-1394 bus. It's faster and more straitforward. Thanks all who reply.
Then we would have videoboards with a (PowerPC) processor running X...
/RogerL
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required