Deutliche CPU-Entlastung

FPGA basierte Smart-Kameras als IPC-Ersatz

Bildverarbeitungsvorgänge in Vision-Applikationen beanspruchen oft immense Ressourcen der CPU. Eine Steigerung der Performance ist deshalb bei beengten Platzverhältnissen oft eine große Herausforderung. FPGAs können diesem Problem mit deutlicher Effizienzsteigerungen begegnen. Welche Bildverarbeitungsvorgänge sind für FPGAs aber prädestiniert, wie genau unterscheidet sich die Performance zwischen CPU und FPGA im laufenden Betrieb und wie sollte eine Build-in-Lösung zur FPGA Bildvorverarbeitung aufgebaut sein?
Auch wenn sich konventionelle Machine-Vision-Lösungen bislang auf hoch performante CPUs verlassen haben, um die erforderliche Geschwindigkeit und Qualität der Bildverarbeitungsapplikationen zu erreichen, tendieren die leistungsfähigen Prozessoren dazu, sowohl teurer zu sein als auch größere und komplexere Systeme zu erfordern. Für IPC-basierte Lösungen werden deshalb oft Stand-Alone Industrie-PCs verwendet und die externen Kameras über externe oder eingebettete Framegrabber angebunden. Eine Alternative hierzu sind Smart-Kameras. Hier sind alle Vision-Komponenten in einer einzigen Small Form Factor Unit integriert. Ein Nachteil ist jedoch, dass konventionelle Smart-Kameras oft einen Low-Power Single-Core Atom Prozessor nutzen, um die erzeugte Wärme zu reduzieren und den Bedarf nach einer aktiven Lüftung zu beseitigen. Grafikaufwendigere Applikationen, die große Datenmengen verarbeiten, bauen aber auf einer starken CPU-Leistung auf. Inhärente Konflikte können jedoch die Folge sein. Diese tauchen immer dann auf, wenn die Anforderung nach hoher Leistung zugleich auf die Anforderung nach geringer Größe und/oder geringen Kosten stößt, denn eine intensive Datenverarbeitung erfordert auch immer eine teurere CPU, die zudem auch noch mehr Wärme erzeugt und somit auch ein größeres und auch leistungsfähigeres System zur Wärmeabführung benötigt. Deshalb war es schon immer eine der größten Herausforderungen, Systeme zu entwickeln, die die konträren Anforderungen einer kleineren Größe bei großer Leistung optimal ausbalancieren. Durch den Einsatz von FPGAs kann man diese Herausforderungen bewältigen.

Vorteile von FPGA

