![]() ![]() The only viable way to make such an adaptor would likely to be to re-engineer the drivers for each card you want to work with it, carefully deciding what tasks to keep on the host computer and what tasks to move into the adapter. I therefore find it unlikely that such an adaptor can be made to work acceptable with the existing drivers for the cards. You can try and fake memory accesses, for example by using the virtualisation features of the host CPU but you are likely to run into significant latency issues. They expect to be able to talk directly to the card through the memory and/or IO map. The cards can DMA to anywhere in main memory and in principle even DMA to each other bypassing main memory (though this is rarely done outside of specialist kit from the likes of National Instruments).ĭrivers for PCI cards don't expect to pass requests through lower level drivers. PCI cards are enumerated and assigned addresses in the host's address spaces (both memory space and IO space). ![]() This is probably not something that can be achieved by common USB chipsets with *HCI interfaces. Doing the same thing over USB is certainly possible, but if you want binary compatible drivers your hardware interface towards the CPU has to look more or less like PCI and you will end up with something like a PCIe root bridge. The PCIe root bridge hides the complexity of a packet network and presents the CPU with something that looks like a bus. While PCI is a bus, PCIe and USB are packet based networks. USB 3.0 latency according to the article you linked is in the order of 30us. Unmodified PCI drivers over a PCI-over-USB bridge are likely to fail because of wrong latency assumptions.Ĭheck this study on PCI latency: PCI mean latency is in the order of 400ns, PCIe mean latency is in the order of 2000ns. Many PCI drivers assume memory mapped access to registers on the PCI card with the CPU blocking on the bus transaction. USB has two orders of magnitude higher latency than PCI. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |