Jenseits der FPGA-Grenzen


Beschleunigte Applikations- entwicklung

Der ARM-Applikationsprozessor des Zynq-SoC und die FPGA-Logik ergänzen sich. Komplexe Algorithmen lassen sich in der FPGA-Logik implementieren (Bild 2). Dazu zählt die beschleunigte Abarbeitung zur Entlastung des Applikationsprozessors mit besserer System-Performance. Zur Anbindung des Systems an einen zentralisierten Controller stehen für das Zynq-SoC mit seinem programmierbaren I/Os eine hohe Anzahl an Protokollen zur Kommunikation und Video-Übertragung zu Verfügung. Auch proprietäre Standards werden unterstützt. Durch die flexible Optimierung der Prozessor-Ressourcen unterscheidet sich das Zynq-SoC von konventionellen DSP- oder GPU-basierten ICs, die nicht immer die Leistung für alle erforderlichen Algorithmen in der verfügbaren Anzahl von Zyklen aufbringen und oft ein zusätzliches Stand-alone FPGA erfordern. Zur vollen Ausschöpfung der konfigurierbaren Ressourcen des Zynq-Bausteins vereinfacht die Vivado HLS Design-Suite die Partitionierung von Hardware und Software. Sie erlaubt die schnelle Neuzuweisung von Aufgaben, wenn diese erkennbar die Leistung begrenzen. Die Suite ist besonders geeignet für Embedded-Vision-Applikationen und Entwickler, die das Arbeiten mit Vision-Algorithmen in C und C++ gewohnt sind. Wenn ein Algorithmus zu langsam ist oder den Applikationsprozessor überlädt, erlaubt die Suite dessen automatische Synthetisierung in Verilog oder VHDL für die FPGA-Logik des SoC. Das erübrigt manuelle Konversion von C- oder C++-Code in den äquivalenten HDL-Code, was erhebliche Entwicklungszeit in Anspruch nähme und ein Design-Risiko bedeutet. Daneben kann Vivado HLS auf der Systemebene positiv zur Erstellung eines Kompromisses zwischen Prozessor und Logik beitragen. Anschließend kann man das revidierte System im Zynq SoC betreiben, um die System-Performance für die vorgesehene Anwendung zu optimieren. Die Zynq-SoC Entwicklungs-Infrastruktur unterstützt auch die OpenCV Open-Source-Bibliothek und deren Algorithmen, um das Design von eingebetteten Vision-Systemen zu beschleunigen. Die Bibliothek wird stetig erweitert und enthält bereits mehr als 2.500 in C, C++, Java und Python geschriebene Algorithmen. Sie reichen von simplen Funktionen wie Bildfilter bis zu analytischen Aufgaben wie Bewegungsdetektion. Vivado HLS erlaubt die Nutzung des Zynq-SoC zur Synthetisierung oder Kompilierung der Algorithmen in RTL-Code, der zur Implementierung in der FPGA-Logik des SoC optimiert ist. Außerdem wurde die SmartCore IP-Suite geschaffen, die Zugriff auf eingebettete Vision-IP bietet. Damit ist die Implementierung von SmartCore IP-Cores und Algorithmen aus der OpenCV-Bibliothek innerhalb eines eingebetteten Vision-Projekts möglich und gleichzeitig den IP-Integrator nutzen, ein Tool, das sowohl die schematische Eingabe, als auch Umgebungen mit Befehlszeilen unterstützt.

Seiten: 1 2Auf einer Seite lesen

Das könnte Sie auch Interessieren