I'm reading PCIe specification, which mentions that the communication between the root/end points are through switches instead of buses as for PCI, and this structure improves throughput as the traffic doesn't have to share media with others. However, many pictures of th structure of PCIe switches show that the ports (upstream/downstream) are internally connected using buses. So, is this structure still a switch?

  • \$\begingroup\$ You turn the PCIe serial transmissions into parallel busses to lower the internal frequency and allow multiplexing several flows. For example, a 4x 5GHz PCIe link will occupy half the bandwidth of an internal 625MHz 64bits bus. \$\endgroup\$ – TEMLIB Nov 19 '16 at 18:43
  • \$\begingroup\$ So they are actually buses, but as fast as, or even faster than line speed switches, right? \$\endgroup\$ – fiedel Nov 19 '16 at 18:55

All PCIe connections are point-to-point. A PCIe switch has more than two ports, so its internal connections could be described as a bus.

However, this is not necessarily how it's actually implemented. When the switch receives, for example, a packet on its upstream port, it puts it into a buffer, and uses the destination in the packet header to determine on which downstream port to re-transmit the packet. This implies that all ports can be somehow connected to the same buffer, but not that there is an actual bus on which the packet is transmitted and to which all output ports listen.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.