For a dual port card, you will want an 8 lane PCIe 3.0 slot connected to the CPU. Almost any desktop CPU will have enough lanes since you won’t be using a graphics card. You can get by with a 4 lane slot, but you won’t be able to max out both ports bidirectionally at the same time.
You don’t get segmentation faults if you don’t have an MMU. That can certainly make debugging more interesting when your firmware starts overwriting memory that it shouldn’t until it finally crashes.