PCI-Express interface, its main characteristics and backward compatibility


Let's understand the differences between the PCI-E connector.

Typically, this high-speed port refers to the actual expansion slots on the motherboard that accept traditional PCIe-based expansion cards and expansion card types.


Old video card with AGP interface

PCI Express has virtually replaced AGP and PCI, both of which have replaced the oldest widely used connection type called ISA. Although PCs can contain a variety of expansion slots, PCI Express is considered the standard internal interface for the fastest slot. Today, many personal computer motherboards are manufactured only with PCI Express connectors.

Second modification of PCI-E

The first generation of this graphical interface was replaced in 2007 by PCI-E 2.0 x16. 2nd generation video cards, as noted earlier, were physically and software compatible with the first modification of this interface. Only in this case the performance of the graphics system was significantly reduced to the level of the PCI Express 1.0 16x interface version.

Theoretically, the information transfer limit in this case was equal to 16 Gb/s. But 20 percent of the resulting increase was spent on proprietary information. As a result, in the first case, the actual transfer was equal to: 8 Gb/s – (8 Gb/s x 20%: 100%) = 6.4 Gb/s. And for the second execution of the graphical interface, this value was already this: 16 Gb/s - (16 Gb/s x 20%: 100%) = 12.8 Gb/s. Dividing 12.8 Gb/s by 6.4 Gb/s, we get a real practical performance increase of 2 times between the 1st and 2nd versions of PCI Express.

How does PCI Express work?

Like older standards like PCI and AGP, the Express-based device physically goes into a high-speed connector on the motherboard.

The interface of this connector provides high-speed communication between the device and the system board, as well as other equipment.

Although not very common, there is also an external version of the high-speed port, unsurprisingly called External PCI Express, but often shortened to PCIe. ePCIe devices that are external require a special cable to connect any external PCIe device to the PC through a PCIe port, usually located on the back of the PC, supplied either by the motherboard or a dedicated internal PCIe card.

Summary

The examples given are enough to leave no doubt that PCIe 4.0 drives really allow you to get higher performance and better responsiveness when solving resource-intensive tasks. Therefore, when building a high-performance system on multi-core AMD Ryzen 3000 or Threadripper 3000 processors, you should clearly not neglect the use of the most modern NVMe SSDs. The Seagate FireCuda 520 may be a suitable choice here: there is definitely nothing faster in stores at the moment.

Naturally, a PCIe 4.0 drive will cost a little more than the same FireCuda 510, but the reasons for this are well understood. And the most important thing is that the price of the FireCuda 520 is quite market price, because this SSD costs almost the same as alternative PCIe 4.0 drives from third-tier manufacturers.

A few words about the test platform:

Performance testing was performed on a Ryzen 9 3900X-based system based on an ASRock X570 Creator motherboard and equipped with 16GB DDR4-3200 SDRAM (16-16-16-32). Operating system Windows 10 Professional 1909 with standard NVMe driver Standard NVM Express Controller 10.0.18362.1.

What types of PCI Express cards are there?

With the demand for faster, more realistic video games and video editing tools, graphics cards were the first types of computer peripherals to take advantage of the benefits offered directly by PCIe.

While graphics cards are still the most common type of PCIe card, you'll find other devices that connect to the motherboard, processor, and RAM much faster. It is also increasingly common to make PCIe connections instead of conventional PCI. For example, many high-end sound cards now use a high-speed port, as well as an increasing number of wired and wireless network interface cards.

Hard drive controller cards may be the most useful for PCI-E after the video card. Connecting a high-speed PCIe SSD to this high-speed interface allows you to read and then write the disk much faster. Some PCIe hard drive controllers even include an integrated SSD, greatly changing how storage devices are traditionally connected inside a PC.

Of course, with PCIe being replaced by PCI and AGP entirely on newer motherboards, almost every type of internal expansion card based on older interfaces is being rebuilt to be able to use the PCI Express bus. This includes things like USB expansion cards, Bluetooth cards, etc.

What is PCI Express

