Hacksters FPGAdventures: Eine neue Reise mit dem Microchip PolarFire SoC Video Kit
HeimHeim > Blog > Hacksters FPGAdventures: Eine neue Reise mit dem Microchip PolarFire SoC Video Kit

Hacksters FPGAdventures: Eine neue Reise mit dem Microchip PolarFire SoC Video Kit

Sep 01, 2023

Hacksters FPGAdventures beginnt eine neue Etappe seiner Reise, denn in Serie 2 tauchen wir tief in Microchips neuestes Entwicklungsboard für seinen PolarFire SoC ein – ein neuartiges, stromsparendes und dennoch leistungsstarkes Gerät, das flexible FPGA-Funktionen (Field Programmable Gate Array) mit kombiniert ein Quintett von Verarbeitungskernen der Anwendungsklasse, die auf der kostenlosen und quelloffenen RISC-V-Befehlssatzarchitektur (ISA) basieren.

Das PolarFire SoC Video Kit basiert, wie der Name schon sagt, auf dem PolarFire SoC für Videoprojekte – und wird komplett mit einem Paar Sony-Sensorkameras mit 4K-Auflösung geliefert, die in einer geeigneten Ausrichtung für Stereovideoarbeiten angeordnet sind. Könnte das PolarFire SoC Video Kit mit Platz für Hardware-Erweiterung, zwei Ethernet-Anschlüssen für die Kommunikation und sogar einem PCI-Express-Steckplatz das ultimative Gerät für Edge-Video-Experimente sein?

Das PolarFire SoC Video Kit ist natürlich nicht das erste Microchip-Entwicklungsboard, das mit diesem Gerät ausgestattet ist. Diese Ehre geht an das Icicle Kit, das als allgemeinere Plattform zum Experimentieren mit dem PolarFire SoC konzipiert wurde – und das im Mittelpunkt unserer früheren FPGAdventures-Serie 1 stand, die Sie ab hier vollständig lesen können.

Stellt man die beiden Platinen nebeneinander, fällt eine Änderung sofort ins Auge: Das PolarFire SoC Video Kit ist deutlich größer als sein Vorgänger. An der Unterkante befindet sich derselbe vierspurige PCI Express Gen. 2-Steckplatz und ein mikroBUS-Header für eine schnelle Hardware-Erweiterung – aber da enden die Gemeinsamkeiten auch schon. Der 40-polige GPIO-Header (Allzweck-Eingang/Ausgang) des Icicle-Kits wurde entfernt und durch einen wohl nützlicheren High-Density-Anschluss für eine FPGA-Mezzanine-Karte (FMC) ersetzt. Die beiden Gigabit-Ethernet-Ports sind vorhanden und korrekt, allerdings an den oberen Rand verschoben, aber der SD-Kartenslot in voller Größe ist durch die Wäsche geschrumpft und ist nun stattdessen ein microSD-Kartenslot.

Die vielleicht interessanteste Änderung zwischen den beiden Boards ist die Integration von nicht nur einem, sondern zwei HDMI 2.0-Anschlüssen – einem Eingang und einem Ausgang. Im Gegensatz dazu fehlt dem Icicle Kit die HDMI-Konnektivität, sodass das Video Kit für ... nun ja, Videoaufgaben sofort nützlicher ist. Das Highlight der neuen Platine ist jedoch ein hochdichter Anschluss an der Oberkante mit MIPI Camera Serial Interface (CSI)-Konnektivität – konzipiert für die Verwendung mit einer mitgelieferten Tochterplatine, die mit zwei Sony IMX334-Kameras mit 4K-Auflösung ausgestattet ist und für Stereobildgebung positioniert ist Aufgaben.

Es muss gesagt werden, dass diese Tochterplatine wahrscheinlich eine Designentscheidung ist, die man entweder lieben oder hassen kann. Es handelt sich um eine starre Platine, die genau in den CSI-Anschluss passt, wobei die Sensoren nach außen zeigen. Das heißt, es ist nicht nötig, einen Ständer aufzubauen, um alles außer der Decke zu filmen – aber es bedeutet auch, dass man sich nicht dorthin bewegen kann, wo sie hinschauen Ohne das gesamte Entwicklungsboard zu drehen, angesichts der beeindruckenden Größe keine leichte Aufgabe. Wenn Sie die Ethernet-Anschlüsse verwenden, müssen Sie auch sicherstellen, dass deren Kabel nicht in das Sichtfeld der Kameras geraten.

