Anzeige
Anzeige
Anzeige

Heterogen oder homogen?

Prozessoren und Architekturen für die Highspeed-IBV

Bei einem Formel-1-Rennen muss jedes Detail stimmen, damit das eigene Auto als Sieger ins Ziel kommt. Die ‚Echtzeitbedingungen‘ sind dabei klar definiert. Und wie sieht es bei einem Bildverarbeitungssystem aus? Aus einem Megapixel mit 50fps werden in neuen Anwendungen ‚plötzlich‘ 4MP. Mit 87fps übertragen steigt die Datenrate von 50MB/s auf 1.094MB/s, das heißt um einen Faktor von fast 22.
Hinzu kommen komplexere Algorithmen, da die Anforderungen an Robustheit und Intelligenz von Bildverarbeitungslösungen zunehmen und oft Voraussetzung für die Akzeptanz sind. Angenommen die Mathematik ist mit dem Faktor vier dabei, so steigt der Bedarf an Rechenleistung um den Faktor 88. Die Prozessoren werden zwar schneller, aber abhängig vom Prozessorhersteller waren die Leistungssteigerungen der letzten Jahre nicht so, wie das Mooresche Gesetz vermuten ließe. Somit gibt es genügend Gründe, über die Auswahl von Prozessoren und Architekturen ein paar Worte zu verlieren.

Die richtige Architekur?

Homogene Architekturen skalieren Prozessoren gleichen Typs. Ein Beispiel sind im Servermarkt die Intel-Xeon-Prozessoren, bei denen z.B. zwei Prozessoren auf einem Motherboard arbeiten. Auch High-Performance-Computer werden überwiegend homogen aufgebaut. Bei heterogenen Architekturen wird je nach Aufgabenstellung der Prozessortyp gemischt. Beispiele hierfür sind:

  • • Mehr-Kern-Prozessoren mit z.B. vier ARM- und acht DSP-Prozessoren (z.B. Texas Instruments)
  • • FPGAs bestehend aus FPGA- und ARM-Prozessor(en) (Altera, Xilinx)
  • • x86-PC mit einem FPGA als Coprozessor auf dem Framegrabber
  • • x86-PC mit einer GPU-Karte
  • • x86-Prozessoren mit CPU und GPU (z.B. AMD)
  • • Mehr-Kern-ARM mit GPU (z.B. NVidea)

Fragt man Chip-Experten, so sagen diese, dass eine auf Performance und niedrigem Stromverbrauch getrimmte Architektur nur heterogen machbar ist. Dies ist auch logisch, da Prozessoren unterschiedliche Eigenschaften haben, auf denen Betriebssysteme und Algorithmen unterschiedlich schnell ablaufen. So ist ein ARM-Kern gut für Linux OS geeignet, nutzt jedoch für die Codierung von Bilddaten in einer IP-Kamera seinen DSP-Nachbarn. Ein x86-Prozessor ist schnell und läuft mit mehreren Betriebssystemen. Soll aber aus der Anwendung ein kompakter Sensor werden, so geht dieser Prozessortyp thermisch auf K.O. Fragt man dagegen Softwareentwickler, so träumen diese von homogenen Strukturen, einem Compiler, der automatisch alle Aufgaben intelligent verteilt und dabei robuste Programme erzeugt. Jedoch klappt es bei den heute überwiegend eingesetzten Mehr-Kern-Prozessoren im Alltag oft genug nicht, dass Compiler, OS und Prozessor automatisch perfekt harmonieren. Und dann noch ein heterogenes System?

Verrechnung hoher Datenraten

Die Aufgabe bei Highspeed-Anwendungen ist es in der Regel, die Kameradaten in Echtzeit zu verrechnen. 87fps sind in heutigen Maschinen eher Mittelklasse, schnell müssen auch mal 200fps verrechnet werden. 1GByte/s ‚wegzurechnen‘ ist jedoch eine Herausforderung, bei der die Gesamtkosten nicht in die Höhe schnellen dürfen. 1GB/s=1GP/s, das heißt für jedes Pixel steht im Mittel die Zeit von 1ns zur Verfügung. Wird der Prozessor mit z.B. 3GHz getaktet, so darf die Anwendung nur drei Prozessorzyklen rechnen. Abseits möglicher Flaschenhälse auf den Datenbussen oder Speichern sind drei Zyklen quasi nichts. Daher müssen Ideen her, damit die hohe Datenrate beherrscht wird. Im Folgenden sollen kurz verschiedene Varianten bewertet werden:

FPGA-x86: Sozusagen der klassische Ansatz; FPGAs rechnen parallel, programmiert in VHDL und parametriert über ein blockbasiertes Werkzeug. Mehr Code bedeutet größere und damit teurere FPGAs sowie langes Kompilieren. Er ist gut geeignet, wenn die Vorverarbeitung und damit die Reduktion der Bilddaten nicht häufig geändert werden muss. Dies ist aber bei den heutigen flexiblen Maschinen immer seltener der Fall.

x86-GPU: Die GPUs sind sehr schnell, aber nicht für jeden Algorithmus geeignet. Manche Bibliotheken (z.B. Halcon) unterstützen GPUs. Ansonsten erfolgt die Programmierung in Cuda oder Open CL. Sehr leistungsstarke GPUs benötigen viel Strom und müssen daher aktiv gekühlt werden. Aufgrund ihrer Herkunft sind sie i. Allg. nicht langzeitverfügbar. Anders sieht es bei in CPUs integrierten GPUs aus. Diese bringen nicht die Performance einer Grafikkarten-GPU, könnten aber einen Kompromiss darstellen. Für Bildverarbeitung ausgelegte Embedded-Rechner gibt es inzwischen mit CPU-GPU-Verbund.

