Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Industrietechnik

So wählen Sie einen Mikrocontroller für digitale Signalverarbeitungsanwendungen aus

In diesem Artikel werden die Funktionen beschrieben, auf die Sie achten sollten, wenn eine MCU sowohl als Systemcontroller als auch als digitaler Signalprozessor fungieren soll.

In diesem Artikel werden die Funktionen beschrieben, auf die Sie achten sollten, wenn eine MCU sowohl als Systemcontroller als auch als digitaler Signalprozessor fungieren soll.

Die digitale Signalverarbeitung kann eine Vielzahl von Produkten und Anwendungen um wertvolle Funktionen erweitern. Selbst Designs, die durch Kosten, Formfaktor oder Zeitplan eingeschränkt sind, können problemlos die Vorteile von DSP integrieren, da Ingenieure heutzutage Zugriff auf eine Fülle von Bibliothekscode, Beispielprojekten und leistungsstarken Prozessoren haben, die sowohl kostengünstig als auch relativ benutzerfreundlich sind .

Ein echter digitaler Signalprozessor – wie ein Teil der C5000-Familie von Texas Instruments oder die SHARC-Familie von Analog Devices – kann ein einschüchterndes Gerät sein. Ich habe hauptsächlich mit DSPs von Texas Instruments gearbeitet und insgesamt war die Erfahrung produktiv und zufriedenstellend. In diesem Fall musste ich jedoch die Platine nicht entwerfen, und es machte mir keinen Spaß, seltsame Systemabstürze zu debuggen und die Details des Betriebssystems zu verstehen.

Es besteht kein Zweifel, dass bestimmte rechenintensive DSP-Aufgaben einen echten digitalen Signalprozessor oder sogar ein FPGA erfordern. Es stimmt jedoch auch, dass in zahlreichen Anwendungen ein richtig ausgewählter Mikrocontroller ausreichen würde. In diesem Artikel werden die Eigenschaften und Fähigkeiten erläutert, auf die Sie sich konzentrieren müssen, wenn Sie sicherstellen möchten, dass Ihre MCU über ausreichend DSP-Leistung verfügt.

8-Bit, 16-Bit oder 32-Bit?

Dieses Problem ist weniger einfach, als Sie vielleicht denken. Im Allgemeinen sind 16-Bit- und 32-Bit-Geräte für DSP-Anwendungen besser geeignet. Die digitale Signalverarbeitung umfasst mathematische Verfahren, die oft zu großen Zahlen führen, und Sie möchten einen Prozessor, der diese großen Zahlen direkt manipulieren kann.

Die 8-Bit-Verarbeitung ist jedoch nicht von Natur aus schlecht, und wenn Sie wissen, dass Sie es mit einem begrenzten Bereich digitaler Werte zu tun haben, ist ein 8-Bit-Mikrocontroller möglicherweise eine gute Wahl.

Darüber hinaus haben Ingenieure oft nicht die Zeit oder Lust, die Low-Level-Details eines Prozessors zu studieren, und daher kann es schwierig sein, einen klaren Zusammenhang zwischen der angegebenen Bitbreite und der tatsächlichen Recheneffizienz herzustellen. Hat ein „32-Bit-Mikrocontroller“ beispielsweise 32-Bit-Register? Eine 32-Bit-ALU? Ein 32-Bit-Adressbus? Eine 32-Bit-Kommunikationsschnittstelle? Was genau bedeutet „32-Bit“? Diese Details können Ihre Entscheidung beeinflussen, insbesondere wenn Sie davon ausgehen, dass es sich hauptsächlich um kleine Zahlen handelt, die nicht all diese zusätzlichen Bits benötigen.

Diese modernisierte 8-Bit-Architektur wurde von Silicon Labs entwickelt (Diagramm diesem Dokument entnommen). Sie warnen vor der Annahme, dass ein 16-Bit- oder 32-Bit-Gerät ein 8-Bit-Gerät durchweg übertreffen wird.

Taktgeschwindigkeit

Die maximale Taktfrequenz eines Mikrocontrollers ist sicherlich ein guter Indikator für seine Verdienste als digitaler Signalprozessor. Es ist jedoch wichtig, den Unterschied zwischen Taktzyklen pro Sekunde und Anweisungen pro Sekunde zu verstehen. Der Prozessor führt DSP-Aufgaben durch, indem er Befehle ausführt, und folglich wird seine Leistung sowohl von der Taktfrequenz als auch von der Anzahl der Taktzyklen beeinflusst, die zum Ausführen von Befehlen erforderlich sind.

