L'apprentissage automatique est rapidement passé des déploiements centrés sur le cloud au bord, où les systèmes embarqués doivent fournir une intelligence en temps réel sous des budgets de puissance et de latence stricts. Au cœur de cette transformation se trouve le processeur de signal numérique (DSP) – un microprocesseur spécialisé qui est devenu discrètement la pierre angulaire pour accélérer les tâches d'apprentissage automatique dans les environnements à ressources limitées.

Des haut-parleurs intelligents à vocaux aux drones autonomes et aux capteurs IoT industriels, les DSP permettent à ces appareils de faire fonctionner localement une inférence réseau neuronal sans égoutter les batteries ou sans nécessiter une connectivité cloud constante. La capacité d'effectuer des opérations mathématiques complexes — en particulier des séquences multi-accumulations (MAC) — de manière très parallèle et efficace en matière d'énergie fait des DSP un outil indispensable pour l'IA bord.

Comprendre les processeurs DSP

Contrairement aux processeurs de signaux à usage général, qui optimisent le changement de tâches et la prévision des branches, les DSP privilégient l'exécution déterministe des opérations arithmétiques répétitives. Leurs ensembles d'instructions et leurs architectures de mémoire sont adaptés au traitement rapide et prévisible de flux de données tels que des échantillons audio, des pixels vidéo et des lectures de capteurs.

