Tam Hanna

Chip Gracey geht mit dem Propeller in vielerlei Hinsicht neue Wege. Die Programmiersprache bietet unter anderem innovative Methoden zum Umgang mit Feldern und zur Handhabung von Nebenläufigkeit.

In der Anfangszeit der Computertechnik entstanden Prozessoren oft mit ihrer eigenen Programmiersprache. Der Erfolg von Hochsprachen wie C und Co. löste diese Bindung. Bei Parallax entstand vor einigen Jahren mit dem Propeller ein hoch interessanter Mikrocontroller, der hardwaremäßig auf Nebenläufigkeit ausgelegt wurde und mit einer eigenen Programmiersprache namens PIN ausgestattet ist.

Der Hersteller Parallax ist seit jeher für seine entwicklerfreundlichen Prozessorsysteme bekannt. Ein als BASIC Stamp bezeichnetes Modul ermöglichte die Programmierung von 8-Bit-Mikrocontrollern unter Nutzung eines zugegebenermaßen stark eingeschränkten Basic-Dialekts und legte so die Grundlagen für den weiteren Erfolg des Unternehmens.

Der Parallax Propeller sollte viele der aus Parallax-Gründer Chip Graceys Sicht „ärgerlichen“ Schwachstellen klassischer Controller umgehen. Als wichtigstes Problem identifizierte er hierbei die Art, wie klassische MCUs mit Hardware bzw. mit Kommunikationsbussen interagieren. Zum Verständnis dieses Problems wollen wir als Erstes einen gewöhnlichen Mikrocontroller betrachten.

Abb. 1: Protokolle werden durch dedizierte Funktionseinheiten abgebildet

Das in Abbildung 1 skizzierte und auf den ersten Blick durchaus gangbar erscheinende Konzept erweist sich in der Praxis aus verschiedener Sicht als ärgerlich: Erstens ist ein derartiger Mikrocontroller auf die Protokolle beschränkt, die sein Entwickler von Haus aus vorgesehen hat. Der PIC16F1503 lässt sich beispielsweise nicht bzw. nur über aufwendiges Bit-Banging um im Automotive-Bereich verbreitete Protokolle wie CAN erweitern.

Das von Gracey entwickelte Konzept basiert hingegen auf als Cog bezeichneten Recheneinheiten. Ein Cog ist hierbei ein „eigenständiger“ Mikrocontroller, der mit dem Rest des Verbunds über diverse geteilte Ressourcen verbunden ist. Die Realisierung von harten Protokollen wie I2C, SPI und Co. erfolgt nun, indem der jeweilige Core mit bestimmter Betriebssoftware ausgestattet wird. Zur Optimierung des Energieverbrauchs gibt es zudem die Möglichkeit, Cogs „einschlafen zu lassen“ bis ein bestimmtes Ereignis auftritt. Die deterministische Aufwachzeit garantiert, dass das System auch Echtzeitanforderungen erfüllen kann.

Der Fluch des Kleinen

Parallax ist im Vergleich zu Atmel, STMicroelectronics (früher SGS Thompson), Microchip Electronics und Co. ein geradezu verschwindend kleines Unternehmen, das nicht ausschließlich vom Vertrieb seiner MCUs leben kann und stattdessen auch diverse Breakout-Boards produziert, um die hauseigenen Maschinen besser auszulasten.

Den vollständigen Artikel lesen Sie in der Ausgabe:

Entwickler Magazin 6.17 - "Swift Playground Books"

Alle Infos zum Heft
579814783Mikrocontroller programmieren lernen mit Propeller
X
- Gib Deinen Standort ein -
- or -