Les aspects métériels
1. Revue technologique
Les grandes familles de circuits programmables[JE1]
Le choix d'une technologie programmable ne repose plus uniquement sur les performances, mais également sur des critères de consommation énergétique, de flexibilité, de pérennité. L'impact environnemental doit être considéré sur l'ensemble du cycle de vie. Les différentes architectures — MCU, MPU, DSP, CPLD, FPGA, FPAA et ASIC — offrent chacune un compromis spécifique entre puissance de calcul, reconfigurabilité et frugalité. Dans une démarche d'écoconception, il est donc essentiel d'identifier la solution la plus adaptée aux besoins réels de l'application afin d'optimiser à la fois les performances et l'efficacité des ressources.
1.1. Microprocesseurs (MPU) :
Il s'agit d'une unité de traitement (CPU) sans mémoire utilisateur intégrée. Il se caractérise par :
-
-
- La mémoire est généralement externe (RAM et Flash)
- Une alimentation souvent complexe avec différents niveaux et une mise sous tension contrôlée
- Des fréquences de fonctionnement élevées voir très élevées (500MHz à 5GHz), mais possible gestion dynamique de cette fréquence
- La nécessité de composants externes pour la mémoire et l’interfaçage vers l’extérieur
- Un système d’exploitation (linux, Android, Windows)
-
Avantages : très puissant
1.2. Microcontrôleurs (MCU) :
C'est une version plus contrainte du microprocesseur avec des performances plus limitées, mais qui intègre sur une puce unique l'ensemble des éléments nécessaire :
-
-
- un cœur processeur (ARM, RISC-V, X86…)
- de la mémoire Flash et de la RAM
- des périphériques (simples GPIO, timers, compteurs, convertisseurs analogiques numérique et numérique analogique, interfaces de communication (UART, SPI, I2C…)
-
Leur architecture est bien adaptée à la basse consommation. Ils nécessitent généralement une alimentation unique, une consommation très faible avec des modes de gestion de veille avancés (sleep ou deep sleep) qui permettent de descendre au nanoampère tout en maintenant la mémoire RAM et un réveil très rapide (qques 10 à 100ms).
La gamme de fréquence de fonctionnement est de qq10MHz à qq100MHz, mais qui peut atteindre 1GHz pour des circuits très performants
Avantages : économique, simple, peu gourmand, autonome
1.3. Digital Signal Processor (DSP) :
C'est un processeur optimisé pour des applications calculatoire complexes.
Il intègre une unité de calcul (MAC unit) qui permet la réalisation d’opérations complexes en 1 coup d’horloge. Elle s’accompagne de jeux d’instructions complexes.
La fréquence de fonctionnement est de 50MHz à 2GHz.
Il intègre de la mémoire RAM et parfois de la FASH.
Avantages : utilisé comme accélérateur de calcul, très performant pour du filtrage (FIR, IIR), la génération de FFT, la compression et la modulation
1.4. Complexe Programmable Logic Device (CPLD) :
Les CPLD sont composés de matrices de portes logiques organisées en cellules de bases (macrocells). Ils intègrent de la Flash pour le stockage de la configuration.
La fréquence de fonctionnement varie de 10 à 300MHz.
L’alimentation est simple mais permet parfois de gérer plusieurs domaines et de différencier le cœur et les périphériques.
Avantages : remplace plusieurs composants logiques discrets, simple de mise en œuvre, faible consommation
1.5. Field Programmable Gate Array (FPGA) :
Ce sont des réseaux de portes programmable de grande densité qui permettent le traitement parallèle de multiples processus.
On distingue les technologies Flash et antifuse qui gardent la configuration et présentent une optimisation de consommation statique et les technologies SRAM pour lesquelles la configuration doit être chargée depuis une mémoire externe Certains intègrent une matrice de mémoire RAM utilisateur d’autres synthétisent une zone mémoire au besoin de l’utilisation.
Fréquence de fonctionnement de 200 à 500MHz
Avantages : grandes matrices logiques. Permet de réaliser des fonctions complexes temps réel et surtout multiplier les tâches en parallèle
1.6. Circuits Programmables Analogiques et mixtes :
On trouve ici des circuits qui permettent de réaliser des fonctions analogiques configurable et peuvent intégrer un cœur processeur ou de la logique programmable pour permettre une gestion autonome de conditionnement de signal, d'acquisition et de pilotage. On trouve 3 grands type de circuits:
-
-
- Le PSoC de Cypress (Infineon) : ils incluent un cœur processeur et des fonctions analogiques reconfigurables basées sur des structures à capacités commutées.Le PSoC intègre de la mémoire Flash et RAM
-
Avantages : intégration analogique + numérique, réduction importante du nombre de composants, reconfiguration possible sans refaire une carte.
-
-
- Les GreenPak de Silego Technology (RENASA) : basé sur des structures à capacités commutées, il intègre aussi des blocks logiques programmable pour réaliser le pilotage des fonctions. Ils intègrent de la mémoire non volatile (NVM memory) qui permet de figer la configuration à la programmation (OTP) Les derniers circuits sont en technologie MTP (multiple Time Programmable et peuvent être reconfigurer jusqu’à 1000 fois). La fréquence de fonctionnement atteint quelques dizaines de MHz.
-
Avantages : permet de remplaces plusieurs composants discrets par un seul boitier miniature, permet de synthétiser une fonction dédiée, faible consommation.
-
-
- Les Field Programmable Analog Array FPAA (Anadigm et Okika) sont des matrices de capacités commutées utilisées pour configurer des fonctions analogiques (filtres, amplificateurs, mixer…). La fréquence de fonctionnement permet des acquisitions jusqu’à 16MHz
-
Avantages : remplace plusieurs composants analogiques par un seul composant reconfigurable, minimise le nombre le boitier
1.7. Les ASIC (Application Specific Integrated Circuit
On distingue les versions Full Custom qui sont totalement conçues pour une application et Semi-Customs qui sont basées sur des matrices de fonctions de bases (amplificateurs, alimentations, ADC et DAC...) sur lesquels sont réalisées 1 ou 2 niveaux d'interconnexions en métal pour réaliser la fonction souhaitée. Le semi-custom est moins optimisé mais il permet tout de même un fort niveau d'intégration pour un cout de conception et de fabrication bien inférieur, les fonctions de base ayant par ailleurs déjà été validées. La version Full Custom est dédiée à de très gros volumes.
Avantages : surface silicium généralement réduite pour une fonction équivalente, consommation optimisée, mois de composants externes
Tableau comparatif
|
Architecture |
Gamme de fréquence |
Consommation |
Cout de fabrication |
Evolutivité |
Longévité |
Applications typiques |
|
MCU |
1MHz à 1GHz (16 à 400MHz) |
Très faible (µW à qq 100mW) |
Très faible |
Faible à moyenne (mise à jour logicielle) |
Excellente (10 à 20 ans selon les fabricants) |
IoT, capteurs, instrumentation, automatisme, électroménager, automobile |
|
DSP |
50MHz à 2GHz |
Faible à moyenne (qq 100mW à qqW) |
Moyen |
Moyenne à élevée (logicielle) |
Bonne (10 à 15 ans gammes industrielles) |
Traitement du signal, audio, contrôle moteur, télécom, radar, instrumentation, électronique de puissance |
|
MPU |
200MHz à +3GHz |
Moyenne à élevée (1 à qq 10W) |
Moyen à élevé (mémoire externe) |
Très élevée (OS, logiciels complexes) |
Bonne (10 à 15 ans gammes industrielles) |
Linux embarqué, IHM, passerelles IoT, robotique, vision, applications multimédia |
|
CPLD |
10MHz à 300MHz |
faible |
Faible à moyen |
Moyenne |
Bonne (10 à 15 ans) |
Décodage logique, interfaces, remplacement de logique discrète, séquencement |
|
FPGA |
10MHz à +1GHz |
Moyenne à élevée (qq 100mW à qq 10W) |
Élevé |
Très élevée (reconfiguration matérielle) |
Bonne (10 à 15 ans gammes industrielles) |
Traitement du signal temps réel, vision, IA embarquée, télécom, radar, acquisition rapide, accélération matérielle |
|
ASIC |
qq MHz à qq GHz |
Très faible pour une fonction donnée |
Très élevé (développement), très faible en grande série |
Faible à moyenne (Cœur) nulle (Analogique) |
Très longue si produit maintenu |
Téléphones, processeurs spécialisés, accélérateurs IA, puces réseau, électronique grand public, automobile |
|
FPAA |
qq kHz à qq 10MHz (analogique) |
Faible à moyenne |
Faible à moyen |
Élevée (reconfiguration analogique) |
Limitée (offre industrielle restreinte) |
Prototypage analogique, filtres actifs, conditionnement de signaux, instrumentation |
2. Ecoconception
Pour les circuits numériques, l'impact dépend de 3 facteurs: la phase de fabrication (embodied carbon), la surface du chip et l'usage. La surface des puces diminue en continu avec des noeuds toujours plus fins (28nm en 2010, 3nm en 2022) et une densité fonctionnelle qui progresse plus vite. Mais les technologies de lithographie et de gravure deviennent de plus en plus complexes et leur impact dans la fabrication devient prépondérant. Ainsi les CPU et DSP sont généralement fabriqués dans des technologies mature (40 à 180nm). Leur impact sera largement lié au boitier choisi, à la consommation en usage et à la durée de vie du produit. En revanche, on trouvera des technologies de point pour les MPU et SoC pour lesquels la consommation est importante et permet de justifier des procédés dont l'impact est plus important.
Les leviers vers une meilleure conception matérielle sont les suivants
2.1. Architecture :
· Choisir l’architecture la plus adaptée au projet en termes de performances et de consommation :
- Le MCU est la solution la plus sobre, mais ses performances sont moyennes
- Le MPU est pertinent lorsque l’application nécessite un système d'exploitation, une interface graphique ou des communications complexes.
- Le CPLD est adapté pour remplacer de la logique discrète ou gérer des interfaces
- Le FPGA peut remplacer plusieurs circuits spécialisé (MCU, DSP, ASIC…) en mutualisant les fonctions dans un seul composant, mais au prix de la consommation
- L’ASIC présente la plus forte optimisation (consommation surface de Si), mais son cout de fabrication et son impact environnemental ne se justifient que sur des gros volumes.
- Les FPAA peuvent remplacer plusieurs boitiers analogiques. Particulièrement intéressant pour le développement, moins intéressant pour la production où un circuit analogique dédié est plus économique. Les versions plus petites permettent l’intégration de blocks fonctionnels analogiques.
· Sélectionner un microprocesseur alors qu’un microcontrôleur suffisait ou un FPGA alors qu’un CPLD convenait conduit à un circuit plus complexe, à la mise en œuvre de technologies de PCB et de fabrication plus pointues, à plus de difficultée à maintenir et probablement moins fiable
· Les solutions fortement reconfigurables permettent une évolution plus importante : certains microcontrôleurs permettent position assez simple et ouvert des interfaces (pas de pin dédie pour chaque signal). De même les composants logiques programmables peuvent être reconfigurés pour corriger une erreur ou réaliser une évolution du produit
· Besoin de temps réel (multitâches) FPGA vs Processeurs multicœurs)
2.2. Le choix d’une fréquence de fonctionnement
· Adapter la fréquence de fonctionnement au besoin
· La consommation des circuits est directement liée à la fréquence de fonctionnement. Donc pour un système qui fonctionne en continue, plus la fréquence est basse plus la consommation est faible. Mais pour un système alimenté de façon occasionnelle, la grandeur importante est l’énergie consommée : E = P x t avec P la puissance consommée P = C x V² f. (l’énergie consommée à 50MHz pendant 1s est équivalente à l’énergie consommée sur 0.1s avec une horloge à 500MHz)
· Plus la fréquence de fonctionnement est haute, plus la tension doit être élevée pour permettre la commutation des transistors. Mais il en résulte une
· Une fréquence très élevée nécessite souvent la mise en œuvre de dissipateur thermiques (dissipation passive ou dissipation forcée)
· Les commutations haute fréquence impliquent généralement plus de problèmes de compatibilité électromagnétiques (CEM) avec la nécessite de filtres ou de blindage (PCB plus complexe)
2.3. La taille mémoire
· La taille mémoire a tout d’abord un impact sur la fabrication : qu’elle soit interne ou externe, elle occupe une surface non négligeable de silicium. Plus la capacité est grande, plus la surface de wafer utilisée est importante est plus la probabilité de défaut augmente, d’où un rendement de fabrication potentiellement réduit
· Impact sur la consommation : la mémoire Flash a peu d’impact à l’usage (lecture ou exécution d’un programme), cependant la consommation est importante pendant les phases d’écriture. La mémoire SRAM consomme pendant les accès (consommation dynamique) et peut dans beaucoup d’architectures présenter une consommation statique pour le maintien des données. La DRAM des microprocesseurs nécessite un rafraîchissement continu.
· Une mémoire trop surdimensionnée augmente l’impact environnemental du produit, mais une mémoire trop petite peut limiter la capacité de réaliser des mises à jour et engendrer un remplacement prématuré du produit
2.4. Optimiser la consommation électrique :
C'est souvent le levier principal. Il consiste à :
· Réduire les tensions d'alimentation ; privilégier les alimentations basses-tension 1.2V et 1.8V par rapport au 3.3V standard.
· Pour les systèmes autonomes très basses consommation, une tension d’alimentation basse (1.2 ou 1.8V) peut simplifier l’interface avec le système de récupération d’énergie (Energy Harvesting) avec un minimum de conversion
· Prévoir la possibilité de piloter plusieurs domaines de puissance pour pouvoir isoler les différents blocs du système et pouvoir les mettre hors tension lorsqu’ils ne sont pas utilisés, avec la mise en œuvre de régulateurs pilotables, ou de commutateur de charge ; Par exemple les capteurs et les actuateurs, ou les circuits de communication radio qui sont gourmandes en énergie.
· Lorsque cela est possible mettre les composants en veille en utilisant les modes de veille et de veille profonde (Sleep ou Deep Sleep) ;
· La plupart des architectures permettent le fonctionnement de périphériques de façon autonome sans l’activation du cœur que ce soit sur microcontrôleur, microprocesseur ou FGPA. Une fois configuré, le bloc est activé, il réalise les opérations même lorsque le cœur est en veille (cela peut être réalisé sur Timer) et l’informe par interruption. Les données sont transmises directement en mémoire par DMA (contrôleur dédié)
· Limiter les courants de fuite du système.
· Une faible consommation énergétique [JE2] peut permettre une faible dissipation thermique et limiter le besoin de solutions externes de gestion thermique
Parmi les critères quantitatifs de comparaison entre fabricants et disponibles sur les Datasheets on peut noter :
-
-
- La consommation en fonction de la fréquence de fonctionnement (uA/MHz), elle dépend aussi de l'exécution du code en Flash ou en RAM
-
La consommation en mode basse consommation (Stop, Standby, Shutdown, VBAT) et la consommation et le temps de réveil (un standby à 50 nA ne sert à rien si le réveil coûte plus que le sommeil n'économise à la période de réveil considérée)
- La gamme de tensions d'alimentation
- La disponibilité de périphériques autonomes (DMA) qui libèrent le cœur
- Pour les DSP et accélérateurs, l'énergie par inférence ou par FFT plutôt que la puissance crête.
-
Des outils permettent des Benchmarks normalisés. EEMBC propose un ensemble d'outils qui facilite la comparaison des performances des composants de systèmes électroniques, notamment:
-
-
- ULPMark pour la basse consommation (https://www.eembc.org/ulpmark/)
- CoreMark pour l'efficacité de calcul (https://www.eembc.org/coremark/)
-
-
2.5. Réduire la quantité de matière
· Minimiser le nombre de composants : éviter de dupliquer les fonctions déjà disponibles en interne avec des composants discrets, lorsque cela ne se justifie pas par le besoin de performance. (oscillateurs, RTC, régulateurs ou convertisseurs (ADC et DAC)…)
· Privilégier les solutions qui intègrent plusieurs fonctions dans un seul composant [JE3] (par exemple un microcontrôleur avec périphériques intégrés, PSoC avec combinaison de fonctions analogiques et cœur processeur), SOM (system on Module) avec microprocesseur et mémoire, System on Chip (SoC) par exemple SoC RF qui intègrent le cœur et un transceiver, PMIC (Power Management IC) pour les processeurs
Les périphériques intégrés (nombre de boitiers réduits et amélioration de la fiabilité du système
· Lorsque cela est possible privilégier les accélérateur intégrés (unités de calcul en virgule flottante (Floating PointUit) de préférence à une accélération externe (un DSP,
· Réduire la taille du PCB lorsque cela est pertinent.
· Optimiser le nombre de couches du circuit imprimé. (les composants fortement intégrés permettent l’utilisation de technologies de PCB plus simples en nombre e couches, mais aussi en pitch
2.6. Choix des boitiers
· Une taille identique de puce (Silicium) (performances constantes) peut être intégrée dans une gamme parfois importante de boitiers résultant en un rapport puce-à-boitier qui eut être élevé. Dans ces cas la différence principale est dans le nombre d’entrées sorties accessibles. Adapter alors le choix du boitier au nombre réel de signaux réellement nécessaires pour l’application.
· La chois du boitier a aussi un impact fort sur la technologie de PCB à mettre en œuvre : pour un BGA, un pas de bille de 0.8 à 1mm peut être routé avec une technologie standard de PCB alors qu’un pas de 0.4 à 0.6 va nécessiter la mise en œuvre de microvias, de vias enterrés et de via borgnes mais aussi le nombre de couches pour router ces signaux.
· Le pas, la technologie et la densité de billes ou de GPIOs va aussi avoir un impact sur la maintenance, et la réparabilité,
2.7. Spécificité des FPGA :
· Choisir la plus petite capacité logique compatible avec le besoin (taux d’utilisation raisonnable)
· Privilégier les blocs matériels (DSP, RAM, PLL) plutôt que de les recréer en logique (version matérielle plus performante et plus optimisée)
· Limiter les entrées/sortie inutilisées
· Limiter le nombre d’horloges différentes
· Privilégier les FPGA Flash lorsqu’une consommation statique faible est recherchée
2.8. Longévité et pérennité
· Il existe des programmes de longévité chez certains fabricants pour des familles ou des versions spécifiques de composants (10 ans pour ST ou Lattice, 10 à 15 ans pour NXP, Microchip, Renesas, AMD ou Intel) Chez d’autres fabricants comme Texas Instrument il n’y a pas de programme d’obsolescence : tant que la référence est demandée par les clients, elle est fabriquée (plus de 25 ans pour beaucoup de DSP par exemple)
· Lorsque cela est possible prévoir une seconde source pin-à-pin compatible avec éventuellement un nombre de portes/macrocells plus élevé, une taille mémoire supérieure ou des périphériques qui ne sont pas utiles. Cela réduit le risque de reconception du circuit en cas de rupture d’approvisionnement (et nécessite d’une requalification)
Parmi les outils d'ide à l'analyse, on peut citer:
- imec.netzero fournit des données d'impact par nœud technologique (CO₂, énergie, eau) depuis le 28 nm, selon le lieu de fabrication
- ACT (Architectural Carbon Tool, Meta) est un outil pour estimer l'impact carbon des puces et des systèmes pendant la phase de conception
- SCARIF (Server Carbon including Accelerator Reporter with Intelligence-based Formulation) est un outil open source destiné à estimer l'empreinte carbone incorporée ("embodied carbon") de serveurs de centres de données, en particulier ceux intégrant des accélérateurs tels que des GPU ou des FPGA.
- Les bases GaBi Electronics (Sphera LCA for Experts) et Ecoinvent (ecoinvent Association) intègrent des données environnementales de référence pour modéliser la fabrication et le cycle de vie des produits électroniques.
[JE1]Pour ce bloc fonctionnel, je ne pense pas que l’état de l’art techno soit attendu par nos industriels. Il me semble qu’il faut directement aller aux leviers d’écoconception.
[JE2]Ou des modes de fonctionnement permettant d’adapter tension/fréquence au besoin réel.
[JE3]+ SOM ?
No comments to display
No comments to display