PCIe / PCI Express: extenders and expanders

Continuing the series of blog posts on PCIe / PCI Express, this post looks at extenders and expanders. Note: Adafruit does not endorse any of the products in this post, links are for documenting sources. 

Extenders

Sometimes one needs to extend a PCIe slot for testing, case configurations, etc. There are several variations on extensions on the market. Common is a x1 plug to a x1 socket connector. There appear to be passive implementations (“riser cards/cables) and more active products. It is interesting that USB cabling is sometimes used instead of a ribbon cable but the protocol is NOT USB. These come in x1 to x1, x4 to x4, x8 to x8 and x16 to x16.

From Amazon.com https://www.amazon.com/Pieces-Express-Extension-Gold-Plated-Connector/dp/B09K7Q8HDB/

 

From Amazon.com https://www.amazon.com/MZHOU-Interface-Extension-Motherboard-Device/dp/B09C1D4H74

There have been some extenders that passively (without additional electronics) adapt a plug (say x1) to a socket (larger than x1, like x16). If a card connected to the x16 socket can handle x1 signaling (one lane) this might work but perhaps an expander (below) might be better, especially as this has no provision for the extra power a larger card might need.

From Newegg.com https://www.newegg.com/sedna-model-se-pcie-1x-16x/p/17Z-0001-00066?item=9SIB1X1FEB4996

Expanders

A PCIe connection with only one lane (x1) can be used by some devices capable of using more lanes (say a x16 graphics card). It can also be multiplexed to share the lane with multiple devices. As discussed in the post on bandwidth, one cannot “pump more data” through the link than it was designed for. If an expander places more devices on the PCIe bus, it would be hoped that the expansion hardware and the operating system cooperated to intelligently use the limited bus resources. This is more “your mileage may vary (YMMV)” or “this is the wild west” than tried and true computer practice so if you are having issues, chalk it up to incompatibilities and not the fault of the computer manufacturer, as it may be that the user trying to bolt on a rocket engine to a car.

From Newegg.com https://www.newegg.com/p/17Z-00FJ-00024?Item=9SIACJFE0W3365

Here is a simple example of an expander, providing three PCIe x1 slots from one x1 PCIe plug. These have become more common with cryptocurrency mining but have uses with things like multiple solid state storage card attachment, etc.

From Newegg https://www.newegg.com/p/17Z-010M-000A1?Item=9SIAYT8FJX6275

This example provides for a x1 to x16 slot expansion. Extra power for larger cards is accommodated for. Again the “USB cable” is NOT USB but an interconnect cable.

And it’s all about Bandwidth! Do not expect a RAID5 array over a x1 expander to perform like on a dedicated x16 link in a desktop PC or NAS, it won’t.

There are more complex expanders. Some are marketed to help act as an extension chassis to a computer. SOme say “cryptominers only”.

The common sense advice is to do your research and see if hardware someone offers is compatible and sufficient for your application and that there is software support in the operating system. Buying from established companies with defined return policies can help with experimentation. Buying something shiny direct from AliExpress, the buyer is in the Fringe Zone.


Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7:30pm ET! To join, head over to YouTube and check out the show’s live chat and our Discord!

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Join over 38,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

CircuitPython – The easiest way to program microcontrollers – CircuitPython.org


New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — New Products 11/15/2024 Featuring Adafruit bq25185 USB / DC / Solar Charger with 3.3V Buck Board! (Video)

Python for Microcontrollers – Adafruit Daily — Python on Microcontrollers Newsletter: A New Arduino MicroPython Package Manager, How-Tos and Much More! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

EYE on NPI – Adafruit Daily — EYE on NPI Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

Adafruit IoT Monthly — The 2024 Recap Issue!

Maker Business – Adafruit Daily — Apple to build another chip at TSMC Arizona

Electronics – Adafruit Daily — SMT Tip – Stop moving around!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !


No Comments

No comments yet.

Sorry, the comment form is closed at this time.