Sorry, I misspelled that nick, I already edited that for others to easily find right person.
News about the ROCK 5B Plus! ;)
Rock 5B+ is not yet released, devs got their samples, and of course it may be changed (like 5B was completely redesigned, all elements moved). For details ask @jack
I suggested that some may need full 4x 3.0 pcie lane and it would be great to do some switching mechanism, maybe even very simple, jumper based. Probably most users will be interested in just single nvme and most of them are using all lanes at full speed. For NAS and 10G obviously two m.2 are better.
This is indeed a problem.
But still You can try to replace those with more power efficient nvme drives like SK Hynix P31 Gold. Maybe this will help in this case, for sure there are few nvme rated as move power hungry than others.
Iām testing now several pro MLC ssd, when I disassembled one I found out that they have many chips, controller with big heatsink, takes whole 2.5 case. Simple consumer ssd was way smaller, has only two memory chips and much smaller controllers. Probably they will need different power.
Of course 5B+ may be better at providing more power to those m.2 slots and radxa may be prepared for two nvme use case. There is also chance to modify Seni board for power connector for at least one of m.2, this is not that hard, all that needs to be done is to lift m.2 connector legs for power and gnd. Still trying to use power efficient nvme should be easier
I agree that more flexibility to user would be favourable!
But I doubt if there would be technical issues for getting the pcie signal jumped (the signal length may need to be paired for example.) or a PCIe switch chip would be required?
For the add-on board I think having additional power input would great!
The nvme draw different power during read/write/idle.
In my previous test case, the disk / rock5b itself would drop out if I try to write them simultaneously, One case is for a twin-nvme RAID-1 arrangement as NAS, another is for copying data from one nvme to another nvme. The Rock 5B+ can ride through this.
RAM benchmark added.
Active pcie switch is needed when You need to get different upstream/downstream lines count also being able tu fully saturate upstream lines bandwidth, examples:
https://www.asmedia.com.tw/products-list/aDcYq0BxZfuH9Nz5/7c5YQ79xz8urEGr1
For bifurcation itās as easy as switching electric signal for few lines so they end up in 1st or 2nd slot. Itās cheap solution without any active elements, even dip/sip switch should be ok and should not destroy differential pair setup. Of course we already saw several things switched from one socket to another with modern microcontrollers. For final effect probably dtb will do the job and will not increase price that much.
Good active 3.0 switch cost significantly more, probably around $100. Pi5 pcie2 switch boards are priced about $40-60. Ok for additional board, but not for sbc itself. On the other hand - on my photo there are two 6x sata cards. both with 2x pcie 3.0 upstream. This will not run better on pcie switch than with cheap bifurcation.
m.2 to pcie card has additional 12V input (needed for this port):
so probably full pcie cards will get most of power from it and something like this (on ASM2812) should work:
https://kayfreesm.pics/product_details/43032896.html
(first google link)
same thing should be possible with this card and may be needed for two nvme. Have You tried to plug in dummy 12V to usb-c? Maybe the problem is with pd negotiation?
Itās not my use case, I donāt see a point to use two nvme with half of their speeds instead of one 2 times bigger and also 2 times faster For NAS You also need to take care about network speed, with all pcie 3.0 gone You will not be able to push anything from/to such NAS even with extra 2.5G link on top E slot. So nvme + 10Gbit is some solution. For larger capacities still sata is way cheaper.
So itās interesting idea to test power dependency of such setup, but nothing to run for longer time. On the other hand there are some people that connect 4x nvme via one pcie 2.0 lane to pi5 using 1/8 of each drive
Does the presence of a SIM card slot imply weāll be able to have 4G/5G if we install a proper cellular modem? Iām extremely interested in that functionality because, well, drones and stuff :>
I just found out about the rtl8126 and itās now generally available and cheap. I think it would be really great if Rock 5B Plus could have the 5GbE Nic instead of the 2.5GbE for future proofing and being the first
rtl8126 recommends PCIe 3.0x1 while rk3588 only has 2.0x1 (except 3.0x4 for NVMe). This can result in compromised peak performance.
Doesnāt it have 3 times 2.1x1 (which works in 3.0 speed mode) and then the dedicated 3.0x4?
Is there any difference in speed between 2.1 and 2.0?
On RK3568 at least the 2.1 port supports 3.0 mode/speeds without an issue. Afaik Rockchip saying 2.1 means nothing official except PCIe 3.0 port than can also be overlayed to passively use other protocols like SATA and whatever else SoC supports.
Edit:
- Source for RK3568 2.1 in 3.0 mode: https://github.com/torvalds/linux/blob/ea5f6ad9ad9645733b72ab53a98e719b460d36a6/arch/arm64/boot/dts/rockchip/rk3568.dtsi#L89
https://docs.radxa.com/img/rock5b/rock-5b-block-digram.webp
emā¦ since both of the board use RK3588, so yes, it is safe to say the board would have 3 x PCIe 2.1 lanes.
However, these PCIe 2.1 could be multiplexed, which is the case for Rock 5B
1 x PCIe 2.1 -> 2.5Gbps Ethernet
1 x PCIe 2.1 -> USB 3.0 port
1 x PCIe 2.1 -> E-key slot for add-on cards
From the dts, it seems Rock 5B-plus would continue this arrangement.
With the bandwidth of PCIe 2.1 at 5GT/s, it might be the bottleneck when using 5Gb/s ethernet.
By the way, is that 5Gb/s switch or router common nowadays?
If rtl8126 also supports the non-standard pcie 2.1x1@5Gbps mode, then 3.0x1 is not necessary for full performance.
I canāt find any datasheet for RTL8126 but RTL8125 (2.5GbE) has been advertised with 2.1x1 while RTL8126 is being advertised as 3.0x1. I would assume though itās because of overhead and in reality it probably can use 2.1 mode as itās little brother can do too.
We need someone to test the 20$ nic from aliexpress adapted to the 2.1 port on Rock5B to know for sure
No since that doesnāt exist
2.0, 2.1 or 3.0 are protocol revisions, the speed āclassesā are called Gen1, Gen2, Gen3 and so on.
A PCIe 3.0 capable controller supports Gen3, Gen2, Gen1 (since they need to be backwards compatible and thereās always PCIe link training involved and if the highest speed canāt be negotiated an automatic fallback to lower speeds is in effect).
RK3588 contains five PCIe 3.0 controllers with 7 lanes in total. Though 3 of these 7 lanes are routed to Combo Pipe PHYs and as such are
a) multiplexed with other protocols like USB3 and SATA
b) limited to Gen2 speeds when in PCIe mode
There is neither a āPCIe 2.1 speedā nor a ā5Gbps modeā. With PCIe thereās always coding in place and with Gen1 and Gen2 thatās the inefficient 8b10b coding āwastingā 2 signals for every 10 signals transmitted. So at Gen2 speed at 5 GT/s (gigatransfers per second) you end up with 0.5 GB/s. Starting with Gen3 the more efficient 128b/130b coding is in place and while Gen3 āonlyā provides 8 GT/s this ends up with 0.985 GB/s (almost twice as fast as Gen2).
Just check the comparison table here: https://en.wikipedia.org/wiki/PCI_Express
An RTL8126 connected to any of RK3588ās Combo Pipe PHYs will always end up with Gen2 speeds as such impossible to saturate 5GbE Ethernet connections since the PCIe link will be the bottleneck.
Then the 5Gbps recorded on the RK3588 and 3568 datasheet is very confusing. What they probably want to express is 5GT/s.
In this way, I can say for sure, it would connect and work at PCIe 2.1 (or Gen 2 as mentioned by Tkaiser )
These devices should be downward compatible so when you run a Gen3 device on a Gen2 host, the link training should stop up to Gen2 and run with limited bandwidth.
Iāve tried that in rk3399, connecting Gen2 device to Gen1 host.
yes, i think thatās typo and shall read as 5GT/s
Nope, thatās no source for what you claim.
RK3568 provides two Gen3 lanes (one of them referenced by you wrongly as ā2.1 in 3.0 modeā) and one Gen2 lane multiplexed with other protocols. The Gen2 lane / the PCIe 2.1 controller is already defined in rk356x.dtsi which is included in rk3568.dtsi.