Access between 2 CPUs via PCI express

Hello,

I have an embedded PC (Core2Duo Com Express module) connected via PCIe
to another CPU (Freescale’s P2020).

The Core2Duo “sees” the RAM of the P2020 using a device driver written
for this purpose.

The P2020 has to see the RAM of the Com Express.

I think that for this purpose I have to open an inbound PCI window in
the Com Express.

Is it possible to do this under Windows 7 (using a device driver) ?

Thanks,
Zvika.

This depends a lot on the architecture of the busses. I have used
embedded systems where the PC could write to the memory of its
coprocessor, because the coprocessor board was seen as a memory-mapped
device to the PCI bus; it registered a BAR with a size that was the size
of the coprocessor memory, and the PCI BIOS of the host machine recognized
this and programmed the windows accordingly.

However, the coprocessor had no way to initiate a bus-request cycle; there
was no DMA interface to the host memory.

So the critical thing is exactly how the device interfaces to your bus.
It has to be capable of bus-mastering, as far as I know. Note that it can
only place physical addresses on the bus. I suspect that this is not
going to be possible, because it seems unlikely that it is going to have
the necessary bus interface. But it might, and if so, it should be
documented that it is capable of bus-mastering.

Also, it depends on what you mean by “see”. If you only need to read and
write blocks of data, then the bus-mastering approach should be viable, if
it is supported. But if you want the P2020 to be able to simply address
memory directly, that is a lot trickier. Unfortunately, I have not looked
at PCIe in detail, but if it is similar to PCI, you may not have the
ability to do this at all.
joe

Hello,

I have an embedded PC (Core2Duo Com Express module) connected via PCIe
to another CPU (Freescale’s P2020).

The Core2Duo “sees” the RAM of the P2020 using a device driver written
for this purpose.

The P2020 has to see the RAM of the Com Express.

I think that for this purpose I have to open an inbound PCI window in
the Com Express.

Is it possible to do this under Windows 7 (using a device driver) ?

Thanks,
Zvika.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer