PCI express modes. PCI interface in a computer: types and purpose. Photo. Influence of the number of lines on throughput

  • 02.07.2020

Readers of the site will probably remember our similar project, which we already carried out about two and a half years ago. We analyzed PCI Express bandwidth in November 2004, when the PCI Express (PCIe) interface was still new and did not offer significant advantages over AGP graphics cards. Today, almost every new computer has a PCI Express interface; it is also used to connect a video card, both built-in and external. Since then, video cards have made significant progress, so it seemed to us that the time has come for a new analysis that would answer the question: what bus bandwidth does a video card really need?

The PCI Express interface quickly propelled the graphics industry into growth as it allowed nVidia and ATi / AMD to fit two or even four video cards into a computer. In addition, PCI Express is required for expansion cards with high bandwidth requirements such as RAID controllers, Gigabit NICs or physical accelerators for 3D applications and games. The processing power of additional graphics cards can be used to increase performance at high resolutions, add visual features, or to increase speed at standard resolutions and quality settings. However, the latter option is not always interesting, since many modern video cards are powerful enough for standard resolutions of 1024x768 and 1280x1024. The upside potential with ATi CrossFire and nVidia SLI solutions is impressive, but both require the right platform. But a wagon, that is, a motherboard that would support CrossFire and SLI at the same time, does not exist. At least for now.

However, configurations on two and four video cards are only part of the graphics market. Most computers and upgrade scenarios are still based on a single graphics card, which is why we decided not to expand our PCI Express scaling tests to two graphics cards. We took regular high-end ATi and nVidia video cards and ran them through a series of tests in different PCI Express modes.


The most common PCI Express slots: the large one supports 16 lanes, and the small one - one lane for the simplest expansion cards.

Unlike PCI and PCI-X buses, PCI Express is based on a point-to-point serial protocol. That is, a relatively small number of wires are required for the PCI Express interface. On the other hand, the interface uses much higher clock rates compared to parallel buses, which gives high bandwidth. Additionally, bandwidth can be easily increased by linking multiple PCI Express lanes together. The most commonly used slot types are x16, x8, x4, x2, and x1, where the numbers indicate the number of PCI Express lanes.

PCI Express is a bi-directional point-to-point interface that provides the same bandwidth in both directions, and does not need to share bandwidth with other devices, as was the case with PCI. Thanks to the modular architecture, motherboard manufacturers can map the available PCI Express lanes to the slots they require. Let's say 20 available PCI Express lanes can be routed to one x16 PCIe slot and four x1 PCIe slots. This is what happens with many chipsets. And for server systems, for example, you can install five x4 PCIe ports. In general, any mathematical configuration can be created with PCI Express. Finally, PCI Express allows mixing chipset bridges from different manufacturers.

However, PCI Express has one drawback: the more PCIe lanes, the higher the power consumption of the chipset. It is for this reason that chipsets with 40 or more PCI Express lanes require more power. Typically, 16 additional PCI Express lanes increase the power consumption of modern chipsets by 10W.

PCI Express Lines Throughput in one direction Total throughput
1 256 MB / s 512 MB / s
2 512 MB / s 1 GB / s
4 1 GB / s 2 GB / s
8 2 GB / s 4 GB / s
16 4 GB / s 8 GB / s


Most motherboards use 16 PCI Express lanes to connect a video card.


On many dual-graphics systems, the two physical x16 PCI Express slots operate at x8 lanes each.


To make the video card work in x8 PCI Express mode, we sealed some of the contacts with tape.


In order for the video card to work in x4 PCI Express mode, we had to tape even more contacts with tape.


The same video card, but more pins are glued. It operates in x4 PCI Express mode.


The same can be said about x1 PCI Express. We have sealed all contacts that were not required in x1 mode.


If you glue the extra pins, then the PCI Express video card will work in only x1 PCI Express mode. The throughput is 256 MB / s in both directions.

It should be borne in mind that not every motherboard can work with video cards with a low number of PCI Express lanes. In our first article, we had to change the BIOS of the DFI LANParty 925X-T2 motherboard to support "low" modes. As for the new motherboards, we also had to check several models before we found the right one. Ultimately we settled on the MSI 975X Platinum PowerUp Edition. The Gigabyte 965P-DQ6 did not work right from the start, and Asus Commando refused to work with "low" modes after a BIOS update.


