Shopping on line can be easy, simple and save you lots of money. It can also take a lot of your time, frustrate you, and result in unwanted purchases. Now the same can be said for regular high street shopping, but with the vast opportunity presented by the Internet it will pay you to spend a few minutes reading this and understanding how to better optimize your Pci Express shopping experience:
1. Compare - without doubt the biggest advantage that the Pci Express offers shoppers today is the ability to compare thousands of Pci Express at a time. This is a great thing, but not necessarily all the time! Too much can be daunting at times so take advantage of the great comparison sites and where possible let them do the hard work for you.
2. Research - if it has been said it will be on the internet. Ignorance is no longer a justifiable reason for buying the wrong thing. Take the time to research in detail everything that you could possible want to know about
3. Testimonials - don't know anybody that has bought a Pci Express? Wrong! If the Pci Express is good the internet will let you know. Use the Internet as a friend and get testimonials before you buy.
4. Questions - Got a question about Pci Express then search the Forums, FAQ's, Blogs etc. Don't be afraid to ask .....
5. Reputation - Never heard of the company selling Pci Express? Don't worry, no reason why you should know every company in the world, but you know someone that does! Use the internet to find out what people are saying about Pci Express and build up a picture of their reputation for sales, returns, customer service, delivery etc.
6. Returns - still worried that even after all of the above your Pci Express wont be what you want? Check out the returns policy. There is so much competition now that someone, somewhere is bound to offer the terms that you are comfortable with.
7. Feedback - happy with your Pci Express then let people know, after all you are depending on others people input in your buying decision, so why not give a little back.
8. Security - check for the yellow padlock on the Pci Express site before you buy, and the s after http:/ /i.e. https:// = a secure site
9. Contact - got a question about Pci Express, or want to leave a comment then check out the sites contact page. Reputable companies have them and respond.
10. Payment - ready to pay for your Pci Express, then use your credit card or PayPal! Be aware of companies that don't accept them, there may be genuine reasons but given the huge amount of choice you have when buying online there is no reason at all not to buy via credit card or PayPal.
{{Infobox Computer Hardware Bus| name = PCI Express| image = PCI Express logo.svg| caption = PCI Express logo| invent-date = 2004| invent-name = Intel [expansion card interface format introduced by intel in 2004. It was designed to replace the general purpose
Peripheral Component Interconnect expansion bus, the high end
PCI-X bus and the
Accelerated Graphics Port graphics card interface. Unlike previous PC expansion interfaces rather than being a Electrical bus it is structured around point to point
Duplex (telecommunications)#Full-Duplex serial links called lanes. In PCIe 1.1 each lane (the most common version as of 2007) carries 250
Megabyte/s in each direction. PCIe 2.0 doubles this and PCIe 3.0 doubles it again.
Each slot carries one, two, four, eight, sixteen or thirty-two lanes of data between the motherboard and the card. Lane counts are written with an x prefix e.g. x1 for a single lane card and x16 for a sixteen lane card. Thirty-two lanes of 250MB/S gives a maximum
transfer rate of 8 GB/s (250 MB/s x 32) in each direction for PCIe 1.1. However the largest size in common use is x16 giving a transfer rate of 4 GB/s (250 MB/s x 32) in each direction. Putting this into perspective, a single lane has nearly twice the data rate of normal PCI, a four lane slot has a comparable data rate to the fastest version of PCI-X 1.0, and an eight lane slot has a data rate comparable to the fastest version of AGP.
PCIe slots come in a variety of sizes referred to by the maximum lane count they support. A larger card will not fit in a smaller slot but a smaller card can be used in a larger slot. The number of lanes actually connected may be smaller than the number supported by the slot size. While a 16 lane card cannot be used in an 8 lane slot it can be used in a 16 lane slot with only 8 lanes connected. The number of lanes are "negotiated" during power-up or explicitly during operation. By making the lane count flexible a single standard can provide for the needs of high bandwidth cards (e.g. graphics cards,
10 gigabit ethernet cards and multiport gigabit ethernet cards) while also being economical for less demanding cards.
As well as the ordinary expansion cards for desktops and serverthe PCIe electrical interface is used in a variety of other form factors including the expresscard laptop expansion card interface. PCIe is also often used to connect integrated perhipherals on the motherboard.
Overview
The PCIe physical layer consists of a network of serial interconnects. A hub on the mainboard acts as a crossbar switch allowing point-to-point device interconnections to be rerouted on the fly. This dynamic point-to-point connection behavior leads to parallelism since more than one pair of devices may communicate with each other at the same time. (In contrast, older PC interfaces had all devices permanently wired to the same bus; therefore, only one device could talk at a time.) This is similar to the difference between conversing over a telephone where you can only call one person at a time, and conversing in a meeting, where you can talk to a person beside you directly. The format also allows channel grouping, where multiple lanes are bonded to a single device pair in order to provide higher bandwidth.
The bonded serial format was chosen over a traditional parallel format due to the phenomenon of timing skew. Timing skew is a direct result of the limitations imposed by the speed of light: when an electrical signal travels down a wire, it does so at a finite speed. Because different traces in an interface have different lengths, parallel signals transmitted simultaneously from a source arrive at their destinations at different times. When the interconnection clock rate rises to the point where the wavelength of a single bit exceeds this difference in path length, the bits of a single word do not arrive at their destination simultaneously, making parallel recovery of the word difficult. Thus, the speed of light, combined with the difference in length between the longest and shortest trace in a parallel interconnect, leads to a naturally imposed maximum bandwidth. Serial channel bonding avoids this issue by not requiring the bits to arrive simultaneously. PCIe is just one example of a general trend away from parallel buses to serial interconnects. For other examples, see HyperTransport, Serial ATA,
Universal Serial Bus, Serial Attached SCSI or FireWire. The multichannel serial design also increases flexibility by allowing slow devices to be allocated fewer lanes than fast devices.
PCIe is supported primarily by
Intel, which started working on the standard as the
Arapahoe project after pulling out of the
InfiniBand system. PCIe is intended to be used as a local bus only. It was designed to be software compatible with the preexisting PCI standard, making the conversion of PCI cards and systems to PCI Express as simple as replacing the physical layer without requiring a change to the supporting software. The increased bandwidth on PCI Express has led to unification, as it is fast enough to replace almost all existing internal buses, including
Accelerated Graphics Port and PCI. Intel envisions a single PCI Express controller talking to all external devices in the future, as opposed to the
Northbridge (computing)/
Southbridge (computing) solution used in current machines.
Unlike preceding PC expansion interface standards, PCIe is a point-to-point "bus". This type of connection removes the need for "arbitrating" the bus or waiting for the bus to free. This means that while standard PCI-X (133 MHz 64 bit) and PCIe x4 have roughly the same data transfer rate, PCIe x4 will give better performance if multiple device pairs are communicating simultaneously or if communication within a single device pair is Bi-directional.
History
While in development, PCI Express (PCIe) was referred to as
Arapaho or
3GIO for
3rd Generation I/O.
PCIe is a technology which receives further development and improvement. The current standard version in general use at time of writing is PCIe 1.1; however,
PCI-SIG announced the availability of the PCI Express Base 2.0 specification on
15 January 2007. PCIe 2.0 doubles the data rate of each lane from 250 MB/s to 500 MB/s. PCIe 2.0 is backward compatible with PCIe 1.1 as a physical interface slot and from within software, so older cards will still be able to work in machines fitted with this new version. Further information on PCIe 2.0 is detailed below.
Hardware protocol summary
The PCIe link is built around dedicated unidirectional couples of serial (1-bit), point-to-point connections known as "lanes". This is in sharp contrast to the PCI connection, which is a bus-based system where all the devices share the same bidirectional, 32-bit (or 64-bit), parallel bus.
PCI Express is a
layered protocol, consisting of a Transaction Layer, a Data Link Layer, and a Physical Layer. The Physical Layer is further divided into a logical sublayer and an electrical sublayer. The logical sublayer is frequently further divided into a Physical Coding Sublayer (PCS) and a Media Access Control (MAC) sublayer (terms borrowed from the IEEE 802 model of networking protocol).
Physical Layer
The PCIe physical Layer interface is known by the acronym PIPE which stands for "Physical Interface for PCI Express".
At the electrical level, each lane consists of two unidirectional LVDS pairs at 2.5 Gbit/s. Transmit and receive are separate differential pairs, for a total of 4 data wires per lane.
's LanParty nF4 Ultra-D brand
NVIDIA GeForce 6#GeForce 6600 Series PCI Express x16 video adapter card
A connection between any two PCIe devices is known as a "link", and is built up from a collection of 1 or more lanes. All devices must minimally support single-lane (x1) link. Devices may optionally support wider links composed of 2, 4, 8, 12, 16, or 32 lanes. This allows for very good compatibility in two ways:
- a PCIe card will physically fit (and work correctly) in any slot that is at least as large as it is (e.g. an x1 sized card will work in any sized slot);
- a slot of a large physical size (e.g. x16) can be wired electrically with fewer lanes (e.g. x1 or x8) as long as it provides the power and ground connections required by the larger physical slot size.
In both cases, PCIe will negotiate the highest mutually supported number of lanes.
It is not possible to place a physically larger PCIe card (e.g. a 16x sized card) into a smaller slot, even though the two would be signal-compatible if it were possible.
Data transmission
PCIe sends all control messages, including interrupts, over the same links used for data. The serial protocol can never be blocked, so latency is still comparable to PCI, which has dedicated interrupt lines.
Data transmitted on multiple-lane links is interleaved, meaning that each successive byte is sent down successive lanes. The PCIe specification refers to this interleaving as "data striping." While requiring significant hardware complexity to synchronize (or Skew) the incoming striped data, striping can significantly increase the throughput of the link. Due to padding requirements, striping may not necessarily reduce the latency of small data packets on a link.
As with all high data rate serial transmission protocols, clocking information must be embedded in the signal. At the physical level, PCI Express utilizes the very common 8b/10b encoding scheme to ensure that strings of consecutive ones or consecutive zeros are limited in length. This is necessary to prevent the receiver from losing track of where the bit edges are. In this coding scheme every 8 (uncoded) payload bits of data are replaced with 10 (encoded) bits of transmit data, consuming an extra 25% of the overall electrical bandwidth.
Many other protocols (such as SONET) use a different form of encoding known as "scrambler (randomizer)" to embed clock information into data streams. The PCI Express specification also defines a scrambling algorithm, but it is used to reduce EMI (Radio frequency interference) by preventing repeating data patterns in the transmitted data stream.
Signaling rate
First-generation PCIe is constrained to a single signaling rate of 2.5 Gbit/s. The PCI Special Interest Group (the industry organization that maintains and develops the various PCI standards) plans future versions adding signaling rates of 5 and 8 Gbit/s.
Data Link Layer
The Data Link Layer implements the sequencing of the Transaction Layer Packets (TLPs) that are generated by the Transaction Layer, data protection via a 32-bit
cyclic redundancy check code (CRC, known in this context as LCRC) and an acknowledgment protocol (Acknowledge character and Negative-acknowledge character signaling). TLPs that pass an LCRC check and a sequence number check result in an acknowledgment, or ACK, while those that fail these checks result in a negative acknowledgment, or NAK. TLPs that result in a NAK, or timeouts that occur while waiting for an ACK, result in the TLPs being replayed from a special buffer in the transmit data path of the Data Link Layer. This guarantees delivery of TLPs in spite of electrical noise, barring any malfunction of the device or transmission medium.
ACK and NAK signals are communicated via a low-level packet known as a data link layer packet, or DLLP. DLLPs are also used to communicate flow control information between the transaction layers of two connected devices, as well as some power management functions.
Transaction Layer
PCI Express implements split transactions (transactions with request and response separated by time), allowing the link to carry other traffic while the target device gathers data for the response.
PCI Express utilizes credit-based flow control. In this scheme, a device advertises an initial amount of credit for each of the receive buffers in its Transaction Layer. The device at the opposite end of the link, when sending transactions to this device, will count the number of credits consumed by each TLP from its account. The sending device may only transmit a TLP when doing so does not result in its consumed credit count exceeding its credit limit. When the receiving device finishes processing the TLP from its buffer, it signals a return of credits to the sending device, which then increases the credit limit by the restored amount. The credit counters are modular counters, and the comparison of consumed credits to credit limit requires modular arithmetic. The advantage of this scheme (compared to other methods such as wait states or handshake-based transfer protocols) is that the latency of credit return does not affect performance, provided that the credit limit is not encountered. This assumption is generally met if each device is designed with adequate buffer sizes.
First-generation PCIe is often quoted to support a data rate of 250 MB/s in each direction, per lane. This figure is a calculation from the physical signaling rate (2.5 Gbaud) divided by the encoding overhead (10bits/byte.) This means a 16 lane (x16) PCIe card would then be theoretically capable of 250 * 16 = 4 GB/s in each direction. While this is correct in terms of data bytes, more meaningful calculations will be based on the usable data payload rate, which depends on the profile of the traffic, which is a function of the high-level (software) application and intermediate protocol levels.Like other high data rate serial interconnect systems, PCIe has a protocol and processing overhead due to the additional transfer robustness (CRC and Acknowledgments). Long continuous unidirectional transfers (such as those typical in high-performance storage controllers) can approach >95% of PCIe's raw (lane) data rate. These transfers also benefit the most from increased number of lanes (x2, x4, etc.) But in more typical applications (such as a Universal Serial Bus or Ethernet controller), the traffic profile is characterized as short data packets with frequent enforced acknowledgments. This type of traffic reduces the efficiency of the link, due to overhead from packet parsing and forced interrupts (either in the device's host interface or the PC's CPU.) This loss of efficiency is not particular to PCIe.
Form factors
- Low height card
- PCI Express Mini Card: a replacement for the Mini PCI form factor (with x1 PCIe, USB 2.0 and SMBus buses on the connector)
- ExpressCard: successor to the PC card form factor (with x1 PCIe and USB 2.0; hot-pluggable)
- PCI Express ExpressModule: a hot-pluggable modular form factor defined for servers and workstations
- Switched Mezzanine Card: similar to the Common Mezzanine Card/PCI mezzanine card form factor (with x4 PCIe or Serial RapidI/O)
- Advanced Telecommunications Computing Architecture: a complement to CompactPCI for larger applications; supports serial based backplane topologies
- Advanced Mezzanine Card: a complement to the Advanced Telecommunications Computing Architecture specification; supports processor and I/O modules on ATCA boards (x1,x2,x4 or x8 PCIe).
- PCI Express External Cabling{{cite web
| title = PCI Express External Cabling 1.0 Specification| accessdate = 2007-02-09| url = http://www.pcisig.com/specifications/pciexpress/pcie_cabling1.0/-->
Competing protocols
Several communications standards have emerged based on high bandwidth serial architectures.These include but are not limited to HyperTransport, InfiniBand, RapidIO, and StarFabric.
Essentially the differences are based on the tradeoffs between flexibility and extensibility vs. latency and overhead.An example of such a tradeoff is adding complex header information to a transmitted packet to allow for complex routing (PCI Express is not capable of this).This additional overhead reduces the effective bandwidth of the interface and complicates bus discovery and initialization software.Also making the system hot-pluggable requires that software track network topology changes. Examples of buses suited for this purpose are InfiniBand and StarFabric.
Another example is making the packets shorter to decrease latency (as is required if a bus is to be operated as a memory interface). Smaller packets mean that the packet headers consume a higher percentage of the packet, thus decreasing the effective bandwidth. Examples of bus protocols designed for this purpose are RapidIO and HyperTransport.
PCI Express falls somewhere in the middle, targeted by design as a system interconnect (local bus) rather than a device interconnect or routed network protocol. Additionally, its design goal of software transparency constrains the protocol and raises its latency somewhat.
Status
As of
2007, PCI Express has largely replaced AGP as the most common interface for graphics cards. Almost all graphics cards being released today (2007) from ATI Technologies and
NVIDIA use PCI Express. NVIDIA uses the high bandwidth data transfer of PCIe for its newly developed Scalable Link Interface (SLI) technology, which allows two graphics cards of the same chipset and model number to be run at the same time, allowing increased performance. ATI has also developed a dual-GPU system based on PCIe called ATI CrossFire.
Uptake for other forms of PC expansion has been much slower and PCI remains dominant. PCI Express is commonly used for onboard
gigabit ethernet and
wi-fi but add in cards are still generally PCI, particularly at the lower end of the market. Sound cards, modems, serial port cards and other cards with low speed interfaces are still nearly all PCI. For this reason most motherboards supporting PCI Express offer legacy PCI slots as well.
ExpressCard has been introduced on several mid- to high-range laptops. Unlike desktops, however, laptops frequently only have one expansion slot Replacing the PC card slot with ExpressCard slot means a loss in compatibility with PC card devices.
External PCI Express
The name External PCI Express is not of yet (2007-09) an official name, but the most commonly used.
Specifications
2007-02 The first PCI Express External Cabling specifications was released by PCI-SIG February 2007."This specification helps the industry create new products that will take PCIe technology out of the box – enabling PCIe solutions for IO expansion drawers, external graphics processors, tethered mobile docking, communications equipment and embedded applications".
Standard cables and connectors have been defined for x1, x4, x8, and x16 link widths, with a transfer rate of 250 MB/s. The PCI-SIG also expects the norm will evolve to reach 500 MB/s (like internal links). The maximal length of cabling isn't known yet.
External PCIe Video Cards
Potentially this could give a notebook the graphic power of a desktop, by connecting a notebook with any PCIe desktop video card (enclosed in its own external housing).
2007-09 (as of), only one finalized product and two concept products exists. All three delivering the power of the video card to external displays only. And all connecting to a notebook through an ExpressCard interface which limits the bandwidth from an inserted x16 video card (4GB/s in each direction), to just x1 (250MB/s in each direction):
Magma ExpressBox Magma.
Luxium by MSI TheInquirer, CustomPcMag.
XG Station by Asus Asus, VR-Zone
PCI Express 2.0
PCI-SIG announced the availability of the PCI Express Base 2.0 specification on 15 January
2007.{{cite press release]| date =
2007-01-15--> — note that in this press release the term "aggregate bandwidth" refers to the sum of incoming and outgoing bandwidth; using this terminology the aggregate bandwidth of full duplex 100BASE-TX is 200 Mbit/s PCIe 2.0 doubles the bus standard's bandwidth from 2.5 Gbit/s to 5 Gbit/s, meaning a x32 connector can transfer data at up to 16 GB/s in each direction. PCIe 2.0 is still compatible with PCIe 1.1, so older cards will still be able to work in machines with this new version.
The PCI-SIG also said PCIe 2.0 also features improvements to the point-to-point data transfer protocol and its software architecture.{{cite news| author = Tony Smith| publisher = [The Register| accessdate = 2007-02-09| url = http://www.reghardware.co.uk/2006/10/11/pic-sig_posts_pcie_2_final_draft/-->
In June 2007 [Intel released the specification of the P35 chipset which does not support PCIe 2.0 only PCIe 1.1. Some people may be confused by the P35 block diagram{{cite news]| title = First look - Intel P35 chipset| date = 2007-05-21 has a PCIe x16 graphics link (8 GB/s) and 6 PCIe x1 links (500 MB/s each), for simple verification one can view the P965 block diagram which shows the same number of lanes and bandwidth but was released before PCIe 2.0 was finalised. Intel's first PCIe 2.0 capable chipset will be the [List of Intel chipsets#Core 2 Duo Chipsets and will be released in Q3 2007.{{cite news| author = Gary Key & Wesley Fink| publisher =
AnandTech| accessdate = 2007-05-21| url = http://www.anandtech.com/cpuchipsets/showdoc.aspx?i=2993--> AMD starts supporting PCIe 2.0 from its [RD700 chipset series. NVIDIA has revealed that the
nForce 700 will be their first PCIe 2.0 equipped chipset.{{cite news| author = Anh Huynh| publisher = [AnandTech| accessdate = 2007-02-09| url = http://www.dailytech.com/article.aspx?newsid=6021-->
PCI Express 3.0
In August 2007 PCI-SIG announced that PCI Express 3.0 will carry a bit rate of 8 gigatransfers per second. The spec will be backwards-compatible with existing PCIe implementations and a final spec is due in 2009. New features for PCIe 3.0 specification include a number of optimizations for enhanced signaling and data integrity, including transmitter and receiver equalization, PLL improvements, clock data recovery, and channel enhancements for currently supported topologies.
Following a six-month technical analysis of the feasibility of scaling the PCIe interconnect bandwidth, PCI-SIG's analysis found out that 8 gigatransfers per second can be manufactured in mainstream silicon process technology, and can be deployed with existing low-cost materials and infrastructure, while maintaining full compatibility (with negligible impact) to the PCIe protocol stack.
PCIe 2.0 delivers 5GT/s but employed an 8b/10b encoding scheme which took 20 percent overhead on the overall raw bit rate. By removing the requirement for the 8b/10b encoding scheme, PCIe 3.0's 8GT/s bit rate effectively delivers double PCIe 2.0 bandwidth. The PCIe 3.0 specification will also introduce a number of optimizations for enhanced signaling and data integrity, including transmitter and receiver equalization, PLL improvements, clock data recovery and channel enhancements for currently supported topologies. The final PCIe 3.0 specifications, including form factor specification updates, may be available by late 2009, and could be seen in products starting in 2010 and beyond.
PCI-SIG expects the PCIe 3.0 specifications to undergo rigorous technical vetting and validation before being released to the industry. This process, which was followed in the development of prior generations of the PCIe Base and various form factor specifications, includes the corroboration of the final electrical parameters with data derived from test silicon and other simulations conducted by multiple members of the PCI-SIG.
See also
- Industry Standard Architecture (ISA)
- Extended Industry Standard Architecture (EISA)
- Micro Channel architecture (MCA)
- NuBus
- VESA Local Bus (VLB)
- Peripheral Component Interconnect (PCI)
- Accelerated Graphics Port (AGP)
- List of device bandwidths (A useful listing of device bandwidths that include PCI Express)
- CompactPCI
- AdvancedTCA
- Geneseo (A future generation PCI Express)
- PCI-X
References
External links
- PCI-SIG, the industry organization that maintains and develops the various PCI standards
- How Stuff Works - PCI Express
- Publishers of CompactPCI and AdvancedTCA Systems Magazine
- How to identify a PCI Express vs an AGP video card
- PCI Express Specifications and White Papers (Membership required to download specifications)
- Creating a Third Generation I/O Interconnect (PDF)
- Intel Developer Network for PCI Express Architecture
- PCI Express: An Overview
- IBM Redbooks: Introduction to PCI Express
- PCI Express Resources for System Designers
- PCI Express Form-Factors
- Dell whitepaper - PCI Express Technology Compares PCIe, PCI, PCI-X.
- Implementing PCI Express HotPlug
- PCI Express is Everywhere (published in RTC magazine)
- The Final Frontier - PCIe on the backplane (published in CompactPCI magazine)
- New-generation backplane interconnects. PCIe vs Ethernet (Electronic Products magazine)
- Using PCIe in a variety of multiprocessor system configurations (Embedded Magazine)
- Using PCI Express in next generation battlefield applications (VME Critical magazine)
- New PCIe Bridge-Based Riser Cards Allow Connection to PCI-X Cards (Computer Technology Review)
- When to use an off the shelf PCIe device versus FPGA (Embedded Computing magazine)
- PCI Express 3.0 Bandwidth: 8.0 Gigatransfers/s (Extremetech.com)
- PCI express 1x-16x bus - pinouts with brief description
{{Infobox Computer Hardware Bus| name = PCI Express| image = PCI Express logo.svg| caption = PCI Express logo| invent-date = 2004| invent-name = Intel [expansion card interface format introduced by intel in 2004. It was designed to replace the general purpose
Peripheral Component Interconnect expansion bus, the high end PCI-X bus and the
Accelerated Graphics Port graphics card interface. Unlike previous PC expansion interfaces rather than being a
Electrical bus it is structured around point to point
Duplex (telecommunications)#Full-Duplex serial links called lanes. In PCIe 1.1 each lane (the most common version as of 2007) carries 250
Megabyte/s in each direction. PCIe 2.0 doubles this and PCIe 3.0 doubles it again.
Each slot carries one, two, four, eight, sixteen or thirty-two lanes of data between the motherboard and the card. Lane counts are written with an x prefix e.g. x1 for a single lane card and x16 for a sixteen lane card. Thirty-two lanes of 250MB/S gives a maximum transfer rate of 8 GB/s (250 MB/s x 32) in each direction for PCIe 1.1. However the largest size in common use is x16 giving a transfer rate of 4 GB/s (250 MB/s x 32) in each direction. Putting this into perspective, a single lane has nearly twice the data rate of normal PCI, a four lane slot has a comparable data rate to the fastest version of PCI-X 1.0, and an eight lane slot has a data rate comparable to the fastest version of AGP.
PCIe slots come in a variety of sizes referred to by the maximum lane count they support. A larger card will not fit in a smaller slot but a smaller card can be used in a larger slot. The number of lanes actually connected may be smaller than the number supported by the slot size. While a 16 lane card cannot be used in an 8 lane slot it can be used in a 16 lane slot with only 8 lanes connected. The number of lanes are "negotiated" during power-up or explicitly during operation. By making the lane count flexible a single standard can provide for the needs of high bandwidth cards (e.g. graphics cards, 10 gigabit ethernet cards and multiport
gigabit ethernet cards) while also being economical for less demanding cards.
As well as the ordinary expansion cards for desktops and serverthe PCIe electrical interface is used in a variety of other form factors including the expresscard laptop expansion card interface. PCIe is also often used to connect integrated perhipherals on the motherboard.
Overview
The PCIe physical layer consists of a network of serial interconnects. A hub on the mainboard acts as a
crossbar switch allowing point-to-point device interconnections to be rerouted on the fly. This dynamic point-to-point connection behavior leads to parallelism since more than one pair of devices may communicate with each other at the same time. (In contrast, older PC interfaces had all devices permanently wired to the same bus; therefore, only one device could talk at a time.) This is similar to the difference between conversing over a telephone where you can only call one person at a time, and conversing in a meeting, where you can talk to a person beside you directly. The format also allows channel grouping, where multiple lanes are bonded to a single device pair in order to provide higher bandwidth.
The bonded serial format was chosen over a traditional parallel format due to the phenomenon of
timing skew. Timing skew is a direct result of the limitations imposed by the speed of light: when an electrical signal travels down a wire, it does so at a finite speed. Because different traces in an interface have different lengths, parallel signals transmitted simultaneously from a source arrive at their destinations at different times. When the interconnection clock rate rises to the point where the wavelength of a single bit exceeds this difference in path length, the bits of a single word do not arrive at their destination simultaneously, making parallel recovery of the word difficult. Thus, the speed of light, combined with the difference in length between the longest and shortest trace in a parallel interconnect, leads to a naturally imposed maximum bandwidth. Serial channel bonding avoids this issue by not requiring the bits to arrive simultaneously. PCIe is just one example of a general trend away from parallel buses to serial interconnects. For other examples, see HyperTransport,
Serial ATA, Universal Serial Bus, Serial Attached SCSI or
FireWire. The multichannel serial design also increases flexibility by allowing slow devices to be allocated fewer lanes than fast devices.
PCIe is supported primarily by
Intel, which started working on the standard as the
Arapahoe project after pulling out of the
InfiniBand system. PCIe is intended to be used as a local bus only. It was designed to be software compatible with the preexisting PCI standard, making the conversion of PCI cards and systems to PCI Express as simple as replacing the physical layer without requiring a change to the supporting software. The increased bandwidth on PCI Express has led to unification, as it is fast enough to replace almost all existing internal buses, including Accelerated Graphics Port and PCI. Intel envisions a single PCI Express controller talking to all external devices in the future, as opposed to the Northbridge (computing)/
Southbridge (computing) solution used in current machines.
Unlike preceding PC expansion interface standards, PCIe is a point-to-point "bus". This type of connection removes the need for "arbitrating" the bus or waiting for the bus to free. This means that while standard PCI-X (133 MHz 64 bit) and PCIe x4 have roughly the same data transfer rate, PCIe x4 will give better performance if multiple device pairs are communicating simultaneously or if communication within a single device pair is Bi-directional.
History
While in development, PCI Express (PCIe) was referred to as
Arapaho or
3GIO for
3rd Generation I/O.
PCIe is a technology which receives further development and improvement. The current standard version in general use at time of writing is PCIe 1.1; however, PCI-SIG announced the availability of the PCI Express Base 2.0 specification on
15 January 2007. PCIe 2.0 doubles the data rate of each lane from 250 MB/s to 500 MB/s. PCIe 2.0 is backward compatible with PCIe 1.1 as a physical interface slot and from within software, so older cards will still be able to work in machines fitted with this new version. Further information on PCIe 2.0 is detailed below.
Hardware protocol summary
The PCIe link is built around dedicated unidirectional couples of serial (1-bit), point-to-point connections known as "lanes". This is in sharp contrast to the PCI connection, which is a bus-based system where all the devices share the same bidirectional, 32-bit (or 64-bit), parallel bus.
PCI Express is a layered protocol, consisting of a Transaction Layer, a Data Link Layer, and a Physical Layer. The Physical Layer is further divided into a logical sublayer and an electrical sublayer. The logical sublayer is frequently further divided into a Physical Coding Sublayer (PCS) and a Media Access Control (MAC) sublayer (terms borrowed from the
IEEE 802 model of networking protocol).
Physical Layer
The PCIe physical Layer interface is known by the acronym PIPE which stands for "Physical Interface for PCI Express".
At the electrical level, each lane consists of two unidirectional LVDS pairs at 2.5 Gbit/s. Transmit and receive are separate differential pairs, for a total of 4 data wires per lane.
's LanParty nF4 Ultra-D brand NVIDIA GeForce 6#GeForce 6600 Series PCI Express x16 video adapter card
A connection between any two PCIe devices is known as a "link", and is built up from a collection of 1 or more lanes. All devices must minimally support single-lane (x1) link. Devices may optionally support wider links composed of 2, 4, 8, 12, 16, or 32 lanes. This allows for very good compatibility in two ways:
- a PCIe card will physically fit (and work correctly) in any slot that is at least as large as it is (e.g. an x1 sized card will work in any sized slot);
- a slot of a large physical size (e.g. x16) can be wired electrically with fewer lanes (e.g. x1 or x8) as long as it provides the power and ground connections required by the larger physical slot size.
In both cases, PCIe will negotiate the highest mutually supported number of lanes.
It is not possible to place a physically larger PCIe card (e.g. a 16x sized card) into a smaller slot, even though the two would be signal-compatible if it were possible.
Data transmission
PCIe sends all control messages, including interrupts, over the same links used for data. The serial protocol can never be blocked, so latency is still comparable to PCI, which has dedicated interrupt lines.
Data transmitted on multiple-lane links is interleaved, meaning that each successive byte is sent down successive lanes. The PCIe specification refers to this interleaving as "data striping." While requiring significant hardware complexity to synchronize (or Skew) the incoming striped data, striping can significantly increase the throughput of the link. Due to padding requirements, striping may not necessarily reduce the latency of small data packets on a link.
As with all high data rate serial transmission protocols, clocking information must be embedded in the signal. At the physical level, PCI Express utilizes the very common 8b/10b encoding scheme to ensure that strings of consecutive ones or consecutive zeros are limited in length. This is necessary to prevent the receiver from losing track of where the bit edges are. In this coding scheme every 8 (uncoded) payload bits of data are replaced with 10 (encoded) bits of transmit data, consuming an extra 25% of the overall electrical bandwidth.
Many other protocols (such as SONET) use a different form of encoding known as "scrambler (randomizer)" to embed clock information into data streams. The PCI Express specification also defines a scrambling algorithm, but it is used to reduce EMI (Radio frequency interference) by preventing repeating data patterns in the transmitted data stream.
Signaling rate
First-generation PCIe is constrained to a single signaling rate of 2.5 Gbit/s. The PCI Special Interest Group (the industry organization that maintains and develops the various PCI standards) plans future versions adding signaling rates of 5 and 8 Gbit/s.
Data Link Layer
The Data Link Layer implements the sequencing of the Transaction Layer Packets (TLPs) that are generated by the Transaction Layer, data protection via a 32-bit cyclic redundancy check code (CRC, known in this context as LCRC) and an acknowledgment protocol (Acknowledge character and Negative-acknowledge character signaling). TLPs that pass an LCRC check and a sequence number check result in an acknowledgment, or ACK, while those that fail these checks result in a negative acknowledgment, or NAK. TLPs that result in a NAK, or timeouts that occur while waiting for an ACK, result in the TLPs being replayed from a special buffer in the transmit data path of the Data Link Layer. This guarantees delivery of TLPs in spite of electrical noise, barring any malfunction of the device or transmission medium.
ACK and NAK signals are communicated via a low-level packet known as a data link layer packet, or DLLP. DLLPs are also used to communicate flow control information between the transaction layers of two connected devices, as well as some power management functions.
Transaction Layer
PCI Express implements split transactions (transactions with request and response separated by time), allowing the link to carry other traffic while the target device gathers data for the response.
PCI Express utilizes credit-based flow control. In this scheme, a device advertises an initial amount of credit for each of the receive buffers in its Transaction Layer. The device at the opposite end of the link, when sending transactions to this device, will count the number of credits consumed by each TLP from its account. The sending device may only transmit a TLP when doing so does not result in its consumed credit count exceeding its credit limit. When the receiving device finishes processing the TLP from its buffer, it signals a return of credits to the sending device, which then increases the credit limit by the restored amount. The credit counters are modular counters, and the comparison of consumed credits to credit limit requires modular arithmetic. The advantage of this scheme (compared to other methods such as wait states or handshake-based transfer protocols) is that the latency of credit return does not affect performance, provided that the credit limit is not encountered. This assumption is generally met if each device is designed with adequate buffer sizes.
First-generation PCIe is often quoted to support a data rate of 250 MB/s in each direction, per lane. This figure is a calculation from the physical signaling rate (2.5 Gbaud) divided by the encoding overhead (10bits/byte.) This means a 16 lane (x16) PCIe card would then be theoretically capable of 250 * 16 = 4 GB/s in each direction. While this is correct in terms of data bytes, more meaningful calculations will be based on the usable data payload rate, which depends on the profile of the traffic, which is a function of the high-level (software) application and intermediate protocol levels.Like other high data rate serial interconnect systems, PCIe has a protocol and processing overhead due to the additional transfer robustness (CRC and Acknowledgments). Long continuous unidirectional transfers (such as those typical in high-performance storage controllers) can approach >95% of PCIe's raw (lane) data rate. These transfers also benefit the most from increased number of lanes (x2, x4, etc.) But in more typical applications (such as a Universal Serial Bus or Ethernet controller), the traffic profile is characterized as short data packets with frequent enforced acknowledgments. This type of traffic reduces the efficiency of the link, due to overhead from packet parsing and forced interrupts (either in the device's host interface or the PC's CPU.) This loss of efficiency is not particular to PCIe.
Form factors
- Low height card
- PCI Express Mini Card: a replacement for the Mini PCI form factor (with x1 PCIe, USB 2.0 and SMBus buses on the connector)
- ExpressCard: successor to the PC card form factor (with x1 PCIe and USB 2.0; hot-pluggable)
- PCI Express ExpressModule: a hot-pluggable modular form factor defined for servers and workstations
- Switched Mezzanine Card: similar to the Common Mezzanine Card/PCI mezzanine card form factor (with x4 PCIe or Serial RapidI/O)
- Advanced Telecommunications Computing Architecture: a complement to CompactPCI for larger applications; supports serial based backplane topologies
- Advanced Mezzanine Card: a complement to the Advanced Telecommunications Computing Architecture specification; supports processor and I/O modules on ATCA boards (x1,x2,x4 or x8 PCIe).
- PCI Express External Cabling{{cite web
| title = PCI Express External Cabling 1.0 Specification| accessdate = 2007-02-09| url = http://www.pcisig.com/specifications/pciexpress/pcie_cabling1.0/-->
- Mobile PCI Express Module (MXM) A laptop graphics module specification created by NVIDIA.
- Advanced eXpress I/O Module (AXIOM) graphics module design endorsed by ATI Technologies.
Competing protocols
Several communications standards have emerged based on high bandwidth serial architectures.These include but are not limited to HyperTransport,
InfiniBand,
RapidIO, and StarFabric.
Essentially the differences are based on the tradeoffs between flexibility and extensibility vs. latency and overhead.An example of such a tradeoff is adding complex header information to a transmitted packet to allow for complex routing (PCI Express is not capable of this).This additional overhead reduces the effective bandwidth of the interface and complicates bus discovery and initialization software.Also making the system hot-pluggable requires that software track network topology changes. Examples of buses suited for this purpose are InfiniBand and StarFabric.
Another example is making the packets shorter to decrease latency (as is required if a bus is to be operated as a memory interface). Smaller packets mean that the packet headers consume a higher percentage of the packet, thus decreasing the effective bandwidth. Examples of bus protocols designed for this purpose are RapidIO and HyperTransport.
PCI Express falls somewhere in the middle, targeted by design as a system interconnect (local bus) rather than a device interconnect or routed network protocol. Additionally, its design goal of software transparency constrains the protocol and raises its latency somewhat.
Status
As of 2007, PCI Express has largely replaced AGP as the most common interface for graphics cards. Almost all graphics cards being released today (2007) from
ATI Technologies and NVIDIA use PCI Express. NVIDIA uses the high bandwidth data transfer of PCIe for its newly developed Scalable Link Interface (SLI) technology, which allows two graphics cards of the same chipset and model number to be run at the same time, allowing increased performance. ATI has also developed a dual-GPU system based on PCIe called ATI CrossFire.
Uptake for other forms of PC expansion has been much slower and PCI remains dominant. PCI Express is commonly used for onboard
gigabit ethernet and wi-fi but add in cards are still generally PCI, particularly at the lower end of the market. Sound cards, modems, serial port cards and other cards with low speed interfaces are still nearly all PCI. For this reason most motherboards supporting PCI Express offer legacy PCI slots as well.
ExpressCard has been introduced on several mid- to high-range laptops. Unlike desktops, however, laptops frequently only have one expansion slot Replacing the
PC card slot with ExpressCard slot means a loss in compatibility with PC card devices.
External PCI Express
The name External PCI Express is not of yet (2007-09) an official name, but the most commonly used.
Specifications
2007-02 The first PCI Express External Cabling specifications was released by PCI-SIG February 2007."This specification helps the industry create new products that will take PCIe technology out of the box – enabling PCIe solutions for IO expansion drawers, external graphics processors, tethered mobile docking, communications equipment and embedded applications".
Standard cables and connectors have been defined for x1, x4, x8, and x16 link widths, with a transfer rate of 250 MB/s. The PCI-SIG also expects the norm will evolve to reach 500 MB/s (like internal links). The maximal length of cabling isn't known yet.
External PCIe Video Cards
Potentially this could give a notebook the graphic power of a desktop, by connecting a notebook with any PCIe desktop video card (enclosed in its own external housing).
2007-09 (as of), only one finalized product and two concept products exists. All three delivering the power of the video card to external displays only. And all connecting to a notebook through an ExpressCard interface which limits the bandwidth from an inserted x16 video card (4GB/s in each direction), to just x1 (250MB/s in each direction):
Magma ExpressBox Magma.
Luxium by MSI TheInquirer, CustomPcMag.
XG Station by Asus Asus, VR-Zone
PCI Express 2.0
PCI-SIG announced the availability of the PCI Express Base 2.0 specification on 15 January
2007.{{cite press release]| date = 2007-01-15--> — note that in this press release the term "aggregate bandwidth" refers to the sum of incoming and outgoing bandwidth; using this terminology the aggregate bandwidth of full duplex 100BASE-TX is 200 Mbit/s PCIe 2.0 doubles the bus standard's bandwidth from 2.5 Gbit/s to 5 Gbit/s, meaning a x32 connector can transfer data at up to 16 GB/s in each direction. PCIe 2.0 is still compatible with PCIe 1.1, so older cards will still be able to work in machines with this new version.
The PCI-SIG also said PCIe 2.0 also features improvements to the point-to-point data transfer protocol and its software architecture.{{cite news| author = Tony Smith| publisher = [The Register| accessdate = 2007-02-09| url = http://www.reghardware.co.uk/2006/10/11/pic-sig_posts_pcie_2_final_draft/-->
In June 2007 [Intel released the specification of the P35 chipset which does not support PCIe 2.0 only PCIe 1.1. Some people may be confused by the P35 block diagram{{cite news]| title = First look - Intel P35 chipset| date = 2007-05-21 has a PCIe x16 graphics link (8 GB/s) and 6 PCIe x1 links (500 MB/s each), for simple verification one can view the P965 block diagram which shows the same number of lanes and bandwidth but was released before PCIe 2.0 was finalised. Intel's first PCIe 2.0 capable chipset will be the [List of Intel chipsets#Core 2 Duo Chipsets and will be released in Q3 2007.{{cite news| author = Gary Key & Wesley Fink| publisher =
AnandTech| accessdate = 2007-05-21| url = http://www.anandtech.com/cpuchipsets/showdoc.aspx?i=2993--> AMD starts supporting PCIe 2.0 from its [RD700 chipset series. NVIDIA has revealed that the nForce 700 will be their first PCIe 2.0 equipped chipset.{{cite news| author = Anh Huynh| publisher = [AnandTech| accessdate = 2007-02-09| url = http://www.dailytech.com/article.aspx?newsid=6021-->
PCI Express 3.0
In August 2007 PCI-SIG announced that PCI Express 3.0 will carry a bit rate of 8 gigatransfers per second. The spec will be backwards-compatible with existing PCIe implementations and a final spec is due in 2009. New features for PCIe 3.0 specification include a number of optimizations for enhanced signaling and data integrity, including transmitter and receiver equalization, PLL improvements, clock data recovery, and channel enhancements for currently supported topologies.
Following a six-month technical analysis of the feasibility of scaling the PCIe interconnect bandwidth, PCI-SIG's analysis found out that 8 gigatransfers per second can be manufactured in mainstream silicon process technology, and can be deployed with existing low-cost materials and infrastructure, while maintaining full compatibility (with negligible impact) to the PCIe protocol stack.
PCIe 2.0 delivers 5GT/s but employed an 8b/10b encoding scheme which took 20 percent overhead on the overall raw bit rate. By removing the requirement for the 8b/10b encoding scheme, PCIe 3.0's 8GT/s bit rate effectively delivers double PCIe 2.0 bandwidth. The PCIe 3.0 specification will also introduce a number of optimizations for enhanced signaling and data integrity, including transmitter and receiver equalization, PLL improvements, clock data recovery and channel enhancements for currently supported topologies. The final PCIe 3.0 specifications, including form factor specification updates, may be available by late 2009, and could be seen in products starting in 2010 and beyond.
PCI-SIG expects the PCIe 3.0 specifications to undergo rigorous technical vetting and validation before being released to the industry. This process, which was followed in the development of prior generations of the PCIe Base and various form factor specifications, includes the corroboration of the final electrical parameters with data derived from test silicon and other simulations conducted by multiple members of the PCI-SIG.
See also
References
External links
- PCI-SIG, the industry organization that maintains and develops the various PCI standards
- How Stuff Works - PCI Express
- Publishers of CompactPCI and AdvancedTCA Systems Magazine
- How to identify a PCI Express vs an AGP video card
- PCI Express Specifications and White Papers (Membership required to download specifications)
- Creating a Third Generation I/O Interconnect (PDF)
- Intel Developer Network for PCI Express Architecture
- PCI Express: An Overview
- IBM Redbooks: Introduction to PCI Express
- PCI Express Resources for System Designers
- PCI Express Form-Factors
- Dell whitepaper - PCI Express Technology Compares PCIe, PCI, PCI-X.
- Implementing PCI Express HotPlug
- PCI Express is Everywhere (published in RTC magazine)
- The Final Frontier - PCIe on the backplane (published in CompactPCI magazine)
- New-generation backplane interconnects. PCIe vs Ethernet (Electronic Products magazine)
- Using PCIe in a variety of multiprocessor system configurations (Embedded Magazine)
- Using PCI Express in next generation battlefield applications (VME Critical magazine)
- New PCIe Bridge-Based Riser Cards Allow Connection to PCI-X Cards (Computer Technology Review)
- When to use an off the shelf PCIe device versus FPGA (Embedded Computing magazine)
- PCI Express 3.0 Bandwidth: 8.0 Gigatransfers/s (Extremetech.com)
- PCI express 1x-16x bus - pinouts with brief description
Intel® Developer Network for PCI Express* Architecture
Information about Intel® Developer Network for PCI Express* Architecture ... If your business develops solutions utilizing new and exciting innovations in technology, the PCI ...
PCI Express - Wikipedia, the free encyclopedia
PCI Express, officially abbreviated as PCI-E or PCIe, is a computer expansion card interface format introduced by Intel in 2004. PCI Express was designed to replace the general ...
PCI Express
Video: PCI Express This video illustrates the system and graphics performance gained with PCI Express graphics solutions, versus previous AGP solutions (2MB .wmv).
PCI Express push ATI sales up | The Register
Related Whitepapers. Gartner Paper: US Data Centers - The Calm Before the Storm How to handle future energy demands; Solution Brief: Reduce Energy Costs With Green IT Solutions ...
PCI Express
Video: PCI Express This video illustrates the system and graphics performance gained with PCI Express graphics solutions, versus previous AGP solutions (2MB .wmv).
Overclockers UK
Overclockers UK - Unit 40 Imex Business Park - Fenton - Stoke-on-Trent ... reduced in price for a one week period including - Abit IP35 Pro (Socket 775) PCI-Express DDR2 ...
PCI Express Subsite
ATI Technologies Inc. 2004
PCI-SIG - PCI Express
Standards development group. Offers details of technology specifications, document review and compliance testing, test software and checklists and press releases.
ATI PCI-Express from CCL - Awarded Best Online Retailer 2007 & 2006 ...
Find ATI PCI-Express or choose from a wide range of computer equipment from the PC Pro Online Retailer of the Year with cheap prices & next day delivery
nVidia PCI-Express Graphics Cards from CCL - Awarded Best Online ...
Find nVidia PCI-Express Graphics Cards or choose from a wide range of computer equipment from the PC Pro Online Retailer of the Year with cheap prices & next day delivery.