First announced in January 2018, Rockchip RK3399Pro was supposed to be a pin-to-pin compatible with Rockchip RK3399 processor, and adding a Neural-Network Processing Unit (NPU) capable of delivering 2.4 TOPS for acceleration A.I. workloads.
Shortly after Pine64 announced they’d be offering Rockpro64-AI board in August, and later on Vamrs unveils ROCK960 PRO at a Linaro Connect event with an expected Q2 2018 launch. But none of the RK3399Pro boards are available, as there have been delays with RK3399Pro, and some commented an external NPU would be launched first with further details.
But today – courtesy of Vamrs – we have some more details about RK3399Pro features, a likely explanation for the delay, and some information about Rockchip RK1808 NPU chip.
Contrary to the CES 2018 announcement, Rockchip RK3399Pro will come in a 27x27mm FCBGA1372 package instead of the 22x22mm FCBGA828 package for RK3399. So pin-to-pin compatibility is out of the windows, and boards will have to be designed specifically for RK3399Pro processors. Varms explains the NPU needs at least 512MB of dedicated RAM , and Rockchip may have first plans to pack a 512MB RAM using PoP technology, but due to overall (BoM) cost issues, they went with an external RAM interface instead. That change of direction would have required a redesign explaining the delay in getting the chip to market.
Beside the extra NPU chip, Rockchip RK3399Pro does away with one USB type C interface, and USB OTG1 interface.
Rockchip expects the processor to be found into two main types of products: headless AI Edge gateways, or AI Edge devices with one or more displays. As I understand it, NDDR stands for NPU DDR, so RAM for the CPU and NPU is not shared, and that means RK3399Pro boards will be fairly larger. According to Vamrs it will not be possible to make a 96Boards CE compliant board, and instead they may have to use larger 96Boards CE Extended or 96Boards EE boards.
You’ll find the Linux 4.4 kernel code for RK3399Pro in Github, and interestingly there’s also another processor in the source: Rockchip RK1808 with two Arm Cortex A35 cores and an NPU as described in the device tree file.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
cpus { #address-cells = <2>; #size-cells = <0>; cpu0: cpu@0 { device_type = "cpu"; compatible = "arm,cortex-a35", "arm,armv8"; reg = <0x0 0x0>; clocks = <&cru ARMCLK>; }; cpu1: cpu@1 { device_type = "cpu"; compatible = "arm,cortex-a35", "arm,armv8"; reg = <0x0 0x1>; clocks = <&cru ARMCLK>; }; }; ... npu: npu@ffbc0000 { compatible = "rockchip,npu"; reg = <0x0 0xffbc0000 0x0 0x1000>; clocks = <&cru SCLK_NPU>, <&cru HCLK_NPU>; clock-names = "sclk_npu", "hclk_npu"; interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; status = "disabled"; }; |
That’s interesting… So RK1808 should be the external NPU chip we’ve read about before… Further analysis of the dtsi file shows USB3, GMAC, and MIPI CSI/DSI/RGB interfaces, as well as 8x UART and 12-channel PWM which made Varms suspects the chip also targets industrial control and robotics markets.
There’s also a file called rk3399pro-npu.dtsi with the exact same CPU (2x Cortex A35) and NPU definitions, so it’s likely RK3399Pro SoC is just the original RK3399 processor connected to Rockchip RK1808 chip over a USB 3.0 interface.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
> RK3399Pro SoC is just the original RK3399 processor connected to Rockchip RK1808 chip over a USB 3.0 interface. Funny how it’s now so much more expensive to write the software drivers than to design and deliver whole new boards. I wouldn’t have imagined we’d get to the point where companies would decide on reversing an age long naming convention and retain chip model numbers even when packages change since it’s more important to them that people know the software stack is the same. I guess it’s good news for Fuchsia OS: If they can bring down software development back… Read more »
The ‘pro’ went from a ‘sure, why not’ to a dubious proposition — a different (from 3399) pinout & a separate RAM bus — who thought that was a good ‘3399 replacement’?
Agreed. If they only bind them together with USB, there’s no reason to ruin the die footprint like this. Or does someone really want to keep the package count down? I’m pretty sure that it’s harder to layout a larger chip with two separate memory busses than it is to layout two separate, smaller chips with smaller memory interfaces. And which can be spaced wherever on the board is convenient as all they need to link them is a few differential pairs.
Cooling is easier, too….
Kernel 4.4 will get support until the beginning of 2022.
Hopefully also backported drivers.
If you use this chip as AI Edge gateway, maybe in home or industrial automation, you’ll most likely want it to run longer than 2022.
In most cases, the OS for such boards comes as a complete image, and doesn’t allow an easy upgrade of the kernel.
So be prepared to either exchange the OS image or the complete device after 2022.
Unless there will be an active developer community, that backports patches even after the deadline.
Rockchip have worked with SUSE to make SUSE Linux Enterprise Server (SLES) available for RK3399 for exactly such industrial markets. Its lifetime across Service Packs is currently 10 years plus potentially 3 years of Long-Term Service Support (LTSS), and it easily gets tenthousands of kernel backports per Service Pack. Since SLES involves commercial support subscriptions, you don’t usually see it pre-installed on your average development boards in non-production environments though, but you can download it for free evaluation. EBBR compliance of boards will hopefully make such OS evaluation and deployment easier going forward. TL;DR: If an OEM wanted long-term Linux… Read more »
If it is a USB connected AI device, is like the “Intel Movidius Neural Compute Stick”?
From a DIY point of view, wiill a RK3399Pro dev kit stack up against an Edge TPU dev kit? Cost? Dual cameras? Video encoding? Software support? Maybe it will be cheaper just to get a google USB TPU with a RK3399. Or maybe just spin a RK3399Pro on a module for the Edge dev kit?
There are some RK3399 boards that have dual MIPI camera support, such as the OrangePi RK3399 or the FriendlyARM NanoPC T4. I’m hoping that there will be some RK3399Pro then also with dual camera support, but we’ll still have to wait a few months to know, it seems. Only one board announced as far as I see it, the Khadas board.
For the Edge TPU, it looks interesting but when will it be out? The site hasn’t been updated for some time.
Apparently an RK3399Pro+ (RK3399Pro Plus) SoC is in the works with more AI stuff, but I could not find details anywhere yet.