For now would start out with a x1 or x4 and work up to an x8 lane device. (With a x1 lane monitor would it still see x8 packets?) Is there a low costs solution for this, some DIY logic analyzer that can be tapped into to the PCIe bus?
There are commercial solutions for this but they are somewhere in the $10,000 to $40,000'ish range for a x8 or x16 system. I'm assuming that they are either terribly complex, and, or to stay in business, to be profitable, they need to be in this price range for the relatively small market they probably have.
In perspective though, I can go to the electronics store and buy a card (network or USB adapter, cheap sound card, etc.) that has a PCIe x8 controller that costs just ~$50.
There has to be a solution where I can buy a PCIe controller chip, and, or one of these said product boards and hack/repurpose it for a protocol analyzer/packet spy/monitor system. In particular if any of these controllers (if "smart") can be reprogrammed/flashed.
Maybe an existing FPGA prototype board can be used for this? They might be in the $1,500 to $5000 range, but at least that's getting closer to a hobbyist budget.
From a ground up DIY solution I see some kind of circuit that takes a PCIe prototype board (seen them in the $500 range), has any required minimal bus buffering/interface, hooked up to an FPGA that is programmed to stream the high speed PCIe packets onto onboard buffer RAM, setup so the RAM can be streamed over USB where a second computer (or microcontroller, etc.) can read and store them. Then yes I'd have to write the user interface software for it as well.
Any suggestions, anyone make their own DIY solution for this already?
Thanks all guys.