ETH Zürich/Universität Bologna Quelloffener Mikroprozessor

Im Januar 2016 hat UMC bereits ein Tape-out von PULPino auf seinem 65-nm-Prozess gemacht. PULPino steht für die RTL-Simulation aber auch für eine Implementierung in einem FPGA zur Verfügung.
Im Januar 2016 hat UMC bereits ein Tape-out von PULPino auf seinem 65-nm-Prozess gemacht. PULPino steht für die RTL-Simulation aber auch für eine Implementierung in einem FPGA zur Verfügung.

Die ETH Zürich und die Universität Bologna haben mit »PULPino« gemeinsam einen Prozessor entwickelt, der jetzt als Open Source für Entwickler zur Verfügung steht.

PULPino ist ein Open-Source-Mikrocontrollersystem, das auf einem optimierten 32-Bit-RISC-V-Kern basiert, der an der ETH Zurich und der Universität Bologna unter der Leitung von ETH-Professor Luca Benini entwickelt wurde. Der Core kommt auf eine IPC-Rate von fast 1, unterstützt den RV32I und RV32C-Befehlssatz komplett und Teile der RV32M-Erweiterung. Die Wissenschaftler haben diverse ISA-Erweiterungen implementiert wie Hardware-Schleifen, ALU- und MAC-Operationen, Speicherbefehle etc., um die Energieeffizienz des Prozessors zu erhöhen.

Jetzt haben die Wissenschaftler den Bauplan veröffentlicht – und zwar so, dass die Freiheit anderer Entwickler, den Prozessor zu nutzen und zu verändern, maximal ist. Benini betont. »Es ist nun möglich, Open-Source-Hardware wirklich von Grund auf zu konstruieren.« Und weiter: »Bei vielen bisherigen Beispielen von Open-Source-Hardware ist die Nutzung durch exklusive Vermarktungsrechte und Konkurrenzverbote eingeschränkt. Bei unserem System hingegen sehen die Lizenzbedingungen keine solche Einschränkungen vor.« Die Rechenbefehle, welche der Mikroprozessor ausführen kann, sind ebenfalls Open Source: Die Wissenschaftler machten den Prozessor kompatibel mit einem Open-Source-Befehlssatz – RISC-V –, der an der University of California in Berkeley entwickelt wurde.

Der neuentwickelte Prozessor ist für batteriebetriebene Geräte mit äußerst geringem Energiebedarf vorgesehen – Pulp steht für «parallel ultra low power». Dies könnten Chips für kleine Geräte wie Smartwatches sein, für Sensoren zur Überwachung von Körperfunktionen (die mit einer Pulsuhr kommunizieren können) oder für neuartige Sensoren für das Internet der Dinge.

Benini gibt ein Beispiel aus der aktuellen Forschung in seinem Labor: »Wir entwickeln mit dem Pulpino-Prozessor eine mit Elektronik und einer Mikrokamera bestückte Smartwatch. Sie kann visuelle Informationen auswerten und daraus den Aufenthaltsort des Benutzers bestimmen. Die Idee ist, dass eine solche Smartwatch dereinst etwa Heimelektronik ansteuern könnte.« Dies alles auf kleinstem Raum auf einem Mikroprozessor unterzubringen mit einer winzigen Leistung von nur wenigen Milliwatt, sei eine Herausforderung, zumal die Rechenkapazität für die Bildauswertung ausreichend gross sein müsse.