Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial Internet of Things >> Embarqué

Décisions, décisions :accélérateur matériel ou DSP ?

Dans mes deux premiers blogs sur ce sujet, j'ai expliqué pourquoi les DSP apparaissent soudainement partout et pourquoi, en particulier, ils commencent à remplacer certains accélérateurs matériels personnalisés (HWA) en tant qu'option plus flexible et évolutive. Dans ce blog, je veux parler d'une analyse plus détaillée que vous pouvez suivre pour décider si vous devriez penser à un DSP plutôt qu'à une implémentation HWA.


(Source :CEVA)

J'ai mentionné dans le dernier blog certaines des applications idéales pour les DSP. Le traitement du signal pour les signaux modem ou audio en sont des exemples évidents. Un autre exemple très courant est le traitement du signal dans les radars pour voitures autonomes, qui est assez similaire au traitement du signal dans un modem. Beaucoup d'entre eux ont été construits autour d'un accélérateur matériel combiné à un petit contrôleur. Nous constatons maintenant une tendance significative parmi ces fournisseurs de solutions à passer à des architectures dans lesquelles une plus grande partie des fonctionnalités est basée sur un logiciel exécuté sur un DSP, combinant le traitement du signal actuellement géré par le HWA et même un certain contrôle. Le raisonnement est simple :le logiciel offre plus de flexibilité dans les fonctionnalités et une capacité beaucoup plus économique et plus rapide à s'adapter à l'évolution des normes de communication.

Le positionnement global est une autre application, dans ce cas exploitant fortement les capacités mathématiques inhérentes aux DSP pour les calculs de triangulation. Au début, vous pourriez penser que la prise en charge du GPS est tout ce dont vous avez besoin et vous pouvez peut-être créer une implémentation très rapide dans un accélérateur matériel. Cependant, dans la norme GNSS mondiale, vous devez également prendre en compte la prise en charge de GLONASS (Russie), Galileo (Europe) et BeiDou (Chine). Une implémentation câblée pour le GPS peut limiter inutilement vos marchés, car la prise en charge de toutes les variantes peut être réalisée dans le logiciel si vous utilisez un DSP.

Jusqu'à présent, tout va bien en principe, mais comment une implémentation DSP se comportera-t-elle par rapport à une implémentation matérielle personnalisée ? Je vais illustrer avec un exemple populaire aujourd'hui :disons que vous construisez une application IoT et que vous prévoyez d'utiliser NB-IoT pour la communication. La longueur de la sous-trame est de 1 ms, ce qui définit une limite pour certains traitements qui doivent être terminés dans ce délai. Dans cet exemple, cela inclurait les algorithmes de couche physique, le code de contrôle L1 et la pile de protocoles. Pour une plate-forme DSP/NB-IoT basse consommation typique fonctionnant à 100 MHz, 1 ms vous donne 100 000 cycles pour effectuer ces calculs.

Pour estimer à quel type de performances vous pouvez vous attendre dans une implémentation DSP équivalente, vous devrez travailler avec un fournisseur de DSP intégré. Une telle entreprise devrait déjà proposer sur ses plateformes des solutions logicielles pour de multiples applications, qu'elle aura caractérisées par ses performances et sa puissance. Pour les performances, ils devraient pouvoir vous donner une estimation du nombre de cycles pour votre fonction, dans ce cas un modem NB-IoT, et vous fournir un graphique, similaire à celui ci-dessous. Chaque point du graphique représente le nombre de cycles nécessaires à l'exécution et le graphique est représenté sur une plage de charges variant dans le temps. Le graphique doit également montrer les cycles de pointe admissibles pour une fréquence de fonctionnement sélectionnée.


(Source :CEVA)

Vous disposez maintenant d'une méthode pour estimer si la charge de votre application fonctionnera à cette fréquence, ou si vous devrez peut-être augmenter la fréquence pour vous donner plus de marge. Bien sûr, cette estimation est basée sur la mise en œuvre du logiciel du fournisseur, bien qu'il soit raisonnable de s'attendre à ce qu'elle soit assez bien réglée. Vous n'êtes pas obligé de vous engager à utiliser leur logiciel, mais l'estimation devrait être suffisante pour guider votre prise de décision.

Si vous avez beaucoup de marge à votre fréquence de fonctionnement préférée, vous pouvez peut-être déplacer plus de fonctions HWA sur le DSP, ou peut-être ajouter plus de fonctionnalités de différenciation telles que la prise en charge de la localisation GNSS. Si, d'un autre côté, vous devez augmenter la fréquence pour répondre aux exigences de latence, cela est également possible, mais vous devez tenir compte du fait que l'augmentation de la fréquence augmentera la surface et la consommation d'énergie.

Un moyen rapide d'obtenir une estimation de la puissance est de regarder quelle part du logiciel va entrer dans le vrai code DSP, en utilisant le parallélisme, les unités MAC, etc., et quelle part va aller dans le code de contrôle - le général habituel- fonctions d'appel de code d'objet, prise de décisions et autres opérations standard. Vous pouvez généralement observer cette division, disons un code de contrôle à 40 % et un code DSP à 60 %. Un fournisseur de DSP fournira souvent des valeurs de puissance typiques pour ces deux cas, par exemple 2 mW pour le code de contrôle et 4 mW pour le code DSP (dans chaque cas à 100 MHz). Dans votre calcul, vous devez prendre en compte l'activité moyenne du DSP, par exemple 50% de la fréquence. Ainsi, dans cet exemple, vous estimeriez (0,4 * 2 + 0,6 * 4) * 0,5 =1,6 mW de puissance moyenne (en supposant une activité moyenne de 50 %).

En résumé, vous devriez être en mesure de développer une estimation assez raisonnable des performances et de la puissance auxquelles vous pouvez vous attendre pour une implémentation DSP de votre fonction d'accélérateur (à moins que vous ne développiez quelque chose de vraiment inhabituel - dans ce cas, vous devez modéliser votre application dans les DSP outils SW pour obtenir une estimation assez précise du nombre de cycles). Lorsque vous considérez la flexibilité supplémentaire que vous obtenez d'une implémentation logicielle et la possibilité de réduire les coûts en combinant plusieurs accélérateurs sur un seul processeur, une solution DSP semble assez attrayante.


Embarqué

  1. En savoir plus sur la « polarité » AC
  2. La sécurité IoT industrielle repose sur le matériel
  3. Les accélérateurs matériels servent les applications d'IA
  4. Portwell lance trois autres membres dans la série Kuber
  5. Plus d'automatisation =plus de robots capables
  6. 4 défis dans la conception de matériel IoT
  7. Sinergia Tech trouve des investisseurs pour le premier accélérateur matériel d'Amérique latine
  8. En savoir plus sur l'acier inoxydable
  9. Qu'est-ce qu'une IHM ?