PCI Express
(
Peripheral Component Interconnect Express
, abbreviated as
PCIe
or
PCI-e
) is a computer bus that uses a high-performance serial data transfer protocol.
To most of the uninitiated, this definition will probably seem vague. To make it clearer, let's look at it in more detail. A computer bus is a connection used to transfer data between the functional units of a computer. Protocol – in this case means “scheme”, “algorithm”, “order”. Serial data transmission is a more complex concept and will require more attention. All data inside a computer circulates, is processed and stored in the form of binary code, the smallest parts of which are bits. You can find out more about this here. Data transfer between the functional blocks of a computer can be carried out either in a parallel
or
serial
manner.

Parallel data transfer

The parallel method involves the use of a physical connection of a significant number of conductors. Data transfer is carried out in “chunks”, in which the number of bits corresponds to the number of conductors in the connection. Before transmission, each such portion is, as it were, “unfolded in space,” divided into bits, each of which passes to the receiving device along a separate conductor. Thus, each unit of time, each bit of binary code is transmitted along a separate wire of this connection, simultaneously (in parallel) with other bits transmitted along the rest of its wires. That's why the circuit is called parallel. For example, the PATA (IDE) computer bus, which was the main way to connect hard drives in home computers not long ago, consists of 40 conductors (shown in the image below). Of these, only 16 are used directly for parallel data transfer. For each transmission (cycle), 16 bits of information pass through such a bus. The bus frequency is 33 MHz, that is, 33 million transmissions occur every second. Thus, the maximum throughput of such a connection is 528 million bits per second (16 x 33 million), or, if converted to megabytes, 66 Megabytes / s.

Despite its simplicity, parallel data transmission has become obsolete and is almost never used in computer technology. Its main disadvantages: • high costs of creating channels (many conductors are needed); • high noise susceptibility due to the mutual influence of transmitted signals on each other (especially over long distances); • the need to ensure synchronous transmission of data simultaneously along all connection wires, which is why achieving a high frequency of sending signals (bus frequency) is too difficult a task.

Serial data transfer

Serial data transmission schemes are much less susceptible to the influence of the above negative factors. Today they are very common. All USB devices, modern hard drives, SSDs, video cards, network cards, etc. Interact with other equipment using serial data transmission. The method of its implementation in each of these types of devices is, of course, different, but the principle is the same everywhere. A series circuit does not require many conductors. Data transmission is carried out through one communication channel, one bit for each transmission, sequentially, one by one (something like Morse code). At first glance, this scheme seems less efficient than in the case of parallel transmission. But this is far from true. High speed here is achieved due to the huge data transmission frequency (several billions per second). And for devices that require particularly high data exchange rates, several such channels (lines) are used simultaneously. For example, modern gaming video cards are connected to the computer via 16 PCIe lanes (PCIe x16).

What are the different PCI Express formats?

Shown are the various controllers on the Express x1...Express 3.0...Express x16 motherboard
. What does "x" mean? How do you know if your PC supports it? If there is a PCI Express x1 card, and there is only an Express x16 slot, does it work compatible? If not, what are your options?

It's often not entirely clear when you buy an expansion card for your computer, such as a new graphics card, which of the various PCIe technologies works better with your PC than the other. However, as complex as it is, it looks quite simple once you understand two important pieces of information about a high-speed port: the part describing the physical size and the part describing the technology version, as described below.

Differences between PCI Express and PCI

The main difference in characteristics is, of course, throughput; for PCI Express it is much higher, for example, PCI at 66 MHz has a throughput of 266 MB/sec, and PCI-E 3.0 (x16) has 32 GB/sec .

Externally, the interfaces are also different, so connecting, for example, a PCI Express video card to a PCI expansion slot will not work. PCI Express interfaces with different numbers of lanes are also different, I will now show all this in pictures.

PCIe sizes: x16, x8, x4, and x1

As the title suggests, the number after the x indicates the physical size of the PCI-E card or slot, with x16 being the largest and x1 the smallest.

Here's how the different sizes are formed:

Number of contactsLength
PCI Express x11825 mm
PCI Express x84956 mm
PCI Express x168289 mm

Regardless of the size of the high-speed port or card, the key notch, that small space in the card or slot, is always located at pin 11. That is, the length of pin 11 continues to increase as we move from PCIe x1 to PCIe x16. This allows you to flexibly use cards of one size with slots of another.

PCIe cards fit in any high-performance port slot on the motherboard that is at least as large. For example, a PCIe x1 card will fit into any PCIe x4, PCIe x8, or PCIe x16 slot. The PCIe x8 card will fit into any PCIe x8 or PCIe x16 slot. PCIe cards that are larger than a PCIe slot can fit into the smaller slot, but only if that PCI-E slot is open (i.e. does not have a plug at the end of the slot).

Radeon PCI-Express x16 graphics card

In general, a larger Express card or slot will support more performance, assuming the two cards or slots you're comparing support the same version of PCIe.

PCI-E versions

The PCI-E x16 connector is externally the same on all motherboards. Only the speed of information transfer in each case may differ significantly. As a result, the performance of the device is also different. And the modifications for this graphical interface are as follows:

  • 1st PCI modification – Express x16 v. 1.0 had a theoretical throughput of 8 Gb/s.
  • 2nd generation PCI – Express x16 v. 2.0 already boasted twice the throughput of 16 Gb/s.
  • A similar trend has already continued for the third version of this interface. In this case, this figure was set at 64 Gb/s.

It is impossible to visually distinguish these slots by the location of the contacts. At the same time, they are compatible with each other. For example, if you install a graphics adapter card in a version 3.0 slot that meets the 2.0 specifications at the physical level, then the entire graphics information processing system will automatically switch to the lowest speed mode (that is, 2.0) and will continue to function with a bandwidth of 64 GB /With.

PCIe version: 4.0, 3.0, 2.0 and 1.0

Any number after PCIe that you find on a device or motherboard indicates the latest version number of the PCI Express specification being used.

Here's how the different versions of the PCI Express controller compare:

Throughput (per lane)Bandwidth (per lane in x16 slot)
PCI Express 1.02 Gbit/s (250 MB/s)32 Gbit/s (4000 MB/s)
PCI Express 2.04 Gbps (500 MB/s)64 Gbit/s (8000 MB/s)
PCI Express 3.07.877 Gbps (984.625 MB/s)126.032 Gbit/s (15754 MB/s)
PCI Express 4.015.752 Gbps (1969 MB/s)252.032 Gbit/s (31504 MB/s)

All versions of the high-speed port are backwards and forwards compatible, meaning no matter what version your PCIe card or motherboard supports, they should work together at least at a minimum level. As you can see, major updates to the port standard dramatically increase throughput each time, greatly increasing the potential of what the associated hardware can do.

The version's improvements also include bug fixes, added features, and improved power management, but the increase in bandwidth is the most important change to note from version to version.

What about PCI Express version compatibility?

All versions of PCI Express are compatible with each other. For example, a PCI Express 4.0 graphics card works even if you connect it to a motherboard that only supports PCI Express 3.0 or even 2.0. However, the bandwidth of the PCI Express interface is limited by the smallest factor. For example, if you connect a PCI Express 4.0 SSD to a motherboard that only supports PCI Express 3.0, that SSD runs on PCIe 3.0. Instead of accessing 7.88 GB/s of bandwidth, it can only use 3.94 GB/s, so its maximum theoretical speed is halved.

Maximizing compatibility with PCIe

As you read in the sizes and versions sections above, uses almost any configuration you can imagine. If it's physically fit, it probably works... that's great. However, it's important to know that to increase bandwidth (which usually equates to maximum performance), you need to select the highest PCIe version supported by your motherboard and select the largest size of a given port that will fit.

For example, a graphics card with a 3.0 x16 high-speed port will give you maximum performance, but only if the motherboard supports the 3.0 high-speed port and has a free x16 high-speed port. If the motherboard model uses PCIe 2.0 exclusively, the card will only run at the supported speed (for example, 64 Gbps in an x16 slot).