X16 PCI Express slot diagram. From it, you can determine which contacts needed to be sealed with tape. Click on the picture to enlarge.

Competitors: ATi Radeon X1900 XTX and nVidia GeForce 8800 GTS

We took two high-end video cards from two competitors: AMD / ATi and nVidia, namely the Radeon X1900 XTX and GeForce 8800 GTS. The models, of course, are not the top-end ones, but they are definitely high-end ones.

The ATi Radeon X1900 XTX consists of 384 million transistors and offers 48 pixel shader units. They are organized in four blocks in the so-called "quads". The GPU runs at 675 MHz and has 512 MB of GDDR3 memory clocked at 775 MHz (1.55 GHz DDR). Please note that ATi's X1xxx graphics cards are not DirectX 10.

We took the HIS X1900 XTX IceQ3 model, which uses an improved cooling system. Since the design is reference, the card fan is still radial, but there is a heat pipe system and a massive heatsink. In our experience, the HIS graphics card is quieter than the ATi reference models.

Nvidia's GeForce 8 line is the company's leading edge. Although we have the first consumer-grade DirectX 10 graphics cards, nVidia didn't get off to a great start on Windows Vista due to driver issues. The chip is clocked at 500 MHz, while the pixel processors are clocked at 1.2 GHz. There are cards on sale with 320 and 640 MB of RAM, all of which use 800 MHz memory (1.6 GHz DDR).

We took a GeForce 8800 GTS with 320 MB of GDDR3 memory from Zotec. The card is built according to the nVidia reference design.

Test configuration

System hardware
Socket 775 Intel Core 2 Extreme X6800 (Conroe 65 nm, 2.93 GHz, 4 MB L2 cache)
Motherboard MSI 975X Platinum PowerUp Edition, Chipset: Intel 975X, BIOS: 2007-01-24
General hardware
Memory 2x 1024 MB DDR2-8000 (CL 4,0-4-4-12), Corsair CM2X1024-6400C3 XMS6403v1.1
Graphics card I HIS X1900 XTX IceQ3, GPU: ATi Radeon X1900 XTX (650 MHz), memory: 512 MB GDDR3 (1,550 MHz)
Graphics card II Zotec GeForce 8800 GTS, GPU: GeForce 8800 GTS (500 MHz), memory: 320 MB GDDR3 (1200 MHz)
HDD 400 GB, 7,200 rpm, 16 MB cache, SATA / 300, Western Digital WD4000KD
DVD-ROM Gigabyte GO-D1600C (16x)
Software
Graphics driver I ATi Catalyst Suite 7.2
Graphics Driver II nVidia ForceWare 97.92
Intel Platform Drivers Chipset Installation Utility 8.1.1.1010
DirectX Version: 9.0c (4.09.0000.0904)
OS Windows XP Professional, Build 2600 SP2

Tests and settings

Tests and settings
3D games
Version: 1.3 Retail
Video Mode: 1600x1200
Anti Aliasing: 4x
Texture Filter: Anisotropic
Timedemo demo2
Version: 1.2 (Dual-Core Patch)
Video Mode: 1600x1200
Video Quality: Ultra (ATI) / High (Nvidia)
Anti Aliasing: 4x
Multi CPU: Yes
THG Timedemo waste.map
timedemo demo8.demo 1 (1 = load textures)
Applications
SPECviewperf 9 Version: 9.03
All Tests
3D Mark06 Version: 1.1
Video Mode: 1600x1200
Anti Aliasing: 4x
Anisotropic Filter: 8x

Test results

As you can see, the nVidia GeForce 8800 GTS works at x1 and x4 speeds just awful, noticeably lower than the maximum performance level that can be achieved only at x16 speeds. The ATi Radeon X1900 XTX, on the other hand, requires no more than x4 PCI Express bandwidth to run properly in Call of Duty 2.

The situation in Quake 4 is completely different. Here ATi Radeon X1900 XTX and nVidia GeForce 8800 GTS start to work quite normally at x4 PCI Express speeds, and they win insignificantly when moving to x8 or x16.

