Aller au contenu

1NSI / TNSI : Soc - System On Chip - Système sur Puce⚓︎

Contenus Capacités Attendues Commentaires
Composants intégrés d’un Système
sur Puce (SoC).
Identifier les principaux
composants sur un schéma de
circuit et les avantages de leur
intégration en termes de vitesse et
de consommation
Le circuit d’un téléphone peut
être pris comme un exemple :
microprocesseurs, mémoires
locales, interfaces radio et
filaires, gestion d’énergie,
contrôleurs vidéo,
accélérateur graphique,
réseaux sur puce, etc.

Introduction⚓︎

  • Dans les cartes mères modernes, en particulier celle des ordinateurs portables, l'intégration est beaucoup plus poussée.
  • Dans les dispositifs nomades comme les téléphones portables (Smartphones), Tablettes ou nano ordinateurs (par ex. Raspberry Pi ou l'Arduino), cette intégration passe encore à un niveau supérieur.

Repères Historiques⚓︎

SoC - System on Chip / Système sur Puce⚓︎

Définition⚓︎

Soc - System on Chip

Un SoC - System on Chip 🇬🇧 / Système sur Puce 🇫🇷 est un circuit intégré qui accueille sur une même puce, dans une taille très réduite, de très nombreux circuits, parmi lequels :

  • un microprocesseur CPU - Central Processing Unit
  • de la mémoire vive RAM - Random Access Memory :
    • La mémoire LPDDR - Low Power Double Data Rate (Vitesse de données double à faible consommation) / LPDDR SDRAM / DDR Mobile / mDDR
  • de la mémoire statique ROM - Read Only Memory, Flash, EPROM,.. :
    • l'UFS- Universal Flash Storage qui est un standard de mémoire Flash ...
  • un circuit/chipset Graphique GPU - Graphical Processing Unit
  • un circuit/chipset Neuronal NPU - Neural Processing Unit : pour l'accélération des algorithmes de Machine Learning :
    • Traduction Automatique
    • Reconnaissance Faciale
    • Diagnostics Médicaux
    • Détection de Fraudes
    • Voitures Autonomes
    • Prédiction de Traffic,
    • Recommendation de Produits, etc..
  • une puce d'Image ou ISP - Image Signal Processor pour la Photo : une puce prenant en charge la création d’images numériques. Dans la réalité et de par leurs tailles minuscules, les capteurs photo de nos smartphones sont mauvais. La qualité qu’il est actuellement possible d’obtenir est intimement liée à cette puce. En effet, c’est grâce à elle que votre smartphone va traiter la prise et la création de votre photo.
  • une puce DSP - Digital Signal Processing pour le Multimedia : c'est une puce pour le traitement du signal numérique, par exemple:
    • Traitement Audio
    • Traitement Vidéo
    • (quelques) Traitements de l'Affichage
  • un modem
  • des puces de Connectivité :
    • Wifi
    • Bluetooth
    • 2G/3G/4G
    • Radio FM
    • LoRa1 🇫🇷 \(\geq 2009\) (échange de paquets pour objets connectés)
    • etc..
  • une puce de Sécurité SPU - Secure Processing Unit : le bouclier de votre smartphone. Son alimentation électrique est indépendante afin de ne pas pouvoir être éteint en cas d’attaque sur celui-ci. Le SPU est d’une importance capitale, celui-ci va stocker vos données biométriques, bancaires, votre SIM ou encore vos titres de transport. C’est lui qui contient les clés de chiffrement de vos données.)
  • etc..

Die Shot Exynos 9820, Samsung S10

Die Shot Exynos 9820, Samsung S10 ChipRebel.com

Utilisations des SoC⚓︎

Cette miniaturisation est idéale pour des dispositifs mobiles comme :

  • les Smartphones (téléphones portables),
  • les Tablettes,
  • les Nano-ordinateurs : Raspberry Pi, Arduino, etc..
  • les Consoles de Jeu : Nintendo Switch (Nvidia Tigra X1), PS5 (AMD),..
  • les Objets Connectés / IoT - Internet of Objects,
  • les Systèmes Embarqués / eMbedded Systems, au sens large
  • à noter aussi que de grands constructeurs comme Apple, veulent aussi en équiper toute leur gamme d'ordinateurs.