Most motherboards and personal computers released in 2013 or later likely support Express v3.0. If you are unsure, check your motherboard or PC manual. If you can't find any definitive information about the PCI version your motherboard can use, I recommend buying the largest and latest version of PCIe card, if it fits, of course.

Features of the PCI Express standard and its versions

The development of the PCI Express standard was started by Intel. The specifications of its first version appeared back in 2002. Currently, PCI Express is being developed by the PCI Special Interest Group, whose board of directors includes representatives of major hardware and software developers (Intel, Microsoft, IBM, AMD, Sun Microsystems, HP, NVIDIA and others). PCIe has gone through several stages in its development and has already reached version 5.0. PCIe is a full-duplex
protocol, that is, it provides for the use of data reception and transmission channels that are independent from each other (the device can simultaneously send and receive data).
Before sending, the data is encoded into blocks. This is necessary to synchronize the transmitting and receiving devices, as well as to reduce the influence of interference. PCIe 1.0 and PCIe 2.0 versions use an 8b/10b
.
That is, each 8-bit block is encoded into a 10-bit block, in which only 80% of the transmitted data is useful. The remaining 20% ​​is needed to ensure proper operation of the protocol. In PCIe 3.0 and newer versions, data is encoded using a more efficient 128b/130b
(every 128 bits are encoded into a 130-bit block).
The share of useful content in the transmitted data here is already about 98.46%. Different versions of PCIe differ not only in the way they “pack” bits into blocks, but also in the frequency of data transfer. In PCIe 1.0, it is 2.5 GT/s (gigatransactions per second), that is, 2.5 billion bits are transferred in one second. For a better understanding, let’s translate this into familiar units: 2.5*109 Bit/s = 312.5 Megabytes/s.
Considering that only 80% of this is useful data, the real PCIe 1.0 throughput is 250 Megabytes/s.
In PCIe 5.0, the data transfer frequency has increased to 32 GT/s. Let's translate this into a convenient form: 32*109 Bit/s = 4000 Megabytes/s = 4 Gigabytes/s.
Since the useful data is 98.46%, the real PCIe 5.0 throughput is 3.938 Gigabytes/s. For more information about the features of different versions of PCIe, see the table:

PCI Express versionReleasedCoding schemeTransmission speedBandwidth on x lines:
x1x4x8x16
PCIe 1.020028b/10b2.5 GT/s250 Mb/s1 Gb/s2 Gb/s4 Gb/s
PCIe 2.020078b/10b5 GT/s500 Mb/s2 Gb/s4 Gb/s8 Gb/s
PCIe 3.02010128b/130b8 GT/s984.6 Mb/s3.94 Gb/s7.88 Gb/s15.8 Gb/s
PCIe 4.02017128b/130b16 GT/s1.969 Gb/s7.88 Gb/s15.8 Gb/s31.5 Gb/s
PCIe 5.02019128b/130b32 GT/s3.938 Gb/s15.75 Gb/s31.5 Gb/s63 Gb/s

What will replace PCIe?

VR Virtual Reality Headsets
Video game developers are always looking for games that become increasingly more realistic, but they can only do this if they can transfer more data from their game programs to a VR headset or PC screen, and this requires faster interfaces . Because of this, PCI Express will not continue to dominate its laurels. PCI Express 3.0 is amazingly fast, but the world is striving for incredibly fast transfers.

PCI Express 5.0, due to be completed by 2020, will use 31,504 gigabits per second of bandwidth per lane (3,938 megabytes per second), twice as much as the high-speed slot version 4.0 offers. There are a number of other interface standards other than PCIe that the tech industry is looking at, but since they will require major hardware changes, PCIe looks set to remain the leader for some, a long time as the fastest ever.

rardCrage hi:) bross:)

Rating
( 1 rating, average 5 out of 5 )
Did you like the article? Share with friends:
For any suggestions regarding the site: [email protected]
Для любых предложений по сайту: [email protected]