Hardware mit Java konfigurieren

Hardware mit Java konfigurieren

Steckmodul senkt Einstiegshürde in die FPGA-Anwendung

Interview mit Oliver Schweissgut, Geschäftsführer der Os-cillation GmbH

Die Hardwarebeschreibungssprache ist für manchen Software-Entwickler eine Hemmschwelle, um konfigurierbare Hardware wie FPGAs zu nutzen. Die Os-cillation will diese Einstiegshürde mit dem Steckmodul EasyFPGA verringern. Geschäftsführer Oliver Schweißgut erklärt, wie er sich das vorstellt.

 (Bild: Os-cillation GmbH)

(Bild: Os-cillation GmbH)

Herr Schweißgut, FPGAs finden immer mehr Verwendung. Wie liegen die Vorteile dieser Chips?

Oliver Schweissgut: Im Vergleich zu älteren Ansätzen wie CPLDs können FPGAs wesentlich komplexere Schaltungen aufnehmen, weshalb sie universell einsetzbar sind. Gegenüber einem Microcontroller lässt sich mit einem FPGA beispielsweise für einen ganz konkreten Fall eine Hardwarebeschleunigung generieren wie etwa für kryptografische Berechnungen oder Schnittstellen, die unabhängig von einer CPU bestimmte Tasks abhandeln sollen. FPGAs steigern also die Effizienz solcher Vorgänge.

Für welche Zwecke wird konfigurierbare Hardware wie FPGAs eingesetzt?

Schweissgut: Zum Beispiel in Systemen, in denen spontan mehrere Schnittstellen wie CAN-Bus, SPI oder GPIOs benötigt werden. Des Weiteren können Raspberry-Pi-Nutzer FPGA-Module verwenden, um dem Single-Board-Computer weitere Schnittstellen hinzuzufügen. FPGA-Module eignen sich sozusagen sehr gut als Universaladapter, um Hardware nach den eigenen individuellen Vorgaben zu konfigurieren.

Und dennoch scheuen sich viele Programmierer vor der Anwendung von FPGAs.

Schweissgut: Das liegt an der Hardwarebeschreibungssprache, die zur Konfiguration der Hardware eingesetzt wird. Hardwarebeschreibungssprachen wie VHDL oder Verilog führen Befehle nicht sequenziell aus, wie es ein Software-Entwickler von herkömmlichen Programmiersprachen her kennt. Man kann sich eine Hardwarebeschreibungssprache wie einen Schaltplan vorstellen, durch den mehrere Befehle parallel ausgeführt werden. Im Vergleich zu einer sequenziell aufgebauten Programmiersprache steigt dadurch die Komplexität, weshalb VHDL oder Verilog für so manchen Software-Programmierer eine hohe Einstiegshürde darstellen.

Wie hat Os-cillation diese Hürde genommen?

Schweissgut: EasyFPGA bietet eine zusätzliche Abstraktionsebene, die es ermöglicht aus der Hochsprache Java vordefinierte Komponenten zu nutzen. Dazu sind keine Kenntnisse einer Hardwarebeschreibungssprache nötig! Diese vordefinierten Komponenten, sogenannte EasyCores, werden über Java frei zusammengesetzt. Aus einer solchen FPGA-Definitionsklasse wird VHDL generiert und an das Synthesewerkzeug übergeben. Im EasyFPGA-SDK sind neben GPIO die Komponenten Frequenzteiler, 8- und 16-Bit PWM, MIDI und Schnittstellen wie UART, I2C und SPI integriert. Ein CAN-Wrapper ermöglicht zudem die Integration eines CAN-Bus Interfaces. Da das SDK Open Source ist, kann der Anwender auf das Kit zugreifen und eigene EasyCores hinzufügen.

Über welche Hardware verfügt das EasyFPGA Board?

Schweissgut: Es basiert auf einem Xilinx Spartan 6 XC6SLX9. Über die standardmäßigen 2,54mm-Stiftleisten können insgesamt 72 GPIOs erreicht werden. Der generierte Code wird direkt über eine USB2.0-Schnittstelle ins Steckmodul geladen, so dass kein externer Programmieradapter benötigt wird. Zudem kann das EasyFPGA über USB auch mit Strom versorgt werden. Alternativ erfolgt die Spannungsversorgung über einen Hohlstecker. Das Modul verfügt über einen nichtflüchtigen Speicher und lädt beim Hochfahren die zuletzt bekannte Hardwarekonfiguration.

FPGAs wird ein hoher Preis nachgesagt. Wie sieht es bei Ihrem Modul aus?

Schweissgut: Da das Modul nur die notwendigste Peripherie besitzt, wir haben zum Beispiel auf die für Entwicklungsboards typische 7-Segment-Anzeige verzichtet, können wir es mit einen Einstiegspreis von 126 Euro vergleichsweise günstig anbieten. Außerdem fällt die Baugröße sehr kompakt aus. Mit dem EasyFPGA präsentieren wir ein Board plus SDK, das zugleich bedienungsfreundlich und in möglichst vielen Anwendungen wie etwa der Produktentwicklung eingesetzt werden kann. Wir arbeiten darüber hinaus daran, weitere EasyCores hinzuzufügen. Ab dem Sommer präsentieren wir zudem das neue SDK für C++. Damit erleichtern wir ein weiteres Mal den Einstieg in die flexible Nutzung von FPGAs.

os-cillation GmbH
www.os-cillation.de

Das könnte Sie auch Interessieren