Ben Pope said:
Why is PCIe not a replacement for PCI?
What can PCI do that PCIe can't?
PCIe is a serial protocol striped over multiple channels ('lanes' in PCIe
terminology). It has the advantages of easier board design, theoretical
high speed, but at the cost of overhead (a 1x PCIe card is in theory
transmitting 256 Mb/s, but only 160 Mb/s is usable for data, as the rest is
overhead), being unidirectional (send full speed one way, and nothing can
pass the other way) and high latency.
PCI (and PCI-X) is a semi-parallel system where each device can request
blocks of memory mapped to itself, and anything sent over the PCI bus to
that address space will be routed to the correct device. It allows for DMA,
where devices map to the memory directly, and also allows for one device in
the pool taking advantage of unused bandwidth, and other devices breaking in
as needed. The main disadvantages are lower total bandwidth (as it's
shared), and a more complex card design.
If comparing typical motherboards, keep in mind that PCIe 1x which is what
you find for everything except the graphics card is slower than even normal
PCI, and a step backwards. It's not suitable for adding a RAID controller,
for example, nor any other card that requires low latency or high bandwidth.
PCIe 8x and 16x has the bandwidth, but is generally not available (you need
one PCIe bus for each 16x).
Intel's dream seems to be to simplify things for the consumer, who should be
content with the drive controllers and sound facilities of the motherboard,
and stop adding stuff him/herself. It also splits the market in two (which
is also in Intel's interest), where server boards simply can't work with the
limitations of PCIe, and go PCI-X instead. That creates two different
market segments, and the prices on "server" boards can be kept artificially
high, while the PCIe boards can be sold at the same price as before, despite
being much cheaper to make.
What's the benefit for the consumer with PCIe? None, as of now. A 16x PCIe
card is theoretically faster than a 8xAGP, but due to protocol overhead and
higher latency, not noticably so.
The only thing I can think of is that you can get nVidia SLI with PCIe, but
that's not really a feature of PCIe, but simply that nVidia chose to do that
for PCIe only, as being the future standard as dictated by the tyrant. It
could just as easily be done with two AGP cards. For other cards, it's a
step back for the consumer, as PCIe 1x isn't good for much.
Regards,