I'm curently using a PCIe-8361 to remotely control a PXIe-1073 chassis. This card is not fully forward compatible with PCIe revisions 3.x (and possibly 2.x) and must be replaced if a user wants to reliably remote control a PXIe chassis with a modern PC. This also entails updating the cabling, PXIe card, and chassis.
With PCIe revision 4 scheduled to roll out next year, this seems like a good time to ask some prospective questions about this line of remote controllers:
-Are NI's PCIe rev2 cards (e.g. PCIe-8381) fully forward compatible?
-If no, does NI plan to release PXIe remote controllers that are compatible with modern PCIe specifications?
-If yes, does NI plan to release lower thoughput (read: priced on par with PCIe-8361) PXIe remote controllers for x1 or x4 PCIe rev2?
I accept the need to update my NI components but want to be assured that the controller, cables, and chassis I buy today will be usable for years to come.
As a general rule, PCIe generation protocols are backwards compatible. PCIe Gen 2 motherboards, for example, support using PCIe Gen 1 devices. This also applies to our chassis; Gen 1 peripheral modules function just fine in Gen 2 chassis. This shouldn't change in the future, so upcoming PCIe Gen 3 (and Gen 4!) products should maintain compatibility with previous PCIe generations.
I'm curious what you mean when you say the PCIe 8361 isn't "fully forward compatible with PCIe revisions 3.x (and possibly 2.x)." Could you elaborate on that? If you mean the 8361 can't achieve the throughput defined by later PCIe generations, then that is true. The way PCIe implements backwards compatibility is throttling down to the lowest speed in the system. But if you mean something more than just throughput, than I'm interested to hear it.
Lastly, I can't really comment on what products we may be developing. What I can say is we're committed to releasing products that enable our customers to keep using the best equipment out there, whether that takes the form of maintaining forward compatibility with existing products or developing new products.
NI Applications Engineer
The 8361 can't seem to achieve the throughput defined by PCIe rev1 when placed in a later generation PCIe slot, though I haven't found a way to directly measure the throughput. Instead, I see the performance of peripherals in the PXI chassis decrease when the 8361 is moved from an older PC to a newer one. Specifically, my PXI-6733 exhibits output buffer underflow when its sample rate is set to >120kS/s. The same device hits 1MS/s when the 8361 is used in an older PC.
That sounds strange, although there may certainly be other things going on. In the first place, the 6733 sends 2 bytes of data per sample (with a bit more for overhead), so 120 KS/s is already well over 200 MB/s. That alone is going to cause issues if you're trying to stream all of the data (if you aren't using regeneration).
But as far as differences between the older and newer computer, that's going to depend completely on how that motherboard handles adapting to different PCIe specs. There's really no telling how the motherboard/chipset handles things. PCI-SIG requires compatibility between revision as a part of the PCI standard, but developers are free to implement the actual data transfers however they see fit.
What generation is the PCIe slot in the new computer, 2 or 3? Also, have you seen the same behavior with multiple computers with the same newer PCIe slot generation, or has this slowdown only been observed with one particular computer?
NI Applications Engineer
We are using regeneration for our application. Is there a way to directly measure the transfer rate?
I have seen identical symptoms on two different computers with two different processors. Our current PC has a Core i5-6600 processor and the previous one had a Xeon E5-1607. Those both have on-chip PCIe 3.0 controllers. The most recent processor I know the 8361 does work with correctly is a Core i7-920 with no on-chip PCIe controller. The x58 chipset supports PCIe 2.0. I guess I should take back my earlier statement that the card might not work with PCIe 2.
Does NI have any documentation about known incompabilities? Given the huge variety of chipsets on the market, I know it would be impossible for NI to design a card works with everything, but list of computers to avoid would be useful when upgrading. Users are currently flying blind in this regard, so even an incomplete list would be an improvement.
I suspect the problem you're seeing is caused by the BIOS of the newer computer misconfiguring a bridge in your chassis. The processor and chipset are fully compatible with the PCIe 8361.
I'd recommend installing the BIOS compatibility software and flipping the switch on the PCIe 8361. That will move the responsibility of programming the bridge from the BIOS to the software.