Futuremark's 3D graphics benchmark, 3DMark06, puts a heavy load on the GPU as it has been designed for a similar purpose from the very beginning. Therefore, the requirements for the interface are low. The nVidia GeForce 8800 GTS is more responsive to PCI Express bandwidth drops compared to the ATi Radeon X1900 XTX, which runs close to maximum already at x4 PCI Express speeds.

The professional graphics OpenGL test SPECviewperf 9.03 puts a heavy load on the CPU and the graphics subsystem. As you can see, the results significantly depend on the interface speed. It was quite interesting to note how performance scales from x1 to x4 to x8 PCI Express. The transition to x16 PCI Express gives a performance increase, but not so significant. In any case, it's pretty certain that professional graphics applications require a high bandwidth interface. Therefore, if you want to work with 3DSMax, Catia, Ensight, Lightscape, Maya, Pro Engineer or SolidWorks, then you cannot do without x16 PCI Express.

Conclusion

Conclusion of our PCI Express scaling analysis in 2004 was simple: the x4 PCIe bandwidth is sufficient for single video cards without creating a bottleneck. At that time, the bandwidth of the x8 or x16 PCIe interfaces did not give any gain, and the AGP interface, in principle, was also enough.

But in our time the situation has changed. As you can see, four PCI Express lanes are no longer enough to get maximum performance. While we see differences between ATi / AMD and nVidia and between games and professional applications, in most cases, maximum performance is only achieved with the x16 PCI Express interface. We tested two 3D games, Quake 4 and Call of Duty 2, which aren't the most demanding games today, but they definitely benefit from the faster interface. But the most interesting results we got in the SPECviewperf 9.03 test, because it showed a significant drop in performance when the PCI Express interface speed drops below x16.

The performance results clearly show that motherboards and chipsets today must support all graphics cards at full x16 PCI Express speed. If you install high-performance video cards on a "weak" interface such as PCI Express x8, then you will have to sacrifice performance.

The operating modes of the PCI and ISA system buses are very important. Setting incorrect values ​​can lead to unstable operation of expansion cards and conflicts between them. Option Location - Item CHIPSET FEATURES SETUP Advanced(AWARD BIOS 6.0), Advanced Chipset Features

PCI 2.1 Support- PCI bus specification 2.1 support. For all modern computers, this mode must be enabled. (Enabled)... An exception is possible only if your computer has outdated PCI expansion cards that do not support this specification. But then some PCI cards will refuse to work.

CPU to PCI Write Buffer- use of the buffer when transferring data from the processor to the PCI bus. Turning on (Enabled) this mode has a positive effect on the speed of the computer.

PCI Pipeline (PCI Pipelining)- turning on (Enabled) This option combines data accumulation from the processor to the PCI bus with its pipelining, which naturally improves performance.

PCI Dynamic Bursting- enable batch mode of data transfer over the PCI bus. To improve performance, this option should be enabled (Enabled).

PCI Master About WS Write- disabling the delay when exchanging between master devices on the PCI bus and RAM. When turned on (Enabled) This mode increases the overall performance of the computer, but in case of unstable operation of expansion cards, this option will have to be turned off (Disabled).

Delayed Transaction (PCI Delay Transaction)- Enabling this parameter allows you to simultaneously access both slow ISA cards and fast PCI, which significantly increases overall performance. Disabling this option makes it impossible to access devices using the PCI bus while accessing cards connected to the ISA bus. Naturally, when using ISA cards in your computer, this parameter must be enabled. (Enabled).

Peer Concurrency- allows parallel operation of several devices connected to the PCI bus. Naturally, to ensure maximum performance, the parameter must be enabled. (Enabled)... But not all expansion cards - especially older ones - support this feature. If after enabling this option you encounter unstable computer operation, specify the value Disabled.



Passive release- allows parallel operation of PCI and ISA buses. Turning on (Enabled) this option has a positive effect on the computer's performance.

PCI Latency Timer- the maximum number of PCI bus cycles during which a device connected to this bus can keep the bus busy if another device also needs to access the bus. A bus hold is usually allowed for 32 clock cycles. Increase this value if you see error messages about individual expansion cards or experience erratic performance.