FPGAs sind umprogrammierbare Schaltungen, die eine parallele Computing-Architektur verwenden, die aus mehreren konfigurierbaren Logikblöcken (CLBs), festen Funktionslogikblöcken und einem integrierten RAM bestehen. Bei FPGAs werden die Rechenaufgaben mithilfe einer Konfigurationsdatei entwickelt, die vorgibt, wie die Komponenten miteinander verbunden sind. Über vorgefertigte Logikblöcke und programmierbare Routing-Ressourcen können die FPGAs konfiguriert werden. So lassen sich benutzerdefinierte Hardware-Funktionen implementieren; zeitaufwendige und komplizierte PCB Herstellungsprozesse für kundenspezifische ASIC-Design sind nicht erforderlich. Da FPGAs sich vollständig rekonfigurieren lassen, können sie jedes Mal, wenn ihre Datei neu kompiliert wird, um eine neue Schaltungskonfiguration vorzuschreiben, eine andere funktionelle Identität übernehmen. FPGAs verbinden zudem das Beste aus zwei Welten: Sie liefern eine Hardware-basierte Geschwindigkeit und Zuverlässigkeit und behalten dennoch zugleich auch eine hohe flexibel programmierbare Anwendungsflexibilität bei. Dadurch kombinieren sie das Beste von ASICs und Prozessor-basierten Systemen und sind deshalb in vielen Industriebereichen sehr beliebt. Bei der Halbleiterverarbeitung werden FPGAs oft für das Produkt-Prototyping eingesetzt, um Ideen und Funktionen zu testen und zu überprüfen – und das ohne die Kosten und Schwierigkeiten eines kompletten Chipherstellungsprozesses. Der vollständig parallele Aufbau von FPGAs erlaubt es, jede unabhängige Verarbeitungsaufgabe einem speziellen Bereich des Chips zuzuordnen. Das geschieht mittels Verarbeitungsoperationen in einem Bereich, der von anderen Logikblöcken isoliert wird, so dass die Leistung dieses Bereiches nicht beeinflusst wird, wenn weitere Verarbeitungsaufgaben hinzugefügt werden. Folglich können FPGAs mehrere Aufgaben gleichzeitig verwalten und das bei maximalen Verarbeitungsgeschwindigkeiten, was FPGAs für die Implementierung einer datenintensiven Verarbeitung von parallelen Algorithmen prädestiniert. Weitere Vorteile von FPGA sind…

  • • Gesteigerte Leistung: Die Parallelität von Hardware ermöglicht es FPGAs, die CPUs hinsichtlich der Verarbeitung bestimmter Algorithmen (besonders diejenigen mit paralleler Beschaffenheit) mit mehr als tausendfacher Geschwindigkeit zu übertreffen. Im Gegensatz zu FPGAs berechnen CPUs der Reihe nach, teilen Algorithmen in sequentielle Operationen auf und begrenzen die Ausführung auf jeweils einen Vorgang.
  • • Schnellere Time-to-Market: Die Umprogrammierbarkeit von FPGAs erlaubt es, Ideen und Funktionen auf der Hardware zu testen und zu überprüfen – und dies ohne die Zeit, Kosten und Schwierigkeiten, die bei einem kompletten Chipherstellungsprozess zustande kämen. Änderungen können innerhalb von Stunden anstatt Wochen umgesetzt (oder auch verworfen) und getestet werden.
  • • Kostensenkung: Im Vergleich zu den einmaligen Engineering Kosten für benutzerdefinierte ASICs sind FPGAs sehr kosteneffizient und das nicht nur für das Produkt-Prototyping, sondern auch für System-Upgrades und Erweiterungen. Inkrementelle Änderungen an FPGA-Designs zur Erweiterung und/oder Verbesserung der Funktionalität können einfach und günstig umgesetzt werden, ohne das Hardwaredesign ändern zu müssen. Da FPGAs außerdem auch im laufenden Betrieb beim Kunden im Feld aufrüstbar sind, bieten sie in der Regel auch eine längere Lebensdauer mit verringerten langfristigen Systemwartungs- bzw. Systemaustauschkosten.

Einen FPGA-Chip als Co-Prozessor zu nutzen, um ausgewählte Bildverarbeitungsalgorithmen (z.B. Tabellenlesen) zu implementieren, kann zur Entlastung der CPU beitragen und so Ressourcen freistellen, mit denen man andere Operationen durchführen kann. Bilddaten können zudem zwischen FPGA und CPU gestreamt werden, um gemeinsam Aufgaben abzuarbeiten und so die Gesamtleistung des Vision Systems beträchtlich zu steigern.

Leistungsvergleich CPU – FPGA