Dual-Mehr-Kern-DSPs: Neueste Prozessoren mit bis zu acht DSP-Kernen – inkl. starker Gleitkomma-Rechenleistung – können eine Lösung sein, zumal sie per Prozessor-Highspeed-Interface auch mehrfach auf dem Board vorhanden sein können. Für das oben genannte Beispiel mit 1GP/s bedeutet dies: Verteilt auf zweimal acht Kerne sind es pro Kern 62,5MB/s an Datenrate. Programmiert wird in C++ mit einer Eclipse-basierten Entwicklungsumgebung. Ergänzend gibt es die Prozessoren in Kombination mit Zwei-Kern-x86-Prozessoren.

FPGA-ARM: Da der ARM innerhalb eines FPGAs nicht die komplexen Aufgaben übernehmen kann, muss die Rechenleistung im FPGA stattfinden mit den dafür geschilderten Vor- und Nachteilen. Es können kompakte Systeme aufgebaut werden. Bei 1GPixel/Sekunde wird es aber stark von der FPGA-Größe abhängig sein, ob der Ansatz auch funktioniert.

Mehrfach x86: Per PCIe können x86-Prozessoren/-PCs verbunden werden, entwickelt wird dann auf mehreren Maschinen. Allerdings muss der Datenaustausch organisiert und programmiert werden. Insgesamt wird der Systemaufbau mächtig und stromhungrig. Vorteilhaft ist aber, dass alles mit den typischen Microsoft-Werkzeugen entwickelt wird.

Anzeige

Empfehlungen der Redaktion

Das könnte Sie auch interessieren

Wo andere Messmikroskope nur 1/2″ oder 2/3″-Bildsensoren unterstützen, gestatten die hochpräzisen Wide-Field Video Microscope Units (Wide VMU) die Verwendung von Kameras im APS-C-Format (22,2×14,8mm). Dies ermöglicht ein über siebenmal größeres Bild zur Inspektion. ‣ weiterlesen

www.mitutoyo.de

Anzeige

Die monochrome GigE-Kamera Hawk erzielt bei einer Bildauflösung von 1MP bis zu 100fps. Durch Nutzung der 12/16Bit Datenübertragung kann der volle Dynamikumfang des CCD-Sensors genutzt werden. Selbst bei einer 8Bit Datenübertragung kann durch die integrierte Gamma-Funktion eine höhere Dynamik erreicht werden, wodurch eine erneute Bildaufnahme mit anderer Belichtungszeit überflüssig und somit die Verarbeitungsgeschwindigkeit erhöht wird. ‣ weiterlesen

www.goepel.com

Anzeige

Mit Einführung der Kameras DP27 (5MP) und DP22 (3MP) präsentiert Olympus die nächste Generation digitaler Kameras für die Mikroskopie. Beide Kameras liefern ein detailliertes Full-HD-Live-Bild über eine USB-3.0-Schnittstelle mit einer Bildrate von 30fps (DP22) bzw. 22fps (DP27). Je nach den individuellen Erfordernissen hat der Nutzer die Wahl zwischen einem High-Fidelity-Modus für Bilder in Okular-ähnlicher Qualität sowie einem Normal-Modus mit optimierter Farbwiedergabe, der ideal für schwach gefärbte Proben geeignet ist. ‣ weiterlesen

www.olympus-ims.com

Anzeige

Bei dem kontaktfrei arbeitenden Display-Charakterisierungssystem VCProbe wird der Messkopf durch einen Roboterarm geführt und folgt den unterschiedlichen Displayoberflächen. Möglich sind Vermessungen von 2 bis zu 150Zoll-Bildschirmen. Dabei können Parameter wie Farbe, Kontrast, Reflexionsgrad, Polarisation und Strahldichte in einer Winkelauflösung von 0,5°-Schritten bei Einfallswinkeln von 0 bis 80° erfasst werden und dies bei Geschwindigkeiten von unter 2sec/Messpunkt. ‣ weiterlesen

www.polytec.de

Anzeige

Die AttoMap Software stellt spektroskopische Daten, die mithilfe von Kathodolumineszenz (KL)-Technologie aufgenommen wurden, in 3D dar. Die KL-Technologie integriert ein Rasterelektronenmikroskop und ein Lichtmikroskop in einem hochauflösenden spektroskopischen Instrument. ‣ weiterlesen

www.digitalsurf.fr

Anzeige

Die Telmetricstar Heizkostenverteiler von Brunata-Metrona bestimmen den exakten Wärmeverbrauch von Heizkörpern und übermitteln die Verbrauchswerte an einen Datensammler, der sich außerhalb der Wohnung befindet. Während der Produktion der Heizkostenverteiler werden Data Matrix-Codes auf die Einheiten für die spätere Rückverfolgbarkeit gedruckt. ‣ weiterlesen

Anzeige

www.wi-sys.de

Anzeige

Laut einer aktuellen Studie von MarketsandMarkets steigt der Markt für Produkte und Services im Bereich non-destructive Testing (NDT) von 3,77Mrd. USD im Jahr 2013 bis auf 6,88Mrd. USD im Jahr 2020. NDT fasst verschiedene Techniken wie Ultraschall, Thermographie oder Wirbelstrom-Prüfgeräte zusammen. ‣ weiterlesen

www.marketsandmarkets.com

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige