We all know that modern motherboards all carry one thing called PCI Express (PCIe). But not everyone knows what this standard is, or the specifications that this standard has had since it was formulated until today. Or why this standard was developed and what other standard it replaces.
What is PCI Express?
Peripheral Component Interconnect Express is a high-speed serial data bus. Its function is to communicate with each other the different hardware components of a PC or server. These components can have all their drivers on the motherboard. Or they can use external controllers, in the case of expansion cards. This bus began to be introduced in 2003. And it was developed as a substitute for the now extinct PCI bus used by motherboards up to that time. Compared to the old PCI bus, the main difference and improvement is the fact that the bus bandwidth is not shared between components: something that always affected the performance of the PCI bus a lot.
Versions of the PCIe bus since its inception
- PCIe 1.0: introduced in 2003, it had a data transfer capacity of 2.5 GT/s (Giga-Transfers per second) and 250 MB/s for each data path.
- PCIe 2.0: from the year 2007, it doubled the data transfer rate to 5 GT/s and 500 MB/s for each data lane.
- PCIe 3.0: from 2010, it doubled file transfer rates to 8 GT/s and 984.6 MB/s per data path. Precisely for this reason there was never a great difference in performance between using a graphics card for this bus, on a PCIe 2.0 bus.
- PCIe 4.0: from the year 2017, it doubled transfer rates to 16 GT/s and 1,969 MB/s. This data bus has recently started to be seen on high-end motherboards and processors.
- PCIe 5.0: Its specification has been finalized this year. And, as usual, it doubles the data of the previous specification up to 32 GT/S and 3,938 MB/s.
- PCIe 6.0: its specification is not finalized yet (expected for the year 2021). But will double the previous specifications again.
A peculiarity of the PCIe bus is that it is a modular bus. In other words, the connectors used on the motherboard do not all have the same characteristics. Depending on the number of PCI Express data lanes connected to them, they can be known as x1, x4, x8 or 16. This means that physically each connector has a specific number of contact pins. In any case, the differences between versions are simple speed, since the connectors have maintained their physical shape in all aspects, as well as the number of contacts.
The highest speed is achieved with xilinx virtex ultrascale plus to guarantee the integrity of the signals, as well as their modulation, voltage and connection. The choice of the FPGA family to use will depend on the amount of combinational logic, the amount of sequential logic and of course the amount of memory to implement. Also a factor to take into account is the internal propagation times, also the number of pins of the device.