Auch der PolarFire SoC selbst unterscheidet sich zwischen den beiden Boards. Das Icicle Kit verwendet den MPFS250T-FCVG484EES, während das Video Kit den MPFS250TS-1FCG1152I verwendet. Optisch bedeutet dies, dass der Chip des Video Kits deutlich größer ist und über einen stärkeren Heatspreader verfügt als der des Icicle Kit; Wenn Sie sie entlöten und von unten nachsehen würden, würden Sie sehen, dass das daran liegt, dass das Icicle Kit einen Ball Grid Array (BGA)-Chip mit 484 Anschlüssen und das Video Kit einen mit 1.152 Anschlüssen verwendet. Intern sind die beiden gleich und bieten 254.000 Logikelemente mit vier Eingängen, 784 Mathematikblöcke, 16 SERDES-Lanes mit 12,7 Gbit/s Bandbreite und vier RV64GC RISC-V-Anwendungskerne mit 600 MHz – aber der Verpackungsunterschied wirkt sich darauf aus, wie viel davon der Chip hat Die interne Funktionalität wird auf der Hostplatine bereitgestellt.

Die Idee eines „anwendungsspezifischen FPGA“ scheint lächerlich, und das ist sicherlich nicht das, was Microchip hier anbietet: Der PolarFire-SoC auf dem Video Kit ist genauso flexibel und konfigurierbar wie der auf dem Icicle Kit, und – fehlende Board-Funktionen wie … Ungeachtet des GPIO-Headers können Sie alles, was Sie mit dem Icicle Kit tun können, auch mit dem Video Kit tun. Dies bietet einen tollen Einstieg, wenn Sie bereits Erfahrung mit dem Icicle Kit haben.

Aber das Board selbst ist unbestreitbar für eine Anwendung bzw. eine bestimmte Anwendungsklasse konzipiert. Der Name sagt es schon: das PolarFire SoC Video Kit. Diese zusätzlichen Anschlüsse auf dem FPGA-Gehäuse werden verwendet, um leistungsstarke Konnektivität bereitzustellen, die für die Verwendung mit Bildsensoren geeignet ist, und zwar nicht nur über den CSI-Anschluss und die mitgelieferte Dual-4K-Sensor-Tochterplatine, sondern auch über den HDMI-Eingang und den FMC-Anschluss – einschließlich CoaXPress 2.0-, 6/12G-SDI-, bis zu 10G-USXGMII- und USB 3.1 Gen. 2-Konnektivität, allerdings ist für die Verwendung dieser Verbindungen zusätzliche Hardware in Form einer geeigneten Mezzanine-Karte erforderlich.

Das Vorhandensein von USB 3.1 Gen. 2 am FMC-Anschluss wirft eine Frage zum Funktionsumfang des Boards auf: das Fehlen von USB auf dem Board selbst. Trotz seiner beeindruckenden Größe ist der einzige USB-Host-Anschluss ein einfacher Micro-USB-2.0-On-The-Go-Header – eine verpasste Gelegenheit für eine einfache Möglichkeit, zusätzliche kostengünstige USB-Kamerasensoren hinzuzufügen, um bei Experimenten mit fester Breite eine einfache Erweiterung zu ermöglichen Die mitgelieferte Stereo-Vision-Karte reicht nicht aus.

Es gibt auch Hinweise auf eine Anwendbarkeit in Bereichen, die nicht mit der reinen Videoarbeit in Zusammenhang stehen: Die Video-Kit-Karte enthält einen CAN-FD-Header für die Arbeit mit dem Controller Area Network (CAN)-Bus – ursprünglich für die Automobilverkabelung entwickelt, mittlerweile aber auch häufig in industriellen Steuerungssystemen zu finden. Es sollte natürlich nicht überraschen: Da sich die Automobilindustrie stark auf fortschrittliche Fahrerassistenzsysteme (ADAS) konzentriert, gibt es durchaus Raum für die Entwicklung einer PolarFire-SoC-basierten In-Car-Vision, wenn nicht sogar auf vollständige Selbstfahrfähigkeiten System.

Softwareseitig gibt es keinen Unterschied zwischen dem Icicle Kit und dem Video Kit. Die gesamte Videohardware wird auf dem Gerät verwaltet, entweder auf dem FPGA oder auf den RISC-V-SoCs innerhalb der vorinstallierten Linux-Umgebung, je nachdem, was Sie tun. Wenn Sie eine Entwicklungsumgebung für das Icicle Kit eingerichtet haben, können Sie mit dem Video Kit loslegen – schließen Sie einfach das mitgelieferte Micro-USB-Kabel an und machen Sie sich an die Arbeit.

Für diejenigen, die neu einsteigen, bedeutet das, dass alle Kritikpunkte, die gegen das Icicle Kit geäußert wurden, auch für das Video Kit gelten – angefangen bei der Notwendigkeit, sich für eine Lizenz für die Libero SoC-Entwicklungssuite zu registrieren. Obwohl die Lizenz kostenlos ist (obwohl jedes Jahr eine erneute Registrierung erforderlich ist), wird sie auch von einem lästigen und überraschend ineffektiven Lizenzvalidierungsserver unterstützt. Sie sind vollständig für das Hosten und Ausführen auf Ihrer eigenen Hardware verantwortlich.