Wie Tabelle 2 zeigt, dauert eine CPU-basierte Operation 4,5ms und verwendet vier Prozent der Verarbeitungsressourcen für ein häufig verwendetes Dienstprogramm zur Bildverarbeitung, um einen LUT Algorithmus auf ein 2MP Bild anzuwenden. Ein FPGA hingegen führt diese Aufgabe in 0,025ms aus, ohne jegliche CPU-Ressourcen zu verbrauchen, d.h. eine 100.000-fache Erhöhung der Geschwindigkeit. Wenn zudem Funktionen zur Shading-Korrektur durchgeführt werden, braucht die CPU mit Bildverarbeitungssoftware 1,3ms und zwei Prozent der CPU Ressourcen, um die Verarbeitungsaufgabe abzuschließen, während der FPGA nur 25ns braucht und keine CPU-Leistung in Anspruch nimmt. Trotz der offensichtlichen Vorteile hinsichtlich Kosten, Flexibilität und Leistung sind FPGAs in Vision Systemen bisher nicht so weit verbreitet. Ein Hauptgrund sind Schwierigkeiten bei der Programmierung. Wenige Programmierer sind mit den sehr hardwarenahen Sprachen, wie VHDL oder Verilog, vertraut, die für FPGAs verwendet werden und dadurch entsteht ein Hindernis für eine breite Entwicklung und Nutzung. Mit dem Aufkommen neuer Interface-Produkte und Design-Tools gewinnen FPGAs jedoch neue Marktimpulse.

Das könnte Sie auch interessieren

Rückblick: GOM 3D Metrology Conference

Mehr als 750 Messtechnik-Spezialisten aus über 50 Ländern kamen zur diesjährigen 3D Metrology Conference mit begleitender Fachmesse und Factory Walk vom 26. bis 27. September am GOM Firmensitz in Braunschweig zusammen, um sich über die Implementierung messtechnischer Automatisierungslösungen, virtuelle Zusammenbauanalyse, Materialprüfung und optische 3D-Inspektion auszutauschen.

www.gom-conference.com

Anzeige
Infratec: 10-jähriges Jubiläum in den USA

Im Jahr 2007 eröffnete der Infrarotsensorik- und Messtechnik-Spezialist seine erste internationale Niederlassung im US-amerikanischen Grapevine, unweit der Metropole Dallas. Damit einher ging die Gründung der Tochterfirma InfraTec infrared LLC, die seitdem die hohe Nachfrage nach Infrarotsensorik in Nordamerika und speziell den USA vom texanischen Standort Plano abdeckt.

 

www.infratec.de

30-jähriges Jubiläum von EVK

Das österreichische Unternehmen EVK DI Kerschhaggl GmbH aus der Steiermark feiert dieses Jahr sein 30-jähriges Firmenjubiläum. Seit seiner Gründung 1987 konzentriert sich der Hersteller und Entwickler von sensorbasierten Sortier- und Analysesystemen auf Lösungen für die Bewertung und Sortierung von Schüttgut in den Bereichen Recycling, Bergbau, Lebensmittel und Pharmazie.

www.evk.biz

Anzeige
Programm Vision Expert Huddles

Zum ersten Mal bietet der VDMA IBV an den ersten zwei Messetagen der SPS IPC Drives ein neuartiges Vortragskonzept an. Ziel ist, Experten aus der Bildverarbeitungsindustrie mit Messebesuchern und Anwendern ins Gespräch zu bringen. Die Vision Expert Huddles finden am Vision Pavillon in Halle 3A Stand 151 statt. Die Teilnahme am Forum ist kostenfrei.

ibv.vdma.org

Anzeige
High-End Sensors International Conference

Die zweitägige Fachkonferenz ‚High-End Sensors International‘ wird vom 11. bis 12. April 2018 im Sheraton Airport Hotel in Brüssel stattfinden. In über 30 Fachvorträgen in zehn verschiedenen Themenblöcken sowie einer begleitenden Ausstellung widmet sich die gesamte Konferenz den Möglichkeiten für Forschung und Maschinenbau, die der High-End-Sensor-Markt mit sich bringt.

www.highendsensors.net

Hamamatsu Photonics Technology Days 2017

Der japanische Photonics-Spezialist Hamamatsu veranstaltet dieses Jahr seine vierten Photonics Technology Days – eine Reihe von eintägigen Events in Europa. Die diesjährigen Veranstaltungen stehen unter dem Motto ‚Chasing Photons in X-ray and Infrared‘ und finden in Solothurn (17.11.), München (20.11.), London (21.11.), Bordeaux (22.11.), Mailand (23.11.) und Helsinki (24.11.) statt.

www.technology-days.com

Anzeige