4 ms·
All of these carrier expansion boards are just using switches...The RPi CM4 just has one x1 PCIe lane exposed. If that's "hacky", yes, you need a big x86 ATX m
by LeifCarrotson 5y ago
All of these carrier expansion boards are just using switches...The RPi CM4 just has one x1 PCIe lane exposed. If that's "hacky", yes, you need a big x86 ATX motherboard with 24 or 20 lanes of PCIe.
You might find some boards using an ASMedia ASM1184e 1->4 PCIe mux. There are riser boards available that just have this one chip on them and let you plug in four PCIe SATA cards. Those cards often use something like a JMicron JMB585 chip to convert one PCIe lane into 5 SATA lanes. Boards like this embed, for example, chained Realtek RTL8367 Ethernet switches to offer more network ports.
It's true that when all your carrier board IO flows through a single PCIe 3.0 lane, you do end up with a bottleneck. You're going to be unable to saturate 10 SATA drives simultaneously. However, your data source is probably not /dev/random, it's more likely a single network client reading from a single SATA drive. Remember, this isn't a high-performance server, it's a low-power ARM SBC (now an MBC, once you stack a CM4 on a carrier under a PCIe switch with some PCIe-SATA cards...)
- bick_nyers 5y agoGotcha, I didn't realize that there was only a single PCie x1 available, that puts things into perspective.
- miniman1337 5y agoyou could take a look at some other SBCs like the upcoming rockpi5 with rockchip rk3588, apparently it's very fast and has lots of pcie to spare