16 Bit I / O RecoveryTime- indicates the delay in clock cycles after the issuance of a read or write request and the operation itself for 16-bit expansion cards connected to the ISA bus. For starters, you can try to set a minimum delay of 1 clock. If errors occur when working with such devices, increase the delay (maximum 4 clock cycles). If no 16-bit expansion cards are connected to the ISA bus at all, you can specify the value NA .

AGP bus and video cards

Option Locations - Menu Items BIOS FEATURES SETUP, CHIPSET FEATURES SETUP and INTEGRATED PERIPHERALS(AWARD BIOS 4.51PG and AMIBIOS 1.24), Advanced(AWARD BIOS 6.0), Advanced Chipset Features and Integrated peripherals(AWARD BIOS 6.0PG and AMIBIOS 1.45).

AGP Aperture Size (Graphics Aperture Size, Graphics Windows Size)- the maximum size of RAM that can be used to store textures of a video card with an AGP interface. Typically 64 MB is optimal.

AGP-2X (4X, 8X) Mode (AGP 4X Supported, AGP 8X Supported)- support for AGP2x (4X, 8X) mode. This parameter should be set only if your video card connected to the AGP bus is capable of working in these modes without any problems. For all modern video cards, support must be enabled (Enabled).

AGP Mode (AGP Capability)- allows you to specify the used AGP mode. All modern video cards must have support for 8X mode enabled.

AGP Master1 WS Write- adding one clock cycle when writing data via the AGP bus. As a rule, this is not necessary and it is better to disable this option. (Disabled), and only if the video card became unstable after that, artifacts appeared, especially in games, turn on (Enabled) an additional tact of waiting.

AGP Fast Write- actually the same as option AGP Master1 WS Write. When turned on (Enabled) this option, data is written without delay, when you turn off (Disabled) one measure of waiting is added.

AGP Master1 WS Read- adding one clock cycle when reading data via the AGP bus. The recommendations are the same.

AGP to DRAM Prefetch- turn on the prefetch mode when the next data is read automatically. Usage (Enabled) this option improves performance.

PCI / VGA Palette Snoop- allows you to synchronize the colors of the video card and the image captured using the video input-output card (video editing card). If the colors are displayed incorrectly when capturing video, enable the option (Enabled).

Assign IRQ For VGA- enabling this option instructs to reserve an interrupt for the video card. Although most modern video cards do not feel the need for a separate interrupt, from the point of view of compatibility and stability of work, this option is still better to enable (Enabled)... And only in the case of a shortage of free interrupts (with a large number of expansion cards), you can try to refuse redundancy (Disabled).

The PCI Express standard is one of the foundations of modern computers. PCI Express slots have long occupied a solid place on any motherboard in a desktop computer, replacing other standards such as PCI. But even the PCI Express standard has its own varieties and different connection patterns. On new motherboards, starting around 2010, you can see on one motherboard a whole scattering of ports designated as PCIE or PCI-E, which can differ in the number of lines: one x1 or several x2, x4, x8, x12, x16 and x32.

So let's find out why there is such confusion among the seemingly simple PCI Express peripheral port. And what is the purpose of each PCI Express x2, x4, x8, x12, x16 and x32 standard?

What is PCI Express Bus?

In the distant 2000s, when the outdated PCI standard (extended - interconnection of peripheral components) to PCI Express took place, the latter had one huge advantage: instead of a serial bus, which was PCI, a point-to-point access bus was used. This meant that each individual PCI port and the cards installed in it could take full advantage of the maximum bandwidth without interfering with each other, as it did when connecting to PCI. In those days, the number of peripheral devices inserted into expansion cards was abundant. Network cards, audio cards, TV tuners, and so on - all required a fair amount of PC resources. But unlike the PCI standard, which used a common bus for data transfer with several devices connected in parallel, PCI Express, when viewed in general, is a packet network with a star topology.


PCI Express x16, PCI Express x1 and PCI on one card

In layman's terms, imagine your desktop PC as a small store with one, two sellers. The old PCI standard was like a grocery store: everyone waited in the same queue to be served, experiencing speed issues with a limited one salesperson at the counter. PCI-E is more like a hypermarket: each customer follows their own individual route for groceries, and several cashiers take the order at the checkout.

