La vraie question est à la fin. Mais lire cela seul ne vous montrera peut-être pas pourquoi je suis confus. J'ai écrit ce post en commençant par quelques définitions, hypothèses et spéculations, puis en posant la vraie question.
Je pense toujours que je connais la différence mais quand je reçois une question comme: "si je mets un émetteur-récepteur avec un uC, est-ce maintenant un SoC?" Je m'embrouille et je ne sais pas comment répondre. Je me souviens une fois qu'on m'a dit qu'un uC est essentiellement un SoC . Mais quelle preuve ai-je? Mais Arduino n'est pas sur une seule puce! Je peux retirer le processeur Atmeg de la "carte" à tout moment!
Lorsque je vérifie en ligne, j'obtiens toutes sortes de réponses qui confirment ou contredisent ce que je viens de dire directement ou indirectement. C'est toujours déroutant pour moi et je ne blâme rien d'autre que de commercialiser les personnes qui utilisent ces termes de manière lâche et parfois interchangeable, et les personnes qui suivent leur exemple.
J'ai donc décidé de chercher la signification fondamentale de ces trois termes: uC, SoC et DSP. Parce que par exemple, quand je me trompe sur les tensions dans les circuits, je reviens toujours aux fondamentaux de la physique, la masse n'est pas vraiment nulle, c'est juste une "référence" et les tensions ne sont pas "absolues", elles sont des "parents". Cela me dirige toujours dans la bonne direction. Mais il n'y a pas de base pour parler d'uC. "micro" "contrôleur" est un contrôleur si petit qu'il est à l'échelle du micromètre. Mais nous n'avons pas le terme de nanocontrôleur, n'est-ce pas? Donc, cette façon de penser n’aiderait pas.
Ce que j'essaie de répondre sont les suivants:
- uC est une unité de traitement avec d'autres périphériques et de la mémoire avec elle pour une utilisation générale, non?
- SoC est un "système" complet sur une "puce". Donc, quel que soit le système que vous mettez sur une seule puce, est un SoC, non?
DSP est une unité de traitement à usage spécifique, principalement des opérations mathématiques, non?
Maintenant
Est-ce à dire que tout dans une uC, ils doivent tous être sur une seule puce? car si oui, alors uC est en fait un SoC. Peut-être un petit, mais ça l'est. Et Arduino. Probablement uC "peut" être un SoC s'il est sur une seule puce, mais n'est pas obligé (j'utilise beaucoup Arduino comme exemple ici).
Donc l'arduino est un uC, si je prends tous ses composants et les mets dans une autre carte et j'ajoute du XBEE au mix par exemple. C'est toujours une uC, non? Alors, quand dit-on que c'est maintenant un SoC? Ce n'est que lorsque les mêmes choses sont mises dans une seule puce plutôt que collectées dans une planche?
Jusqu'à présent, je pense que les questions ci-dessus se répondent en quelque sorte, mais je veux juste confirmer afin que je puisse continuer. Quand j'essaie de penser "fondamentalement", une puce ou une carte "peut" être la même, ce ne sont que des fils reliant les différents composants. et à ce stade, que définissez-vous un composant? S'agit-il d'un seul transistor ou d'un circuit comme un ADC? Mais je ne veux pas y aller.
La question suivante est de savoir de quoi parle vraiment ce post:
- Un uC est-il essentiellement un SoC? Un cas particulier d'un SoC dont l'une des exigences est que l'ensemble du système soit à usage général.
- uC est à usage général (selon Internet) et DSP est principalement destiné à traiter mathématiquement les signaux collectés dans le monde réel. Mais DSP est toujours un "processeur" et un uC contient un "processeur". Puis-je simplement mettre un DSP avec un tas ou des périphériques (disons ADC et DAC car ils sont généralement utilisés avec lui) et appeler le mixage uC? ou est-ce un SoC (puisque maintenant le mélange n'est pas à usage général et donc nous ne pouvons pas l'appeler uC mais c'est toujours un SoC)
AltGr + M
ou ⌘ + M
faites l'affaire.