Comment est-ce possible ?⚓︎

Une première question que l'on peut se poser est: Comment est-ce possible de pouvoir placer autant de fonctionnalités sur si peu de place? (en particulier, pourquoi ne fait-on pas la même chose pour les ordinateurs classiques?)

  • Les processeurs des SoC ne sont pas aussi puissants que ceux des PCs/Ordinateurs portables (donc ils prennent moins de place)
  • Les SoC sont construits (principalement) à base d'Architectures ARM - Advanced RISC Machine, qui sont suffisamment puissantes, mais sans trop consommer d'énergie.
  • Les OS des smartphones sont optimisés pour les SoCs

Avantages des SoC⚓︎

Les avantages des SoC sont :

  • La Taille (miniaturisation) : tous les composants sont sur la même puce, donc un gain de place important
  • La Vitesse :
    • les distances sont réduites, donc la fréquence d'horloge peut augmenter notablement
    • Les composants et leur connexion sont plus facilement prévisibles, donc moins de variations
  • Coût :
    • Un circuit imprimé moins complexe
    • Moins de soudage
    • Fréquence d'horloge faible sur la carte, mais importante sur puce, cela réduit les frais liés au circuit imprimé
  • Énergie : Consommation énergétique très réduite (par rapport à un système classique, à puissance de calcul équivalente), en raison des distances réduites (moins de déperdition) et
  • Absence de Système de Refroidissement lourds, volumineux et énergivores (comme par ex. des ventilateurs)

Désavantages des SoC⚓︎

Des inconvénients des SoC sont:

  • si le composant souffre d'une défaillance quelconque, la seule issue sera le remplacement complet du SoC.
  • Pas d'extensibilité matérielle : tous les composants sont intégrés

Les meilleurs SoC, plus fins que les microprocesseurs classiques de dernière génération, sont gravés en \(5\) nm et comprennent des milliards de transistors.

Les SoC de dernière génération intègrent aussi des composants spécialisés:

  • reconnaissance faciale
  • réalité augmentée
  • etc..

Architecture d'un SoC⚓︎

Schéma de Circuit d'un SoC⚓︎

Schéma de Circuit SoC

Types d'Architectures de SoC : ARM vs x86⚓︎

Une Architecture de SoC est avant tout basée sur l'architecture de son processeur (CPU), qui est elle-même caractérisée par son jeu d'instruction (du processeur). Il existe différents types d'architectures pour les SoC, principalement deux :

  • Architecture ARM : Jeux d'instructions ARM. Plus simple, basée sur le modèle d'architecture de processeur appelé RISC - Reduced Instruction Set Computer 🇬🇧 / Processeur à Jeu d'Instruction Réduit 🇫🇷
  • Architecture x86 : Jeux d'instructions x86. Plus Complexe, basée sur le modèle d'architecture de processeur appelé CISC - Complex Instruction Set Computer / Processeur à Jeu d'Instruction Complexe.

Les Architectures ARM⚓︎

L'Architecture ARM est fortement inspirée du modèle d'architecture de processeur appelé RISC - Reduced Instruction Set Computer 🇬🇧 / Processeur à Jeu d'Instruction Réduit 🇫🇷. Elle dispose de \(16\) registres généraux de \(32\) bits. Les instructions, codées sur \(32\) bits jusqu'à l'ARMv\(7\) peuvent toutes disposer d'exécution conditionnelle. Sur l'architecture \(64\) bits (ARMv\(8\)), quelques instructions seulement peuvent disposer d'exécution conditionnelle. Le jeu d'instructions a reçu des extensions au fil du temps.

La Société ARM Ltd et les fabricants de processeurs ARM⚓︎

La propriété intellectuelle appartient à une société britannique, historiquement Acorn Computers, de nos jours ARM Ltd 🇬🇧. En \(2016\), ARM est rachetée par la Holding japonaise Softbank, et en \(2020\), une OPA - Offre Publique d'Achat par NVidia 🇺🇸 sera finalement rejetée en \(2021\) par la FTC - Federal Trade Commision 🇺🇸 (les autorités de la concurrence américaine). Les processeurs ARM sont fabriqués sous licence, suivant le principe ditdes IPs - Intellectual Properties 🇬🇧 / Propriétés Intelectuelles 🇫🇷, qui sont des sortes de Bibliothèques Matérielles que l'on peut acheter pour monter soi-même (puis commercialiser). Les processeurs ARM sont ainsi construits par différentes entreprises de par le monde (cf liste complète sur wikipedia13)). Parmi les entreprises fabriquant les modèles des Séries Cortex (les plus avancées), la majorité se trouve en Asie (20), suivie par les États-Unis (13) et enfin par l'Europe (6).