Leider wird dieses Thema schnell ziemlich kompliziert. Die Anzahl der für eine Anweisung erforderlichen Taktzyklen variiert von einer Anweisung zur nächsten, und der Durchschnitt Die Anzahl von Taktzyklen pro Befehl kann durch Verwendung einer Pipeline-Architektur reduziert werden. Dann müssen Sie die Menge an „Funktionalität pro Anweisung“ berücksichtigen – d. h. vielleicht braucht Mikrocontroller A nur eine Anweisung, um etwas zu tun, das mehrere Anweisungen auf Mikrocontroller B erfordern würde.

Dieses Diagramm vermittelt das Konzept eines Pipeline-Prozessors. Weitere Informationen finden Sie in diesem Artikel. Colin M. L. Burnett [CC-BY-SA-3.0]

Hier meine abgekürzte Empfehlung:Wenn Sie Geräte aus der gleichen Familie vergleichen, entscheiden Sie sich für die höhere Taktfrequenz. Wenn Sie Geräte mit großen Architekturunterschieden vergleichen, versuchen Sie, eine zuverlässige Spezifikation zu finden, die entweder die Rate der Befehlsausführung (ausgedrückt als MIPS, Millionen von Befehlen pro Sekunde) oder die durchschnittliche Anzahl von Taktzyklen pro Befehl angibt.

Festkomma vs. Gleitkomma

Der Begriff „Gleitkomma“ bezieht sich auf eine numerische Darstellung, bei der der Radixpunkt „schweben“ kann, da die Zahl aus einem ganzzahligen Anteil (der Mantisse) und einem Exponenten besteht. Die Alternative („Fixpunkt“) entspricht der Art und Weise, wie wir die Daten typischerweise in einem normalen Mikrocontroller verarbeiten und wahrnehmen. Ein sorgfältiger Vergleich zwischen Gleitkommaarithmetik und Festkommaarithmetik ist keineswegs eine einfache Aufgabe, aber es scheint Einigkeit zu bestehen, dass die Gleitkommaverarbeitung in mathematisch intensiven Anwendungen überlegen sein kann.

Ich denke, man kann mit Sicherheit sagen, dass alle Mikrocontroller Festkommageräte sind, denn meiner Meinung nach ist es kein Mikrocontroller mehr, wenn es sich wirklich um einen Gleitkommaprozessor handelt. Wenn Sie jedoch wirklich entschlossen sind, Ihre mathematische Leistung zu maximieren, während Sie innerhalb der Mikrocontroller-Domäne bleiben, sollten Sie ein Gerät in Betracht ziehen, das ein Gleitkomma-co enthält Prozessor.

Der LPC3180FEL320 von NXP, ein 16/32-Bit-Arm-basierter Mikrocontroller, verfügt über einen Gleitkomma-Coprozessor und kann bis zu 220 MIPS erreichen. STMicroelectronics verfügt auch über STM32-Mikrocontroller, die eine Gleitkommaeinheit (FPU) enthalten.

Ich habe in meinem Circular-Touch-Sensor-Projekt Gleitkomma-Mathematik verwendet. In den meisten Fällen ist eine separate FPU unnötig – Compiler sind gut darin, Gleitkommavariablen in typischen Mikrocontrollern zu implementieren.

Zusammenfassung

In diesem Artikel haben wir CPU-Eigenschaften untersucht, die einen Mikrocontroller für DSP-Anwendungen mehr oder weniger geeignet machen. Ich denke, dass es in den meisten Situationen sinnvoll ist, sich auf die Bitbreite und MIPS zu konzentrieren – Sie sollten sich nicht viel um Gleitkomma versus Festkomma kümmern müssen, es sei denn, Sie planen ernsthafte Zahlen mit Ihrer MCU. Wir werden dieses Thema im nächsten Artikel fortsetzen, in dem es um DSP-bezogene Peripheriefunktionen geht.

Einführung in die Mikrocontroller-Serie

Dieser Artikel ist Teil einer größeren Serie. Den Rest der Artikel finden Sie unten:


Industrietechnik

  1. Wie KI soziale Distanzierung für die digitale Geschäftstransformation vorantreibt
  2. So wählen Sie eine zuverlässige CNC-Bearbeitungswerkstatt für CNC-Teile aus
  3. So wählen Sie die beste IIoT-Lösung für die Schwermaschinenfertigung
  4. Vorbereitung auf Industrie 4.0
  5. So wählen Sie den richtigen Sensor für Abfüllanwendungen aus
  6. Auswahl eines Proportionalventils für medizinische Geräte
  7. So wählen Sie einen Scan-Pac-Lieferanten für Ihre Reibmaterialien aus
  8. Intel Edison IoT:So wählen Sie Intel Edison für Ihren IoT-Prototyp aus
  9. Wie wählt man den richtigen Fräser und die richtige Programmierung für CNC aus?
  10. So wählen Sie ein Projekt für die Automatisierung aus