Obviously, a hypermarket is several times faster than a regular store in terms of service speed, due to the fact that the store cannot afford the bandwidth of more than one seller with one checkout.

Also with dedicated data lanes for each expansion card or built-in motherboard components.

Influence of the number of lines on throughput

Now, to expand on our store-to-hypermarket metaphor, imagine that each department of the hypermarket has its own cashiers, reserved only for them. This is where the idea of ​​multiple data transmission lanes comes in.

PCI-E has gone through many changes since its inception. Currently, new motherboards usually use version 3 of the standard already, with the faster version 4 becoming more common, with version 5 expected in 2019. But different versions use the same physical connections, and these connections can be made in four basic sizes: x1, x4, x8 and x16. (x32 ports exist, but are extremely rare on motherboards for regular computers).

Different physical sizes of PCI-Express ports allow them to be clearly divided according to the number of simultaneous connections to the motherboard: the larger the port is physically, the more maximum connections it can transfer to the card or vice versa. These compounds are also called lines... One line can be thought of as a track consisting of two signal pairs: one for sending data and the other for receiving.

Different versions of the PCI-E standard allow for different speeds on each lane. But generally speaking, the more lanes there are on a single PCI-E port, the faster data can flow between the peripheral and the rest of the computer.

Returning to our metaphor: if we are talking about one seller in a store, then the strip x1 will be the only seller serving one customer. The store with 4 cashiers already has 4 lines x4... And so on, you can describe the cashiers by the number of lines, multiplying by 2.


Various PCI Express Cards

Device types using PCI Express x2, x4, x8, x12, x16, and x32

For the PCI Express 3.0 version, the total maximum data transfer rate is 8 GT / s. In reality, the speed for the PCI-E 3 version is slightly less than one gigabyte per second per lane.

Thus, a device using a PCI-E x1 port, such as a low-power sound card or Wi-Fi antenna, will be able to transmit data at a maximum speed of 1 Gbps.

A card that physically fits into a larger slot - x4 or x8 a USB 3.0 expansion card, for example, can transfer data four or eight times faster, respectively.

The transfer speed of PCI-E x16 ports is theoretically limited by the maximum bandwidth of about 15 Gb / s. This is more than enough in 2017 for all modern graphics cards developed by NVIDIA and AMD.


Most discrete graphics cards use a PCI-E x16 slot

PCI Express 4.0 allows you to use 16 GT / s, and PCI Express 5.0 will use 32 GT / s.

But there are currently no components that can use that many lanes with maximum bandwidth. Modern top-end graphics cards usually use the x16 PCI Express 3.0 standard. It makes no sense to use the same lanes for a network card that will use only one line on the x16 port, since the Ethernet port is only capable of transferring data up to one gigabit per second (which is about one-eighth of the bandwidth of one PCI-E lane - remember: eight bits in one byte).

You can find PCI-E SSDs on the market that support the x4 port, but these seem to be soon supplanted by the booming new M.2 standard. for solid state drives that can also use the PCI-E bus. High-end NICs and enthusiast hardware such as RAID controllers use a mix of x4 and x8 formats.

PCI-E Port and Lane Sizes May Vary

This is one of the most confusing tasks for PCI-E: a port can be made in x16 form factor, but have insufficient bandwidth to pass data, for example, for example, x4. This is because even though PCI-E can carry an unlimited number of individual connections, there is still a practical limit on the chipset's bandwidth. Cheaper motherboards with more budget chipsets may only have one x8 slot, even though that slot can physically house an x16 card.

In addition, motherboards aimed at gamers include up to four full PCI-E slots with x16 and the same number of lanes for maximum bandwidth.

Obviously this can cause problems. If the motherboard has two x16 slots, but one of them has only x4 strips, then connecting a new graphics card will reduce the performance of the first by as much as 75%. This is, of course, only a theoretical result. The architecture of the motherboards is such that you will not see a dramatic drop in performance.

Correct configuration of two video graphics cards should use exactly two x16 slots if you want maximum comfort from a tandem of two video cards. To find out how many lines on your motherboard a particular slot has, the manual at the office will help. manufacturer's website.

Sometimes manufacturers even mark the number of lines on the PCB of the motherboard next to the slot