Principaux Concepteurs de SoC⚓︎

  • AMD : Architecture ARM
  • Apple : Architecture ARM (exclusivement)
  • Broadcom : Architecture ARM
  • Intel : Architecture x86
  • Mediatek3 : Architecture ARM
  • Nvidia : Architecture ARM
  • Qualcomm4 5 : Architecture ARM
  • Samsung : Architecture ARM
  • Texas Instrument : Architecture ARM
  • etc..13

Parts de Marché des SoC⚓︎

pie title Parts de Marché des SoCs (2021) "MediaTek" : 43 "Qualcomm" : 28 "Apple" : 14 "Samsung Exynos" : 7 "Autres" : 8

Répartition des Coûts d'une SoC⚓︎

pie title Répartition des Coûts d'un Samsung Galaxy S9+ "Processeur Base/Applications" : 68 "Batterie" : 5.5 "Caméra/Image" : 48 "Connectivité" : 12 "Écran Tactile" : 72.5 "Mémoire Von Volatile" : 12 "Mémoire Volatile" : 39 "Non Électroniques" : 29 "Autres" : 15 "Alimentation / Audio" : 8.5 "Composants Radio Fréquence" : 23.5 "Capteurs" : 5 "Substrats" : 19.5 "Assemblage & Tests" : 12.5

(source10)

Quelques Exemples de processeurs ARM⚓︎

