# Fuzhou Rockchip

Rockchip ou Fuzhou Rockchip Electronics Co., Ltd (chinois simplifié : 福州瑞芯微电子有限公司, pinyin: fúzhōu ruìxīn wēi diànzǐ yǒuxiàn gōngsī) est une entreprise chinoise, basée à Fuzhou qui produit des semi-conducteurs informatiques.
Le 27 mai 2014, Rockchip a conclu un partenariat avec Intel pour concevoir des SoC basés sur le processeur x86 pour plateforme mobile, il s'agit de SoC 4 cœurs de la série Atom appelée SoFIA. Cela permettra à Intel de bénéficier du savoir-faire de Rockchip dans ce domaine, là où Intel a pris du retard par rapport aux nombreux concepteurs de puces basés sur l'architecture ARM.

## RK2602A et RK2608A

Elle produit notamment des processeurs basés sur l'architecture ARM, le RK2602A, intégré dans les lecteurs mp3/mp4, qui est un des premiers à avoir fait connaître largement cette société.

## RK2806 et RK2808

Le RK2808, d'architecture ARM926 à 600 MHz associé à un DSP à 550Mhz et le second produit phare de cette société, utilisé dans de nombreux MID et tablettes sous Android. Il est capable de décoder de la vidéo HD 720P; une variante, le RK 2806, semble parfois également utilisée. Ils sont destinés à baisser les prix des smartphones Android sous la barre des 70 € pour les clients finaux à la fin 2009.
Parmi les machines utilisant le RK 2808 on peut citer :
* Archos : Tablette Archos 7 home tablet ("v1").
* HiVision : Smarbook PWS 700 cA
* RAmos : Tablette RAmos W7
* Teclast : M66 et T58

## RK2818

Cette nouvelle génération supporte une RAM plus rapide, supporte une fréquence d'horloge de 1 GHz, et se voit ajouté un GPU comme troisième cœur. Ces nouvelles caractéristiques lui permettent de faire tourner Android/Linux de Google en version 2.1.
Ce SoC équipe par exemple :
* La tablette multimédia Android, Archos 7 Home Tablet V2.
* Le smartphone Android iZiNN CJ-3
* La tablette Android 7" TR718D (à 600 MHz)
* La tablette Android 7" Onda VX580R.
* IRobot RK2818
* W7001
* RAmos W9 et W11
* Teclast Tpad

## RK29xx

La nouvelle génération, RK29xx est une nouvelle série, conforme à l'architecture ARM Cortex-A8 avec le premier modèle RK2918, capable de décoder et encoder de la vidéo 1080p. Son GPU a une puissance de 60 millions de triangles par seconde. Elle fut présentée pour la première fois au salon CES de janvier 2011. Le benchmark Android Quadrant affiche de meilleures performances pour ce processeur que pour celui du Nexus One en 2.2.
Caractéristiques notables de cette gamme$^,$:
* Encodage/décodage 1080p en H.264.
* Premier encodage matériel du format WebM VP8 de Google, recommandé par le w3c pour le HTML5.
* Compatibilité OpenGL ES 2.0 et OpenVG, performances de 60 M triangles/s,
* Support RAM DDRIII, DDRII et mobile DDR.
* Support d'interface Ethernet
* Compatibilité Android 2.3
Une version à 1,2 GHz, devrait équiper la tablette Archos 10.1 home tablet, et/ou un modèle similaire estampillé Arnova, filiale d'Archos.

## RK30xx

La génération RK30xx est basée sur le Cortex A9 et le Mali 400MP. Le premier modèle, annoncé le 27 février 2012, avec disponibilité en mars 2012, au MWC de Barcelone est annoncé avec les caractéristiques suivantes :
* Processeurs ARM Cortex-A9 MPCore double cœurs jusqu'à 1,4 GHz (sera finalement commercialisé à 1,6 GHz avec le RK3066)
* Artisan Processor Optimization Pack (POP)
* GPUs Mali-400 MP 4 cœurs, compatibles OpenGL ES 1.1/2.0 et OpenVG 1.1, ainsi qu'un GPU spécialisé 2D
* Supporte les RAM au format DDRIII, DDRII, et LPDDRII
* Décodage vidéo 1080p multiformat et encodage 1080p en x264 et vp8 ainsi que le support du codec stéréoscopique 3D H.264 MVC.
* Support des sorties HDMI 1.4a et écran stéréoscopique et support de deux écrans.
* Support de deux caméras.
* rom bootable embarquée en 60bit/s ECC et supportant les type MLC NAND, E-MMC et i-NAND.