Es ist auch immer noch nicht besonders einladend für Neuankömmlinge. Wie wir in unserer ursprünglichen FPGAdventures-Serie 1 des Icicle-Kits festgestellt haben, steht der Wunsch von Microchip, dass Hersteller und Bastler die PolarFire-SoC-Plattform übernehmen, im Widerspruch zum stark unternehmerischen Charakter seiner Software. Die Einführungsleitfäden bringen Sie nur bedingt weiter, und der Sprung vom Befolgen der Einführungsprojekte zur Entwicklung von etwas völlig Neuem ist nichts für schwache Nerven.

Das heißt natürlich nicht, dass Microchip es nicht versucht. Das Video-Kit wird mit einem vorprogrammierten Projekt geliefert, um einen H.264-Encoder auf dem FPGA auszuführen und das resultierende Video über einen der beiden Ethernet-Ports zu streamen, komplett mit einer webbasierten Benutzeroberfläche zum Anpassen von Komprimierung, Farbbalance und Helligkeit. Dies ist Schritt für Schritt im GitHub-Repository von PolarFire SoC dokumentiert. Eine zweite Demo, die das Video Kit mit einem Icicle Kit unter Verwendung der Open Platform Communications (OPC) Unified Architecture (UA) verknüpft, um industrielle Steuerung am Edge durch Antreiben eines Schrittmotors zu demonstrieren, ist nur in einer PDF-Anwendungsnotiz, einem Echo, dokumentiert des gleichen Scattershot-Ansatzes zur Dokumentation wie beim Icicle Kit.

Sie benötigen auch weiterhin einen leistungsstarken Computer als treibende Kraft für Ihre Projekte. Libero SoC Design Suite, wie das vollständige Softwarepaket heißt, erfordert zum Betrieb über 30 GB Festplattenspeicher und ein System mit mindestens 16 GB RAM. Außerdem ist es offiziell nur unter Windows 10, nicht unter Windows 11, und ausgewählten älteren Versionen von Red Hat Enterprise Linux, CentOS, OpenSUSE Leap und Ubuntu Linux verfügbar – die neueste davon, Ubuntu 20.04 LTS, feierte kürzlich ihren dritten Geburtstag und hat dies auch seitdem getan wurde durch Ubuntu 22.04 LTS ersetzt. Diejenigen, die andere Linux-Distributionen verwenden, werden mit ziemlicher Sicherheit feststellen, dass die seltsam fragile Software nicht installiert werden kann. Diejenigen, die Apples macOS verwenden, haben nicht einmal die Möglichkeit, es auszuprobieren, da keine kompatiblen Builds verfügbar sind.

Die oben genannten Kritikpunkte sind allesamt gute Gründe, warum das PolarFire SoC Video Kit für Gelegenheitsbastler möglicherweise nicht attraktiv ist, aber es gibt einen größeren Grund: den Preis. Das PolarFire SoC Video Kit kostet knapp 2.000 US-Dollar inklusive Platine, Netzteil, 4K-Kamera-Tochterplatine mit zwei Sensoren und Netzteil; Im Gegensatz dazu ist das Icicle Kit um 600 US-Dollar günstiger – dank der weltweiten Inflation und der Nachwirkungen der pandemiebedingten Komponentenknappheit ist der Preis höher als der ursprüngliche Einführungspreis von 499 US-Dollar.

Angesichts der Fähigkeiten und Spezifikationen des Geräts und des im Kit enthaltenen hochauflösenden Kameramoduls kann man das PolarFire SoC Video Kit nicht als überteuert bezeichnen – tatsächlich ist es für ein Ingenieursteam, das durch die Forschung eines gut finanzierten Unternehmens unterstützt wird, recht günstig und Entwicklungsbudget. Für die meisten Hersteller müsste es jedoch ein sehr überlegter Kauf sein – und für Projekte, die das Beste aus seinen Fähigkeiten herausholen können.

Die Beispielprojekte von Microchip dienen genau dazu, diese Fähigkeiten zu demonstrieren, und in unserem nächsten FPGAdventures-Eintrag der Serie 2 werfen wir einen Blick auf das erste Demoprojekt des Unternehmens – H.264-Videokodierung und Netzwerk-Streaming – um zu sehen, ob es funktioniert genug, um zu verdeutlichen, warum Sie fast 2.000 US-Dollar für das Kit ausgeben sollten.

Weitere Informationen zum PolarFire SoC Video Kit finden Sie auf der Microchip-Website und auch auf der Produktseite von Avnet.

Lesen Sie jetzt die gesamte FPGAdventures-Serie 1: Das Microchip PolarFire SoC Icicle Kit:

PreisFPGACPUGPURAMLagerungVernetzungErweiterungMaßePackungsinhalt