par Architectures / Jeux d'Instruction⚓︎
Date Architecture Famille(s)
\(1985\) ARMv1 ARM1
\(1987\) ARMv2 ARM2, ARM3
ARMv3 ARM6, ARM7
ARMv4 StrongARM, ARM7TDMI, ARM8, ARM9TDMI
ARMv5 ARM7EJ, ARM9E, ARM10E, XScale, FA626TE, Feroceon, PJ1/Mohawk
\(1990\) ARMv6 ARM11 (en)
ARMv6-M ARM Cortex-M (ARM Cortex-M0, ARM Cortex-M0+, ARM Cortex-M1)
ARMv7-A ARM Cortex-A (Gen1 : ARM Cortex-A8, Gen2 : ARM Cortex-A9 MPCore,
ARM Cortex-A5 MPCore, Gen3 : ARM Cortex-A7 MPCore,
ARM Cortex-A12 MPCore, ARM Cortex-A15 MPCore,
Adaptation tierce : Scorpion, Krait, PJ4/Sheeva, Swift
ARMv7-M ARM Cortex-M (ARM Cortex-M3, ARM Cortex-M4, ARM Cortex-M7)
ARMv7-R ARM Cortex-R (ARM Cortex-R4, ARM Cortex-R5, ARM Cortex-R7)
ARMv8-A ARM Cortex-A35, ARM Cortex-A50 (ARM Cortex-A53, ARM Cortex-A57),
ARM Cortex-A72, ARM Cortex-A73, X-Gene, Denver, Cyclone, Exynos M1/M2
ARMv8.2-A ARM Cortex-A55, ARM Cortex-A65, ARM Cortex-A75, ARM Cortex-A76
ARMv8.3-A ARM Cortex-A65AE (seulement LDAPR, le reste en 8.2),
ARM Cortex-A76AE (idem A65AE)
ARMv8-M ARM Cortex-M23, ARM Cortex-M33
ARMv8-R ARM Cortex-R53
par Familles de Processeur⚓︎
  • Famille Cortex-A : processeur Applicatif
  • Famille Cortex-R : processeur Temps-Réel (Real Time)
  • Famille Cortex-M : processeur eMbarqué (eMbedded System)

Le Cas d'un Smartphone Samsung⚓︎

Soc d'un Smartphone⚓︎

Annotated Die Shot d'un Exynos 9810, Galaxy Note 9

Annotated Die Shot d'un Exynos 9810, Galaxy Note 9 (2019)

Annotated Die Shot d'un Exynos 9820, Galaxy Note 9

Annotated Die Shot d'un Exynos 9820, Samsung Galaxy S10 (2020)

Carte Mère d'un Smartphone⚓︎

Carte Mère S10 Recto

Carte Mère d'un Galaxy S10 (2020), Recto

Carte Mère S10 Verso

Carte Mère d'un Galaxy S10 (2020), Verso

Carte Mère S9 Recto

Carte Mère d'un Galaxy Note 9, Recto

  • Samsung 82LBXS2 NFC Controler & Samsung Secure Element
  • Broadcom BCM43570 : Wifi Bluetooth Module
  • Heart Rate Sensor : Capteur Cardiaque
  • Maxim MAX98512 Audio Amplifier : Amplificateur Audio
  • Samsung S2MPB02 Camera PMIC : - Power Management Integrated Circuit - Gestion Alimentation Caméra
  • Shannon 560 PMIC - Power Management Integrated Circuit : Gestion d'Alimentation
  • Cirrus Logic CS47L93 Audio Codec
  • Samsung S2DOS05 Display Power Management Integrated Circuit : Gestion Alimentation Écran
  • Shannon 965 RF Transceiver : Radio Émetteur/Récepteur fontionne avec le modem LTE inclus dans l'Exynos 9810, pour implémenter des débits

Carte Mère S9 Recto

Carte Mère d'un Galaxy Note 9, Verso

  • Maxim MAX98512 Audio Amplifier
  • Avago AFEM-9090 Front End Module : PAM - Power Amplifier Module pour QuadBand GSM/GPRS/EDGE
  • Skyworks SKY77365-11 Power Amplifier Module
  • Murata fL05B Power Amplifier Module
  • Shannon 735 Envelope Tracker : Amplificateur pour Radio Frequence (RF)
  • SoC Samsung Exynos 9810 + Mémoire Samsung 6 GB LPDDR4X (PoP)
  • Samsung KLUCG2K1EA-B0C1 NAND Flash : Mémoire Flash de type UFS - Universal Flash Storage
  • Maxim MAX77705F PMIC
  • Broadcom BCM47752 GNSS Receiver (Global Navigation Satellite System), càd le GPS
  • IDT P9320S Wireless Charging Receiver

Le cas d'un Raspberry Pi 4⚓︎

ARM Broadcom & Raspberry Pi 4⚓︎

Le Raspberry Pi \(4\) intègre ainsi sur quelques centimètres carrés, une carte mère complète autour d'un processeur ARM Quad Core Cortex A-\(72\) (ARMv\(8\)) à \(1,5\) GHz

Rasberry Pi 4 Rasberry Pi 4 Détaillé

Raspberry Pi \(4\)

Col

Exynos A15

  • Les architectures ARM, introduites à partir de \(1990\) par Acorn Computers, sont développés par l'entreprise anglaise ARM Mtd, et elles sont de type RISC \(32\) bits (ARMv\(1\) à ARMv\(7\)) et \(64\) bits (ARMv\(8\)). Elles deviennent très populaires avec l'avènement de la téléphonie mobile grand public à la fin des années \(1990's\).
  • Les SoC bénéficient d'une faible consommation électrique et sont fabriquées par un grand nombre de constructeurs pour équiper de très nombreux matériels dont notamment :
La série Broadcom pour les Raspberry Pi 4⚓︎
La série Snapdragon⚓︎

(Amérique du Nord, Chine, Asie) de Qualcomm, commercialisés dans les Samsung

La série Samsung Exynos⚓︎

(Europe & reste du monde) de Samsung

Exynos vs Snapdragon
Exynos vs Snapdragon, 2021, Galaxy S20

La série A12, A13, A14, A15 Bionic d'Apple⚓︎

Architectures x86⚓︎

blabla

Applications Android/iOS⚓︎

Android⚓︎

  • CPU-Z
  • CPU-Z Hardware Information / CPU-Z Information matérielle

iOS⚓︎

  • CPU DasherX - CPU Z
  • System Status - Battery & Network Manager

Références & Notes⚓︎

Références⚓︎

Notes⚓︎