### RK3066

Le RK3066, présenté au Hong Kong Electronics Fair entre les 13 et le 16 avril 2012, est équipé d'un ARM Cortex-A9 MPCore double cœur à 1,6 GHz et d'un Mali-400 MP quatre cœurs, des extensions NEON et vfp. Il peut également supporter 2 Go de RAM DDR2,DDR3 et LVDDR3 à 800 MHz. Il est compatible Android 4 ICS et certaines versions de Gnu/Linux.
Il est présenté équipant des tablettes et téléphone. un PC-on-stick équipé de ce processeur est ensuite annoncé par une société tierce en août 2012 et est disponible chez certains revendeurs fin aout.
La distribution Picuntu est une version adaptée d'Ubuntu, tournant avec le bureau XFCE et qui permet d'exploiter le PC sur un bâtonnet MK808 Mini PC.
Son support a commencé à être accepté dans le tronc commun des sources de Linux le 21 juin 2013

## RK31xx

La gamme RK31xx est basée sur l'architecture ARM Cortex-A9 MPCore gravés en 28 nm et a commencé à sortir courant 2012, allant de simple à quadruple cœur selon les modèles.

### RK3188

Le RK3188 sorti en 2012 et disponible dans des produits depuis début 2013, est équipé d'un quadruple cœur Cortex A9 à 1,6 GHz et d'un GPU Mali-400 MP4 (Quatre cœurs à 600 MHz). Il équipe par exemple le pc-on-a-stick Tronsmart MK908 ou la Set-top Box Kaiboer F4. On peut faire fonctionner Android ou Ubuntu sur ce type de Soc. Pour cette raison, Cubietech, créateur de la Cubieboard sort en septembre 2013, la carte mère Radxa, basé sur ce SoC.

### RK3168

Le RK3168 sorti en 2013 est équipé d'un double cœur Cortex A9 à 1,2 GHz et d'un GPU PowerVR. Il est présenté équipant des lunettes au CES de janvier 2014.

## RKPower
### PX2

Le PX2, bien que basée sur un CPU double cœur Cortex-A9 et un GPU Mali-400MP4, elle est une gamme un peu différente de la série RK31xx, elle propose le support du réseau GNSS Compass (ou Beidou).
La société Chipspark a créé une carte de développement appelée Rayeager PX2 basée sur ce SoC, comportant 3 port USB et 1 OTG, le support Wifi, BT, SATA et Compass.

## RK32xx

La série RK32xx contient la première implémentation annoncée officiellement du processeur ARM Cortex-A12 MPCore, un Cortex-A de la même génération que les Cortex-A7 et Cortex-A15, avec une puissance et consommation intermédiaire entre ces deux derniers. D'après la première annonce de Rockchip en juillet 2012, il devait être disponible début 2014 avec un quadruple cœur, accompagné d'un GPU ARM Mali-T624.

### RK3288