Be aware that a shorter x1 or x4 card can physically fit into a longer x8 or x16 slot. The contact configuration of the electrical contacts makes this possible. Naturally, if the card is physically larger than the slot, then it will not work to insert it.

Therefore, remember, when buying expansion cards or upgrading current ones, you must always remember both the size of the PCI Express slot and the number of lanes required.

In the spring of 1991, Intel completed the development of the first prototype PCI bus. The engineers were tasked with developing an inexpensive and productive solution that would allow the 486, Pentium and Pentium Pro processors to be realized. In addition, it was necessary to take into account the mistakes made by VESA when designing the VLB bus (the electrical load did not allow connecting more than 3 expansion cards), and also to implement automatic device configuration.

In 1992, the first version of the PCI bus appears, Intel announces that the bus standard will be open, and creates the PCI Special Interest Group. Thanks to this, any interested developer gets the opportunity to create devices for the PCI bus without the need to purchase a license. The first version of the bus had a clock frequency of 33 MHz, it could be 32- or 64-bit, and the devices could work with signals of 5 V or 3.3 V. Theoretically, the bus bandwidth is 133 MB / s, but in reality the bandwidth was about 80 MB / s.

Main characteristics:


  • bus frequency - 33.33 or 66.66 MHz, synchronous transmission;
  • bus width - 32 or 64 bits, multiplexed bus (address and data are transmitted over the same lines);
  • peak bandwidth for the 32-bit version, operating at 33.33 MHz - 133 MB / s;
  • memory address space - 32 bits (4 bytes);
  • address space of input-output ports - 32 bits (4 bytes);
  • configuration address space (for one function) - 256 bytes;
  • voltage - 3.3 or 5 V.

Photo of connectors:

MiniPCI - 124 pin
MiniPCI Express MiniSata / mSATA - 52 pin
Apple MBA SSD, 2012
Apple SSD, 2012
Apple PCIe SSD
MXM, Graphics Card, 230/232 pin

MXM2 NGIFF 75 pins

KEY A PCIe x2

KEY B PCIe x4 Sata SMBus

MXM3, Graphics Card, 314 pin
PCI 5V
PCI Universal
PCI-X 5v
AGP Universal
AGP 3.3 v
AGP 3.3 v + ADS Power
PCIe x1
PCIe x16
Custom PCIe
ISA 8bit

ISA 16bit
eISA
VESA
NuBus
PDS
PDS
Apple II / GS Expasion slot
PC / XT / AT expasion bus 8 bit
ISA (industry standard architecture) - 16 bit
eISA
MBA - Micro Bus architecture 16 bit
MBA - Micro Bus architecture with 16 bit video
MBA - Micro Bus architecture 32 bit
MBA - Micro Bus architecture with 32 bit video
ISA 16 + VLB (VESA)
Processor Direct Slot PDS
601 Processor Direct Slot PDS
LC Processor Direct Slot PERCH
NuBus
PCI (Peripheral Computer Interconnect) - 5v
PCI 3.3v
CNR (Communications / network Riser)
AMR (Audio / Modem Riser)
ACR (Advanced communication Riser)
PCI-X (PCI Peripheral) 3.3v
PCI-X 5v
PCI 5v + RAID option - ARO
AGP 3.3v
AGP 1.5v
AGP Universal
AGP Pro 1.5v
AGP Pro 1.5v + ADC power
PCIe (peripheral component interconnect express) x1
PCIe x4
PCIe x8
PCIe x16

PCI 2.0

The first version of the basic standard, which became widespread, used both cards and slots with a signal voltage of only 5 volts. Peak throughput - 133 MB / s.

PCI 2.1 - 3.0

They differed from version 2.0 by the possibility of simultaneous operation of several bus masters (English bus-master, the so-called competitive mode), as well as by the appearance of universal expansion cards capable of operating both in slots using a voltage of 5 volts and in slots using 3 , 3 volts (with a frequency of 33 and 66 MHz, respectively). Peak throughput for 33 MHz is 133 MB / s, and for 66 MHz it is 266 MB / s.

  • Version 2.1 - work with 3.3 volt cards, and the presence of the corresponding power lines were optional.
  • Version 2.2 - expansion cards made in accordance with these standards have a universal power connector key and are able to work in many later varieties of PCI bus slots, as well as, in some cases, in version 2.1 slots.
  • Version 2.3 is incompatible with PCI cards rated for 5 volts, despite the continued use of 32-bit slots with a 5-volt key. Expansion cards have a universal connector, but they are not able to work in 5-volt slots of earlier versions (up to 2.1 inclusive).
  • Version 3.0 - Completes the transition to 3.3 volt PCI cards, 5 volt PCI cards are no longer supported.

