Arduissimo: Arduino-kompatibles Multicore-Board
Arduissimo erlaubt Bastlern zwischen 4 und 16 vom Arduino bekannte AVR-Kerne gleichzeitig zu nutzen.
- Olaf Göllner
Dem Entwickler Tobias Strauch reichte der für heutige Verhältnisse kleine 8-Bit-AVR-Mikrocontroller auf dem Arduino Uno nicht mehr aus. Stattdessen hat er mit Hilfe eines FPGA-Boards ein Multicore-Arduino-Board entworfen, welches bis zu 16 MCU-Kerne gleichzeitig betreibt. Diese lassen sich jeweils wie ein normaler Arduino programmieren – die Arduissimo-IDE ist eine erweiterte Arduino-IDE und erlaubt das Auflisten und Zusammenfügen von mehreren Sketches zu einem einzelnen Projekt.
Die FPGA-Konfiguration kann ohne die Verwendung teurer JTAG-Programmiergeräte direkt über eine USB-Schnittstelle erfolgen. Optional gibt es einen Adapter, welcher den Anschluss an einen Raspberry Pi zum gemeinsamen Datenaustausch über den SPI-Bus ermöglicht.
Das Design nutzt sogenannte virtuelle Schnittstellen; die Ein- und Ausgabe des Boards erfolgt über insgesamt 124 GPIOs. Die GPIOs lassen sich den einzelnen Kernen für beliebige Verwendungszwecke (1-Wire, I2C, SPI oder PWM) zuordnen – und sogar während des Betriebs ändern. Leider fehlen Analog-Digital-Converter gänzlich. Kerne können sich gegenseitig Interrupts senden. Jeder Prozessor kann sich zudem selber in den Sleep-Mode versetzen und von anderen Prozessoren aufwecken lassen.
Das Board ist für die Nutzung von 3,3V-Shields vorgesehen, laut dem Entwickler gibt es bei entsprechenden Widerständen auch mit 5V-Signalen keine Probleme.
Die virtuellen AVR-Kerne benutzen einen gemeinsamen Daten- und einen Programm-Speicherbereich, das Verteilen von Daten unter den einzelnen Kernen ist damit generell möglich. Der theoretische Program-Speicherbereich ist 512 MBit. Der theoretische Daten-Speicherbereich ist 64 MBit. Der Entwickler hofft auf ein reges Feedback von der Community, um die System-Architektur noch zu verbessern. So sind Alternativen wie MSP430, ARM3, OpenRISC-1200 und Cortex-M3 als Kerne geplant, wobei die Webseite OpenCores.org die Bezugsquelle darstellt. Als Wunschziel soll den FPGA später ein ASIC ersetzen.
Das Arduissimo-Board ist als Kampagne auf der Crowdfounding-Plattform Indiegogo erhältlich und kostet zusammen mit der RasPi-Schnittstelle 76 Euro inklusive Versandkosten. (ogo)