Le premier modèle de cette série, le RK3288 est présenté au Consumer Electronic Show de Las Vegas en janvier 2014, il devrait être disponible pour 35 US$ au second trimestre 2014. Les spécifications données sont les suivantes, avec ce qui semblait être quelques erreurs dans l'annonce (Cortex A17 et non Cortex A12 qui était alors présenté par ARM, Mali-T764 MP, ces produits n'avaient pas encore été présentés par ARM, les spécifications ont finalement été confirmées, et ARM à finalement présenté ces nouveaux produits. Les spécifications du RK3288 sont donc bien les suivantes :
* Gravure en 28 nanomètres.
* CPU 4 cœurs Cortex-A17 à 1,8 GHz
* GPU 8 cœurs ARM Mali-T764 MP (support de OpenGL ES 1.1, à 3.1, d'OpenCL 1.1, de Renderscript et de Direct3D 11.1)
* Vidéo 4K (3840 × 2160), support des codecs H.264, VP8, MVC 3D, H.265.
* Support des réseaux de données 4G (LTE FDD, TDD et TD-LTE)
* Support des mémoires en double canal de type DDR3, DDR3L, LPDDR2, LPDDR3
Rockchip développe des pilotes libres pour ce SoC, intégrés au tronc du noyau Linux. Cela permet une meilleure intégration au sein d'Android, Google Chrome OS et GNU/Linux de cette puce. Un autre important succès de cette puce est l'Asus Tinker Board.

### RK3229

Le RK3229 est basé sur une architecture 32 bits très basse consommation plutôt orienté vers la vidéo ou les microserveurs basse consommation. Composé de quatre cœurs ARM Cortex A7 à 1,5 GHz et d'un GPU ARM Mali-400 MP2, il comporte néanmoins un processeur vidéo capable de décoder de la vidéo 4K2K 10-bit à 60 Hz au format H.265, du 4K 10-bit à 30 Hz au format H.264 et du 4K 8-bit à 30 Hz au format VP9. Il gère la mémoire de type DDR3-1866/LPDDR3-1333.
Il équipe notamment le PC-on-a-stick MK809V-4K ou les boîtiers vidéos MX4 TV Box, Zidoo X1 II Android Media Player, Sunchip CX-R9

## RK33xx, 64 bits

Les RK33xx sont les premiers processeurs 64 bits de Rockchip. Le premier modèle sorti, étant le Rockchip RK3368, présenté en 2015, orienté très basse consommation, composé de 8 ARM Cortex-A53, suivi en 2016 par RK3399, orienté puissance, comportant 2 Cortex A72 (orienté puissance de calcul), 4 Cortex-A53, et un GPU plus puissant. Les années suivantes, Rockchip décline différentes versions, davantage orientées vers certaines tâches.

### RK3308

En juillet 2018, Rockchip présente le RK3308, quad-cœur ARM Cortex-A35 jusqu'à 1,3 GHz, il gère des CODEC audio avec 8 ADC et 2 DAC. Il comporte une sortie vidéo mais n'a pas de processeur d'accélération 2D ou 3D. Il gère les mémoires de type DDR2, DDR3/DDR3L, LPDDR2. Il est présenté en juillet 2018.

### RK3326

En juillet 2018, Rockchip présente le RK3326, quad-cœur ARM Cortex-A35 avec 256KB cache L2 unifié, il gère les mémoires de type DDR3/DDR3L, DDR4, LPDDR2, LPDDR3, jusqu'à 4 Go. Au niveau des codecs vidéo, il décode MPEG-4, H.264, H.265/HEVC, VP8, VC-1 jusqu'à 1080p60, et peut encoder du H.264 jusqu'à 1920×1080@30FPS, ou 2x 720p@30fps. Il est présenté en juillet 2018 en même temps que le RK3308. Contrairement à celui-ci, il possède un GPU, un Mali-G31MP2 supportant DirectX, OpenCL, OpenGL ES et Vulkan$^,$.

### RK3328

Le janvier 2017, Rockchip présente le Rockchip RK3328, orienté très basse consommation. Il s'agit d'un Soc comportant 4 cœurs ARM Cortex-A53 (64-bits, très basse consommation) et d'un GPU Mali-450MP2. Son processeur vidéo permet d'afficher et de décoder des vidéos 4K. On retrouve ce SoC sur des SBC qui remportent un certain succès comme la Firefly RK3328 ou la Rock64.

#### RK3318

Le RK3318 est une version légère du RK3328, principalement utilisé dans des boîtier vidéos.

### RK3368

Le 9 janvier 2015, Rockchip présente au Consumer Electronics Show un kit de développement pour son premier SoC utilisant un processeur 64 bits RK3368. Ce Soc utilise huit cœurs ARM Cortex-A53 fonctionnant à 1,5 GHz. Cette carte de développement comporte un écran tactile et le système d'exploitation Android 5.0 Lolipop. En avril 2015, un autre carte est présentée, utilisée dans la X6 TV box, et basé sur ce SoC, ajoute qu'il contient un processeur graphique PowerVR G6110 supportant OpenGL ES 1.x/2.0/3.x, OpenGL 3.2, DirectX 9.3, OpenCL 1.2 EP et Renderscript. Il est supporté dans le tronc principal du noyau Linux, à partir de la version 4.3. Selon le webzine Liliputing, RK3368 est plus lent que le modèle RK3268 de l'année précédente.

### RK3399

Au Mobile World Congress de février 2016, Rockchip dévoile le RK3399, il s'agit d'un SoC à 6 cœurs, dont 2 Cortex-A72 à et 4 Cortex-A53, pouvant monter à une fréquence de 2 GHz, en architecture Big.LITTLE 64 bits, accompagné d'un GPU Mali-T860MP4. Le processeur vidéo supporte entre autres les formats H.265 et VP9, tous deux en 4K, ainsi que H.264 et VP8 en 1080p. La technologie PSR (Panel Self Refresh) permet de réduire la consommation de l'écran et les technologies MiPi et eDP sont également présentes. Parmi les connecteurs supportés, 2 ports USB 3.0 de type-C, 4 port PCIe 2.1 à 5 Gbit/s chacun, et 8 canaux audio TX/RX pour la lecture et l'enregistrement$^,$.
En octobre 2016, plusieurs produits équipés de ce Soc sont présentés à Hong Kong. Les netbook iFive 2-in-1, Techvision 2-in-1 et Samsung Chromebook Pro OP1, FenMi TV box, Ugoos UT5 TV box et PiPo V5 Android VR Headset. Les cartes de développement (ou SBC) Firefly-RK3399, Rock Pi 4 (utilisé par Collabora pour tester le pilote Panfrost) et Pine64 RockPro 64.

### RK3399pro

Le RK3399pro est une version améliorée du RK3399, comportant notamment une unité de réseau de neurones artificiels (AI) de 2.4 TOPS; il a été présenté au CES 2018.

### RK3228H

Successeur du RK3229, cette évolution, nommée RK3228H est basée sur quatre processeurs 64 bits ARM Cortex-A53, supporte le USB 3 et la vidéo 4K à 60 Hz, ainsi que le codec H.265.

## RK35xx
### RK356x

Cette série basée sur des Cortex-A55 ajoute notamment un processeur vidéo VOP2 (anglais : Visual Output Processor 2)$^,$.

#### RK3566

Présenté pour la première fois sous le numéro de modèle RK3530, il devait comporter 5 cœurs Cortex-A55 avec un GPU Mali-G52, vidéo 4K, USB 3.0, SATA et ethernet Gb. Il était prévu qu'il sorte au 3e trimestre 2019$^,$.
En février 2020, il est finalement annoncé sous le numéro de modèle RK3566, avec uniquement 4 cœurs Cortex-A55.
Les premiers appareils sortent début 2021, comme le Quartz64 de Pine64.

#### RK3568

Proche du RK3566, il comporte également un processeur quatre cœurs Cortex-A55, et un GPU Mali-G52 MP2.
Il est utilisée dans des routeurs-switchs se basant sur les fonctionnalités de routage de Linux, comme la FriendlyELEC NanoPi R5S ou la Banana Pi BPI-R2 Pro comportant 5 ports.

### RK3588

Annoncés fin avril 2019, le RK3588, utilisant un process 8 nm, comporte 8 cœurs en configuration DynamiqIQ 4 + 4, avec 4 cœurs Cortex-A76 à 2,4/2,6 GHz et 4 Cortex-A55 à 1,8 GHz. il comporte également un NPU 2.0, supporte le décodage vidéo 8K, 60 FPS suivant les codecs AVS3, H.266 (VVC) et AV1$^,$. Il est confirmé en décembre 2021 et devrait être disponible, ainsi que des cartes SBC par Pine64 et Radxa, le comportant pour début 2022. Il est présenté comme comportant un GPU ARM Mali G610MP4 de la série Odin, supporte jusqu'à 32 Go de RAM LPDDR4/4x ou 5, un bus PCIe 3.0, ainsi que SATA 3.0 (multiplexé en PCIe 2.0). Deux ports HDMI 2.1, DisplayPort et MiPi peuvent êter utilisés. La carte ROCK5 Model B supporte de 4 à 16 Go de RAM, 2 ports HDMI en sortie et 1 en entrée. Les annonces de cartes utilisant ce processeur s'enchaînent, Radxa ROCK5 Model B, Banana Pi (dans sa catégorie BPI-R2 Pro) composé d'une carte fille SO-DIMM Banana Pi RK3588 CV1 et d'une carte mère$^,$, Firefly ITX3588J, Mixtile Blade 3, Mekotronics R58X et version économique R58, Pine64 Quartz Pro 64.
En janvier 2021, Rockchip annonce la variante RK3588s, une version allégée davantage orientée vers l'embarqué. Un bus CAN est ajouté, mais le bus PCIe 3.0 et d'autres périphériques ne sont pas supportés dans cette version. La carte Firefly ROC-RK3588S-PC, pouvant supporter jusqu'à 32 Go de RAM, est la première à l'utiliser.
Un premier lot de patch noyaux pour son support sont proposé à la communauté Linux le 4 mai 2022.
Une variante RK3588M est à destination des automatismes et de l'automobile. Elle supporte l'entrée de 16 caméras. Il est adapté aux fonctionnement de deux systèmes d'exploitations différents, un pour les tâches critiques tel que le contrôle automobile, et un autre orienté vers les « infoternment », compléments intégrés à l'habitacle pour les passagers

## RK1808 NPU

Le RK1808 est un processeur de réseaux-neuronaux (NPU) de Rockchip capable d'effectuer 2,4 TOPS dans le domaine de l'intelligence artificielle. Il est prévu pour travailler avec le RK3399Pro, mais également avec un processeur comportant deux Cortex-A35, d'après la description du noyau Linux 4.4 fourni avec le RK3399Pro. Sa connexion au RK3399 se fait via une interface USB3.0.

## RK63xx, embarqué

Le SoC RK6321 possède deux processeurs ARM Cortex-A5, il est orienté vers le domaine des montres intelligentes.

## RV11xx - RISC-V

Les processeurs RV11xx sont des SoC utilisant à la fois un MCU d'architecture RISC-V et des cœurs d'architecture ARM.
Les deux premiers modèles sorti fin 2020 sont les MCU RV1109 (comportant 2 cœurs Cortex-A7) et RV1126 (comportant 4 cœurs Cortex-A7). Ils sont orientés caméras intelligentes et incluent des NPU pour l'analyse des images et des VPU pour encodage et décodage des vidéos. La caméra Firefly dual-lens AI camera embarque ce type de SoC.

## Microcontrôleurs
### RKnanoC

Le RKnanoC est un microcontrôleur utilisant un cœur ARM Cortex-M3 à 100 MHz.

### RKnanoD

Le RKnanoD est un microcontrôleur double cœur ARM Cortex-M3 dont le cœur système peut monter à 250 MHz et le cœur de calcul jusqu'à 500 MHz.

## Pilotes libres
### Communauté Linux-Rockchip

Les SoC Rockchip sont conçus pour des systèmes fonctionnant avec le noyau Linux (Google Android et Chromium OS (version libre de Chrome OS), Rockchip a donc développé des pilotes pour le noyau Linux. Cependant il y a quelques années, Rockchip ne proposait pas de pilotes ouvert. La communauté du logiciel libre, a donc voulu libérer l'ensemble du logiciel et certains pilotes qui n'étaient alors proposés par Rockchip que sous forme de binaires. La communauté Linux-Rockchip s'organise donc autour de la compréhension des spécifications de ces matériels, indépendamment des NDA de la société et travaille à l'utilisation de ces puces dans un environnement Linux libre complet et indépendant des systèmes de Google.

### Investissement de Rockchip dans la communauté du logiciel libre

La société Rockchip s'est investie davantage dans la communauté du libre depuis, et travaille avec les développeurs du noyau Linux, pour mettre l'ensemble des pilotes de ses processeurs en open source$^,$. La société travaille également depuis 2014 avec Google, pour l'intégration de ses pilotes libres Linux avec ChromiumOS et ChromeOS, ce qui a permis de produire plusieurs appareils sous Chrome, comme la série surnommée Veyron basée sur une base de carte mère nommée Veyron Pinky utilisant le RK3288$^,$$^,$.
Le processeur graphique 2D RGA2 de Rockchip utilisé dans le RK3288, ainsi que dans le 3399 est une unité graphique dédiée, permettant de faire des opérations de composition, de blit, remplissage (aplat, dégradés, gradiant, motifs), des rotations 2D avec anti-crénelage. Il possède des pilotes DRM libres, inclus dans le noyau Linux, par contre, le pilote 3D du GPU Mali d'ARM reste cependant fermé, distribués sous forme de bibliothèque partagées (.so) binaires. ARM ne veut pas ouvrir les bibliothèques d'accès à leur GPU jusqu'à septembre 2020. les pilotes Lima et Panfrost, développés par ingénierie inverse viennent compenser cette fermeture, et ajoutent également le support d'OpenGL (version de bureau), là où le pilote d'ARM se limitait à OpenGL ES (version pour l'embarqué). Fin juillet 2020, la majorité (20/27) des fonctionnalités spécifiques d'OpenGL 3.0 sont supportés par le pilote Panfrost.
En juillet 2016, Rockchip ouvre un dépôt de sources officiel Github, comprenant l'ensemble de ses pilotes ouverts (glamor, VA (Pilotes), VDPAU, V4L, ffmpeg, Coreboot, uboot…) ainsi que des binaires à jour pour les pilotes des différents GPU Mali (séries Utgard et midgard) utilisés par la marque et la gestion du VPU.