PCI 64

An extension to the base PCI standard introduced in version 2.1 that doubles the number of data lines and therefore the bandwidth. The PCI 64 slot is an extended version of the regular PCI slot. Formally, the compatibility of 32-bit cards with 64-bit slots (provided there is a common supported signal voltage) is complete, and the compatibility of a 64-bit card with 32-bit slots is limited (in any case, performance will be lost). Works at a clock frequency of 33 MHz. Peak throughput is 266 MB / s.

  • Version 1 - Uses a 64-bit PCI slot and 5 volts.
  • Version 2 - Uses a 64-bit PCI slot and 3.3 volts.

PCI 66

PCI 66 is a 66 MHz evolution of PCI 64; uses 3.3 volts in the slot; the cards have a universal or 3.3V form factor. Peak throughput is 533 MB / s.

PCI 64/66

The combination of PCI 64 and PCI 66 allows up to four times the data transfer rate of the base PCI standard; Uses 64-bit 3.3-volt slots only compatible with universal and 3.3-volt 32-bit expansion cards. PCI64 / 66 cards have either universal (but limited compatibility with 32-bit slots) or 3.3V form factor (the latter option is fundamentally incompatible with 32-bit 33MHz slots of popular standards). Peak throughput - 533 MB / s.

PCI-X

PCI-X 1.0 - expansion of the PCI64 bus with the addition of two new operating frequencies, 100 and 133 MHz, as well as a mechanism for separate transactions to improve performance when multiple devices work simultaneously. Generally backward compatible with all 3.3V and general purpose PCI cards. PCI-X cards usually run in 64-bit 3.3V format and have limited backward compatibility with PCI64 / 66 slots, and some PCI-X cards are in a universal format and are able to work (although this has almost no practical value) in the usual PCI 2.2 / 2.3. In difficult cases, in order to be completely sure of the functionality of the combination of the motherboard and expansion card, it is necessary to look at the compatibility lists of the manufacturers of both devices.

PCI-X 2.0

PCI-X 2.0 - further expands the capabilities of PCI-X 1.0; added frequencies 266 and 533 MHz, as well as - data transmission parity error correction (ECC). Allows splitting into 4 independent 16-bit buses, which is used exclusively in embedded and industrial systems; the signal voltage has been reduced to 1.5 V, but the connectors are backward compatible with all cards using a signal voltage of 3.3 V. Currently, for the non-professional segment of the market for high-performance computers (powerful workstations and entry-level servers), in which PCI-X bus, very few motherboards with bus support are produced. An example of a motherboard for such a segment is the ASUS P5K WS. In the professional segment, it is used in RAID controllers, in SSD drives for PCI-E.

Mini PCI

Form factor PCI 2.2, designed for use mainly in laptops.

PCI Express

PCI Express, or PCIe, or PCI-E (also known as 3GIO for 3rd Generation I / O; not to be confused with PCI-X and PXI) - computer bus(although it is not a bus at the physical level, being a point-to-point connection) using program model PCI buses and a high-performance physical protocol based on serial data transmission... The development of the PCI Express standard was started by Intel after the abandonment of the InfiniBand bus. Officially, the first basic PCI Express specification appeared in July 2002. PCI Express is being developed by the PCI Special Interest Group.

Unlike the PCI standard, which used a common bus for data transfer with several devices connected in parallel, PCI Express, in general, is a packet network with star topology... PCI Express devices communicate with each other through a switch environment, with each device directly connected through a point-to-point connection to the switch. In addition, the PCI Express bus supports:

  • hot swap of cards;
  • guaranteed bandwidth (QoS);
  • energy management;
  • control of the integrity of the transmitted data.

