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.


Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here: adafruit.com/editorialstandards

Join Adafruit on Mastodon

Adafruit is on Mastodon, join in! adafruit.com/mastodon

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

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

Join over 36,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


Maker Business — “Packaging” chips in the US

Wearables — Enclosures help fight body humidity in costumes

Electronics — Transformers: More than meets the eye!

Python for Microcontrollers — Python on Microcontrollers Newsletter: Silicon Labs introduces CircuitPython support, and more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

Adafruit IoT Monthly — Guardian Robot, Weather-wise Umbrella Stand, and more!

Microsoft MakeCode — MakeCode Thank You!

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

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — #NewProds 7/19/23 Feat. Adafruit Matrix Portal S3 CircuitPython Powered Internet Display!

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.