Les principales caractéristiques architecturales qui définissent un PSD moderne comprennent :

  • Architecture Harvard modifiée[ — des bus séparés de programmes et de données permettent l'instruction simultanée de récupérer et d'accéder aux données, en doublant le débit.
  • Les unités multi-accumulations de déchets (MAC)[ — une seule instruction peut multiplier deux nombres et ajouter le résultat à un accumulateur dans un cycle d'horloge, effectuant le fonctionnement de base des convolutions et des multiplications matricielles.
  • Capacités d'instruction unique, de données multiples (SIMD) — Les DSP peuvent fonctionner sur plusieurs éléments de données avec une seule instruction, en accélérant les opérations de vecteurs et de matrice centrales à ML.
  • Les boucles matérielles de la ligne de front de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de ligne de
  • Manipulation d'interruption de faible latence[ — critique pour les applications en temps réel où le manque d'un échantillon pourrait corrompre la sortie.

Ces choix de conception permettent aux DSP d'atteindre des performances élevées à une fraction de la vitesse d'horloge d'un processeur, consommant beaucoup moins de puissance. Par exemple, un DSP typique fonctionnant à 500 MHz peut surperformer un CPU de 2 GHz pour un ensemble spécifique de tâches de traitement de signaux en tirant seulement quelques centaines de milliwatts.

Le rôle des PSD dans les charges de travail de l'apprentissage automatique

L'apprentissage moderne des machines, particulièrement des réseaux neuronaux profonds, est mathématiquement intensif. Les opérations les plus courantes durant l'inférence comprennent la convolution, la multiplication matricielle, les fonctions d'activation (par exemple, ReLU, sigmoid), la mise en commun et la normalisation.

Les DSP peuvent gérer l'arithmétique fixe nativement, ce qui est un avantage majeur pour les ML embarqués. Les réseaux neuraux quantifiés — ceux qui utilisent des représentations entiers ou fixes au lieu de point flottant — réduisent considérablement la bande passante de la mémoire et la consommation d'énergie tout en maintenant une précision acceptable.

De plus, les DSP comprennent souvent des instructions spécialisées qui mettent en œuvre directement des primitives de réseau neuronal commun, tels que des filtres convolutionnels avec strate et dilatation, des convolutions en profondeur et des approximations de fonction d'activation.

Principaux avantages des PSD pour ML à l'arête

  • Haute performance par watt:[ La mesure primaire pour l'IA bord est TOPS/W (opérations en tera par seconde par watt). Les DSP offrent toujours plus de TOPS/W que les CPU et les GPU pour les charges de travail typiques de l'inférence ML. Pour les appareils alimentés par batterie, cela se traduit par une durée de vie opérationnelle plus longue et des budgets thermiques plus faibles.
  • Comportement en temps réel déterministe : Contrairement aux processeurs avec des erreurs imprévisibles de cache et de branche, les DSP fournissent un calendrier d'exécution déterministe. Ceci est critique pour des applications comme le contrôle en boucle fermée dans la robotique ou le traitement audio en temps réel où l'absence d'une date limite peut causer une défaillance du système.
  • Mouvement de données efficace: Les DSP sont conçus pour déplacer les données efficacement entre les unités de mémoire et les unités arithmétiques.Les mémoires à banques multiples et les moteurs d'accès direct à la mémoire (DMA) permettent de diffuser les données dans le processeur sans bloquer le pipeline, essentiel pour le traitement des flux continus de capteurs.
  • Latence faible:[ Parce que les DSP fonctionnent à proximité du capteur, ils peuvent traiter les données et produire des résultats en microsecondes. Cette latence inférieure à milliseconde est essentielle pour les systèmes autonomes qui ont besoin de réagir instantanément, comme l'évitement des collisions chez les drones.
  • Maturité et écosystème: Les DSP ne sont pas nouveaux; des décennies de développement de la chaîne d'outils ont produit des compilateurs matures, des débogueurs et des bibliothèques optimisées.

Innovations architecturales spécifiques pour l'apprentissage automatique

Bien que les DSP traditionnels conviennent déjà aux charges de travail des ML, les dernières générations ont intégré des caractéristiques explicites pour l'accélération de l'apprentissage profond.

Architectures très longues pour les mots d'instruction (VLIW)

De nombreux DSP modernes, tels que ceux de la famille TI-C6000 ou de la série CEVA- NeuPro, utilisent des conceptions VLIW. Plusieurs emplacements d'exploitation indépendants dans une seule instruction permettent au compilateur de programmer les MAC, de charger/déplacer et de contrôler les opérations en parallèle. Combinés à des pipelines profonds, les DSP VLIW peuvent atteindre un parallélisme de haut niveau d'instruction sans la logique complexe hors-commande des processeurs, en économisant la puissance.

Coprocesseurs d'apprentissage profond

Certains DSP intègrent des accélérateurs matériels étroitement couplés pour les réseaux neuronaux convolutionnels. Par exemple, le DSP de Cadence Tensilica Vision 5 comprend un tableau de calcul tensor pour les opérations matricielles, un moteur de convolution dédié et un support matériel pour les fonctions d'activation et de mise en commun. Ces blocs fonctionnent en conjonction avec le noyau DSP, déchargeant les boucles les plus intensives en calcul pendant que le DSP s'occupe des tâches de pré-traitement et de post-traitement.

Soutien aux modèles quantitatifs et spargés

Les nouveaux DSP fournissent des instructions d'ajout de multiplicateurs pour les entiers 8 bits ou même 4 bits, en doublant ou en quadruplant le débit par rapport aux opérations 16 bits ou 32 bits. Ils prennent également en charge les optimisations saut-zéro, où les opérations de multiplicateur-accumulateur qui impliquent une entrée zéro sont entièrement ignorées — un cas commun dans les réseaux activés par ReLU où de nombreuses activations deviennent zéro. Cette exploitation par sparosité peut réduire considérablement la latence efficace.

Comparaison des DSP avec d'autres accélérateurs ML

Pour comprendre où les DSPs s'adaptent, il est utile de les comparer à d'autres options matérielles populaires pour les ML embarqués : les CPU, les GPU, les FPGA et les NPU.

DSP vs CPU

Les CPU à usage général sont flexibles mais inefficaces pour les opérations répétitives de MAC des réseaux neuronaux. Un CPU peut nécessiter des dizaines de cycles par MAC en raison des dangers de pipeline et des goulets d'étranglement de mémoire. Les DSP effectuent un MAC en un seul cycle et incluent souvent des instructions SIMD pour plusieurs MAC par cycle.

DSP vs GPU

Les GPU excellent au parallélisme massif avec des centaines de cœurs, mais ils tirent des dizaines à des centaines de watts. Pour les systèmes embarqués avec un budget de puissance de quelques watts, les GPU sont généralement peu pratiques. De plus, les pilotes GPU introduisent la latence qui est inacceptable pour le contrôle en temps réel.

DSP vs FPGA

Les FPGA peuvent être reconfigurés pour créer des datapaths personnalisés pour ML, offrant une très grande efficacité pour un modèle spécifique. Cependant, le développement de FPGA nécessite une expertise dans les langages de description matérielle et est moins portable. Les DSP, étant des processeurs à fonction fixe, sont plus faciles à programmer (C/C++ ou même un modèle graphique basé sur la conception) et ont un écosystème logiciel plus riche.

DSP vs NPU (Unité de traitement des neurales)

Les NPU sont des accélérateurs spécialisés conçus exclusivement pour l'inférence réseau neuronale. Ils obtiennent généralement la plus grande efficacité pour un ensemble fixe de types de couches. Cependant, les NPU peuvent ne pas avoir les capacités générales de traitement de signaux d'un DSP. De nombreux systèmes embarqués doivent effectuer non seulement l'inférence ML mais aussi le prétraitement (par exemple, filtrage, FFT, extraction de fonctions audio) et le post-traitement (par exemple, la formation de faisceaux, la suppression du bruit).

Applications dans les systèmes embarqués

La polyvalence des DSP les rend adaptés à une large gamme d'applications ML intégrées dans les industries. Les cas d'utilisation suivants illustrent comment les DSP accélèrent les tâches d'apprentissage automatique dans la pratique.

Traitement de la voix et de l'audio

Les haut-parleurs intelligents, les appareils auditifs et les systèmes de voitures mains libres comptent sur les DSP pour la détection de mots clés, les commandes vocales et l'amélioration audio. Un pipeline typique comprend la formation de faisceaux (traitement multimicrophone), la réduction du bruit (filtrage adapté), l'extraction de fonctions (MFCCs ou spectrogrammes), puis un petit réseau neuronal pour la détection de mots-sages.

La vision de l'ordinateur à l'avant-garde

Les DSP Vision de Cadence et de CEVA comprennent un matériel dédié au traitement des signaux d'image (ISP) (démonstration, équilibre blanc, correction gamma) combiné à un accélérateur d'apprentissage profond. Cela permet à une seule puce de traiter les données brutes des capteurs jusqu'à inférence sans GPU séparé. Par exemple, le système sur puce Ambarella CV25 utilise un processeur de vision basé sur DSP pour exécuter des réseaux neuraux pour des caméras de sécurité intelligentes à 30 fps tout en dessinant sous 2 W.

Fusion de capteurs dans les systèmes autonomes

Les systèmes de détection et de suivi des objets basés sur le ML sont des systèmes de détection/suivi des objets. Les DSP fournissent le calcul déterministe et peu latent nécessaire pour les fonctions critiques en matière de sécurité. NXP , le processeur de vision automobile S32V234 de NXP combine un processeur de vision quad-core avec un DSP et un accélérateur de traitement d'image, permettant la détection en temps réel des voies et la reconnaissance des piétons.

Entretien prédictif dans l'IoT industriel

Dans la fabrication, les capteurs de vibrations et de température surveillent la santé des machines. Les DSP analysent les données FFT et séries chronologiques pour détecter les anomalies à l'aide de modèles de détection d'anomalies légères (par exemple, les autoencodeurs).La capacité d'exécuter l'inférence localement sur le nœud du capteur réduit les chargements de données et permet des alertes immédiates.

Dispositifs médicaux portatifs

Les modèles ML peuvent classer les arythmies, détecter l'apnée du sommeil ou estimer la variabilité de la fréquence cardiaque. La faible consommation d'énergie et la faible empreinte sont critiques — les DSP permettent aux appareils de fonctionner pendant des semaines sur une batterie de cellules de monnaie tout en effectuant une inférence continue. Par exemple, Texas Instruments -MSP430 microcontrôleurs avec extensions DSP intégrées sont utilisés dans les patchs cardiaques portables.

Intégration des PSD dans les pipelines intégrés de LM

Le déploiement d'un modèle d'apprentissage automatique sur un DSP implique un pipeline de bout en bout qui s'étend au-delà du moteur d'inférence.

  1. Acquisition de données — Les capteurs (microphones, caméras, IMU) alimentent les données brutes via ADC ou interface parallèle. Les DSP comprennent souvent des périphériques dédiés comme I2S pour audio ou MIPI CSI pour les caméras.
  2. Prétraitement[ — Les données brutes sont conditionnées: filtrage pour supprimer le bruit, fenêtre pour FFT, normalisation, ou extraction de fonctionnalités (par exemple, spectrogrammes mel pour audio, cadres de redimensionnement pour la vision).
  3. Inférence — Les données pré-traitées sont transmises au réseau neuronal. Les DSP exécutent le modèle quantifié, couche par couche, en utilisant l'accélération matérielle pour les convolutions et les couches entièrement connectées.
  4. Post-processing — Les tenseurs de sortie sont convertis en résultats significatifs: softmax pour la classification, décodage de la boîte de délimitation pour la détection des objets, seuil pour la détection des anomalies.
  5. Action/Communication[ — Le résultat déclenche un actionneur (par exemple, allumer une lumière, envoyer une alerte) ou est transmis sans fil.

De nombreux fournisseurs de semi-conducteurs fournissent des outils logiciels qui automatisent une grande partie de ce pipeline. Par exemple, CEVA , CDNN (Deep Neural Network) toolkit prend des modèles de TensorFlow ou PyTorch, applique la quantification, et génère un code C optimisé pour leurs cœurs DSP. De même, Texas Instruments , Neural Network for Processors (NNP) bibliothèque offre des noyaux optimisés pour l'architecture C6000.

Défis et considérations

Malgré leurs avantages, les DSP ne sont pas une balle d'argent pour chaque scénario ML intégré. Les ingénieurs doivent naviguer plusieurs défis:

  • La précision par rapport à la précision peut considérablement dégrader la précision du modèle si elle n'est pas faite avec soin.
  • Contraintes de mémoire: Les DSP ont généralement un SRAM sur puce limité (quelques centaines de kilooctets à quelques mégaoctets).L'entreposage d'un modèle réseau neuronal complet et ses activations intermédiaires peuvent être difficiles.
  • Complicité des logiciels[: Bien que les DSP soient plus faciles à programmer que les FPGA, ils nécessitent toujours des compilateurs et des bibliothèques spécialisés. La transmission d'un modèle d'un cadre de haut niveau au code optimisé DSP implique souvent l'accordage manuel ou l'utilisation de SDK spécifiques aux fournisseurs.
  • Limité à certains types de modèles : Certaines couches avancées (p. ex. mécanismes d'attention, transformateurs, réseaux récurrents avec séquences dynamiques) peuvent ne pas être cartographiées efficacement aux architectures traditionnelles du DSP. Les nouveaux DSP ajoutent du soutien, mais l'écosystème est en retard par rapport aux GPU.
  • Développement et débogage[: Les outils de débogage DSP sont moins matures que ceux des processeurs. L'exécution de cycle de profilage sur des systèmes embarqués en temps réel peut être difficile, nécessitant des capacités matérielles de trace.

Tendances futures

L'évolution des PSD pour l'apprentissage automatique s'accélère. Plusieurs tendances façonneront la prochaine génération d'IA embarquée :

  • RISC-V avec extensions DSP: L'architecture RISC-V open-source comprend désormais des extensions P-extension ( SIMD emballé) et vectoriels qui ressemblent beaucoup aux fonctionnalités DSP. De nombreux concepteurs de puces créent des cœurs RISC-V personnalisés avec des unités MAC de type DSP et des boucles matérielles pour l'accélération ML, promettant une alternative hautement personnalisable et rentable aux DSP propriétaires.
  • Intégration hétérogénique[: Les puces système (SoCs) combinent de plus en plus un microcontrôleur (MCU), DSP, NPU et GPU sur une seule matrice. Le DSP gère le traitement des signaux et le ML à faible puissance, tandis que le NPU s'attaque aux charges de inférence plus lourdes. Cette approche hétérogène maximise l'efficacité sur les charges de travail variées.
  • Compresse et sparosité avancées[: Les DSP adopteront des techniques plus sophistiquées telles que la taille structurée, le partage du poids et les maths matricielles clairsemées pour exploiter la sparté croissante des réseaux neuronaux optimisés.
  • Apprentissage sur les appareils[: Bien que dominé actuellement par l'inférence, certains DSP évoluent pour soutenir l'entraînement sur les appareils légers ou le réglage fin. Des caractéristiques comme l'accélération matérielle de la rétropropagation et l'accumulation de gradient de faible précision permettront des modèles adaptatifs qui s'améliorent au fil du temps sans connectivité nuageuse.
  • Captage d'énergie et quasi-zéro puissance ML[: La recherche pousse les DSP qui peuvent fonctionner sur des budgets de puissance de sous-milliwatt, permettant l'inférence ML à partir de sources de récolte d'énergie.

Conclusion

Les processeurs de signaux numériques se sont révélés être une solution puissante et pratique pour accélérer les tâches d'apprentissage automatique dans les systèmes embarqués. Leur patrimoine architectural, optimisé pour le traitement numérique en temps réel et à faible puissance, s'aligne parfaitement sur les exigences de l'inférence moderne du réseau neuronal au bord. En fournissant des performances élevées par watt, une exécution déterministe et une chaîne d'outils établie, les DSP permettent une nouvelle génération d'appareils intelligents qui fonctionnent de manière autonome, réactive et efficace.

Les ingénieurs qui comprennent comment tirer parti des architectures DSP pour les charges de travail ML — y compris la quantification, l'optimisation de la mémoire et l'intégration avec les pipelines de traitement des signaux — seront bien placés pour construire des produits de pointe qui repoussent les limites de ce qui est possible à la pointe. Avec les innovations en cours dans le domaine de l'informatique RISC-V, l'informatique hétérogène et le soutien à la sparité, l'humble DSP est prêt à rester une pierre angulaire de l'intelligence artificielle intégrée pour les années à venir.