The PCI Express bus is intended to be used only as a local bus. Since the PCI Express software model is largely inherited from PCI, existing systems and controllers can be modified to use the PCI Express bus by replacing only the physical layer, without modifying the software. The high peak performance of the PCI Express bus makes it possible to use it instead of AGP buses, and even more so PCI and PCI-X. De facto PCI Express has replaced these buses in personal computers.

  • MiniCard (Mini PCIe) is a replacement for the Mini PCI form factor. The following buses are brought out to the Mini Card slot: x1 PCIe, 2.0 and SMBus.
    • M.2 is the second version of Mini PCIe, up to x4 PCIe and SATA.
  • ExpressCard is similar to the PCMCIA form factor. The ExpressCard slot has x1 PCIe and USB 2.0 buses, ExpressCards support hot plugging.
  • AdvancedTCA, MicroTCA - form factor for modular telecommunications equipment.
  • The Mobile PCI Express Module (MXM) is an industrial form factor designed for notebook computers by NVIDIA. It is used to connect graphics accelerators.
  • PCI Express cable specifications make it possible to increase the length of one connection to tens of meters, which makes it possible to create a computer, the peripheral devices of which are at a considerable distance.
  • StackPC is a specification for building stackable computer systems. This specification describes the expansion connectors StackPC, FPE and their mutual arrangement.

Despite the fact that the standard allows x32 lines per port, such solutions are physically rather cumbersome and not available.

Year
release
Version
PCI Express
Coding Speed
transmission
Throughput on x lines
× 1 × 2 × 4 × 8 × 16
2002 1.0 8b / 10b 2.5 GT / s 2 4 8 16 32
2007 2.0 8b / 10b 5 GT / s 4 8 16 32 64
2010 3.0 128b / 130b 8 GT / s ~7,877 ~15,754 ~31,508 ~63,015 ~126,031
2017 4.0 128b / 130b 16 GT / s ~15,754 ~31,508 ~63,015 ~126,031 ~252,062
2019
5.0 128b / 130b 32 GT / s ~32 ~64 ~128 ~256 ~512

PCI Express 2.0

The PCI-SIG released the PCI Express 2.0 specification on January 15, 2007. The main innovations in PCI Express 2.0:

  • Increased bandwidth: 500 MB / s single line bandwidth, or 5 GT / s ( Gigatransactions / s).
  • Improvements have been made to the transfer protocol between devices and the programming model.
  • Dynamic speed control (to control the speed of communication).
  • Bandwidth alert (to notify the software about changes in bus speed and width).
  • Access Control Services - Optional point-to-point transaction management capabilities.
  • Execution timeout control.
  • Reset at the function level - an optional mechanism for resetting functions (PCI functions) inside a device (PCI device).
  • Override the power limit (to override the slot power limit when connecting devices that consume more power).

PCI Express 2.0 is fully compatible with PCI Express 1.1 (the old ones will work in motherboards with new connectors, but only at 2.5 GT / s, since the old chipsets cannot support double the data transfer rate; new video adapters will work without problems in old PCI Express 1.x slots).

PCI Express 2.1

In terms of physical characteristics (speed, connector) it corresponds to 2.0, in the software part, functions have been added that are fully planned to be introduced in version 3.0. Since most motherboards are sold with version 2.0, the presence of only a video card with 2.1 does not allow using the 2.1 mode.

PCI Express 3.0

PCI Express 3.0 specifications were approved in November 2010. The interface has a baud rate of 8 GT / s ( Gigatransactions / s). But despite this, its real bandwidth was still doubled compared to the PCI Express 2.0 standard. This was achieved thanks to the more aggressive 128b / 130b encoding scheme, where 128 bits of data sent over the bus are encoded with 130 bits. At the same time, full compatibility with previous PCI Express versions has been preserved. PCI Express 1.x and 2.x cards will work in slot 3.0, and conversely, a PCI Express 3.0 card will work in 1.x and 2.x slots.

PCI Express 4.0

The PCI Special Interest Group (PCI SIG) said PCI Express 4.0 could be standardized before the end of 2016, but by mid-2016, with a number of chips in preparation for production, the media reported that standardization was expected in early 2017. will have a bandwidth of 16 GT / s, that is, it will be twice as fast as PCIe 3.0.

Leave your comment!